[BACK]Return to 67.html CVS log [TXT][DIR] Up to [local] / www

Annotation of www/67.html, Revision 1.3

1.1       benno       1: <!doctype html>
                      2: <html lang=en id=release>
                      3: <meta charset=utf-8>
                      4:
                      5: <title>OpenBSD 6.7</title>
                      6: <meta name="description" content="OpenBSD 6.7">
                      7: <meta name="viewport" content="width=device-width, initial-scale=1">
                      8: <link rel="stylesheet" type="text/css" href="openbsd.css">
                      9: <link rel="canonical" href="https://www.openbsd.org/67.html">
                     10:
                     11: <h2 id=OpenBSD>
                     12: <a href="index.html">
                     13: <i>Open</i><b>BSD</b></a>
                     14: 6.7
                     15: </h2>
                     16:
                     17: <table>
                     18: <tr>
                     19: <td>
                     20: <a href="images/xxx.gif"><!-- XXX -->
                     21: <img alt="XXX image alt tag" width="227" height="343" src="images/xxx-s.gif"></a>
                     22: <td>
                     23: Released May 19, 2020<br><!-- XXX -->
                     24: Copyright 1997-2020, Theo de Raadt.<br>
                     25: <br>
                     26: <br>
                     27: Artwork by XXX.
                     28: <br>
                     29: <ul>
                     30: <li>See the information on <a href="ftp.html">the FTP page</a> for
                     31:     a list of mirror machines.
                     32: <li>Go to the <code class=reldir>pub/OpenBSD/6.7/</code> directory on
                     33:     one of the mirror sites.
                     34: <li>Have a look at <a href="errata67.html">the 6.7 errata page</a> for a list
                     35:     of bugs and workarounds.
                     36: <li>See a <a href="plus67.html">detailed log of changes</a> between the
                     37:     6.6 and 6.7 releases.
                     38: <p>
                     39: <li><a href="https://man.openbsd.org/signify.1">signify(1)</a>
                     40:     pubkeys for this release:<p>
                     41:
                     42: <table class=signify>
                     43: <tr><td>
                     44: openbsd-67-base.pub:
                     45: <td>
                     46: <a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/openbsd-67-base.pub">
                     47: RWRmkIA877Io3oCILSZoJGhAswifJbFK4r18ICoia+3c0PfwANueolNj</a>
                     48: <tr><td>
                     49: openbsd-67-fw.pub:
                     50: <td>
                     51: RWSOSlsdN/fgAY1SvEyFdbTkouV2cIsUBXdJhEIhRscq8TT3bz9iOYRL
                     52: <tr><td>
                     53: openbsd-67-pkg.pub:
                     54: <td>
                     55: RWTR60UGd2MbnaRg+upZbbBYO00ZhHJehXy7tH2ORHvCjGcDH2pZpsxv
                     56: <tr><td>
                     57: openbsd-67-syspatch.pub:
                     58: <td>
                     59: RWTLqtfkjXfBADZEVkBDwSU0EAhy45nb5ovn1xHtQmD3DcqUWe+CouTL
                     60: </table>
                     61: </ul>
                     62: <p>
                     63: All applicable copyrights and credits are in the src.tar.gz,
                     64: sys.tar.gz, xenocara.tar.gz, ports.tar.gz files, or in the
                     65: files fetched via <code>ports.tar.gz</code>.
                     66: </table>
                     67:
                     68: <hr>
                     69:
                     70: <section id=new>
                     71: <h3>What's New</h3>
                     72: <p>
                     73: This is a partial list of new features and systems included in OpenBSD 6.7.
                     74: For a comprehensive list, see the <a href="plus67.html">changelog</a> leading
                     75: to 6.7.
                     76:
                     77: <ul>
                     78:
                     79: <li>General improvements and bugfixes:
                     80:   <ul>
                     81:     <li>Reduced the minimum allowed number of chunks in a CONCAT
                     82:        volume from 2 to 1, increasing the number of volumes which can be
                     83:        created on a single disk with <a
                     84:        href="https://man.openbsd.org/bioctl">bioctl(8)</a> from 7 to 15. This
                     85:        can be used to create more partitions than previously.
                     86:     <li>Rewrote the <a href="https://man.openbsd.org/cron">cron(8)</a>
                     87:        flag-parsing code to be getopt-like, allowing tight formations like
                     88:        -ns and flag repetition. Renamed the "options" field in <a
                     89:        href="https://man.openbsd.org/crontab">crontab(5)</a> to "flags".
                     90:     <li>Added <a
                     91:        href="https://man.openbsd.org/man5/crontab.5">crontab(5)</a> -s flag
                     92:        to the command field, indicating that only a single instance of the
                     93:        job should run concurrently.
                     94:     <li>Added <a href="https://man.openbsd.org/cron">cron(8)</a>
                     95:        support for random values using the ~ operator.
                     96:     <li>Allowed <a href="https://man.openbsd.org/cwm">cwm(1)</a>
                     97:        configuration of window size based on percentage of the master window
                     98:        during horizontal and vertical tiling actions.
                     99:     <li>Allowed use of window-htile and window-vtile with the "empty"
                    100:        group clients in <a href="https://man.openbsd.org/cwm">cwm(1)</a>.
                    101:     <li>Switched powerpc to a machine-independent mplock implementation,
                    102:        allowing use of <a href="https://man.openbsd.org/witness">
                    103:        witness(4)</a>.
                    104:     <li>Added <a href="https://man.openbsd.org/acpi">acpi(4)</a>
                    105:        support for the _CCA method, indicating whether DMA is cache-coherent.
                    106:     <li>Switched the default compiler on powerpc to clang.
                    107:     <li>Bumped <a href="https://man.openbsd.org/nvme">nvme(4)</a> max
                    108:        physio() i/o size to 128K.
                    109:     <li>Blocked <a href="https://man.openbsd.org/apmd">apmd(8)</a>
                    110:        autoaction for 60 seconds after resume, preventing spurious
                    111:        suspend/resume cycles.
                    112:     <li>Checked battery life against autoaction level on power change
                    113:        events in <a href="https://man.openbsd.org/apmd">apmd(8)</a>, making
                    114:        -z/-Z work with <a
                    115:        href="https://man.openbsd.org/acpibat">acpibat(4)</a>.
                    116:     <li>Prevented a kernel hang when no unlocked ffs_softdep worklist
                    117:        items could be processed.
                    118:     <li>Stopped counting pages mapped as PROT_NONE against the
                    119:        RLIMIT_DATA limit, helping code which reserves large chunks of address
                    120:        space but populates it sparsely.
                    121:     <li>Added the $REQUEST_SCHEME variable to <a
                    122:        href="https://man.openbsd.org/httpd.conf">httpd.conf(5)</a>, allowing
                    123:        preservation of the original connection type (http or https) for
                    124:        redirect locations
                    125:     <li>Implemented "strip" option in <a
                    126:        href="https://man.openbsd.org/httpd.conf">httpd.conf(5)</a> for
                    127:        fastcgi to be able to have multiple chroots under /var/www for FastCGI
                    128:        servers.
                    129:     <li>Changed <a href="https://man.openbsd.org/httpd">httpd(8)</a>
                    130:        to send a 408 response when a timeout happens while headers are being
                    131:        received, but close the connection if no request is received.
                    132:     <li>Updated en_US.UTF-8.src to Unicode 12.1.
1.3     ! deraadt   133:     <li>Added a new __tmpfd <a
1.1       benno     134:        href="https://man.openbsd.org/__syscall">__syscall(2)</a> that creates
                    135:        a new, unnamed file in /tmp, intended for shm/fd passing, but for
                    136:        programs that may otherwise like filesystem access
                    137:     <li>Imported <a href="https://man.openbsd.org/dt">dt(4)</a>, a
                    138:        driver and framework for Dynamic Profiling, and an accompanying bug
                    139:        tracer that speaks the <a href="https://man.openbsd.org/bt">bt(5)</a>
                    140:        language.
                    141:     <li>Added a human-readable mode (-h) to <a
                    142:        href="https://man.openbsd.org/systat">systat(1)</a>.
                    143:     <li>Implemented scrolling in <a
                    144:        href="https://man.openbsd.org/top">top(1)</a> using the 9 and 0 keys.
                    145:     <li>Added <a
                    146:        href="https://man.openbsd.org/timeout_set_flags">timeout_set_flags(9)</a>
                    147:        and TIMEOUT_INITIALIZER_FLAGS(9) to the timeout API, allowing the
                    148:        caller to initialize timeouts with arbitrary flags.
                    149:     <li>Introduced TIMEOUT_SCHEDULED flag and tos_scheduled statistic
                    150:        to <a href="https://man.openbsd.org/timeout.9">timeout(9)</a>.
                    151:     <li>Switched to tickless backend in <a
                    152:        href="https://man.openbsd.org/timeout.9">timeout(9)</a>, adding new
                    153:        interface <a
                    154:        href="https://man.openbsd.org/timeout_at_ts">timeout_at_ts(9)</a> to
                    155:        avoid backwardly compatible behavior.
                    156:     <li>Added the system clock interface <a
                    157:        href="https://man.openbsd.org/nanoboottime">nanoboottime(9)</a>,
                    158:        returning the UTC time at which the system booted in seconds and
                    159:        nanoseconds.
                    160:     <li>Introduced efficient page freeing in reverse order from uvm,
                    161:        greatly improving cases of massive page freeing.
                    162:     <li>Added uvm_objfree to uvm to efficiently free all pages from a
                    163:        uvm object, used in the buffer cache for considerable speedup when
                    164:        freeing pages.
                    165:     <li>Modified buffer cache to use individual uvm_objs per buffer to
                    166:        speed page lookups.
                    167:     <li>Speed up <a href="https://man.openbsd.org/sort">sort(1)</a> by
                    168:        not performing a top-level sort when -c is used with a -k field.
                    169:     <li>Modified -z mode verification in <a
                    170:        href="https://man.openbsd.org/signify">signify(1)</a> to save the
                    171:        header and output it, so signify -zV >saved.tgz will keep the
                    172:        signature for later checks.
                    173:     <li>Enabled DNSSEC validation in <a
                    174:        href="https://man.openbsd.org/unbound">unbound(8)</a> by default.
                    175:     <li><a href="https://man.openbsd.org/ntpd">ntpd(8)</a> now does
                    176:        constraint validation against 9.9.9.9 and 2620:fe::fe by default.
                    177:     <li>Provide debug package information that can be installed
                    178:        alongside packages and used to provide better bug reports.
                    179:     <li>Added DEBUG_PKG_CACHE functionality to <a
                    180:        href="https://man.openbsd.org/pkg_add">pkg_add(1)</a>, fetching debug
                    181:        patches when packages are installed.<!-- XXX -->
                    182:     <li>Added a -d option to <a
                    183:        href="https://man.openbsd.org/pkg_add">pkg_add(1)</a> to add debug
                    184:        packages if present alongside intended updates or additions.
                    185:   </ul>
                    186:
                    187: <!-- FFS2 -->
                    188: <li>The FFS2 filesystem, which uses 64bit time_t timestamps is now the
                    189:        default filesystem on nearly all architectures:
                    190:   <ul>
                    191:     <li>Enabled ffs2 in sgi bootblocks and ramdisks.
                    192:     <li>Made ffs2 the default filesystem type on installs except for landisk, luna88k and sgi.
                    193:     <li>Changed the sparc64 bootblocks to be able to read from ffs1, ffs2 and softraid, and enabled the ffs2 option for both floppies.
                    194:     <li>Enabled FFS2 on the landisk ramdisk.
                    195:     <li>Taught i386 boot(8), cdboot(8) and pxeboot(8) about ffs2.
                    196:     <li>Taught macppc boot(8) about ffs2.
                    197:     <li>Taught sparc64 boot(8) (but not the sparc64 bootblocks) about ffs2.
                    198:     <li>Allowed hppa <a href="https://man.openbsd.org/man8/hppa/boot.8">boot(8)</a>  to read from an ffs2 filesystem.
                    199:     <li>Allowed alpha boot(8) to read from an ffs2 filesystem and adapted its custom installboot to deal with ffs2. Also fixed the partition read code to deal with offsets greater than 2G.
                    200:     <li>Adapted <a href="https://man.openbsd.org/biosboot">biosboot(8)</a> so that it can read <a href="https://man.openbsd.org/boot.8">boot(8)</a> from an ffs2 filesystem.
                    201:     <li>Allowed amd64 <a href="https://man.openbsd.org/man8/amd64/boot.8">boot(8)</a> to read from an ffs2 filesystem. Enabled ffs2 for floppy.
                    202:     <li>Allowed loongson boot(8) to read from an ffs2 filesystem.
                    203:     <li>Allowed arm64 and armv7 efiboot(8) to read from an ffs2 filesystem.
                    204:   </ul>
                    205:
                    206: <li>SMP-Improvements, System call unlocking:
                    207:   <ul>
                    208:     <li>Fixed absolute timeout checking in <a
                    209:        href="https://man.openbsd.org/__thrsleep">__thrsleep(2)</a>.
                    210:     <li>Introduced <a
                    211:        href="https://man.openbsd.org/tsleep_nsec">*sleep_nsec(9)</a> to allow
                    212:        sleeping for a specified minimum duration, allowing use at the syscall
                    213:        layer and elsewhere within the kernel where this minimum duration is
                    214:        required.
                    215:     <li>Added the MAXTSLP macro, the maximum sleep duration, to <a
                    216:        href="https://man.openbsd.org/tsleep_nsec">tsleep_nsec(9)</a>.
                    217:     <li>Unlocked the <a href="https://man.openbsd.org/flock">flock(2)</a>
                    218:        system call.
                    219:     <li>Reworked AMD smt/core/package detection, helping prevent cores
                    220:        being misidentified as threads.
                    221:     <li>Unlocked the <a href="https://man.openbsd.org/fcntl">fnctl(2)</a> system call.
                    222:     <li>Unlocked the <a
                    223:        href="https://man.openbsd.org/ioctl">ioctl(2)</a> system call.
                    224:     <li>Pushed the KERNEL_LOCK() inside pgsigio() and selwakeup(),
                    225:        allowing separate addressing of the three subsystems: signal,
                    226:        poll/select and kqueue.
                    227:     <li>Unlocked the <a href="https://man.openbsd.org/close">close(2)</a>
                    228:        and <a href="https://man.openbsd.org/dup">dup(2)</a> system calls.
                    229:     <li>Made <a
                    230:        href="https://man.openbsd.org/__thrsleep">__thrsleep(2)</a> and <a
                    231:        href="https://man.openbsd.org/__thrwakeup">__thrwakeup(2)</a> MP-safe.
                    232:     <li>Unlocked <a href="https://man.openbsd.org/kqueue">kqueue(2)</a>.
                    233:     <li>Unlocked <a href="https://man.openbsd.org/pipe">pipe(2)</a>
                    234:        and <a href="https://man.openbsd.org/pipe2">pipe2(2)</a>.
                    235:     <li>Avoided false positives in <a
                    236:        href="https://man.openbsd.org/witness">witness(4)</a> when detecting
                    237:        lock order reversals by using separate rwlock initializations for
                    238:        userland and kernel maps.
                    239:     <li>Reintroduced socket locking inside socket event filters.
                    240:     <li>Allowed sleeping inside kqueue event filters.
                    241:     <li>Made <a href="https://man.openbsd.org/vmx">vmx(4)</a> transmit mp-safe.
                    242:   </ul>
                    243:
                    244: <li>Improved hardware support, including:
                    245:   <ul>
                    246:     <li>Improvements in the <a href="https://man.openbsd.org/em">em(4)</a> driver.
                    247:     <li>Added <a href="https://man.openbsd.org/dsxrtc">dsxrtc(4)</a>,
                    248:        a driver for the Maxim DS3231/DS3232 I2C RTC.
                    249:     <li>Enabled use of <a href="https://man.openbsd.org/em">em(4)</a> with MSI-X.
                    250:     <li>Added <a href="https://man.openbsd.org/ure">ure(4)</a> support
                    251:        for Lenovo OneLine Plus Dock Ethernet.
                    252:     <li>Improved <a href="https://man.openbsd.org/ucom">ucom(4)</a> to
                    253:        fix firmware upload on some microcontroller boards using DTR and RTS
                    254:        as signaling lines to reset the device and enter the bootloader.
                    255:     <li>Added a PCI attachment driver for <a
                    256:        href="https://man.openbsd.org/com">com(4)</a> to support memory-mapped
                    257:        PCI devices which are part of a Low Power Subsystem (LPSS).
                    258:     <li>Implemented microsecond resolution using <a
                    259:        href="https://man.openbsd.org/microuptime">microuptime(9)</a> to avoid
                    260:        a hard hang when starting X on Intel Cherry Trail Atom processors.
                    261:     <li>Added support for X553 controllers to <a
                    262:        href="https://man.openbsd.org/ix">ix(4)</a>.
                    263:     <li>Added <a href="https://man.openbsd.org/usb">usb(4)</a> device
                    264:        support for an AMD hub on the APU2 and a Synaptics vendor id and two
                    265:        fingerprint readers.
                    266:     <li>Prevented buffer overflows with <a
                    267:        href="https://man.openbsd.org/uthum">uthum(4)</a> by not assuming the
                    268:        report length given by the hardware is necessarily smaller than the
                    269:        length of the on-stack buffer.
                    270:     <li>Added <a href="https://man.openbsd.org/rge">rge(4)</a>, a driver
                    271:        for the Realtek 8125 PCI Express 2.5Gb Ethernet devices.
                    272:     <li>Fixed cursor issues and suspend/resume on <a
                    273:        href="https://man.openbsd.org/amdgpu">amdgpu(4)</a> due to incomplete
                    274:        unmapping. This may help <a
                    275:        href="https://man.openbsd.org/radeondrm">radeondrm(4)</a> issues as
                    276:        well.
                    277:     <li>Enabled mmhub power gating on picasso within <a
                    278:        href="https://man.openbsd.org/amdgpu">amdgpu(4)</a>.
                    279:     <li>Fixed support for additional I2C busses in <a
                    280:        href="https://man.openbsd.org/piixpm">piixpm(4)</a> for older SB800
                    281:        SMBus controllers. Prevented sensors from attaching four times on old
                    282:        AMD machines.
                    283:     <li>Invalidated the <a
                    284:        href="https://man.openbsd.org/knote">knote(9)</a> list of <a
                    285:        href="https://man.openbsd.org/uhid">uhid(4)</a> after device detach,
                    286:        preventing a crash that can happen when kqueue still holds references
                    287:        to knotes pointing to the device.
                    288:     <li>Prevented a use-after-free causing crashes with <a
                    289:        href="https://man.openbsd.org/uhidev">uhidev(4)</a> devices.
                    290:
                    291:     <li>Prevented <a href="https://man.openbsd.org/mcx">mcx(4)</a>
                    292:        interface lockups due to completion queue overflow.
                    293:     <li>Fixed brightness keys on the x395 and other thinkpads with AMD graphics.
                    294:     <li>Fixed brightness controls on certain machines where the
                    295:        initial brightness values are returned out of range.
                    296:     <li>Made <a
                    297:        href="https://man.openbsd.org/acpivout">acpivout(4)</a> stop calling
                    298:        ACPI methods directly to allow changing brightness other ways on
                    299:        certain machines, including the x395.
                    300:     <li>Set the default brightness level on attachment for <a
                    301:        href="https://man.openbsd.org/pwmbl">pwmbl(4)</a>.
                    302:     <li>Fixed <a
                    303:        href="https://man.openbsd.org/acpivout">acpivout(4)</a> screen
                    304:        brightness adjustment through function keys, better supporting
                    305:        machines using exponential brightness scaling.
                    306:     <li>Changed <a
                    307:        href="https://man.openbsd.org/acpivout">acpivout(4)</a> to increment
                    308:        and decrement screen brightness based only on brightness level changes
                    309:        of 5% or higher.
                    310:     <li>Added <a href="https://man.openbsd.org/amlsm">amlsm(4)</a>, a
                    311:        driver for the "secure monitor" firmware interface.
                    312:     <li>Fixed Etron EJ168 USB 3.0 Host Controllers via USB 2 devices.
                    313:     <li>Added support for the SIERRA MC7700 to <a
                    314:        href="https://man.openbsd.org/umsm">umsm(4)</a> UMTS and LTE modem device.
                    315:     <li>Fixed RAID volume WWIDs for <a
                    316:        href="https://man.openbsd.org/mpii">mpii(4)</a> LSI controllers on
                    317:        sparc64, allowing <a
                    318:        href="https://man.openbsd.org/autoconf">autoconf(9)</a> to identify
                    319:        the volume as the root device and boot off hardware RAID.
                    320:     <li>Populated logical disk port WWNs with their RAID volume's WWID
                    321:        in <a href="https://man.openbsd.org/mpii">mpii(4)</a>.
                    322:     <li>Added <a
                    323:        href="https://man.openbsd.org/amdgpio">amdgpio(4)</a>, a driver for
                    324:        the GPIO controller found on newer AMD SoC/chipsets.
                    325:     <li>Added <a href="https://man.openbsd.org/fido">fido(4)</a>, an
                    326:        HID driver for FIDO/U2F security keys.
                    327:     <li>Added parsing of DDR4 and LPDDDR3/4 SPD memories to <a
                    328:        href="https://man.openbsd.org/spdmem">spdmem(4)</a>.
                    329:     <li>Added support to <a
                    330:        href="https://man.openbsd.org/lm">lm(4)</a> for NCT6775F, NCT5104D,
                    331:        NCT6779D and NCT679[1235]D sensors.
                    332:     <li>Added AMD FCH (KERNCZ) to the list of supported devices in <a
                    333:        href="https://man.openbsd.org/piixpm">piixpm(4)</a>.
                    334:     <li>Updated <a href="https://man.openbsd.org/piixpm">piixpm(4)</a>
                    335:        to support newer AMD chips like Hudson-2 and KERNCZ and implemented
                    336:        multi-bus support for SB800, Hudson-2 and KERNCZ.
                    337:     <li>Extended the expected SPD types to include DDR4 and low-power DDR3/DDR4.
                    338:     <li>Enabled full use of jumbo frames on <a
                    339:        href="https://man.openbsd.org/bnx">bnx(4)</a> devices.
                    340:     <li>Fixed <a href="https://man.openbsd.org/scsi">scsi(8)</a>
                    341:        softraid crypto volumes on 4K-sector disks.
                    342:     <li>Faked disk info to match expected boot disk when EFI
                    343:        bootloader has been received via TFTP, fixing a hang during HP
                    344:        Elitebook UEFI boot.
                    345:     <li>Improved <a href="https://man.openbsd.org/ksmn">ksmn(4)</a>
                    346:        temperature conversion precision.
                    347:     <li>Added a quirk to handle Apollo Lake, Gemini Lake and 100
                    348:        Series Intel SD/MMC <a href="https://man.openbsd.org/sdhc">sdhc(4)</a>
                    349:        controllers which should not have voltages set to 0V.
                    350:     <li>Prevented a local user from causing the system to hang by
                    351:        reading specific registers when Intel Gen8/Gen9 graphics hardware is
                    352:        in a low power state.
                    353:     <li>Prevented writes to memory allowed by the Intel Gen9 graphics hardware.
                    354:     <li>Added support for buttons 2 and 3 to <a
                    355:        href="https://man.openbsd.org/imt">imt(4)</a>.
                    356:     <li>Added <a href="https://man.openbsd.org/ogx">ogx(4)</a>, a
                    357:        driver for the OCTEON III network processor.
                    358:     <li>Fixed endian swapping in <a
                    359:        href="https://man.openbsd.org/xhci">xhci(4)</a>, allowing it to work
                    360:        again on octeon and other big endian architectures.
                    361:     <li>Added <a href="https://man.openbsd.org/sxisid">sxisid(4)</a>,
                    362:        a driver to read the on-chip eFuses.
                    363:     <li>On newer ThinkPads reporting HKEY version > 1, allowed <a
                    364:        href="https://man.openbsd.org/acpivout">acpivout(4)</a> to claim
                    365:        backlight controls rather than <a
                    366:        href="https://man.openbsd.org/wscons">wscons(4)</a>, allowing use of
                    367:        the fine-grained backlight BCL steps defined in <a
                    368:        href="https://man.openbsd.org/acpi">acpi(4)</a>.
                    369:     <li>Implemented the "parallel boot" feature on compatible sparc64 firmware.
                    370:   </ul>
                    371:
                    372: <li>Removed hardware support
                    373:   <ul>
                    374:        <li>Removed sitaracm(4).
                    375:        <li>Removed the rtfps(4) driver.
                    376:        <li>Removed the sli(4) driver.
                    377:        <li>Removed the dpt(4) driver for DPT EATA SCSI RAID.
                    378:        <li>Removed gpr(4).
                    379:   </ul>
                    380:
                    381: <li>Improvements in audio drivers and the
                    382:        <a href="https://man.openbsd.org/sndio">sndio(7)</a> framework:
                    383:   <ul>
                    384:     <li>Introduced the <a
                    385:        href="https://man.openbsd.org/sndioctl">sndioctl(1)</a> utility to
                    386:        control audio parameters exposed by <a
                    387:        href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
                    388:     <li>Increased the default number of audio devices to 4.
                    389:     <li>Disabled access for regular users to /dev/audio* and
                    390:        /dev/rmidi*, creating these devices owned by root:_sndiod.
                    391:     <li>Added the <a href="https://man.openbsd.org/sndioctl">
                    392:        sndioctl(1)</a> -n option to suppress variable names in output and the
                    393:        -q option to suppress output when setting variables, as in <a
                    394:        href="https://man.openbsd.org/mixerctl">mixerctl(1)</a>.
                    395:     <li>Modified <a
                    396:        href="https://man.openbsd.org/mixerctl">mixerctl(1)</a> to use
                    397:        /dev/audioctlN instead of /dev/mixerN.
                    398:     <li>Made libossaudio use <a
                    399:        href="https://man.openbsd.org/sndio">sndio(7)</a> instead of the
                    400:        kernel <a href="https://man.openbsd.org/mixer">mixer(4)</a> interface.
                    401:     <li>Exposed the first 8 <a
                    402:        href="https://man.openbsd.org/midi">midi(4)</a> devices to <a
                    403:        href="https://man.openbsd.org/sndiod">sndiod(8)</a> clients if no -q
                    404:        options are used.
                    405:     <li>Corrected inappropriate rate selection in <a
                    406:        href="https://man.openbsd.org/uaudio">uaudio(4)</a> preventing
                    407:        recording on devices supporting fewer rates for recording than
                    408:        playback.
                    409:     <li>Introduced the <a
                    410:        href="https://man.openbsd.org/sndioctl">sndioctl(1)</a> utility to
                    411:        control audio parameters exposed by <a
                    412:        href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
                    413:     <li>Fixed channel duplication (-j option) in <a
                    414:        href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
                    415:     <li>Prevented an overflow due to <a
                    416:        href="https://man.openbsd.org/xen">xen(4)</a> failing to release the
                    417:        interrupt source when unmasking the interrupt.
                    418:     <li>Implemented a hexdump command in the bootloader, helping to
                    419:        inspect the memory layout created by the firmware and useful for UEFI
                    420:        debugging.
                    421:     <li>Allowed <a href="https://man.openbsd.org/rc.d">rc.d(8)</a>
                    422:        script to reload <a
                    423:        href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
                    424:     <li>Added an <a
                    425:        href="https://man.openbsd.org/azalia">azalia(4)</a> quirk for the
                    426:        ALC285 on the X1C7 to avoid a clicking noise on the headphone output.
                    427:     <li>Disabled MSI for the AMD Hudson2 <a
                    428:        href="https://man.openbsd.org/azalia">azalia(4)</a> HDA to fix random lock ups.
                    429:   </ul>
                    430:
                    431: <li>Improved <a href="https://www.openbsd.org/arm64.html">arm64</a>
                    432: and <a href="https://www.openbsd.org/armv7.html">armv7</a> hardware
                    433: support, including:
                    434:   <ul>
                    435:     <li>Better hardware support for the i.MX8MM platform.
                    436:     <li>Better support for Raspbery Pi 3 and 4
                    437:     <li>Added <a href="https://man.openbsd.org/bcmbsc">bcmbsc(4)</a>, a driver for the Broadcom Serial Control (BSC) controller.
                    438:     <li>Added <a href="https://man.openbsd.org/bcmgpio">bcmgpio(4)</a>, a driver for the Broadcom BCM283x GPIO controller.
                    439:     <li>Added <a href="https://man.openbsd.org/bcmsdhost">bcmsdhost(4)</a>, a driver for the Broadcom "sdhost" SD controller found on the Raspberry Pi.
                    440:     <li>Added <a href="https://man.openbsd.org/bcmdmac">bcmdmac(4)</a>, a driver for the DMA controller found on BCM283x SoCs.
                    441:     <li>Added support for the additional <a href="https://man.openbsd.org/sdhc">sdhc(4)</a> controller found on the Raspberry Pi.
                    442:     <li>Added quirks for the <a href="https://man.openbsd.org/sdhc">sdhc(4)</a> controller on the Raspberry Pi, providing microSD card or WiFi support depending on the firmware configuration.
                    443:     <li>Added support for hardware with <a href="https://man.openbsd.org/sdhc">sdhc(4)</a> controllers on busses only supporting 32-bit access.
                    444:     <li>Added <a href="https://man.openbsd.org/bcmirng">bcmirng(4)</a>, a driver for the RNG200 random number generator found on the Raspberry Pi 4.
                    445:     <li>Added <a href="https://man.openbsd.org/bcmclock">bcmclock(4)</a>, a driver for the BCM283X CPRMAN clock controller.
                    446:     <li>Added <a href="https://man.openbsd.org/bcmmbox">bcmmbox(4)</a>, a driver for the VideoCore messagebox interface on BCM283X.
                    447:     <li>Added <a href="https://man.openbsd.org/bcmpcie">bcmpcie(4)</a>, a driver for the PCIe controller found on the Raspberry Pi 4.
                    448:     <li>Added support for the Armada 3720 CPU clock to <a href="https://man.openbsd.org/mvclock">mvclock(4)</a>.
                    449:     <li>Added <a href="https://man.openbsd.org/bse">bse(4)</a>, a driver for the Broadcom GENET v5 network interface found on the Raspberry Pi 4.
                    450:     <li>Added <a href="https://man.openbsd.org/brgphy">brgphy(4)</a> support for the Broadcom BCM54210E.
                    451:     <li>Fixed <a href="https://man.openbsd.org/mvneta">mvneta(4)</a> on arm64.
                    452:     <li>Added <a href="https://man.openbsd.org/omcm">omcm(4)</a>, <a href="https://man.openbsd.org/omclock">omclock(4)</a> and <a href="https://man.openbsd.org/omsysc">omsysc(4)</a> drivers that support the new bus structure used in current mainline Linux device trees.
                    453:     <li>Added support for RK3328 Crypto/RNG clocks.
                    454:     <li>Added glass console support to <a href="https://man.openbsd.org/rkdrm">rkdrm(4)</a> in Rockchip SoCs.
                    455:     <li>Fixed the MAC address on Pandaboard-ES by increasing <a href="https://man.openbsd.org/smsc">smsc(4)</a> buffer size used to fetch device tree properties.
                    456:     <li>Added <a href="https://man.openbsd.org/omrng">omrng(4)</a>, a driver for the random number generator found on TI OMAP SoCs.
                    457:     <li>Restored enabling and setting the output tap delay in <a href="https://man.openbsd.org/rkemmcphy">rkemmcphy(4)</a>, fixing the eMMC module on the rockpro64.
                    458:     <li>Added <a href="https://man.openbsd.org/rkrng">rkrng(4)</a>, a driver for the random number generator found on various Rockchip SoCs.
                    459:     <li>Added support for additional Allwinner A80 clocks and resets in <a href="https://man.openbsd.org/sxiccmu">sxiccmu(4)</a>.
                    460:     <li>Added <a href="https://man.openbsd.org/imxpwm">imxpwm(4)</a>, a driver for the PWM controller found on various NXP i.MX SoCs.
                    461:     <li>Fixed CPU frequency scaling support on the Librem5 Devkit.
                    462:     <li>Fixed <a href="https://man.openbsd.org/amlpciephy">amlpciephy(4)</a> USB3 support when USB has not been initialized by U-Boot.
                    463:     <li>Enabled backlight control use on the Pinebook Pro via <a href="https://man.openbsd.org/wsconsctl">wsconsctl(8)</a>.
                    464:     <li>Fixed a crash when no device ports have been registered in ofw.
                    465:     <li>Added clock support for i.MX8MM.
                    466:     <li>Added <a href="https://man.openbsd.org/bdpmic">bdpmic(4)</a>, a driver for the ROHM BD71837 and BD71847 Power Management IC.
                    467:     <li>Added support for reading the i.MX8MM temperature sensors to <a href="https://man.openbsd.org/imxtmu">imxtmu(4)</a>.
                    468:     <li>Switched USB to use non-coherent buffers for data transfers, dramatically improving performance on some ARM SoCs where the USB controller is not coherent with the caches.
                    469:     <li>Added panel support to <a href="https://man.openbsd.org/rkanxdp">rkanxdp(4)</a>.
                    470:     <li>Resolved syscall speculation in armv7 cpus as in arm64, changing the system call ABI to skip two instructions and inserting speculation-blocking sequences.
                    471:     <li>Added /dev/drm[0-3] on arm64.
                    472:     <li>Fixed "ipmi0: sendcmd fails" errors when there is an <a href="https://man.openbsd.org/ipmi">ipmi(4)</a> sensor which is enumerated but has failed to be read.
                    473:     <li>Allowed <a href="https://man.openbsd.org/ipmi">ipmi(4)</a> to attach using mmio.
                    474:     <li>Enabled the Rockchip video drivers.
                    475:     <li>Implemented the page fault handler for CMA GEM buffers and made <a href="https://man.openbsd.org/drm">drm(4)</a> attach to <a href="https://man.openbsd.org/rkdrm">rkdrm(4)</a>, making KMS work on the RK3399 SoC.
                    476:     <li>Added <a href="https://man.openbsd.org/rkdwhdmi">rkdwhdmi(4)</a>, a driver for the HDMI transmitter found on the Rockchip RK3399 SoC.
                    477:     <li>Introduced VPLL clock frequency setting to <a href="https://man.openbsd.org/rkclock">rkclock(4)</a>.
                    478:     <li>Implemented support for read transfers larger than 32 bytes for <a href="https://man.openbsd.org/rkiic">rkiic(4)</a> controllers and registered the i2c bus, allowing future HDMI support.
                    479:     <li>Added <a href="https://man.openbsd.org/rkanxdp">rkanxdp(4)</a>, an attachment driver for <a href="https://man.openbsd.org/anxdp">anxdp(4)</a> on the RK3399.
                    480:     <li>Added <a href="https://man.openbsd.org/anxdp">anxdp(4)</a>, a driver for the Analogix Display Port controller.
                    481:     <li>Added <a href="https://man.openbsd.org/rkvop">rkvop(4)</a>, a driver for the RK3399's Video Output Processors.
                    482:     <li>Added <a href="https://man.openbsd.org/rkdrm">rkdrm(4)</a>, a driver providing kernel mode setting (KMS) functionality for the graphics hardware integrated on Rockchip SoCs.
                    483:     <li>Fixed the Pinebook Pro's trackpad by ensuring only hid_input items are accepted when walking the HID descriptor.
                    484:     <li>Added support for the RK3399's VOP clocks to <a href="https://man.openbsd.org/rkclock">rkclock(4)</a>.
                    485:     <li>Fixed <a href="https://man.openbsd.org/pwmbl">pwmbl(4)</a> attachment on the Pinebook Pro.
                    486:     <li>Added <a href="https://man.openbsd.org/simplepanel">simplepanel(4)</a>, a driver for simple display panels. This allows enabling of the Pinebook Pro display panel.
                    487:     <li>Enabled <a href="https://man.openbsd.org/umt">umt(4)</a> on arm64.
                    488:     <li>Recognized BCM4345 rev 9 as shipped with the Pinebook Pro as an AMPAK AP6256 module in <a href="https://man.openbsd.org/bwfm">bwfm(4)</a>.
                    489:     <li>Improved <a href="https://man.openbsd.org/bwfm">bwfm(4)</a> on the Pinebook Pro by acking SDIO interrupts earlier on <a href="https://man.openbsd.org/dwmmc">dwmmc(4)</a>.
                    490:     <li>Added <a href="https://man.openbsd.org/amltemp">amltemp(4)</a>, a driver for the temperature sensors on various Amlogic SoCs.
                    491:     <li>Added the capability for armv7 boot from another block device than the one from which efiboot was loaded.
                    492:     <li>Added thermal sensor clocks to <a href="https://man.openbsd.org/amlclock">amlclock(4)</a>.
                    493:     <li>Added arm64 support for lldb.
                    494:     <li>Added support for gen2 negotiation to <a href="https://man.openbsd.org/rkpcie">rkpcie(4)</a> and enabled gen2 link state training when the dtb is configured with max-link-speed = 2.
                    495:     <li>Added <a href="https://man.openbsd.org/pwmfan">pwmfan(4)</a>, a driver for PWM-regulated fans.
                    496:     <li>Added <a href="https://man.openbsd.org/rkpwm">rkpwm(4)</a>, a driver for the RK3399's PWM controller.
                    497:     <li>Added support for the RK3399's PWM clock to <a href="https://man.openbsd.org/rkclock">rkclock(4)</a>.
                    498:     <li>Added <a href="https://man.openbsd.org/rkemmcphy">rkemmcphy(4)</a>, a driver for the RK3399's eMMC PHY.
                    499:     <li>Added support for the RK3399's eMMC clock to <a href="https://man.openbsd.org/rkclock">rkclock(4)</a>.
                    500:     <li>Allowed switching to framebuffer "glass" console on armv7, mirroring previous changes to arm64.
                    501:     <li>Added <a href="https://man.openbsd.org/sxipwm">sxipwm(4)</a> and <a href="https://man.openbsd.org/pwmbl">pwmbl(4)</a>, drivers which jointly add support for the backlight controller on the Pinebook.
                    502:     <li>Corrected cache flush operations on arm64 which were being incorrectly treated as write operations. This fixes a bug where cache flushing caused Firefox to abort.
                    503:   </ul>
                    504:
                    505: <li>IEEE 802.11 wireless stack improvements and bugfixes:
                    506:   <ul>
                    507:     <li>Fixed a problem in <a href="https://man.openbsd.org/iwn">iwn(4)</a>
                    508:        where the link gets stuck since every CCMP encrypted frame is
                    509:        discarded by the AP as a replay.
                    510:     <li>Fixed an automatic Tx rate control issue in <a
                    511:        href="https://man.openbsd.org/iwn">iwn(4)</a>.
                    512:     <li>Fixed a bug where outstanding frames on the <a
                    513:        href="https://man.openbsd.org/iwn">iwn(4)</a> aggregation queue
                    514:        interfere with roaming to another AP.
                    515:     <li>Implemented a workaround for missing Tx completion interrupts
                    516:        in <a href="https://man.openbsd.org/iwm">iwm(4)</a> which could lead
                    517:        to failed decisions to roam to other APs.
                    518:     <li>Added support for the <a
                    519:        href="https://man.openbsd.org/urtwn">urtwn(4)</a> tp-link tl-wn823n
                    520:        (TRL8192EU).
                    521:
                    522:     <li>Reenabled firmware-based Tx retries at lower rates for <a
                    523:        href="https://man.openbsd.org/iwm">iwm(4)</a>, reducing packet loss.
                    524:     <li>Enabled DQA mode for <a href="https://man.openbsd.org/iwm">iwm(4)</a>.
                    525:     <li>Added support for <a
                    526:        href="https://man.openbsd.org/iwm">iwm(4)</a> firmware paging,
                    527:        required for newer 8k device firmware.
                    528:     <li>Added support for MSI-X for <a
                    529:        href="https://man.openbsd.org/iwm">iwm(4)</a> devices.
                    530:     <li>Computed RSSI on 9k <a
                    531:        href="https://man.openbsd.org/iwm">iwm(4)</a> devices as for previous
                    532:        generations, fixing spurious signal strength values of over 100%.
                    533:     <li>Added <a href="https://man.openbsd.org/iwm">iwm(4)</a> support
                    534:        for 9260 and 9560 devices.
                    535:     <li>Fixed <a href="https://man.openbsd.org/iwm">iwm(4)</a> support
                    536:        and loaded new firmware for 3168 devices.<
                    537:     <li>Fixed an automatic Tx rate control issue in <a
                    538:        href="https://man.openbsd.org/iwm">iwm(4)</a> and <a
                    539:        href="https://man.openbsd.org/iwx">iwx(4)</a>.
                    540:     <li>Fixed MIMO rates with firmware-based rate scaling in <a
                    541:        href="https://man.openbsd.org/iwm">iwm(4)</a>.
                    542:     <li>Added support for dynamic queue allocation (DQA) to <a
                    543:        href="https://man.openbsd.org/iwm">iwm(4)</a>.
                    544:     <li>Introduced <a href="https://man.openbsd.org/iwx">iwx(4)</a>, a
                    545:        driver for Intel AX200 WiFi devices.
                    546:     <li>Worked around a race condition in <a
                    547:        href="https://man.openbsd.org/iwm">iwm(4)</a> interrupt handling, and
                    548:        synced the fix to <a href="https://man.openbsd.org/iwx">iwx(4)</a>.
                    549:
                    550:
                    551:
                    552:     <li>Added support for active scan to <a
                    553:        href="https://man.openbsd.org/bwfm">bwfm(4)</a>.
                    554:     <li>Increased throughput of the ifq pressure drop mechanism for <a
                    555:        href="https://man.openbsd.org/bwfm">bwfm(4)</a>.
                    556:     <li>Improved error handling for <a
                    557:        href="https://man.openbsd.org/bwfm">bwfm(4)</a> connection attempts.
                    558:
                    559:     <li>Fixed the <a
                    560:        href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> "media:" line
                    561:        for 11n wifi interfaces during and after a background scan.
                    562:     <li>Fixed an mbuf corruption issue in net80211 hostap mode when overlarge SSIDs are used.
                    563:     <li>Stopped switching to new APs found during background scans
                    564:        with RSSI levels which will also trigger background scans, helping to
                    565:        prevent repeated switching in areas where APs are tuned for low
                    566:        transmit range.
                    567:     <li>Increased the net80211 node cache size.
                    568:     <li>Reduced stalling with lossy wifi by improving net80211
                    569:        handling of the Rx block ack sequence number window and queue.
                    570:     <li>Prevented a crash in ieee80211_node2req() which could be
                    571:        triggered by an <a href="https://man.openbsd.org/ioctl">ioctl(2)</a>
                    572:        if the driver had not yet initialized the channel map.
                    573:     <li>Stopped connecting to available open wifi networks when an
                    574:        interface is marked up. This behavior must now be explicitly enabled
                    575:        with <code><a href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> join
                    576:        ""</code>.
                    577:     <li>Fixed MiRA's sub-frame error rate computation.
                    578:     <li>Lowered the priority of APs which fail to connect in the <a
                    579:        href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> join list,
                    580:        allowing switching wifi networks by moving between them without having
                    581:        to down/up the interface or suspend/resume.
                    582:     <li>Triggered a background scan when root runs the <a
                    583:        href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> scan command,
                    584:        updating the list of cached APs for future scans and forcing a search
                    585:        for a better AP to roam to.
                    586:     <li>Raised net80211's "beacon miss" threshold to avoid frequent
                    587:        reconnects to APs suffering packet loss due to distance.
                    588:     <li>Made background scans less frequent when choosing the same AP.
                    589:   </ul>
                    590:
                    591: <li>Generic network stack improvements and bugfixes:
                    592:   <ul>
                    593:
                    594:     <li>Fixed a panic when using <a href="https://man.openbsd.org/pppac">
                    595:        pppac(4)</a> without <a href="https://man.openbsd.org/pipex">pipex(4)</a>.
                    596:     <li>Fixed a "route contains no arp information" bug where a kernel routing
                    597:        table entry was incorrectly deleted upon insertion of a new entry.
                    598:     <li>Stopped processing packets under non-exclusive netlock, preventing
                    599:        concurrency in the socket layer.
                    600:     <li>Prevented data corruption on UDP receive socket buffers by grabbing the
                    601:        exclusive NET_LOCK() in the softnet thread.
                    602:     <li>Fixed a kernel crash due to unlimited recursion caused by
                    603:        local outbound UDP broadcast/multicast packets sent by a spliced
                    604:        socket.
                    605:     <li>Added IPv6 support to <a href="https://man.openbsd.org/umb">umb(4)</a>.
                    606:     <li>Added support for very old firmware umsm devices with <a
                    607:        href="https://man.openbsd.org/umsm">umsm(4)</a> rather than <a
                    608:        href="https://man.openbsd.org/umb">umb(4)</a>.
                    609:     <li>Added <a href="https://man.openbsd.org/pppac">pppac(4)</a>
                    610:        code for a dedicated PPP Access Concentrator interface and switched <a
                    611:        href="https://man.openbsd.org/npppd.conf">npppd.conf(5)</a> to use <a
                    612:        href="https://man.openbsd.org/pppac">pppac(4)</a> instead of <a
                    613:        href="https://man.openbsd.org/tun">tun(4)</a>.
                    614:     <li>Added a check when IP forwarding is disabled to ensure packet
                    615:        destination address matches interface address.
                    616:     <li>Fixed kernel crash in pf_ioctl with WITH_PF_LOCK and NET_TASKQ > 1.
                    617:     <li>Ensured proper kernel stack alignment on mips64, fixing a
                    618:        panic on octeon related to <a
                    619:        href="https://man.openbsd.org/pppoe">pppoe(4)</a>.
                    620:     <li>Added <a href="https://man.openbsd.org/rge">rge(4)</a>, a new
                    621:        driver for Realtek 8125 PCI Express 2.5Gb ethernet devices.
                    622:     <li>Repaired the "set delay" option for <a
                    623:        href="https://man.openbsd.org/pf">pf(4)</a> to function as specified
                    624:        in <a href="https://man.openbsd.org/pf.conf">pf.conf(5)</a>.
                    625:     <li>Prevented non-root users from using <a
                    626:        href="https://man.openbsd.org/ioctl">ioctl(2)</a> to alter the address
                    627:        of a network interface.
                    628:     <li>Prevented non-root users from setting the parameters of <a
                    629:        href="https://man.openbsd.org/pppoe">pppoe(4)</a> interfaces.
                    630:     <li>Removed mobileip(4).
                    631:     <li>Stopped checking whether the IPv6 source address of a neighbor
                    632:        advertisement is from a neighbor's address, not required in accordance
                    633:        with RFC 4861.
                    634:
                    635:   </ul>
                    636:
                    637: <li>Installer improvements:
                    638:   <ul>
                    639:     <li>Simplified <a
                    640:        href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> directory
                    641:        check and creation (/home/_syspatch). It can now be a symlink.
                    642:     <li>Printed the URL when <a
                    643:        href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> fetches
                    644:        new sets.
                    645:     <li>Added an opportunistic run of <a
                    646:        href="https://man.openbsd.org/fw_update">fw_update(1)</a> to <a
                    647:        href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> before
                    648:        rebooting to run the upgrade.
                    649:   </ul>
                    650:
                    651: <li>Security improvements:
                    652:   <ul>
                    653:     <li><a href="https://man.openbsd.org/unveil.2">unveil(2)</a> is
                    654:       now used in XXX userland programs to redact filesystem access.
                    655:     <li>Used <a href="https://man.openbsd.org/unveil">unveil(2)</a> to
                    656:        reduce filesystem access in <a
                    657:        href="https://man.openbsd.org/vmstat">vmstat(8)</a>, <a
                    658:        href="https://man.openbsd.org/iostat">iostat(8)</a> and <a
                    659:        href="https://man.openbsd.org/systat">systat(1)</a>.
                    660:     <li><span style="color: red;">mention unveil in ports? Maybe under "Ports and packages" below?</span>
                    661:
                    662: <!-- dig -->
                    663:     <li>Extracted <a href="https://man.openbsd.org/dig">dig(1)</a>, <a
                    664:        href="https://man.openbsd.org/host">host(1)</a> and <a
                    665:        href="https://man.openbsd.org/nslookup">nslookup(1)</a> from the
                    666:        bind(8) source code, cleanup the source code by removing not needed
                    667:        features and auditing it. The kernel API accessible to these
                    668:        programs is now restricted through <a
                    669:        href="https://man.openbsd.org/pledge">pledge(2)</a>.
1.2       deraadt   670:     <li>System calls may now only be performed from selected code regions:
                    671:        the main program, <a href="https://man.openbsd.org/ld.so">ld.so(1)</a>,
                    672:        libc.so and the signal trampoline. A new system call
                    673:        <a href="https://man.openbsd.org/msyscall">msyscall(2)</a> indicates
                    674:        the the libc range, and activates the locking.  This change hardens
                    675:        against some attack methods.
1.1       benno     676:     <li>Prevented stack trace saving from inspecting untrusted data on
                    677:        amd64, arm64 and i386.
                    678:     <li>Used lfence in place of stac/clac on pre-SMAP CPUs to protect
                    679:        against Load-Value-Injection attacks against the kernel.
                    680:     <li>Prevented a panic due to missing <a
                    681:        href="https://man.openbsd.org/sysctl">sysctl(2)</a> input validation.
                    682:     <li>Injected failure to fetch entropy with an rdrand() timeout as
                    683:        an entropic event, along with an additional rdtsc measuring the vmexit
                    684:        latency.
                    685:     <li>Enforced that <a href="https://man.openbsd.org/ksh">ksh(1)</a>
                    686:        TMOUT is an integer literal to prevent command execution from the
                    687:        environment at shell initialization time.
                    688:     <li>Ensured the first 2MB page of the amd64 kernel is correctly
                    689:        mapped read-only in the direct map.
                    690:     <li>Addressed an arm64 speculative execution issue by changing the
                    691:        arm64 system call ABI to skip two instructions and inserting a barrier
                    692:        after each system call.
                    693:     <li>Fixed arm64 speculative execution of instructions after ERET,
                    694:        which had led to spectre-like effects on some processors.
                    695:     <li>Tightened permissions for USB device nodes.
                    696:     <li>Ensured that <a
                    697:        href="https://man.openbsd.org/ld.so">ld.so(1)</a> removed the
                    698:        LD_LIBRARY_PATH environment variable for set-user-ID and set-group-ID
                    699:        executables in low memory conditions.
                    700:     <li>Added support for RSA-PSS to <a
                    701:        href="https://man.openbsd.org/crypto">crypto(3)</a>.
                    702:     <li>Added retguard for octeon/mips64.
                    703:
                    704:     <li>The following security bugs were addressed:
                    705:       <ul>
                    706:        <li>Reset the login class each time through the loop when using -L
                    707:            (loop) mode with <a href="https://man.openbsd.org/su">su(1)</a>. Fixes
                    708:            CVE-2019-19519.
                    709:        <li>Fixed insufficient username validation performed by libc's
                    710:            authentication privilege separation layer and added additional
                    711:            validation points, further validating in <a
                    712:            href="https://man.openbsd.org/login">login(1)</a> and <a
                    713:            href="https://man.openbsd.org/su">su(1)</a>.
                    714:        <li>Prevented escalation to the auth group in <a
                    715:            href="https://man.openbsd.org/xlock">xlock(1)</a> through path-related
                    716:            environment variables and disabled mesa and opengl functionality.
                    717:       </ul>
                    718:   </ul>
                    719:
                    720: <li>Routing daemons and other userland network improvements:
                    721:   <ul>
                    722: <!-- bgpd -->
                    723:     <li>Store both IPv4 and IPv6 addresses with local-address in <a
                    724:        href="https://man.openbsd.org/bgpd">bgpd(8)</a>, allowing
                    725:        configuration of both an IPv4 and IPv6 local-address on a group with
                    726:        correct binding of neighbors. Introduced 'no local-address' to reset a
                    727:        previously-set local address back to zero. This helps to reduce
                    728:        repetition in the configuration.
                    729:     <li>Aggregated duplicate <a
                    730:        href="https://man.openbsd.org/bgpd">bgpd(8)</a> roa table
                    731:        prefix/source-as combos as a single entry with the longest maxlen
                    732:        length.
                    733:     <li>Extended <a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>
                    734:        'show neighbor' to include the received and set prefix count, as well
                    735:        as the max-prefix out limit if set.
                    736:     <li>Implemented <a
                    737:        href="https://man.openbsd.org/bgpd.conf">bgpd.conf(5)</a>
                    738:        <code>max-prefix NUM out</code> to limit the number of announced
                    739:        prefixes, avoiding leaks of full tables to upstreams and peers.
                    740:     <li>Began marking stale prefixes in the Adj-RIB-out during
                    741:        graceful reload of <a href="https://man.openbsd.org/bgpd">bgpd(8)</a>
                    742:        and fixed prefix_withdraw to check the correct prefix flags before
                    743:        removing a prefix from the update or withdraw tree.
                    744:     <li>Fixed a bug with the fatal <a
                    745:        href="https://man.openbsd.org/bgpd">bgpd(8)</a> non-existing prefix
                    746:        call to ensure the missing prefix is inserted into the prefix tree.
                    747:     <li>Fixed <a href="https://man.openbsd.org/bgpd">bgpd(8)</a>
                    748:        crashes where the nexthop_runners tail queue was corrupted.
                    749: <!-- OSPF -->
                    750:     <li>Allowed configuration of the <a
                    751:        href="https://man.openbsd.org/ospfd">ospfd(8)</a> interface setting
                    752:        "type p2p" to be configured globally or per area.
                    753:     <li>Added point-to-point <a
                    754:        href="https://man.openbsd.org/ospf6d">ospf6d(8)</a> support for
                    755:        broadcast interfaces.
                    756: <!-- iked -->
                    757:     <li>Added <a href="https://man.openbsd.org/iked">iked(8)</a>
                    758:        support for switching rdomain on <a
                    759:        href="https://man.openbsd.org/ipsec">ipsec(4)</a>
                    760:        encryption/decryption, configurable per policy with the new 'rdomain'
                    761:        option in <a
                    762:        href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
                    763:     <li>Added support for automatically moving traffic between
                    764:        rdomains on <a href="https://man.openbsd.org/ipsec">ipsec(4)</a>
                    765:        encryption or decryption, reducing the attack surface for network
                    766:        sidechannel attacks.
                    767:     <li>Modified <a href="https://man.openbsd.org/iked">iked(8)</a> to
                    768:        always prefer generic signature authentication.
                    769:     <li>Fixed an <a href="https://man.openbsd.org/iked">iked(8)</a>
                    770:        pubkey leak in the CA process for ASN-DN IDs.
                    771:     <li>Reduced temporary address valid lifetime to 2 days in <a
                    772:        href="https://man.openbsd.org/slaacd">slaacd(8)</a>.
                    773:     <li>Fixed user database corruption resulting from use of the <a
                    774:        href="https://man.openbsd.org/ikectl">ikectl(8)</a> reload command.
                    775:     <li>Added the <a
                    776:        href="https://man.openbsd.org/ikectl">ikectl(8)</a> "show sa" command
                    777:        to print information about the state of negotiated IKE SAs, their
                    778:        Child SAs and the resulting IPsec flows.
                    779:     <li>Added an <a
                    780:        href="https://man.openbsd.org/ikectl">ikectl(8)</a> "reset id" command
                    781:        to reset all SAs from policies with matching destination IDs.
                    782:     <li>Corrected <a href="https://man.openbsd.org/iked">iked(8)</a>
                    783:        calculation of IPv6 address leases from small address pools.
                    784:     <li>Added a policy relookup to <a
                    785:        href="https://man.openbsd.org/iked">iked(8)</a> to replace the default
                    786:        policy based on a received cryptographic parameter proposal.
                    787:     <li>Added transport mode for child SAs to <a
                    788:        href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
                    789:     <li>Extended the <a
                    790:        href="https://man.openbsd.org/ipsecctl">ipsecctl(8)</a> parser to set
                    791:        the udpencap flag and port number of an SA.
                    792:     <li>Added a -p command line option to <a
                    793:        href="https://man.openbsd.org/iked">iked(8)</a> allowing configuration
                    794:        of the UDP encapsulation port.
                    795:     <li>Removed IPsec flow blocking unencrypted IPv6 traffic in <a
                    796:        href="https://man.openbsd.org/iked">iked(8)</a>.
                    797:     <li>Fixed <a href="https://man.openbsd.org/isakmpd">isakmpd(8)</a>
                    798:        IKE pcap file creation.
                    799:     <li>Enabled ESP UDP-encapsulation with the <a
                    800:        href="https://man.openbsd.org/iked">iked(8)</a> -t flag.
                    801: <!-- other daemons -->
                    802:     <li>Validated authentication lengths in <a
                    803:        href="https://man.openbsd.org/ripd">ripd(8)</a> before use to prevent
                    804:        crashes.
                    805:     <li>Fixed empty response packages sent out by <a
                    806:        href="https://man.openbsd.org/ripd">ripd(8)</a> when entries are
                    807:        skipped due to split-horizon simple.
                    808:     <li>Correctly parse "0/0" as the default route when specifying
                    809:        the classless-[ms-]static-routes options in <a
                    810:        href="https://man.openbsd.org/dhcpd.conf">dhcpd.conf(5)</a>.
                    811:     <li>Allowed <a
                    812:        href="https://man.openbsd.org/dhclient">dhclient(8)</a> configuration
                    813:        of <a href="https://man.openbsd.org/carp">carp(4)</a> interfaces.
                    814:     <li>Rejected leases in <a
                    815:        href="https://man.openbsd.org/dhclient">dhclient(8)</a> not providing
                    816:        a subnet mask for the address being provided.
                    817:     <li>Constrained and corrected the routes being deleted when
                    818:        applying a new lease in <a
                    819:        href="https://man.openbsd.org/dhclient">dhclient(8)</a> and corrected
                    820:        route comparison. This corrects a network failure with "arpresolve:
                    821:        ... route contains no information".
                    822:     <li>Made <a href="https://man.openbsd.org/slaacd">slaacd(8)</a>
                    823:        honor the rdomain in which it runs when configuring the default route.
                    824:     <li>Withdrew all proposals on <a
                    825:        href="https://man.openbsd.org/slaacd">slaacd(8)</a> startup to prevent
                    826:        indefinite retention of nameservers on interfaces no longer flagged
                    827:        for autoconf.
                    828:     <li>Modified <a href="https://man.openbsd.org/ldpd">ldpd(8)</a> to
                    829:        lookup the adjacency by LSR id as well as source IP address, as the
                    830:        remote peer may change its LSR id.
                    831:
                    832: <!-- other programs -->
                    833:     <li>Added support for printing RFC 2332 NBMA Next Hop Resolution Protocol
                    834:        (NHRP) to <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>.
                    835:     <li>Added <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>
                    836:        support for printing RFC 8300 Network Service Header (NSH).
                    837:     <li>Added <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>
                    838:        support for VXLAN-GPE.
                    839:     <li>Fixed a <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>
                    840:        crash when printing the contents of a malformed packet where the
                    841:        packet length was smaller than the size of the usbpcap header.
                    842:
                    843:     <li>Rewrote dhcpv6 parsing in <a
                    844:        href="https://man.openbsd.org/tcpdump">tcpdump(8)</a> to match the
                    845:        RFC, correctly handling dhcpv6 messages.
                    846:     <li>Accept netmask for IPv6 in <a
                    847:        href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> instead of
                    848:        ignoring it and using only the prefixlen argument.
                    849:
                    850:     <li>Fixed <a href="https://man.openbsd.org/snmp">snmp(1)</a> agent
                    851:        address parsing to allow IPv6 addresses to be used based on format,
                    852:        allow those without brackets to skip the port if it results in a
                    853:        nonsensical address (allowing use of ::1), and try to connect to the
                    854:        address immediately.
                    855:     <li>Implemented a df subcommand for <a
                    856:        href="https://man.openbsd.org/snmp">snmp(1)</a> which outputs disk and
                    857:        memory information in a <a href="https://man.openbsd.org/df">df(1)</a>
                    858:        format.
                    859:     <li>Implemented a -Cs option in <a
                    860:        href="https://man.openbsd.org/snmp">snmp(1)</a> for snmp walk and
                    861:        bulkwalk, allowing subsections of a tree to be skipped.
                    862:
                    863:     <li>Added retries and timeouts for test packets to <a
                    864:        href="https://man.openbsd.org/radiusctl">radiusctl(8)</a>.
                    865:
                    866:
                    867:     <li>Corrected http auth combined with proxy auth in <a
                    868:        href="https://man.openbsd.org/ftp">ftp(1)</a>.
                    869:     <li>Corrected <a href="https://man.openbsd.org/ftp">ftp(1)</a>
                    870:        access to an https server with user/password through the "http_proxy"
                    871:        environment variable.
                    872:     <li>Fixed <a href="https://man.openbsd.org/ftp">ftp(1)</a>
                    873:        tls_handshake() usage, which would break ftp if an handshake wasn't
                    874:        successfully completed in one try.
                    875:     <li>Prevented <a href="https://man.openbsd.org/ftp">ftp(1)</a>
                    876:        from following remote redirects to local files.
                    877:     <li>Implemented HTTP/1.1 in <a href="https://man.openbsd.org/ftp">ftp(1)</a>.
                    878:     <li>Added new -N name option to <a
                    879:        href="https://man.openbsd.org/ftp">ftp(1)</a>, allowing calling
                    880:        scripts to change the progname and produce better error messages.
                    881:
                    882:     <li>Allowed <a href="https://man.openbsd.org/pfctl">pfctl(8)</a>
                    883:        to recursively flush rules and tables.
                    884:     <li>Ensured rdr-to with loopback destination will work even when
                    885:        IP forwarding is disabled.
                    886:
                    887: <!-- rpki-client -->
                    888:
                    889:     <li>Enabled <a
                    890:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a>, a free,
                    891:        easy-to-use implementation of the Resource Public Key Infrastructure
                    892:        (RPKI) for Relying Parties (RP) to facilitate validation of the Route
                    893:        Origin of a BGP announcement. The program queries the RPKI repository
                    894:        system and outputs Validated ROA Payloads in the configuration format
                    895:        of OpenBGPD, BIRD, and also as CSV or JSON objects for consumption by
                    896:        other routing stacks.
                    897:     <li>Modified root's <a
                    898:        href="https://man.openbsd.org/crontab">crontab(1)</a> to run <a
                    899:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> and
                    900:        reload <a href="https://man.openbsd.org/bgpd">bgpd(8)</a>
                    901:        configuration, enabling RPKI ROA filtering.
                    902:     <li>Stopped hardcoding the cache directory for <a
                    903:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a>. Cache
                    904:        and output directory will use defaults for root users and must be
                    905:        specified by non-root users.
                    906:     <li>Made <a
                    907:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> use
                    908:        with the existing cache and not exit if rsync(1) exits non-zero.
                    909:     <li>Fixed <a
                    910:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> -j
                    911:        option, which had not been producing any output.
                    912:     <li>Generated three different BIRD outputs with <a
                    913:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> -B: v1
                    914:        with IPv4 and IPv6 routes, and v2.
                    915:     <li>Rewrote the time validity check for mtfs in <a
                    916:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> to
                    917:        correctly account for the timezone.
                    918:     <li>Added <a
                    919:        href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> output
                    920:        formats for bird and CSV.
                    921:
                    922: <!-- unwind -->
                    923:
                    924:     <li>Implemented <a
                    925:        href="https://man.openbsd.org/unwindctl">unwindctl(8)</a> status
                    926:        memory to show cache memory usage.
                    927:     <li>Allowed forcing specific domains to be resolved by specific
                    928:        resolvers in <a
                    929:        href="https://man.openbsd.org/unwind.conf">unwind.conf(5)</a>,
                    930:        handling typical split-horizon setups.
                    931:     <li>Decayed the <a
                    932:        href="https://man.openbsd.org/unwind">unwind(8)</a> resolver histogram
                    933:        data over time to reflect strategy performance.
                    934:     <li>Measured performance of resolving strategies in <a
                    935:        href="https://man.openbsd.org/unwind">unwind(8)</a>, sorting them and
                    936:        choosing the next best strategy when one fails.
                    937:     <li>Removed captive portal detection from <a
                    938:        href="https://man.openbsd.org/unwind">unwind(8)</a>.
                    939:     <li>Added tracking of which interfaces have learned nameservers to
                    940:        <a href="https://man.openbsd.org/unwind">unwind(8)</a>.
                    941:     <li>Began resolving captive portal hosts internally in <a
                    942:        href="https://man.openbsd.org/unwind">unwind(8)</a>.
                    943:     <li>Implemented DNS proposals in <a
                    944:        href="https://man.openbsd.org/unwind">unwind(8)</a> to learn
                    945:        nameservers from network autoconfiguration daemons.
                    946:     <li>Moved /usr and var remounting earlier to allow <a
                    947:        href="https://man.openbsd.org/unwind">unwind(8)</a> to start before <a
                    948:        href="https://man.openbsd.org/pf">pf(4)</a> is configured.
                    949:     <li>Added opportunistic DoT support to <a
                    950:        href="https://man.openbsd.org/unwind">unwind(8)</a>.
                    951:     <li>Added an ASR resolver type to <a
                    952:        href="https://man.openbsd.org/unwind">unwind(8)</a>, using the libc
                    953:        asynchronous resolver directly with DHCP-provided nameservers.
                    954:        Switched to the ASR resolver rather than DHCP when behind a captive
                    955:        portal.
                    956:   </ul>
                    957:
                    958: <li><a href="https://man.openbsd.org/tmux">tmux(1)</a> improvements and bugfixes:
                    959:   <ul>
                    960:     <li>Indicated the marked pane in <a
                    961:        href="https://man.openbsd.org/tmux">tmux(1)</a> choose mode in
                    962:        reverse, and added keys to set (m) and clear it (M), and to jump to
                    963:        the starting pane (H).
                    964:     <li>Allowed <a href="https://man.openbsd.org/tmux">tmux(1)</a>
                    965:        main-pane-width and height to be specified as percentages.
                    966:     <li>Added a -f filter argument to the <a
                    967:        href="https://man.openbsd.org/tmux">tmux(1)</a> list commands like
                    968:        choose-tree.
                    969:     <li>Added an -s flag to <a
                    970:        href="https://man.openbsd.org/tmux">tmux(1)</a> copy-mode to specify a
                    971:        different pane for the source content.
                    972:     <li>Added a W position to <a
                    973:        href="https://man.openbsd.org/tmux">tmux(1)</a> display-menu -y to use
                    974:        the line above or below the status line containing the window list.
                    975:     <li>Added a -T flag to <a
                    976:        href="https://man.openbsd.org/tmux">tmux(1)</a> resize-pane to trim
                    977:        lines below the cursor.
                    978:     <li>Added non-regex search variants to <a
                    979:        href="https://man.openbsd.org/tmux">tmux(1)</a>.
                    980:     <li>Added support for <a
                    981:        href="https://man.openbsd.org/tmux">tmux(1)</a> overlay popup boxes,
                    982:        created with the display-popup command.
                    983:     <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a> -d
                    984:        flag to run-shell to wait for delay before running the command (or
                    985:        delay with no command).
                    986:     <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a>
                    987:        copy-mode -H flag to hide the position marker in the top right.
                    988:     <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> C-g
                    989:        to cancel command prompt with <a
                    990:        href="https://man.openbsd.org/vi">vi(1)</a> keys as well as emacs, and
                    991:        q in command mode.
                    992:     <li>Modified <a href="https://man.openbsd.org/tmux">tmux(1)</a> -S
                    993:        server socket to be created with umask 177 rather than 117.
                    994:     <li>Introduced a <a
                    995:        href="https://man.openbsd.org/tmux">tmux(1)</a> selection_active
                    996:        format for when the selection is present but not moving with the
                    997:        cursor.
                    998:     <li>Added -a to the list-keys command in <a
                    999:        href="https://man.openbsd.org/tmux">tmux(1)</a> to also list keys
                   1000:        without notes with -N.
                   1001:     <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> support
                   1002:        for adding a note to a key binding with bind-key -N and using this to
                   1003:        add descriptions to the default key binding. Using list-keys -N shows
                   1004:        key bindings with notes. Changed the default ? binding to show a
                   1005:        readable summary of keys.
                   1006:     <li>Removed the <a href="https://man.openbsd.org/tmux">tmux(1)</a>
                   1007:        terminal type in favor of flags DECSLRM and DECFRA.
                   1008:     <li>Added -Z to the default <a
                   1009:        href="https://man.openbsd.org/tmux">tmux(1)</a> switch-client command
                   1010:        in tree mode.
                   1011:     <li>Prevented read-only <a
                   1012:        href="https://man.openbsd.org/tmux">tmux(1)</a> clients from limiting
                   1013:        the size.
                   1014:     <li>Added support for regex searches in <a
                   1015:        href="https://man.openbsd.org/tmux">tmux(1)</a> copy mode.
                   1016:     <li>Modified <a href="https://man.openbsd.org/tmux">tmux(1)</a>
                   1017:        source-file to allow reading from stdin.
                   1018:     <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a> p
                   1019:        format modifier for padding to width.
                   1020:     <li>Added -f for full size to join-pane in <a
                   1021:        href="https://man.openbsd.org/tmux">tmux(1)</a>.
                   1022:     <li>Changed <a href="https://man.openbsd.org/tmux">tmux(1)</a>
                   1023:        new-session -A to attach to the best existing session when a session
                   1024:        name is not specified, rather than creating a new session.
                   1025:     <li>Added an option to <a
                   1026:        href="https://man.openbsd.org/tmux">tmux(1)</a> to set the key sent by
                   1027:        backspace for systems using ^H.
                   1028:     <li>Added -F flag to <a
                   1029:        href="https://man.openbsd.org/tmux">tmux(1)</a> send-keys to expand
                   1030:        formats in search-backward and forward copy mode commands.
                   1031:     <li>Added support for percentage sizes to <a
                   1032:        href="https://man.openbsd.org/tmux">tmux(1)</a> resize-pane ("-x 10%")
                   1033:        and changed split-window and join-pane -l to accept similar
                   1034:        percentages, deprecating the -p option.
                   1035:   </ul>
                   1036:
                   1037: <li>VMM/VMD improvements
                   1038:   <ul>
                   1039:     <li>Added <a href="https://man.openbsd.org/vmm">vmm(4)</a> IOCTL
                   1040:        handler to set the access protections of the ept.
                   1041:     <li>Added a check in <a
                   1042:        href="https://man.openbsd.org/vmm">vmm(4)</a> for <a
                   1043:        href="https://man.openbsd.org/pvclock">pvclock(4)</a> struct crossing
                   1044:        of page boundaries, which could potentially corrupt host memory.
                   1045:     <li>Tightened rdmsr on svm in <a href="https://man.openbsd.org/vmm">vmm(4)</a>.
                   1046:     <li>Fixed an issue where a <a
                   1047:        href="https://man.openbsd.org/vmm">vmm(4)</a> guest could write to
                   1048:        host memory by passing bogus addresses in <a
                   1049:        href="https://man.openbsd.org/pvclock">pvclock(4)</a>.
                   1050:     <li>Run <a href="https://man.openbsd.org/cu">cu(1)</a> in
                   1051:        restricted mode using -r in <a
                   1052:        href="https://man.openbsd.org/vmctl">vmctl(8)</a> and <a
                   1053:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a>.
                   1054:     <li>Started virtual machines defined in <a
                   1055:        href="https://man.openbsd.org/vm.conf">vm.conf(5)</a> in a staggered
                   1056:        fashion, helping prevent overload of the host and improper tsc
                   1057:        calibration in guests.
                   1058:     <li>Provided proper concurrency control when pausing a vm in <a
                   1059:        href="https://man.openbsd.org/vmd">vmd(8)</a>.
                   1060:     <li>Fixed a panic when tearing down vms with <a
                   1061:        href="https://man.openbsd.org/vmm">vmm(4)</a>.
                   1062:   </ul>
                   1063:
                   1064:
                   1065: <li>ldom/sparc64 virtualization improvements
                   1066:   <ul>
                   1067:     <li>Added support for devaliases for vnet in <a
                   1068:        href="https://man.openbsd.org/ldom.conf">ldom.conf(5)</a>.
                   1069:     <li>Implemented <a
                   1070:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> "panic -c" to
                   1071:        panic a guest domain (and enter <a
                   1072:        href="https://man.openbsd.org/ddb">ddb(4)</a>).
                   1073:     <li>Implemented "start -c" in <a
                   1074:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> to automatically
                   1075:        connect to the console.
                   1076:     <li>Introduced a -n option to <a
                   1077:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> to validate the
                   1078:        configuration file and exit.
                   1079:     <li>Added a create-vdisk command to <a
                   1080:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> analogous to
                   1081:        amd64's <a href="https://man.openbsd.org/vmctl">vmctl(8)</a> create.
                   1082:     <li>Added the "console" command to <a
                   1083:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> which executes
                   1084:        <a href="https://man.openbsd.org/cu">cu(1)</a> on the domain's
                   1085:        console.
                   1086:     <li>Printed guest domain <a
                   1087:        href="https://man.openbsd.org/vcctty">vcctty(4)</a> devices in status
                   1088:        output in <a href="https://man.openbsd.org/ldomctl">ldomctl(8)</a>.
                   1089:     <li>Added list-io command to <a
                   1090:        href="https://man.openbsd.org/ldomctl">ldomctl(8)</a>, listing the
                   1091:        available PCIe devices to be used with the iodevice parameter in <a
                   1092:        href="https://man.openbsd.org/ldom.conf">ldom.conf(5)</a>.
                   1093:   </ul>
                   1094:
                   1095: <li>OpenSMTPD 6.7.0
                   1096:   <ul>
                   1097:     <li>New Features
                   1098:       <ul>
                   1099:
                   1100:        <li>Allowed use of the <a
                   1101:            href="https://man.openbsd.org/smtpd">smtpd(8)</a> session username in
                   1102:            built-in filters when available.
                   1103:        <li>Introduced option filter-pf-addresses to <a
                   1104:            href="https://man.openbsd.org/snmpd.conf">snmpd.conf(5)</a>, allowing
                   1105:            the OPENBSD-PF-MIB::pfTblAddrTable tree to be filtered out when many
                   1106:            prefixes are stored in pf tables, reducing CPU usage during bulk
                   1107:            walks.
                   1108:        <li>Introduced a bypass keyword to <a
                   1109:            href="https://man.openbsd.org/smtpd">smtpd(8)</a> so that built-in
                   1110:            filters can bypass processing when a condition is met.
                   1111:        <li>Allowed use of 'auth' as an origin in <a
                   1112:            href="https://man.openbsd.org/smtpd.conf">smtpd.conf(5)</a>.
                   1113:        <li>Allowed use of mail-from and rctp-to as for and from parameters
                   1114:            in <a href="https://man.openbsd.org/smtpd.conf">smtpd.conf(5)</a>.
                   1115:        <li>Stored <a href="https://man.openbsd.org/smtp">smtp(1)</a> session
                   1116:            usernames in an envelope, allowing the ruleset to match specific users
                   1117:            or mailing addresses.
                   1118:
                   1119:
                   1120:       </ul>
                   1121:     <li>Bug fixes
                   1122:       <ul>
                   1123:        <li>Ensured legacy <a href="https://man.openbsd.org/ssl">ssl(8)</a>
                   1124:            session ID is persistent during a client TLS session, fixing an issue
                   1125:            using TLSv1.3 with smtp.mail.yahoo.com.
                   1126:        <li>Fixed security vulnerabilities in <a
                   1127:            href="https://man.openbsd.org/smtpd">smtpd(8)</a>. Corrected an
                   1128:            out-of-bounds read in smtpd allowing an attacker to inject arbitrary
                   1129:            commands into the envelope file to be executed as root, and ensured
                   1130:            privilege revocation in <a
                   1131:            href="https://man.openbsd.org/smtpctl">smtpctl(8)</a> to prevent
                   1132:            arbitrary commands from being run with the _smtpq group.
                   1133:        <li>Allowed <a
                   1134:            href="https://man.openbsd.org/mail.local">mail.local(8)</a> to be run
                   1135:            as non-root, opening a pipe to <a
                   1136:            href="https://man.openbsd.org/lockspool">lockspool(1)</a> for file
                   1137:            locking.
                   1138:        <li>Fixed a security vulnerability in <a
                   1139:            href="https://man.openbsd.org/smtpd">smtpd(8)</a> which could lead to
                   1140:            a privilege escalation on mbox deliveries and unprivileged code
                   1141:            execution on lmtp deliveries.
                   1142:        <li>Added support for CIDR in a: spf atoms in <a
                   1143:            href="https://man.openbsd.org/smtpd">smtpd(8)</a>.
                   1144:        <li>Fixed a possible crash in <a
                   1145:            href="https://man.openbsd.org/smtpd">smtpd(8)</a> when combining "from
                   1146:            rdns" with nested virtual aliases under a particular configuration.
                   1147:
                   1148:       </ul>
                   1149:     <li>Experimental Features
                   1150:       <ul>
                   1151:        <li>...
                   1152:       </ul>
                   1153:   </ul>
                   1154:
                   1155: <li>LibreSSL 3.1.0
                   1156:   <ul>
                   1157: <!-- XXX remove these when adding the LibreSSL Changelog -->
                   1158: <!--
                   1159:     <li>Added a -groups option to the <a
                   1160:        href="https://man.openbsd.org/openssl">openssl(1)</a> s_server,
                   1161:        allowing EC groups to be configured.
                   1162:     <li>Added <a href="https://man.openbsd.org/openssl">openssl(1)</a>
                   1163:        s_client -tls1_3 and -notls1_3 options.
                   1164:     <li>Added support for handling hello retry requests in the <a
                   1165:        href="https://man.openbsd.org/ssl">ssl(8)</a> TLSv1.3 client.
                   1166:     <li>Added support for legacy message callbacks, making <a
                   1167:        href="https://man.openbsd.org/openssl">openssl(1)</a> s_client -msg
                   1168:        work for handshake messages.
                   1169:     <li>Completed the initial TLSv1.3 implementation.
                   1170:     <li>Switched to encrypted records in the TLSv1.3 server.
                   1171:     <li>Enabled processing and use of signature algorithms in TLSv1.3.
                   1172:     <li>Added support for TLS 1.3 post handshake handshake messages
                   1173:        and key updates to <a href="https://www.libressl.org/">LibreSSL</a>.
                   1174:     <li>Added -keyopt option to <a
                   1175:        href="https://man.openbsd.org/openssl">openssl(1)</a> cms subcommand,
                   1176:        providing rsa_padding_mode:oaep for cms -encrypt and
                   1177:        rsa_padding_mode:pss for cms -sign.
                   1178: -->
                   1179:     <li>API and Documentation Enhancements
                   1180:     <ul>
                   1181:       <li>...
                   1182:     </ul>
                   1183:
                   1184:     <li>Compatibility Changes
                   1185:     <ul>
                   1186:       <li>...
                   1187:     </ul>
                   1188:
                   1189:     <li>Testing and Proactive Security
                   1190:     <ul>
                   1191:       <li>...
                   1192:     </ul>
                   1193:
                   1194:     <li>Internal Improvements
                   1195:       <ul>
                   1196:       <li>...
                   1197:       </ul>
                   1198:
                   1199:     <li>Portable Improvements
                   1200:     <ul>
                   1201:       <li>...
                   1202:     </ul>
                   1203:
                   1204:     <li>Bug Fixes
                   1205:     <ul>
                   1206:       <li>...
                   1207:     </ul>
                   1208:   </ul>
                   1209:
                   1210: <li>OpenSSH 8.1
                   1211:   <ul>
                   1212:     <li>New Features
                   1213:       <ul>
                   1214:        <li>Allowed use of the IgnoreRhosts directive anywhere in an <a
                   1215:            href="https://man.openbsd.org/sshd_config">sshd_config(5)</a> file,
                   1216:            not just before Match blocks, and made it a tri-state option.
                   1217:        <li>Added TOKEN percent expansion (i.e. userid, hostnames etc.) to <a
                   1218:            href="https://man.openbsd.org/ssh">ssh(1)</a> LocalForward and
                   1219:            RemoteForward when used for Unix domain socket forwarding.
                   1220:        <li>Gave <a
                   1221:            href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> the
                   1222:            ability to dump the contents of a binary key revocation list with
                   1223:            <code>ssh-keygen -lQf /path</code>.
                   1224:        <li>Added <a href="https://man.openbsd.org/ssh">ssh(1)</a> -Q key-sig
                   1225:            option for all key and signature types, teaching ssh -Q to accept <a
                   1226:            href="https://man.openbsd.org/ssh_config">ssh_config(5)</a> and <a
                   1227:            href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>
                   1228:            algorithm keywords as an alias for the corresponding query.
                   1229:        <li>Updated to libfido2 780ad3c25.
                   1230:        <li>Added an <a
                   1231:            href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>
                   1232:            "Include" directive to allow inclusion of files.
                   1233:        <li>Removed ssh-rsa (SHA1) from the list of allowed CA signature algorithms.
                   1234:        <li>Removed diffie-hellman-group14-sha1 from the default <a
                   1235:            href="https://man.openbsd.org/ssh">ssh(1)</a> key exchange.
                   1236:        <li>Renamed <a href="https://man.openbsd.org/ssh-add">ssh-add(1)</a>
                   1237:            -O to -K to load resident keys from a FIDO authenticator.
                   1238:        <li>Added the ability to download FIDO2 resident keys from a token
                   1239:            via the <a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>
                   1240:            -K option and save public/private keys into the current directory.
                   1241:        <li>Implemented support for generating FIDO2 resident keys. "ssh-add
                   1242:            -O" will load resident keys from a FIDO2 token and add them to an
                   1243:            ssh-agent. Removed the -x option currently used for the
                   1244:            FIDO/U2F-specific key flags, now under -O.
                   1245:        <li>Removed single letter flags for moduli generation in <a
                   1246:            href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> and moved
                   1247:            all moduli generation options to under the -O flag. Breaks existing
                   1248:            ssh-keygen commandline syntax for moduli-related operations.
                   1249:        <li>Allowed forwarding of a different agent socket to a specified
                   1250:            path in <a href="https://man.openbsd.org/ssh">ssh(1)</a>.
                   1251:        <li>Allowed <a href="https://man.openbsd.org/ssh">ssh(1)</a> security
                   1252:            keys to act as host keys as well as user keys.
                   1253:        <li>Used ssh-sk-helper for all security key signing operations and
                   1254:            security key enrollment. Most <a
                   1255:            href="https://man.openbsd.org/ssh">ssh(1)</a> tools no longer need to
                   1256:            link against libfido2 or interact with /dev/uhid* directly.
                   1257:        <li>Added "no-touch-required" options to <a
                   1258:            href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> and <a
                   1259:            href="https://man.openbsd.org/sshd">sshd(8)</a> to disable touch
                   1260:            requirement for authorized_keys and certificates.
                   1261:        <li>Added an <a
                   1262:            href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>
                   1263:            PubkeyAuthOptions directive allowing specification of whether <a
                   1264:            href="https://man.openbsd.org/sshd">sshd(8)</a> should check whether
                   1265:            user presence was tested before a security key was made.
                   1266:         <li>Added direct support for U2F/FIDO2 security keys in <a
                   1267:            href="https://man.openbsd.org/ssh">ssh(1)</a>.
                   1268:
                   1269:         <li>Added initial infrastructure for U2F/FIDO support in <a
                   1270:            href="https://man.openbsd.org/ssh">ssh(1)</a>.
                   1271:
                   1272:        <li>Notified the user via TTY or $SSH_ASKPASS when <a
                   1273:            href="https://man.openbsd.org/ssh">ssh(1)</a> security keys must be
                   1274:            tapped/touched in order to perform a signature operation.
                   1275:        <li>Enabled ed25519 support in <a
                   1276:            href="https://man.openbsd.org/ssh">ssh(1)</a>.
                   1277:
                   1278:
                   1279:       </ul>
                   1280:     <li>Bugfixes
                   1281:       <ul>
                   1282:        <li>Detected and prevented simple <a
                   1283:                href="https://man.openbsd.org/ssh">ssh(1)</a> configuration loops when
                   1284:                using ProxyJump.
                   1285:        <li>Fixed PIN entry bugs on FIDO <a
                   1286:                href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>.
                   1287:        <li>Fixed <a
                   1288:                href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> not
                   1289:                displaying the authenticator touch prompt.
                   1290:        <li>Prevented a timeout in <a
                   1291:                href="https://man.openbsd.org/ssh">ssh(1)</a> when the server doesn't
                   1292:                immediately send a banner, such as with multiplexers like sslh.
                   1293:        <li>Adjusted on-wire signature encoding for ecdsh-sk <a
                   1294:                href="https://man.openbsd.org/ssh">ssh(1)</a> keys to better match
                   1295:                ec25519-sk keys.
                   1296:        <li>Fixed a potential NULL dereference for revoked hostkeys in <a
                   1297:                href="https://man.openbsd.org/ssh">ssh(1)</a>.
                   1298:        </ul>
                   1299:   </ul>
                   1300:
                   1301: <li>Mandoc
                   1302:   <ul>
                   1303:     <li>Introduced <a
                   1304:        href="https://man.openbsd.org/mandoc">mandoc(1)</a> nodes which are
                   1305:        semantically transparent, skipped when looking for previous or
                   1306:        following high-level macros.
                   1307:     <li>Introduced a new <a
                   1308:        href="https://man.openbsd.org/mdoc">mdoc(7)</a> macro .Tg ("tag") to
                   1309:        explicitly mark a place as defining a term.
                   1310:     <li>Added a Content-Security-Policy HTTP header to <a
                   1311:        href="https://man.openbsd.org/mandoc">mandoc(1)</a> that allows only
                   1312:        CSS.
                   1313:
                   1314:   </ul>
                   1315:
                   1316: <li><p>Ports and packages:
                   1317:   <ul>
                   1318:     <li>Added support for "alpha" suffixes in <a
                   1319:        href="https://man.openbsd.org/packages-specs">packages-specs(7)</a>,
                   1320:        removing the need for workarounds in certain ports distfiles.
                   1321:
                   1322:   </ul>
                   1323:   <p>Many pre-built packages for each architecture:
                   1324:   <!-- number of FTP packages minus SHA256, SHA256.sig, index.txt -->
                   1325:   <ul style="column-count: 3">
                   1326:     <li>aarch64:      XXXX
                   1327:     <li>amd64:        XXXX
                   1328:     <li>arm:          XXXX
                   1329:     <li>i386:         XXXX
                   1330:     <li>mips64:       XXXX
                   1331:     <li>mips64el:     XXXX
                   1332:     <li>powerpc:      XXXX
                   1333:     <li>sparc64:      XXXX
                   1334:   </ul>
                   1335:
                   1336: <li>As usual, steady improvements in manual pages and other documentation.
                   1337:
                   1338: <li>The system includes the following major components from outside suppliers:
                   1339:   <ul>
                   1340:     <li>Xenocara (based on X.Org 7.7 with xserver 1.20.8 + patches,
                   1341:         freetype 2.10.1, fontconfig 2.12.4, Mesa 19.2.8, xterm 344,
                   1342:         xkeyboard-config 2.20 and more)<!-- remove XXX when updated -->
                   1343:     <li>LLVM/Clang 8.0.1 (+ patches)
                   1344:     <li>GCC 4.2.1 (+ patches) and 3.3.6 (+ patches)
                   1345:     <li>Perl 5.30.2 (+ patches)
                   1346:     <li>NSD 4.2.4
                   1347:     <li>Unbound 1.10.0
                   1348:     <li>Ncurses 5.7
                   1349:     <li>Binutils 2.17 (+ patches)
                   1350:     <li>Gdb 6.3 (+ patches)
                   1351:     <li>Awk Dec 20, 2012 version
                   1352:     <li>Expat 2.2.8
                   1353:   </ul>
                   1354: </ul>
                   1355: </section>
                   1356:
                   1357: <hr>
                   1358:
                   1359: <section id=install>
                   1360: <h3>How to install</h3>
                   1361: <p>
                   1362: Please refer to the following files on the mirror site for
                   1363: extensive details on how to install OpenBSD 6.7 on your machine:
                   1364:
                   1365: <ul>
                   1366: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/alpha/INSTALL.alpha">
                   1367:        .../OpenBSD/6.7/alpha/INSTALL.alpha</a>
                   1368: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/amd64/INSTALL.amd64">
                   1369:        .../OpenBSD/6.7/amd64/INSTALL.amd64</a>
                   1370: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/arm64/INSTALL.arm64">
                   1371:        .../OpenBSD/6.7/arm64/INSTALL.arm64</a>
                   1372: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/armv7/INSTALL.armv7">
                   1373:        .../OpenBSD/6.7/armv7/INSTALL.armv7</a>
                   1374: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/hppa/INSTALL.hppa">
                   1375:        .../OpenBSD/6.7/hppa/INSTALL.hppa</a>
                   1376: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/i386/INSTALL.i386">
                   1377:        .../OpenBSD/6.7/i386/INSTALL.i386</a>
                   1378: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/landisk/INSTALL.landisk">
                   1379:        .../OpenBSD/6.7/landisk/INSTALL.landisk</a>
                   1380: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/loongson/INSTALL.loongson">
                   1381:        .../OpenBSD/6.7/loongson/INSTALL.loongson</a>
                   1382: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/luna88k/INSTALL.luna88k">
                   1383:        .../OpenBSD/6.7/luna88k/INSTALL.luna88k</a>
                   1384: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/macppc/INSTALL.macppc">
                   1385:        .../OpenBSD/6.7/macppc/INSTALL.macppc</a>
                   1386: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/octeon/INSTALL.octeon">
                   1387:        .../OpenBSD/6.7/octeon/INSTALL.octeon</a>
                   1388: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/sparc64/INSTALL.sparc64">
                   1389:        .../OpenBSD/6.7/sparc64/INSTALL.sparc64</a>
                   1390: </ul>
                   1391: </section>
                   1392:
                   1393: <hr>
                   1394:
                   1395: <section id=quickinstall>
                   1396: <p>
                   1397: Quick installer information for people familiar with OpenBSD, and the use of
                   1398: the "<a href="https://man.openbsd.org/disklabel.8">disklabel</a> -E" command.
                   1399: If you are at all confused when installing OpenBSD, read the relevant
                   1400: INSTALL.* file as listed above!
                   1401:
                   1402: <h3>OpenBSD/alpha:</h3>
                   1403:
                   1404: <p>
                   1405: If your machine can boot from CD, you can write <i>install67.iso</i> or
                   1406: <i>cd67.iso</i> to a CD and boot from it.
                   1407: Refer to INSTALL.alpha for more details.
                   1408:
                   1409: <h3>OpenBSD/amd64:</h3>
                   1410:
                   1411: <p>
                   1412: If your machine can boot from CD, you can write <i>install67.iso</i> or
                   1413: <i>cd67.iso</i> to a CD and boot from it.
                   1414: You may need to adjust your BIOS options first.
                   1415:
                   1416: <p>
                   1417: If your machine can boot from USB, you can write <i>install67.fs</i> or
                   1418: <i>miniroot67.fs</i> to a USB stick and boot from it.
                   1419:
                   1420: <p>
                   1421: If you can't boot from a CD, floppy disk, or USB,
                   1422: you can install across the network using PXE as described in the included
                   1423: INSTALL.amd64 document.
                   1424:
                   1425: <p>
                   1426: If you are planning to dual boot OpenBSD with another OS, you will need to
                   1427: read INSTALL.amd64.
                   1428:
                   1429: <h3>OpenBSD/arm64:</h3>
                   1430:
                   1431: <p>
                   1432: Write <i>miniroot67.fs</i> to a disk and boot from it after connecting
                   1433: to the serial console.  Refer to INSTALL.arm64 for more details.
                   1434:
                   1435: <h3>OpenBSD/armv7:</h3>
                   1436:
                   1437: <p>
                   1438: Write a system specific miniroot to an SD card and boot from it after connecting
                   1439: to the serial console.  Refer to INSTALL.armv7 for more details.
                   1440:
                   1441: <h3>OpenBSD/hppa:</h3>
                   1442:
                   1443: <p>
                   1444: Boot over the network by following the instructions in INSTALL.hppa or the
                   1445: <a href="hppa.html#install">hppa platform page</a>.
                   1446:
                   1447: <h3>OpenBSD/i386:</h3>
                   1448:
                   1449: <p>
                   1450: If your machine can boot from CD, you can write <i>install67.iso</i> or
                   1451: <i>cd67.iso</i> to a CD and boot from it.
                   1452: You may need to adjust your BIOS options first.
                   1453:
                   1454: <p>
                   1455: If your machine can boot from USB, you can write <i>install67.fs</i> or
                   1456: <i>miniroot67.fs</i> to a USB stick and boot from it.
                   1457:
                   1458: <p>
                   1459: If you can't boot from a CD, floppy disk, or USB,
                   1460: you can install across the network using PXE as described in
                   1461: the included INSTALL.i386 document.
                   1462:
                   1463: <p>
                   1464: If you are planning on dual booting OpenBSD with another OS, you will need to
                   1465: read INSTALL.i386.
                   1466:
                   1467: <h3>OpenBSD/landisk:</h3>
                   1468:
                   1469: <p>
                   1470: Write <i>miniroot67.fs</i> to the start of the CF
                   1471: or disk, and boot normally.
                   1472:
                   1473: <h3>OpenBSD/loongson:</h3>
                   1474:
                   1475: <p>
                   1476: Write <i>miniroot67.fs</i> to a USB stick and boot bsd.rd from it
                   1477: or boot bsd.rd via tftp.
                   1478: Refer to the instructions in INSTALL.loongson for more details.
                   1479:
                   1480: <h3>OpenBSD/luna88k:</h3>
                   1481:
                   1482: <p>
                   1483: Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader
                   1484: from the PROM, and then bsd.rd from the bootloader.
                   1485: Refer to the instructions in INSTALL.luna88k for more details.
                   1486:
                   1487: <h3>OpenBSD/macppc:</h3>
                   1488:
                   1489: <p>
                   1490: Burn the image from a mirror site to a CDROM, and power on your machine
                   1491: while holding down the <i>C</i> key until the display turns on and
                   1492: shows <i>OpenBSD/macppc boot</i>.
                   1493:
                   1494: <p>
                   1495: Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
                   1496: /6.7/macppc/bsd.rd</i>
                   1497:
                   1498: <h3>OpenBSD/octeon:</h3>
                   1499:
                   1500: <p>
                   1501: After connecting a serial port, boot bsd.rd over the network via DHCP/tftp.
                   1502: Refer to the instructions in INSTALL.octeon for more details.
                   1503:
                   1504: <h3>OpenBSD/sparc64:</h3>
                   1505:
                   1506: <p>
                   1507: Burn the image from a mirror site to a CDROM, boot from it, and type
                   1508: <i>boot cdrom</i>.
                   1509:
                   1510: <p>
                   1511: If this doesn't work, or if you don't have a CDROM drive, you can write
                   1512: <i>floppy67.fs</i> or <i>floppyB67.fs</i>
                   1513: (depending on your machine) to a floppy and boot it with <i>boot
                   1514: floppy</i>. Refer to INSTALL.sparc64 for details.
                   1515:
                   1516: <p>
                   1517: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
                   1518: will most likely fail.
                   1519:
                   1520: <p>
                   1521: You can also write <i>miniroot67.fs</i> to the swap partition on
                   1522: the disk and boot with <i>boot disk:b</i>.
                   1523:
                   1524: <p>
                   1525: If nothing works, you can boot over the network as described in INSTALL.sparc64.
                   1526: </section>
                   1527:
                   1528: <hr>
                   1529:
                   1530: <section id=upgrade>
                   1531: <h3>How to upgrade</h3>
                   1532: <p>
                   1533: If you already have an OpenBSD 6.5 system, and do not want to reinstall,
                   1534: upgrade instructions and advice can be found in the
                   1535: <a href="faq/upgrade67.html">Upgrade Guide</a>.
                   1536: </section>
                   1537:
                   1538: <hr>
                   1539:
                   1540: <section id=sourcecode>
                   1541: <h3>Notes about the source code</h3>
                   1542: <p>
                   1543: <code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
                   1544: This file contains everything you need except for the kernel sources,
                   1545: which are in a separate archive.
                   1546: To extract:
                   1547: <blockquote><pre>
                   1548: # <kbd>mkdir -p /usr/src</kbd>
                   1549: # <kbd>cd /usr/src</kbd>
                   1550: # <kbd>tar xvfz /tmp/src.tar.gz</kbd>
                   1551: </pre></blockquote>
                   1552: <p>
                   1553: <code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
                   1554: This file contains all the kernel sources you need to rebuild kernels.
                   1555: To extract:
                   1556: <blockquote><pre>
                   1557: # <kbd>mkdir -p /usr/src/sys</kbd>
                   1558: # <kbd>cd /usr/src</kbd>
                   1559: # <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
                   1560: </pre></blockquote>
                   1561: <p>
                   1562: Both of these trees are a regular CVS checkout.  Using these trees it
                   1563: is possible to get a head-start on using the anoncvs servers as
                   1564: described <a href="anoncvs.html">here</a>.
                   1565: Using these files
                   1566: results in a much faster initial CVS update than you could expect from
                   1567: a fresh checkout of the full OpenBSD source tree.
                   1568: </section>
                   1569:
                   1570: <hr>
                   1571:
                   1572: <section id=ports>
                   1573: <h3>Ports Tree</h3>
                   1574: <p>
                   1575: A ports tree archive is also provided.  To extract:
                   1576: <blockquote><pre>
                   1577: # <kbd>cd /usr</kbd>
                   1578: # <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
                   1579: </pre></blockquote>
                   1580: <p>
                   1581: Go read the <a href="faq/ports/index.html">ports</a> page
                   1582: if you know nothing about ports
                   1583: at this point.  This text is not a manual of how to use ports.
                   1584: Rather, it is a set of notes meant to kickstart the user on the
                   1585: OpenBSD ports system.
                   1586: <p>
                   1587: The <i>ports/</i> directory represents a CVS checkout of our ports.
                   1588: As with our complete source tree, our ports tree is available via
                   1589: <a href="anoncvs.html">AnonCVS</a>.
                   1590: So, in order to keep up to date with the -stable branch, you must make
                   1591: the <i>ports/</i> tree available on a read-write medium and update the tree
                   1592: with a command like:
                   1593: <blockquote><pre>
                   1594: # <kbd>cd /usr/ports</kbd>
                   1595: # <kbd>cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_6_7</kbd>
                   1596: </pre></blockquote>
                   1597: <p>
                   1598: [Of course, you must replace the server name here with a nearby anoncvs
                   1599: server.]
                   1600: <p>
                   1601: Note that most ports are available as packages on our mirrors. Updated
                   1602: ports for the 6.7 release will be made available if problems arise.
                   1603: <p>
                   1604: If you're interested in seeing a port added, would like to help out, or just
                   1605: would like to know more, the mailing list
                   1606: <a href="mail.html">ports@openbsd.org</a> is a good place to know.
                   1607: </section>