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

File: [local] / www / 67.html (download) (as text)

Revision 1.82, Fri Oct 8 16:31:36 2021 UTC (2 years, 7 months ago) by tj
Branch: MAIN
CVS Tags: HEAD
Changes since 1.81: +1 -1 lines

spell x.509 consistently; from raf czlonka

<!doctype html>
<html lang=en id=release>
<meta charset=utf-8>

<title>OpenBSD 6.7</title>
<meta name="description" content="OpenBSD 6.7">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/67.html">

<h2 id=OpenBSD>
<a href="index.html">
<i>Open</i><b>BSD</b></a>
6.7
</h2>

<table>
<tr>
<td>
<a href="images/CoralFever.gif">
<img width="227" height="343" src="images/CoralFever-s.gif" alt="Coral Fever"></a>
<td>
Released May 19, 2020<br>
Copyright 1997-2020, Theo de Raadt.<br>
<br>
<br>
Artwork by Jonni Phillips.
<br>
<ul>
<li>See the information on <a href="ftp.html">the FTP page</a> for
    a list of mirror machines.
<li>Go to the <code class=reldir>pub/OpenBSD/6.7/</code> directory on
    one of the mirror sites.
<li>Have a look at <a href="errata67.html">the 6.7 errata page</a> for a list
    of bugs and workarounds.
<li>See a <a href="plus67.html">detailed log of changes</a> between the
    6.6 and 6.7 releases.
<p>
<li><a href="https://man.openbsd.org/signify.1">signify(1)</a>
    pubkeys for this release:<p>

<table class=signify>
<tr><td>
openbsd-67-base.pub:
<td>
<a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/openbsd-67-base.pub">
RWRmkIA877Io3oCILSZoJGhAswifJbFK4r18ICoia+3c0PfwANueolNj</a>
<tr><td>
openbsd-67-fw.pub:
<td>
RWSOSlsdN/fgAY1SvEyFdbTkouV2cIsUBXdJhEIhRscq8TT3bz9iOYRL
<tr><td>
openbsd-67-pkg.pub:
<td>
RWTR60UGd2MbnaRg+upZbbBYO00ZhHJehXy7tH2ORHvCjGcDH2pZpsxv
<tr><td>
openbsd-67-syspatch.pub:
<td>
RWTLqtfkjXfBADZEVkBDwSU0EAhy45nb5ovn1xHtQmD3DcqUWe+CouTL
</table>
</ul>
<p>
All applicable copyrights and credits are in the src.tar.gz,
sys.tar.gz, xenocara.tar.gz, ports.tar.gz files, or in the
files fetched via <code>ports.tar.gz</code>.
</table>

<hr>

<section id=new>
<h3>What's New</h3>
<p>
This is a partial list of new features and systems included in OpenBSD 6.7.
For a comprehensive list, see the <a href="plus67.html">changelog</a> leading
to 6.7.

<ul>

<li>General improvements and bugfixes:
  <ul>
    <li>Reduced the minimum allowed number of chunks in a CONCAT
	volume from 2 to 1, increasing the number of volumes which can be
	created on a single disk with <a
	href="https://man.openbsd.org/bioctl">bioctl(8)</a> from 7 to 15. This
	can be used to create more partitions than previously.
    <li>Rewrote the <a href="https://man.openbsd.org/cron">cron(8)</a>
	flag-parsing code to be getopt-like, allowing tight formations like
	-ns and flag repetition. Renamed the "options" field in <a
	href="https://man.openbsd.org/crontab.5">crontab(5)</a> to "flags".
    <li>Added <a
	href="https://man.openbsd.org/man5/crontab.5">crontab(5)</a> -s flag
	to the command field, indicating that only a single instance of the
	job should run concurrently.
    <li>Added <a href="https://man.openbsd.org/cron">cron(8)</a>
	support for random time values using the ~ operator.
    <li>Allowed <a href="https://man.openbsd.org/cwm">cwm(1)</a>
	configuration of window size based on percentage of the master window
	during horizontal and vertical tiling actions.
    <li>Allowed use of window-htile and window-vtile with the "empty"
	group clients in <a href="https://man.openbsd.org/cwm">cwm(1)</a>.
    <li>Switched powerpc to a machine-independent mplock implementation,
	allowing use of <a href="https://man.openbsd.org/witness">
	witness(4)</a>.
    <li>Added <a href="https://man.openbsd.org/acpi">acpi(4)</a>
	support for the _CCA method, indicating whether DMA is cache-coherent.
    <li>Switched the default compiler on powerpc to clang.
    <li>Bumped <a href="https://man.openbsd.org/nvme">nvme(4)</a> max
	physio() i/o size to 128K.
    <li>Improved <a href="https://man.openbsd.org/apmd">apmd(8)</a>
	support for automatic suspend/hibernate (-z/-Z).  The daemon now
	reacts to power changes messages sent by the battery driver.
	Those messages are ignored for 60 seconds after a resume, so
	that the user can take control before the machine goes back to
	sleep.
    <li>Prevented a kernel hang when no unlocked ffs_softdep worklist
	items could be processed.
    <li>Stopped counting pages mapped as PROT_NONE against the
	RLIMIT_DATA limit, helping code which reserves large chunks of address
	space but populates it sparsely.
    <li>Added the $REQUEST_SCHEME variable to <a
	href="https://man.openbsd.org/httpd.conf">httpd.conf(5)</a>, allowing
	preservation of the original connection type (http or https) for
	redirect locations
    <li>Implemented "strip" option in <a
	href="https://man.openbsd.org/httpd.conf">httpd.conf(5)</a> for
	fastcgi to be able to have multiple chroots under /var/www for FastCGI
	servers.
    <li>Changed <a href="https://man.openbsd.org/httpd">httpd(8)</a>
	to send a 408 response when a timeout happens while headers are being
	received, but close the connection if no request is received.
    <li>Updated en_US.UTF-8.src to Unicode 12.1.
    <li>Added a new __tmpfd system call which creates a new, unnamed file in
	/tmp, intended for shm/fd passing, but in programs that may otherwise
	lack filesystem access (due to restrictions imposed by
	<a href="https://man.openbsd.org/unveil.2">unveil(2)</a> or
	<a href="https://man.openbsd.org/pledge.2">pledge(2)</a>).
    <li>Imported <a href="https://man.openbsd.org/dt">dt(4)</a>, a
	driver and framework for Dynamic Profiling, and an accompanying bug
	tracer that speaks the <a href="https://man.openbsd.org/dt">dt(5)</a>
	language.
    <li>Added a human-readable mode (-h) to <a
	href="https://man.openbsd.org/systat">systat(1)</a>.
    <li>Implemented scrolling in <a
	href="https://man.openbsd.org/top">top(1)</a> using the 9 and 0 keys.
    <li>Added <a
	href="https://man.openbsd.org/timeout_set_flags">timeout_set_flags(9)</a>
	and TIMEOUT_INITIALIZER_FLAGS(9) to the timeout API, allowing the
	caller to initialize timeouts with arbitrary flags.
    <li>Introduced TIMEOUT_SCHEDULED flag and tos_scheduled statistic
	to <a href="https://man.openbsd.org/timeout.9">timeout(9)</a>.
    <li>Switched to tickless backend in <a
	href="https://man.openbsd.org/timeout.9">timeout(9)</a>, adding new
	interface <a
	href="https://man.openbsd.org/timeout_add_ts">timeout_add_ts(9)</a> to
	avoid backwardly compatible behavior.
    <li>Added the system clock interface <a
	href="https://man.openbsd.org/nanoboottime">nanoboottime(9)</a>,
	returning the UTC time at which the system booted in seconds and
	nanoseconds.
    <li>Introduced efficient page freeing in reverse order from uvm,
	greatly improving cases of massive page freeing.
    <li>Added uvm_objfree to uvm to efficiently free all pages from a
	uvm object, used in the buffer cache for considerable speedup when
	freeing pages.
    <li>Modified buffer cache to use individual uvm_objs per buffer to
	speed page lookups.
    <li>Speed up <a href="https://man.openbsd.org/sort">sort(1)</a> by
	not performing a top-level sort when -c is used with a -k field.
    <li>Modified -z mode verification in <a
	href="https://man.openbsd.org/signify">signify(1)</a> to save the
	header and output it, so signify -zV >saved.tgz will keep the
	signature for later checks.
    <li>Enabled DNSSEC validation in <a
	href="https://man.openbsd.org/unbound">unbound(8)</a> by default.
    <li><a href="https://man.openbsd.org/ntpd">ntpd(8)</a> now does
	constraint validation against 9.9.9.9 and 2620:fe::fe by default.
    <li>Fixed <a href="https://man.openbsd.org/arp.4">arp(4)</a>
	issues created by <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	modifying existing routes.
    <li>Fixed <a href="https://man.openbsd.org/resolv.conf.5">resolv.conf(5)</a>
	handling by <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	when an interface loses link.
    <li>Restored previous <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	behaviour of rejecting leases that lack a subnet mask.
    <li>Enabled <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	to configure <a href="https://man.openbsd.org/carp.4">carp(4)</a>
	interfaces.
    <li>Fixed <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	releasing leases without a server identifier.
    <li>Improved <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	NAK handling in various corner cases.
    <li>Fixed <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
	endlessly sending REQUEST messages when an ACK is never received.
    <li>Prevented
	<a href="https://man.openbsd.org/dhcpd.8">dhcpd(8)</a>
	from referencing freed memory when releasing a lease with
	an unusually long uid.
    <li>Corrected parsing of classless static default route "0/0" in
	<a href="https://man.openbsd.org/dhcpd.conf.5">dhcpd.conf(5)</a>.
    <li>Increased to 15 the number of
	<a href="https://man.openbsd.org/softraid.4">softraid(4)</a>
	CONCAT volumes that can be created on a single disk.
    <li>Fixed
	<a href="https://man.openbsd.org/softraid.4">softraid(4)</a>
	CRYPTO volumes on 4K-sector disks.
  </ul>

<!-- FFS2 -->
<li>The FFS2 filesystem, which uses 64bit timestamps and block numbers
	is now the default for new installs on nearly all architectures:
  <ul>
    <li>Enabled ffs2 in sgi bootblocks and ramdisks.
    <li>Made ffs2 the default filesystem type on installs except for landisk, luna88k and sgi.
    <li>Changed the sparc64 bootblocks to be able to read from ffs1, ffs2 and softraid, and enabled the ffs2 option for both floppies.
    <li>Enabled FFS2 on the landisk ramdisk.
    <li>Taught i386 boot(8), cdboot(8) and pxeboot(8) about ffs2.
    <li>Taught macppc boot(8) about ffs2.
    <li>Taught sparc64 boot(8) about ffs2.
    <li>Allowed hppa <a href="https://man.openbsd.org/man8/hppa/boot.8">boot(8)</a>  to read from an ffs2 filesystem.
    <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.
    <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.
    <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.
    <li>Allowed loongson boot(8) to read from an ffs2 filesystem.
    <li>Allowed arm64 and armv7 efiboot(8) to read from an ffs2 filesystem.
  </ul>

<li>SMP-Improvements:
  <ul>
    <li>
    <a href="https://man.openbsd.org/__thrsleep">__thrsleep(2)</a>,
    <a href="https://man.openbsd.org/__thrwakeup">__thrwakeup(2)</a>,
    <a href="https://man.openbsd.org/close">close(2)</a>,
    <a href="https://man.openbsd.org/closefrom">closefrom(2)</a>,
    <a href="https://man.openbsd.org/dup">dup(2)</a>,
    <a href="https://man.openbsd.org/dup2">dup2(2)</a>,
    <a href="https://man.openbsd.org/dup3">dup3(2)</a>,
    <a href="https://man.openbsd.org/flock">flock(2)</a>,
    <a href="https://man.openbsd.org/fcntl">fcntl(2)</a>,
    <a href="https://man.openbsd.org/kqueue">kqueue(2)</a>,
    <a href="https://man.openbsd.org/pipe">pipe(2)</a>,
    <a href="https://man.openbsd.org/pipe2">pipe2(2)</a> and
    <a href="https://man.openbsd.org/nanosleep">nanosleep(2)</a>
    are run without KERNEL_LOCK.
    <li>The generic part of <a href="https://man.openbsd.org/ioctl">ioctl(2)</a>
    is run without KERNEL_LOCK.
    <li>Reworked AMD smt/core/package detection, helping prevent cores being
    misidentified as threads.
    <li>Avoided false positives in
    <a href="https://man.openbsd.org/witness">witness(4)</a> when detecting
    lock order reversals by using separate rwlock initializations for
    userland and kernel maps.
    <li>Allowed sleeping inside kqueue event filters.
    <li>Made <a href="https://man.openbsd.org/vmx">vmx(4)</a> transmit MP-safe.
  </ul>

<li>Improved hardware support, including:
  <ul>
    <li>Improvements in the <a href="https://man.openbsd.org/em">em(4)</a> driver.
    <li>Added <a href="https://man.openbsd.org/dsxrtc">dsxrtc(4)</a>,
	a driver for the Maxim DS3231/DS3232 I2C RTC.
    <li>Added <a href="https://man.openbsd.org/ure">ure(4)</a> support
	for Lenovo OneLine Plus Dock Ethernet.
    <li>Improved <a href="https://man.openbsd.org/ucom">ucom(4)</a> to
	fix firmware upload on some microcontroller boards using DTR and RTS
	as signaling lines to reset the device and enter the bootloader.
    <li>Added a PCI attachment driver for <a
	href="https://man.openbsd.org/com">com(4)</a> to support memory-mapped
	PCI devices which are part of a Low Power Subsystem (LPSS).
    <li>Implemented microsecond resolution using <a
	href="https://man.openbsd.org/microuptime">microuptime(9)</a> to avoid
	a hard hang when starting X on Intel Cherry Trail Atom processors.
    <li>Added support for X553 controllers to <a
	href="https://man.openbsd.org/ix">ix(4)</a>.
    <li>Added <a href="https://man.openbsd.org/usb">usb(4)</a> device
	support for an AMD hub on the APU2 and a Synaptics vendor id and two
	fingerprint readers.
    <li>Prevented buffer overflows with <a
	href="https://man.openbsd.org/uthum">uthum(4)</a> by not assuming the
	report length given by the hardware is necessarily smaller than the
	length of the on-stack buffer.
    <li>Added <a href="https://man.openbsd.org/rge">rge(4)</a>, a driver
	for the Realtek 8125 PCI Express 2.5Gb Ethernet devices.
    <li>Fixed cursor issues and suspend/resume on <a
	href="https://man.openbsd.org/amdgpu">amdgpu(4)</a> and
	<a href="https://man.openbsd.org/radeondrm">radeondrm(4)</a>.
    <li>Fixed support for additional I2C busses in <a
	href="https://man.openbsd.org/piixpm">piixpm(4)</a> for older SB800
	SMBus controllers. Prevented sensors from attaching four times on old
	AMD machines.
    <li>Invalidated the <a
	href="https://man.openbsd.org/knote">knote(9)</a> list of <a
	href="https://man.openbsd.org/uhid">uhid(4)</a> after device detach,
	preventing a crash that can happen when kqueue still holds references
	to knotes pointing to the device.
    <li>Prevented a use-after-free causing crashes with <a
	href="https://man.openbsd.org/uhidev">uhidev(4)</a> devices.

    <li>Prevented <a href="https://man.openbsd.org/mcx">mcx(4)</a>
	interface lockups due to completion queue overflow.
    <li>Fixed brightness keys on various laptops with AMD graphics.
    <li>Fixed brightness controls on machines where the
	initial brightness values are returned out of range.
    <li>Set the default brightness level on attachment for <a
	href="https://man.openbsd.org/pwmbl">pwmbl(4)</a>.
    <li>Fixed <a
	href="https://man.openbsd.org/acpivout">acpivout(4)</a> screen
	brightness adjustment through function keys, better supporting
	machines using exponential brightness scaling.
    <li>Changed <a
	href="https://man.openbsd.org/acpivout">acpivout(4)</a> to increment
	and decrement screen brightness based only on brightness level changes
	of 5% or higher.
    <li>Fixed Etron EJ168 USB 3.0 Host Controllers via USB 2 devices.
    <li>Added support for the SIERRA MC7700 to <a
	href="https://man.openbsd.org/umsm">umsm(4)</a> UMTS and LTE modem device.
    <li>Fixed RAID volume WWIDs for <a
	href="https://man.openbsd.org/mpii">mpii(4)</a> LSI controllers on
	sparc64, allowing <a
	href="https://man.openbsd.org/autoconf">autoconf(9)</a> to identify
	the volume as the root device and boot off hardware RAID.
    <li>Populated logical disk port WWNs with their RAID volume's WWID
	in <a href="https://man.openbsd.org/mpii">mpii(4)</a>.
    <li>Added <a href="https://man.openbsd.org/fido">fido(4)</a>, an
	HID driver for FIDO/U2F security keys.
    <li>Added parsing of DDR4 and LPDDDR3/4 SPD memories to <a
	href="https://man.openbsd.org/spdmem">spdmem(4)</a>.
    <li>Added support to <a
	href="https://man.openbsd.org/lm">lm(4)</a> for NCT6775F, NCT5104D,
	NCT6779D and NCT679[1235]D sensors.
    <li>Updated <a href="https://man.openbsd.org/piixpm">piixpm(4)</a>
	to support newer AMD chips like Hudson-2 and KERNCZ and implemented
	multi-bus support for SB800, Hudson-2 and KERNCZ.
    <li>Extended the expected SPD types to include DDR4 and low-power DDR3/DDR4.
    <li>Enabled full use of jumbo frames on <a
	href="https://man.openbsd.org/bnx">bnx(4)</a> devices.
    <li>Fixed <a href="https://man.openbsd.org/scsi">scsi(8)</a>
	softraid crypto volumes on 4K-sector disks.
    <li>Faked disk info to match expected boot disk when EFI
	bootloader has been received via TFTP, fixing a hang during HP
	Elitebook UEFI boot.
    <li>Implemented a hexdump command in the bootloader, helping to
	inspect the memory layout created by the firmware and useful for UEFI
	debugging.
    <li>Improved <a href="https://man.openbsd.org/ksmn">ksmn(4)</a>
	temperature conversion precision.
    <li>Added a quirk to handle Apollo Lake, Gemini Lake and 100
	Series Intel SD/MMC <a href="https://man.openbsd.org/sdhc">sdhc(4)</a>
	controllers which should not have voltages set to 0V.
    <li>Prevented a local user from causing the system to hang by
	reading specific registers when Intel Gen8/Gen9 graphics hardware is
	in a low power state.
    <li>Prevented writes to memory allowed by the Intel Gen9 graphics hardware.
    <li>Added support for buttons 2 and 3 to <a
	href="https://man.openbsd.org/imt">imt(4)</a>.
    <li>Added <a href="https://man.openbsd.org/ogx">ogx(4)</a>, a
	driver for the OCTEON III network processor.
    <li>Fixed endian swapping in <a
	href="https://man.openbsd.org/xhci">xhci(4)</a>, allowing it to work
	again on octeon and other big endian architectures.
    <li>Implemented the "parallel boot" feature on compatible sparc64 firmware.
    <li>Introduced <a href="https://man.openbsd.org/iwx">iwx(4)</a>, a
	driver for Intel AX200 WiFi devices.
    <li>Added <a href="https://man.openbsd.org/iwm">iwm(4)</a> support
	for Intel 9260 and 9560 wifi devices.
    <li>Updated firmware for all devices supported by the
	<a href="https://man.openbsd.org/iwm">iwm(4)</a> driver.
    <li>Fixed <a href="https://man.openbsd.org/iwm">iwm(4)</a> support
	for Intel 3168 wifi devices.
    <li>Added support for the tp-link tl-wn823n to the <a
	href="https://man.openbsd.org/urtwn">urtwn(4)</a> driver.
    <li>The <a href="https://man.openbsd.org/athn">athn(4)</a> driver
	now offloads CCMP (WPA2) encryption and decryption to hardware.
    <li>Prevented an overflow due to <a
	href="https://man.openbsd.org/xen">xen(4)</a> failing to release the
	interrupt source when unmasking the interrupt.
    <li>Fixed <a href="https://man.openbsd.org/usb.4">usb(4)</a>
	handling USB 2.0 devices on various USB 3.0 controllers.
    <li>Fixed <a href="https://man.openbsd.org/usb.4">usb(4)</a>
	handling of controllers that STALL to indicate a short read.
    <li>Fixed <a href="https://man.openbsd.org/xhci.4">xhci(4)</a>
	handling of i/o's that are exact multiples of the max packet size.
    <li>Bumped <a href="https://man.openbsd.org/nvme.4">nvme(4)</a>
	maximum physio i/o size to 128K.
    <li>Fixed probing of modern <a href="https://man.openbsd.org/scsi.4">scsi(4)</a>
	devices to ignore the SYNC and WIDE flags used by parallel SCSI.
  </ul>

<li>Removed hardware support
  <ul>
	<li>Removed the rtfps(4) driver, a multiplexing serial communications interface for IBM RT PC boards 
	<li>Removed the dpt(4) driver for DPT EATA SCSI RAID.
	<li>Removed gpr(4), a driver for GemPlus GPR400 PCMCIA smartcard readers.
	<li>Removed mesh(4), a driver for old world Apple Power Macintosh SCSI cards.
  </ul>

<li>Improvements in audio drivers and the
	<a href="https://man.openbsd.org/sndio">sndio(7)</a> framework:
  <ul>
    <li>Introduced the <a
	href="https://man.openbsd.org/sioctl_open">sioctl_open(3)</a>
	API to manipulate audio controls exposed by <a
	href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
    <li>Modified <a
	href="https://man.openbsd.org/sndiod">sndiod(8)</a> to
	use and expose hardware volume controls if available.
    <li>Modified all ports manipulating audio controls to use <a
	href="https://man.openbsd.org/sndio">sndio(7)</a> instead of the
	kernel <a href="https://man.openbsd.org/OpenBSD-6.6/mixer">mixer(4)</a> interface.
    <li>Introduced the <a
	href="https://man.openbsd.org/sndioctl">sndioctl(1)</a> utility to
	manipulate audio controls exposed by <a
	href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
    <li>Exposed the first 4 <a
	href="https://man.openbsd.org/audio">audio(4)</a> devices
	and the first 8 <a
	href="https://man.openbsd.org/midi">midi(4)</a> devices through <a
	href="https://man.openbsd.org/sndiod">sndiod(8)</a> by default.
    <li>Disabled access for regular users to /dev/audio* and
	/dev/rmidi*, for improved security.
    <li>Modified <a
	href="https://man.openbsd.org/mixerctl">mixerctl(1)</a> to use
	/dev/audioctl* instead of /dev/mixer*.
    <li>Removed /dev/mixer*
    <li>Fixed support for <a
	href="https://man.openbsd.org/uaudio">uaudio(4)</a>
	devices with different recording and playback rate sets.
    <li>Fixed volume control of many <a
	href="https://man.openbsd.org/uaudio">uaudio(4)</a>
	devices.
    <li>Fixed channel duplication (-j option) in <a
	href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
    <li>Allowed <a href="https://man.openbsd.org/rc.d">rc.d(8)</a>
	script to reload <a
	href="https://man.openbsd.org/sndiod">sndiod(8)</a>.
    <li>Added an <a
	href="https://man.openbsd.org/azalia">azalia(4)</a> quirk for the
	ALC285 on the X1C7 to avoid a clicking noise on the headphone output.
    <li>Disabled MSI for the AMD Hudson2 <a
	href="https://man.openbsd.org/azalia">azalia(4)</a> HDA to fix random lock ups.
  </ul>

<li>A large number of drivers were written to improve <a href="https://www.openbsd.org/arm64.html">arm64</a>
and <a href="https://www.openbsd.org/armv7.html">armv7</a> hardware support, including:
  <ul>
    <li>Better hardware support for the i.MX8MM platform.
    <li>Support for the Raspberry Pi 4 on arm64.
    <li>Better support for the Raspberry Pi 3 on arm64.
    <li>Proper support for the Raspberry Pi 2 and 3 on armv7.
    <li>Better support for Rockchip based systems, especially the Pinebook Pro.
    <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.
    <li>Allowed switching to framebuffer "glass" console on armv7 in the bootloader, mirroring previous changes to arm64.
    <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.
    <li>Added the capability for armv7 boot from another block device than the one from which efiboot was loaded.
    <br><br>
    Specifically the following device drivers were added or fixed:
    <li>Added <a href="https://man.openbsd.org/bcmbsc">bcmbsc(4)</a>, a driver for the Broadcom Serial Control (BSC) controller.
    <li>Added <a href="https://man.openbsd.org/bcmgpio">bcmgpio(4)</a>, a driver for the Broadcom BCM283x GPIO controller.
    <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.
    <li>Added <a href="https://man.openbsd.org/bcmdmac">bcmdmac(4)</a>, a driver for the DMA controller found on BCM283x SoCs.
    <li>Added support for the additional <a href="https://man.openbsd.org/sdhc">sdhc(4)</a> controller found on the Raspberry Pi.
    <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.
    <li>Added support for hardware with <a href="https://man.openbsd.org/sdhc">sdhc(4)</a> controllers on busses only supporting 32-bit access.
    <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.
    <li>Added <a href="https://man.openbsd.org/bcmclock">bcmclock(4)</a>, a driver for the BCM283X CPRMAN clock controller.
    <li>Added <a href="https://man.openbsd.org/bcmmbox">bcmmbox(4)</a>, a driver for the VideoCore messagebox interface on BCM283X.
    <li>Added <a href="https://man.openbsd.org/bcmpcie">bcmpcie(4)</a>, a driver for the PCIe controller found on the Raspberry Pi 4.
    <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.
    <li>Added <a href="https://man.openbsd.org/brgphy">brgphy(4)</a> support for the Broadcom BCM54210E.
    <li>Added support for the Armada 3720 CPU clock to <a href="https://man.openbsd.org/mvclock">mvclock(4)</a>.
    <li>Fixed address filter in <a href="https://man.openbsd.org/mvneta">mvneta(4)</a>.
    <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.
    <li>Added <a href="https://man.openbsd.org/omrng">omrng(4)</a>, a driver for the random number generator found on TI OMAP SoCs.
    <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.
    <li>Added support for additional Allwinner A80 clocks and resets in <a href="https://man.openbsd.org/sxiccmu">sxiccmu(4)</a>.
    <li>Fixed <a href="https://man.openbsd.org/amlpciephy">amlpciephy(4)</a> USB3 support when USB has not been initialized by U-Boot.
    <li>Added clock support for i.MX8MM.
    <li>Fixed CPU frequency scaling support on the Librem5 Devkit.
    <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.
    <li>Added support for reading the i.MX8MM temperature sensors to <a href="https://man.openbsd.org/imxtmu">imxtmu(4)</a>.
    <li>Added <a href="https://man.openbsd.org/bdpmic">bdpmic(4)</a>, a driver for the ROHM BD71837 and BD71847 Power Management IC.
    <li>Allowed <a href="https://man.openbsd.org/ipmi">ipmi(4)</a> to attach using mmio.
    <li>Added <a href="https://man.openbsd.org/rkrng">rkrng(4)</a>, a driver for the random number generator found on various Rockchip SoCs.
    <li>Added glass console support to <a href="https://man.openbsd.org/rkdrm">rkdrm(4)</a> in Rockchip SoCs, including kernel modesetting support.
    <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.
    <li>Added <a href="https://man.openbsd.org/rkdwhdmi">rkdwhdmi(4)</a>, a driver for the HDMI transmitter found on the Rockchip RK3399 SoC.
    <li>Added <a href="https://man.openbsd.org/rkanxdp">rkanxdp(4)</a>, a driver for the Analogix Display Port controller on the RK3399.
    <li>Added <a href="https://man.openbsd.org/rkvop">rkvop(4)</a>, a driver for the RK3399's Video Output Processors.
    <li>Added <a href="https://man.openbsd.org/rkpwm">rkpwm(4)</a>, a driver for the RK3399's PWM controller.
    <li>Added <a href="https://man.openbsd.org/rkemmcphy">rkemmcphy(4)</a>, a driver for the RK3399's eMMC PHY.
    <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.
    <li>Enabled backlight control use on the Pinebook Pro via <a href="https://man.openbsd.org/wsconsctl">wsconsctl(8)</a>.
    <li>Fixed the Pinebook Pro's trackpad by ensuring only hid_input items are accepted when walking the HID descriptor.
    <li>Fixed <a href="https://man.openbsd.org/pwmbl">pwmbl(4)</a> attachment on the Pinebook Pro.
    <li>Added <a href="https://man.openbsd.org/simplepanel">simplepanel(4)</a>, a driver for simple display panels such as the one found on the Pinebook Pro.
    <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>.
    <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>.
    <li>Added <a href="https://man.openbsd.org/amltemp">amltemp(4)</a>, a driver for the temperature sensors on various Amlogic SoCs.
    <li>Added <a href="https://man.openbsd.org/pwmfan">pwmfan(4)</a>, a driver for PWM-regulated fans.
    <li>Enabled <a href="https://man.openbsd.org/umt">umt(4)</a> (USB HID multitouch touchpad devices) on arm64.
  </ul>

<li>IEEE 802.11 wireless stack improvements and bugfixes:
  <ul>
    <li>Stop connecting to any available unencrypted wifi networks when an
	interface is marked up. This behavior must now be explicitly enabled
	with <code><a href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> join
	""</code>.
    <li>A background scan is now triggered when root runs the <a
	href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> scan command.
	This updates the list of cached APs displayed by the scan command and
	forces a search for a better AP to roam to.
    <li>Add <code>nwflag nomimo</code> which can be set with <a
	href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> to work
	around packet loss in 11n mode if the wireless network device has
	unused antenna connectors.
    <li>Increased the net80211 node cache size to allow more APs to be viewed during scans.
    <li>Fixed the <a
	href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> "media:" line
	displayed during and after a background scan in 11n mode.
    <li>Made background scans less frequent if they keep choosing the same AP.
    <li>Fix kernel crashes in net80211 hostap mode due to mbuf corruption
	which occurred if a relatively long SSID was configured.
    <li>Added support for active scanning to <a
	href="https://man.openbsd.org/bwfm">bwfm(4)</a>.
    <li>Fix <a href="https://man.openbsd.org/bwfm">bwfm(4)</a> behavior which
	could trigger the ifq pressure drop mechanism under moderate load.
    <li>Improved error handling for <a
	href="https://man.openbsd.org/bwfm">bwfm(4)</a> connection attempts.
    <li>Improved automatic switching between wifi networks by lowering the priority
	of networks in the <a
	href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> join list which
	fail to connect.
    <li>Avoid repeated switching between APs in areas where APs
	are tuned for low transmit range.
    <li>Raised net80211's "beacon miss" threshold to avoid frequent
	reconnects under conditions which cause loss of beacons.
    <li>Reduced stalls on packet loss in 11n mode by improving net80211 handling
	of the Rx block ack sequence number window and queue.
    <li>Fixed a bug where outstanding frames on the <a
	href="https://man.openbsd.org/iwn">iwn(4)</a> aggregation queue
	interfered with roaming to another AP.
    <li>Fixed a race condition in <a
	href="https://man.openbsd.org/iwm">iwm(4)</a> Rx interrupt handling.
    <li>Implemented a workaround for missing Tx completion interrupts
	in <a href="https://man.openbsd.org/iwm">iwm(4)</a> which could lead
	to failures when roaming to another AP.
    <li>Re-enabled firmware-based Tx retries at lower rates for <a
	href="https://man.openbsd.org/iwm">iwm(4)</a>, reducing packet loss.
    <li>Fixed automatic Tx rate control issues in <a
	href="https://man.openbsd.org/iwm">iwn(4)</a>, and <a
	href="https://man.openbsd.org/iwm">iwm(4)</a>.
    <li>Fixed a use-after-free that caused a kernel crash during <a
	href="https://man.openbsd.org/zyd">zyd(4)</a> device detach.
  </ul>

<li>Generic network stack improvements and bugfixes:
  <ul>

    <li>Fixed a panic when using <a href="https://man.openbsd.org/pppac">
	pppac(4)</a> without <a href="https://man.openbsd.org/pipex">pipex(4)</a>.
    <li>Fixed a "route contains no arp information" bug where a kernel routing
	table entry was incorrectly deleted upon insertion of a new entry.
    <li>Stopped processing packets under non-exclusive netlock, preventing
	concurrency in the socket layer.
    <li>Prevented data corruption on UDP receive socket buffers by grabbing the
	exclusive NET_LOCK() in the softnet thread.
    <li>Fixed a kernel crash due to unlimited recursion caused by
	local outbound UDP broadcast/multicast packets sent by a spliced
	socket.
    <li>Added IPv6 support to <a href="https://man.openbsd.org/umb">umb(4)</a>.
    <li>Added support for very old firmware umsm devices with <a
	href="https://man.openbsd.org/umsm">umsm(4)</a> rather than <a
	href="https://man.openbsd.org/umb">umb(4)</a>.
    <li>Added <a href="https://man.openbsd.org/pppac">pppac(4)</a>
	code for a dedicated PPP Access Concentrator interface and switched <a
	href="https://man.openbsd.org/npppd.conf">npppd.conf(5)</a> to use <a
	href="https://man.openbsd.org/pppac">pppac(4)</a> instead of <a
	href="https://man.openbsd.org/tun">tun(4)</a>.
    <li>Added a check when IP forwarding is disabled to ensure packet
	destination address matches interface address.
    <li>Fixed kernel crash in pf_ioctl with WITH_PF_LOCK and NET_TASKQ > 1.
    <li>Ensured proper kernel stack alignment on mips64, fixing a
	panic on octeon related to <a
	href="https://man.openbsd.org/pppoe">pppoe(4)</a>.
    <li>Added <a href="https://man.openbsd.org/rge">rge(4)</a>, a new
	driver for Realtek 8125 PCI Express 2.5Gb ethernet devices.
    <li>Repaired the "set delay" option for <a
	href="https://man.openbsd.org/pf">pf(4)</a> to function as specified
	in <a href="https://man.openbsd.org/pf.conf">pf.conf(5)</a>.
    <li>Prevented non-root users from using <a
	href="https://man.openbsd.org/ioctl">ioctl(2)</a> to alter the address
	of a network interface.
    <li>Prevented non-root users from setting the parameters of <a
	href="https://man.openbsd.org/pppoe">pppoe(4)</a> interfaces.
    <li>Removed mobileip(4).
    <li>Stopped checking whether the IPv6 source address of a neighbor
	advertisement is from a neighbor's address, not required in accordance
	with RFC 4861.

  </ul>

<li>Installer improvements:
  <ul>
    <li>Simplified <a
	href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> directory
	check and creation (/home/_syspatch). It can now be a symlink.
    <li>Printed the URL when <a
	href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> fetches
	new sets.
    <li>Added an opportunistic run of <a
	href="https://man.openbsd.org/fw_update">fw_update(1)</a> to <a
	href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> before
	rebooting to run the upgrade.
  </ul>

<li>Security improvements:
  <ul>
    <li><a href="https://man.openbsd.org/unveil.2">unveil(2)</a> is
      now used in 82 userland programs to redact filesystem access.
    <li>Used <a href="https://man.openbsd.org/unveil">unveil(2)</a> to
	reduce filesystem access in <a
	href="https://man.openbsd.org/vmstat">vmstat(8)</a>, <a
	href="https://man.openbsd.org/iostat">iostat(8)</a> and <a
	href="https://man.openbsd.org/systat">systat(1)</a>.

<!-- dig -->

    <li>Extracted <a href="https://man.openbsd.org/dig">dig(1)</a>, <a
	href="https://man.openbsd.org/host">host(1)</a> and <a
	href="https://man.openbsd.org/nslookup">nslookup(1)</a> from the
	bind(8) source code and cleaned up the source code by removing not
	needed features and auditing it. The kernel API accessible to these
	programs is now restricted through <a
	href="https://man.openbsd.org/pledge">pledge(2)</a>.
    <li>System calls may now only be performed from selected code regions:
	the main program, <a href="https://man.openbsd.org/ld.so">ld.so(1)</a>,
	libc.so and the signal trampoline. A new system call
	<a href="https://man.openbsd.org/msyscall">msyscall(2)</a> indicates
	the libc range, and activates the locking.  This change hardens
	against some attack methods.
    <li>Prevented stack trace saving from inspecting untrusted data on
	amd64, arm64 and i386.
    <li>Used lfence in place of stac/clac on pre-SMAP CPUs to protect
	against Load-Value-Injection attacks against the kernel.
    <li>Prevented a panic due to missing <a
	href="https://man.openbsd.org/sysctl">sysctl(2)</a> input validation.
    <li>Injected failure to fetch entropy with an rdrand() timeout as
	an entropic event, along with an additional rdtsc measuring the vmexit
	latency.
    <li>Enforced that <a href="https://man.openbsd.org/ksh">ksh(1)</a>
	TMOUT is an integer literal to prevent command execution from the
	environment at shell initialization time.
    <li>Ensured the first 2MB page of the amd64 kernel is correctly
	mapped read-only in the direct map.
    <li>Addressed an armv7/arm64 speculative execution issue by changing the
	system call ABI to skip two instructions and inserting a barrier
	after each system call.
    <li>Fixed arm64 speculative execution of instructions after ERET,
	which had led to spectre-like effects on some processors.
    <li>Tightened permissions for USB device nodes.
    <li>Ensured that <a
	href="https://man.openbsd.org/ld.so">ld.so(1)</a> removed the
	LD_LIBRARY_PATH environment variable for set-user-ID and set-group-ID
	executables in low memory conditions.
    <li>Added support for RSA-PSS to <a
	href="https://man.openbsd.org/crypto">crypto(3)</a>.
    <li>Added retguard for octeon/mips64.

    <li>The following security bugs were addressed:
      <ul>
	<li>Reset the login class each time through the loop when using -L
	    (loop) mode with <a href="https://man.openbsd.org/su">su(1)</a>. Fixes
	    CVE-2019-19519.
	<li>Fixed insufficient username validation performed by libc's
	    authentication privilege separation layer and added additional
	    validation points, further validating in <a
	    href="https://man.openbsd.org/login">login(1)</a> and <a
	    href="https://man.openbsd.org/su">su(1)</a>.
	<li>Prevented escalation to the auth group in <a
	    href="https://man.openbsd.org/xlock">xlock(1)</a> through path-related
	    environment variables and disabled mesa and opengl functionality.
      </ul>
  </ul>

<li>Routing daemons and other userland network improvements:
  <ul>
<!-- bgpd -->
    <li>Add initial support for JSON output in
	<a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>.
    <li>Allow setting both IPv4 and IPv6 local-addresses at the same time in
	<a href="https://man.openbsd.org/bgpd.conf">bgpd.conf(5)</a> group
	blocks.  Introduced <code>no local-address</code> to reset a previously
	set local address.
    <li>Properly aggregate duplicate <a href="https://man.openbsd.org/bgpd">
	bgpd(8)</a> roa table prefix/source-as combinations into a single entry
	with the longest maxlen length.
    <li>Implemented <a
	href="https://man.openbsd.org/bgpd.conf">bgpd.conf(5)</a>
	<code>max-prefix NUM out</code> to limit the number of announced
	prefixes, avoiding leaks of full tables to upstreams and peers.
    <li>Extended <a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>
	<code>show neighbor</code> to include the received and set prefix
	count, as well as the max-prefix out limit if set.
    <li>Improved reporting of notifications to include the suberror cause.
    <li>Also report the last received error cause in
	<a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a> <code>show
	neighbor</code> output.
    <li>Fix softreconfig out handling to also work for neighbors using
	<code>export default-route</code>.
    <li>Mark stale prefixes in the Adj-RIB-Out so that graceful reload
	operates properly.
<!-- OSPF -->
    <li>Allowed configuration of the <a
	href="https://man.openbsd.org/ospfd">ospfd(8)</a> interface setting
	"type p2p" to be configured globally or per area.
    <li>Added point-to-point <a
	href="https://man.openbsd.org/ospf6d">ospf6d(8)</a> support for
	broadcast interfaces.
<!-- other daemons -->
    <li>Validated authentication lengths in <a
	href="https://man.openbsd.org/ripd">ripd(8)</a> before use to prevent
	crashes.
    <li>Fixed empty response packages sent out by <a
	href="https://man.openbsd.org/ripd">ripd(8)</a> when entries are
	skipped due to split-horizon simple.
    <li>Reduced temporary address valid lifetime to 2 days in <a
	href="https://man.openbsd.org/slaacd">slaacd(8)</a>.
    <li>Made <a href="https://man.openbsd.org/slaacd">slaacd(8)</a>
	honor the rdomain in which it runs when configuring the default route.
    <li>Withdrew all proposals on <a
	href="https://man.openbsd.org/slaacd">slaacd(8)</a> startup to prevent
	indefinite retention of nameservers on interfaces no longer flagged
	for autoconf.
    <li>Modified <a href="https://man.openbsd.org/ldpd">ldpd(8)</a> to
	lookup the adjacency by LSR id as well as source IP address, as the
	remote peer may change its LSR id.

<!-- other programs -->
    <li>Added support for printing RFC 2332 NBMA Next Hop Resolution Protocol
	(NHRP) to <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>.
    <li>Added <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>
	support for printing RFC 8300 Network Service Header (NSH).
    <li>Added <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>
	support for VXLAN-GPE.
    <li>Fixed a <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a>
	crash when printing the contents of a malformed packet where the
	packet length was smaller than the size of the usbpcap header.

    <li>Rewrote dhcpv6 parsing in <a
	href="https://man.openbsd.org/tcpdump">tcpdump(8)</a> to match the
	RFC, correctly handling dhcpv6 messages.
    <li>Accept netmask for IPv6 in <a
	href="https://man.openbsd.org/ifconfig">ifconfig(8)</a> instead of
	ignoring it and using only the prefixlen argument.

    <li>Fixed <a href="https://man.openbsd.org/snmp">snmp(1)</a> agent
	address parsing to allow IPv6 addresses to be used based on format,
	allow those without brackets to skip the port if it results in a
	nonsensical address (allowing use of ::1), and try to connect to the
	address immediately.
    <li>Implemented a df subcommand for <a
	href="https://man.openbsd.org/snmp">snmp(1)</a> which outputs disk and
	memory information in a <a href="https://man.openbsd.org/df">df(1)</a>
	format.
    <li>Implemented a -Cs option in <a
	href="https://man.openbsd.org/snmp">snmp(1)</a> for snmp walk and
	bulkwalk, allowing subsections of a tree to be skipped.
    <li>Introduced option filter-pf-addresses to <a
	href="https://man.openbsd.org/snmpd.conf">snmpd.conf(5)</a>, allowing
	the OPENBSD-PF-MIB::pfTblAddrTable tree to be filtered out when many
	prefixes are stored in pf tables, reducing CPU usage during bulk
	walks.

    <li>Added retries and timeouts for test packets to <a
	href="https://man.openbsd.org/radiusctl">radiusctl(8)</a>.


    <li>Corrected http auth combined with proxy auth in <a
	href="https://man.openbsd.org/ftp">ftp(1)</a>.
    <li>Corrected <a href="https://man.openbsd.org/ftp">ftp(1)</a>
	access to an https server with user/password through the "http_proxy"
	environment variable.
    <li>Prevented <a href="https://man.openbsd.org/ftp">ftp(1)</a>
	from following remote redirects to local files.
    <li>Implemented HTTP/1.1 in <a href="https://man.openbsd.org/ftp">ftp(1)</a>.
    <li>Added new -N name option to <a
	href="https://man.openbsd.org/ftp">ftp(1)</a>, allowing calling
	scripts to change the progname and produce better error messages.

    <li>Allowed <a href="https://man.openbsd.org/pfctl">pfctl(8)</a>
	to recursively flush rules and tables.
    <li>In <a href="https://man.openbsd.org/pf">pf(4)</a>, ensured
	rdr-to with loopback destination will work even when IP forwarding is
	disabled.

<!-- rpki-client -->

    <li>Enabled <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a>, a free,
	easy-to-use implementation of the Resource Public Key Infrastructure
	(RPKI) for Relying Parties (RP) to facilitate validation of the Route
	Origin of a BGP announcement. The program queries the RPKI repository
	system and outputs Validated ROA Payloads in the configuration format
	of OpenBGPD, BIRD, and also as CSV or JSON objects for consumption by
	other routing stacks.
    <li>Modified root's <a
	href="https://man.openbsd.org/crontab">crontab(1)</a> to run <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> and
	reload <a href="https://man.openbsd.org/bgpd">bgpd(8)</a>
	configuration, enabling RPKI ROA filtering.
    <li>Stopped hardcoding the cache directory in <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a>. Cache
	and output directory will use defaults for root users and must be
	specified by non-root users.
    <li>Made <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> use
	the existing cache and not exit if rsync(1) exits non-zero.
    <li>Fixed <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> -j
	option, which had not been producing any output.
    <li>Rewrote the time validity check for mtfs in <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> to
	correctly account for the timezone.
    <li>Added <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> output
	formats for the BIRD routing daemon and CSV.
    <li>For BIRD <a
	href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> can
	generate three different output formats with the option
	<code>-B</code>: v1 with IPv4 and IPv6 routes, and v2.
  </ul>

<li><a href="https://man.openbsd.org/unwind">unwind(8)</a> improvements:
  <ul>
    <li>Implemented <a
	href="https://man.openbsd.org/unwindctl">unwindctl(8)</a> status
	memory to show cache memory usage.
    <li>Allowed forcing specific domains to be resolved by specific
	resolvers in <a
	href="https://man.openbsd.org/unwind.conf">unwind.conf(5)</a>,
	handling typical split-horizon setups.
    <li>Measured performance of resolving strategies in <a
	href="https://man.openbsd.org/unwind">unwind(8)</a>, sorting them and
        choosing the next best strategy when one fails.
        Performance data decays over time.
    <li>Switched captive portal detection from HTTP probing to DNS probing in <a
	href="https://man.openbsd.org/unwind">unwind(8)</a>.
    <li>Implemented DNS proposals in <a
	href="https://man.openbsd.org/unwind">unwind(8)</a> to learn
	nameservers from network autoconfiguration daemons.
    <li>Added opportunistic DoT support to <a
	href="https://man.openbsd.org/unwind">unwind(8)</a>.
    <li>Added an ASR resolver type to <a
	href="https://man.openbsd.org/unwind">unwind(8)</a>, using the libc
        asynchronous resolver directly with DHCP-provided nameservers to work
        around broken middle boxes.
  </ul>

<li><a href="https://man.openbsd.org/ipsec">ipsec(4)</a> improvements and
    bugfixes:
  <ul>
    <li>Added support for automatically moving traffic between
	rdomains on <a href="https://man.openbsd.org/ipsec">ipsec(4)</a>
	encryption or decryption, reducing the attack surface for network
	sidechannel attacks.
    <li>Added <a href="https://man.openbsd.org/iked">iked(8)</a>
	support for switching rdomain on <a
	href="https://man.openbsd.org/ipsec">ipsec(4)</a>
	encryption/decryption, configurable per policy with the new
	'rdomain' option in <a
	href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
    <li>Changed the default ipsec level set by <a
	href="https://man.openbsd.org/iked">iked(8)</a> and <a
	href="https://man.openbsd.org/isakmpd">isakmpd(8)</a> to
	IPSEC_LEVEL_REQUIRE. Unencrypted packets matching incoming
	ipsec flows are no longer accepted by default.
    <li>Added curve25519, ecp256, ecp384, ecp521, modp3072 and modp4096 to
	the default Diffie-Hellman group configuration for IKE SAs in
	<a href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Removed support for the insecure EC2N Diffie-Hellman groups in <a
	href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Changed the default authentication method in <a
	href="https://man.openbsd.org/iked">iked(8)</a> to
	generic signature authentication (RFC 7427).
    <li>Added ESN configuration options for ikesa in <a
	href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
    <li>Added transport mode for child SAs to <a
	href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Added active probing for lost connection in <a
	href="https://man.openbsd.org/iked">iked(8)</a> resulting in a
	faster connection reset.
    <li>Added a -p command line option to <a
	href="https://man.openbsd.org/iked">iked(8)</a> allow configuration
	of a non-standard UDP encapsulation port.
    <li>Added support for multiple X.509 extensions and multiple
	subjectAltName fields in certificates used with <a
	href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Added support for certificates with uppercase subjectAltNames
	in <a href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Removed automatically installed <a
	href="https://man.openbsd.org/ipsec">ipsec(4)</a> flow blocking
	unencrypted IPv6 traffic in <a
	href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Reduced size of IKE_AUTH message by eliminating duplicate traffic
	selectors in <a href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Added an <a
	href="https://man.openbsd.org/ikectl">ikectl(8)</a> "show sa"
	command to print information about the state of negotiated IKE SAs,
	their child SAs and the resulting IPsec flows.
    <li>Added an <a
	href="https://man.openbsd.org/ikectl">ikectl(8)</a> "reset id"
	command to reset all SAs from policies with matching destination IDs.
    <li>Added support for UDP encapsulation in manual SAs set up with <a
	href="https://man.openbsd.org/ipsec.conf">ipsec.conf(5)</a>.
    <li>Fixed an <a href="https://man.openbsd.org/iked">iked(8)</a>
	bug that lead to connection loss after simultaneous rekeying.
    <li>Fixed an <a href="https://man.openbsd.org/iked">iked(8)</a>
	public key leak in the CA process for ASN-DN IDs.
    <li>Fixed  a bug that lead to a lost EAP ID after rekeying in <a
	href="https://man.openbsd.org/iked">iked(8)</a>.
    <li>Fixed EAP user database corruption resulting from use of the <a
	href="https://man.openbsd.org/ikectl">ikectl(8)</a> reload command.
    <li>Corrected <a href="https://man.openbsd.org/iked">iked(8)</a>
	calculation of IPv6 address leases from small address pools.
    <li>Fixed several bugs that could lead to <a
	href="https://man.openbsd.org/iked">iked(8)</a> selecting a false policy
	for incoming requests, resulting in a failed handshake.
    <li>Fixed a bug that broke PSK authentication against Strongswan.
    <li>Enabled UDP-encapsulation in Child SAs if <a
	href="https://man.openbsd.org/iked">iked(8)</a> was started with -t.
    <li>Fixed <a href="https://man.openbsd.org/isakmpd">isakmpd(8)</a>
	IKE pcap file creation.
  </ul>

<li><a href="https://man.openbsd.org/tmux">tmux(1)</a> improvements and bug fixes:
  <ul>
    <li>Indicated the marked pane in <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> choose mode in
	reverse, and added keys to set (m) and clear it (M), and to jump to
	the starting pane (H).
    <li>Allowed <a href="https://man.openbsd.org/tmux">tmux(1)</a>
	main-pane-width and height to be specified as percentages.
    <li>Added a -f filter argument to the <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> list commands like
	choose-tree.
    <li>Added an -s flag to <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> copy-mode to specify a
	different pane for the source content.
    <li>Added a -T flag to <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> resize-pane to trim
	lines below the cursor.
    <li>Added support for <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> overlay popup boxes,
	created with the display-popup command.
    <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a> -d
	flag to run-shell to wait for delay before running the command (or
	delay with no command).
    <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a>
	copy-mode -H flag to hide the position marker in the top right.
    <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> C-g
	to cancel command prompt with <a
	href="https://man.openbsd.org/vi">vi(1)</a> keys as well as emacs, and
	q in command mode.
    <li>Modified <a href="https://man.openbsd.org/tmux">tmux(1)</a> -S
	server socket to be created with umask 177 rather than 117.
    <li>Introduced a <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> selection_active
	format for when the selection is present but not moving with the
	cursor.
    <li>Added -a to the list-keys command in <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> to also list keys
	without notes with -N.
    <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> support
	for adding a note to a key binding with bind-key -N and using this to
	add descriptions to the default key binding. Using list-keys -N shows
	key bindings with notes. Changed the default ? binding to show a
	readable summary of keys.
    <li>Added -Z to the default <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> switch-client command
	in tree mode.
    <li>Prevented read-only <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> clients from limiting
	the size of other clients.
    <li>Added support for regex searches in <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> copy mode.
    <li>Modified <a href="https://man.openbsd.org/tmux">tmux(1)</a>
	source-file to allow reading from stdin.
    <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a> p
	format modifier for padding to width.
    <li>Added -f for full size to join-pane in <a
	href="https://man.openbsd.org/tmux">tmux(1)</a>.
    <li>Changed <a href="https://man.openbsd.org/tmux">tmux(1)</a>
	new-session -A to attach to the best existing session when a session
	name is not specified, rather than creating a new session.
    <li>Added an option to <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> to set the key sent by
	backspace for systems using ^H.
    <li>Added -F flag to <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> send-keys to expand
	formats in search-backward and forward copy mode commands.
    <li>Added support for percentage sizes to <a
	href="https://man.openbsd.org/tmux">tmux(1)</a> resize-pane ("-x 10%")
	and changed split-window and join-pane -l to accept similar
	percentages, deprecating the -p option.
  </ul>

<li>VMM/VMD improvements
  <ul>
    <li>Added <a href="https://man.openbsd.org/vmm">vmm(4)</a> IOCTL
	handler to set the access protections of the ept.
    <li>Added a check in <a
	href="https://man.openbsd.org/vmm">vmm(4)</a> for <a
	href="https://man.openbsd.org/pvclock">pvclock(4)</a> struct crossing
	of page boundaries, which could potentially corrupt host memory.
    <li>Tightened rdmsr on svm in <a href="https://man.openbsd.org/vmm">vmm(4)</a>.
    <li>Fixed an issue where a <a
	href="https://man.openbsd.org/vmm">vmm(4)</a> guest could write to
	host memory by passing bogus addresses in <a
	href="https://man.openbsd.org/pvclock">pvclock(4)</a>.
    <li>Run <a href="https://man.openbsd.org/cu">cu(1)</a> in
	restricted mode using -r in <a
	href="https://man.openbsd.org/vmctl">vmctl(8)</a> and <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a>.
    <li>Started virtual machines defined in <a
	href="https://man.openbsd.org/vm.conf">vm.conf(5)</a> in a staggered
	fashion, helping prevent overload of the host and improper tsc
	calibration in guests.
    <li>Provided proper concurrency control when pausing a vm in <a
	href="https://man.openbsd.org/vmd">vmd(8)</a>.
    <li>Fixed a panic when tearing down vms with <a
	href="https://man.openbsd.org/vmm">vmm(4)</a>.
  </ul>


<li>ldom/sparc64 virtualization improvements
  <ul>
    <li>Added support for devaliases for vnet in <a
	href="https://man.openbsd.org/ldom.conf">ldom.conf(5)</a>.
    <li>Implemented <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> "panic -c" to
	panic a guest domain (and enter <a
	href="https://man.openbsd.org/ddb">ddb(4)</a>).
    <li>Implemented "start -c" in <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> to automatically
	connect to the console.
    <li>Introduced a -n option to <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> to validate the
	configuration file and exit.
    <li>Added a create-vdisk command to <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> analogous to
	amd64's <a href="https://man.openbsd.org/vmctl">vmctl(8)</a> create.
    <li>Added the "console" command to <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> which executes
	<a href="https://man.openbsd.org/cu">cu(1)</a> on the domain's
	console.
    <li>Printed guest domain <a
	href="https://man.openbsd.org/vcctty">vcctty(4)</a> devices in status
	output in <a href="https://man.openbsd.org/ldomctl">ldomctl(8)</a>.
    <li>Added list-io command to <a
	href="https://man.openbsd.org/ldomctl">ldomctl(8)</a>, listing the
	available PCIe devices to be used with the iodevice parameter in <a
	href="https://man.openbsd.org/ldom.conf">ldom.conf(5)</a>.
  </ul>

<li>OpenSMTPD 6.7.0
  <ul>
    <li>New Features
      <ul>
	<li>Allowed use of the <a
	    href="https://man.openbsd.org/smtpd">smtpd(8)</a> session username in
	    built-in filters when available.
	<li>Introduced a bypass keyword to <a
	    href="https://man.openbsd.org/smtpd">smtpd(8)</a> so that built-in
	    filters can bypass processing when a condition is met.
	<li>Allowed use of 'auth' as an origin in <a
	    href="https://man.openbsd.org/smtpd.conf">smtpd.conf(5)</a>.
	<li>Allowed use of mail-from and rctp-to as for and from parameters
	    in <a href="https://man.openbsd.org/smtpd.conf">smtpd.conf(5)</a>.
      </ul>

    <li>Bug fixes
      <ul>
	<li>Ensured legacy <a href="https://man.openbsd.org/ssl">ssl(8)</a>
	    session ID is persistent during a client TLS session, fixing an issue
	    using TLSv1.3 with smtp.mail.yahoo.com.
	<li>Fixed security vulnerabilities in <a
	    href="https://man.openbsd.org/smtpd">smtpd(8)</a>. Corrected an
	    out-of-bounds read in smtpd allowing an attacker to inject arbitrary
	    commands into the envelope file to be executed as root, and ensured
	    privilege revocation in <a
	    href="https://man.openbsd.org/smtpctl">smtpctl(8)</a> to prevent
	    arbitrary commands from being run with the _smtpq group.
	<li>Allowed <a
	    href="https://man.openbsd.org/mail.local">mail.local(8)</a> to be run
	    as non-root, opening a pipe to <a
	    href="https://man.openbsd.org/lockspool">lockspool(1)</a> for file
	    locking.
	<li>Fixed a security vulnerability in <a
	    href="https://man.openbsd.org/smtpd">smtpd(8)</a> which could lead to
	    a privilege escalation on mbox deliveries and unprivileged code
	    execution on lmtp deliveries.
	<li>Added support for CIDR in a: spf atoms in <a
	    href="https://man.openbsd.org/smtpd">smtpd(8)</a>.
	<li>Fixed a possible crash in <a
	    href="https://man.openbsd.org/smtpd">smtpd(8)</a> when combining "from
	    rdns" with nested virtual aliases under a particular configuration.
      </ul>

    <li>Experimental Features
      <ul>
	<li>Introduced smtp-out event reporting.
	<li>Improved filtering protocol.
      </ul>
  </ul>

<li>LibreSSL 3.1.1
  <ul>
    <li>New Features
    <ul>
	<li>Completed initial TLS 1.3 implementation with a completely new state
	    machine and record layer. TLS 1.3 is now enabled by default for the
	    client side, with the server side to be enabled in a future release.
	    Note that the OpenSSL TLS 1.3 API is not yet visible/available.
	<li>Improved cipher suite handling to automatically include TLSv1.3
            cipher suites when they are not explicitly referred to in the
            cipher string.
	<li>Provided TLSv1.3 cipher suite aliases to match the names used
	    in RFC 8446.
	<li>Added cms subcommand to openssl(1).
	<li>Added -addext option to openssl(1) req subcommand.
	<li>Added -groups option to openssl(1) s_server subcommand.
	<li>Added TLSv1.3 extension types to openssl(1) -tlsextdebug.
    </ul>

    <li>API and Documentation Enhancements
    <ul>
	<li>Added RSA-PSS and RSA-OAEP methods from OpenSSL 1.1.1.
	<li>Ported Cryptographic Message Syntax (CMS) implementation from OpenSSL
	    1.1.1 and enabled by default.
    </ul>

    <li>Compatibility Changes
    <ul>
	<li>Improved compatibility by backporting functionality and documentation
	    from OpenSSL 1.1.1.
	<li>Adjusted EVP_chacha20()'s behavior to match OpenSSL's semantics.
    </ul>

    <li>Testing and Proactive Security
    <ul>
	<li>Added many new additional crypto test vectors.
	<li>Fix to disallow setting the AES-GCM IV length to zero.
    </ul>

    <li>Internal Improvements
      <ul>
	<li>Many more code cleanups, fixes, and improvements to memory handling
	    and protocol parsing.
      </ul>

    <li>Portable Improvements
    <ul>
	<li>Default CA bundle location is now configurable in portable builds.
	<li>Improved portable builds to support for use of static MSVC runtimes.
	<li>Fixed portable builds to avoid exporting a sleep() symbol.
    </ul>

    <li>Bug Fixes
    <ul>
	<li>Fixed printing the serialNumber with X509_print_ex() fall back to
	    the colon separated hex bytes in case greater than int value.
    </ul>
  </ul>

<li>OpenSSH 8.3
  <ul>
    <li>Potentially incompatible changes.
      <ul>
	<li><a href="https://man.openbsd.org/sftp">sftp(1)</a>:
	    reject an argument of "-1" in the same way as ssh(1) and
	    scp(1) do instead of accepting and silently ignoring it.
	<li>Removed ssh-rsa (SHA1) from the list of allowed CA signature algorithms.
	<li>Removed diffie-hellman-group14-sha1 from the default <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> key exchange.
	<li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
	    the command-line options related to the generation
	    and screening of safe prime numbers used by the
	    diffie-hellman-group-exchange-* key exchange algorithms have
	    changed. Most options have been folded under the -O flag.
	<li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
	    the sshd listener process title visible to ps(1) has
	    changed to include information about the number of connections that
	    are currently attempting authentication and the limits configured
	    by MaxStartups.
	<li><a href="https://man.openbsd.org/ssh-sk-helper.8">ssh-sk-helper(8)</a>:
	    this is a new binary. It is used by the FIDO/U2F
	    support to provide address-space isolation for token middleware
	    libraries (including the internal one). It needs to be installed
	    in the expected path under /usr/libexec.
	</ul>
    <li>New Features
      <ul>
	<li>Allowed use of the IgnoreRhosts directive anywhere in an <a
	    href="https://man.openbsd.org/sshd_config">sshd_config(5)</a> file,
	    not just before Match blocks, and made it a tri-state option.
	<li>Added TOKEN percent expansion (i.e. userid, hostnames etc.) to <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> LocalForward and
	    RemoteForward when used for Unix domain socket forwarding.
	<li>all: allow loading public keys from the unencrypted envelope of a
	    private key file if no corresponding public key file is present.
	<li>Gave <a
	    href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> the
	    ability to dump the contents of a binary key revocation list with
	    <code>ssh-keygen -lQf /path</code>.
	<li>Added <a href="https://man.openbsd.org/ssh">ssh(1)</a> -Q key-sig
	    option for all key and signature types, teaching ssh -Q to accept <a
	    href="https://man.openbsd.org/ssh_config">ssh_config(5)</a> and <a
	    href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>
	    algorithm keywords as an alias for the corresponding query.
	<li>Updated to libfido2 780ad3c25.
	<li>Added an <a
	    href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>
	    "Include" directive to allow inclusion of files.
	<li>Renamed <a href="https://man.openbsd.org/ssh-add">ssh-add(1)</a>
	    -O to -K to load resident keys from a FIDO authenticator.
	<li>Added the ability to download FIDO2 resident keys from a token
	    via the <a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>
	    -K option and save public/private keys into the current directory.
	<li>Implemented support for generating FIDO2 resident keys. "ssh-add
	    -O" will load resident keys from a FIDO2 token and add them to an
	    ssh-agent. Removed the -x option currently used for the
	    FIDO/U2F-specific key flags, now under -O.
	<li>Removed single letter flags for moduli generation in <a
	    href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> and moved
	    all moduli generation options to under the -O flag. Breaks existing
	    ssh-keygen commandline syntax for moduli-related operations.
	<li>Allowed forwarding of a different agent socket to a specified
	    path in <a href="https://man.openbsd.org/ssh">ssh(1)</a>.
	<li>Allowed <a href="https://man.openbsd.org/ssh">ssh(1)</a> security
	    keys to act as host keys as well as user keys.
	<li>Used ssh-sk-helper for all security key signing operations and
	    security key enrollment. Most <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> tools no longer need to
	    link against libfido2 or interact with /dev/uhid* directly.
	<li>Added "no-touch-required" options to <a
	    href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> and <a
	    href="https://man.openbsd.org/sshd">sshd(8)</a> to disable touch
	    requirement for authorized_keys and certificates.
	<li>Added an <a
	    href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>
	    PubkeyAuthOptions directive allowing specification of whether <a
	    href="https://man.openbsd.org/sshd">sshd(8)</a> should check whether
	    user presence was tested before a security key was made.
        <li>Added direct support for U2F/FIDO2 security keys in <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a>.
        <li>Added initial infrastructure for U2F/FIDO support in <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a>.
	<li>Notified the user via TTY or $SSH_ASKPASS when <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> security keys must be
	    tapped/touched in order to perform a signature operation.
	<li>Enabled ed25519 support in <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a>.
      </ul>
    <li>Bugfixes
      <ul>
	<li>Detected and prevented simple <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> configuration loops when
	    using ProxyJump.
	<li>Fixed PIN entry bugs on FIDO in <a
	    href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>.
	<li>Fixed <a
	    href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a> not
	    displaying the authenticator touch prompt.
	<li>Prevented a timeout in <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> when the server doesn't
	    immediately send a banner, such as with multiplexers like sslh.
	<li>Adjusted on-wire signature encoding for ecdsh-sk <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a> keys to better match
	    ec25519-sk keys.
	<li>Fixed a potential NULL dereference for revoked hostkeys in <a
	    href="https://man.openbsd.org/ssh">ssh(1)</a>.
	<li>ssh(1): fix IdentitiesOnly=yes to also apply to keys loaded from
	    a PKCS11Provider
	<li>ssh-keygen(1): avoid NULL dereference when trying to convert an
	    invalid RFC4716 private key.
	<li>scp(2): when performing remote-to-remote copies using "scp -3",
	    start the second ssh(1) channel with BatchMode=yes enabled to
	    avoid confusing and non-deterministic ordering of prompts.
 	<li>ssh(1): fix incorrect error message for "too many known hosts
	    files."
	<li>ssh(1): make failures when establishing "Tunnel" forwarding
	    terminate the connection when ExitOnForwardFailure is enabled
	<li>ssh-keygen(1): fix printing of fingerprints on private keys and add
	    a regression test for same.
	<li>sshd(8): document order of checking AuthorizedKeysFile (first) and
	    AuthorizedKeysCommand (subsequently, if the file doesn't match)
	<li>sshd(8): document that /etc/hosts.equiv and /etc/shosts.equiv are
	    not considered for HostbasedAuthentication when the target user is
	    root
	<li>ssh(1), ssh-keygen(1): fix NULL dereference in private certificate
	    key parsing (oss-fuzz #20074).
	<li>ssh(1), sshd(8): more consistency between sets of %TOKENS are
	    accepted in various configuration options.
	<li>ssh(1), ssh-keygen(1): improve error messages for some common
	    PKCS#11 C_Login failure cases
	<li>ssh(1), sshd(8): make error messages for problems during SSH banner
	    exchange consistent with other SSH transport-layer error messages
	    and ensure they include the relevant IP addresses
	<li>various: fix a number of spelling errors in comments and debug/error
	    messages
 	<li>ssh-keygen(1), ssh-add(1): when downloading FIDO2 resident keys
	    from a token, don't prompt for a PIN until the token has told us
	    that it needs one. Avoids double-prompting on devices that
	    implement on-device authentication.
 	<li>sshd(8), ssh-keygen(1): no-touch-required FIDO certificate option
	    should be an extension, not a critical option.
 	<li>ssh(1), ssh-keygen(1), ssh-add(1): offer a better error message
	    when trying to use a FIDO key function and SecurityKeyProvider is
	    empty.
	<li>ssh-add(1), ssh-agent(8): ensure that a key lifetime fits within
	    the values allowed by the wire format (u32). Prevents integer
	    wraparound of the timeout values
	</ul>
  </ul>

<li>Mandoc 1.14.6
  <ul>
    <li>Introduced a new <a
	href="https://man.openbsd.org/mdoc">mdoc(7)</a> macro .Tg ("tag") to
	explicitly mark a place as defining a term, and improved automatic
	tagging in various ways.
    <li>Print the manpath when the <a
	href="https://man.openbsd.org/man.1#w">man(1) -w</a> option
	is given without an argument, for compatibility with the man-1.6
	and man-db implementations.
    <li>Deleted support for the <a
	href="https://man.openbsd.org/OpenBSD-6.6/man.conf.5#_whatdb"
	>_whatdb</a> configuration directive from
	<a href="https://man.openbsd.org/man.conf.5">man.conf(5)</a>
	five years after it was declared obsolete; use <a
	href="https://man.openbsd.org/man.conf.5#manpath">manpath</a> instead.
    <li>Added a Content-Security-Policy HTTP header to <a
	href="https://man.openbsd.org/man.cgi.8">man.cgi(8)</a>
	that allows only CSS.
    <li>Provide a STYLE message when <a
	href="https://man.openbsd.org/mandoc.1">mandoc(1)</a> knows the
	filename and the extension disagrees with the section number
	given in the .Dt or .TH macro.
    <li>When the <a href="https://man.openbsd.org/mdoc.7">mdoc(7)</a> .Dd
	macro lacks an argument, use the empty string, and always
	concatenate all arguments, no matter their number.
	The same change was applied to groff.
  </ul>

<li>Ports and packages:
<p>The package system provides an easy way to install 3rd party software. New features include:
  <ul>
    <li>Provide debug package information that can be installed
	alongside packages and used to provide better bug reports.
    <li>Added DEBUG_PKG_CACHE functionality to <a
	href="https://man.openbsd.org/pkg_add">pkg_add(1)</a>, fetching debug
	patches when packages are installed.
    <li>Added a -d option to <a
	href="https://man.openbsd.org/pkg_add">pkg_add(1)</a> to add debug
	packages if present alongside intended updates or additions.
    <li>Added support for "alpha" suffixes in <a
	href="https://man.openbsd.org/packages-specs">packages-specs(7)</a>,
	removing the need for workarounds in certain ports distfiles.
  </ul>

  <p>Many pre-built packages for each architecture:
  <!-- number of FTP packages minus SHA256, SHA256.sig, index.txt -->
  <ul style="column-count: 3">
    <li>aarch64:     10848
    <li>amd64:       11268
    <li>arm:          8596
    <li>i386:        10715
    <li>mips64:       9281
    <li>mips64el:     6503
    <li>powerpc:      9890
    <li>sparc64:      9850
  </ul>

<li>As usual, steady improvements in manual pages and other documentation.

<li>The system includes the following major components from outside suppliers:
  <ul>
    <li>Xenocara (based on X.Org 7.7 with xserver 1.20.8 + patches,
        freetype 2.10.1, fontconfig 2.12.4, Mesa 19.2.8, xterm 351,
        xkeyboard-config 2.20 and more)
    <li>LLVM/Clang 8.0.1 (+ patches)
    <li>GCC 4.2.1 (+ patches) and 3.3.6 (+ patches)
    <li>Perl 5.30.2 (+ patches)
    <li>NSD 4.2.4
    <li>Unbound 1.10.0
    <li>Ncurses 5.7
    <li>Binutils 2.17 (+ patches)
    <li>Gdb 6.3 (+ patches)
    <li>Awk Dec 20, 2012 version
    <li>Expat 2.2.8
  </ul>
</ul>
</section>

<hr>

<section id=install>
<h3>How to install</h3>
<p>
Please refer to the following files on the mirror site for
extensive details on how to install OpenBSD 6.7 on your machine:

<ul>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/alpha/INSTALL.alpha">
	.../OpenBSD/6.7/alpha/INSTALL.alpha</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/amd64/INSTALL.amd64">
	.../OpenBSD/6.7/amd64/INSTALL.amd64</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/arm64/INSTALL.arm64">
	.../OpenBSD/6.7/arm64/INSTALL.arm64</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/armv7/INSTALL.armv7">
	.../OpenBSD/6.7/armv7/INSTALL.armv7</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/hppa/INSTALL.hppa">
	.../OpenBSD/6.7/hppa/INSTALL.hppa</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/i386/INSTALL.i386">
	.../OpenBSD/6.7/i386/INSTALL.i386</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/landisk/INSTALL.landisk">
	.../OpenBSD/6.7/landisk/INSTALL.landisk</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/loongson/INSTALL.loongson">
	.../OpenBSD/6.7/loongson/INSTALL.loongson</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/luna88k/INSTALL.luna88k">
	.../OpenBSD/6.7/luna88k/INSTALL.luna88k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/macppc/INSTALL.macppc">
	.../OpenBSD/6.7/macppc/INSTALL.macppc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/octeon/INSTALL.octeon">
	.../OpenBSD/6.7/octeon/INSTALL.octeon</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/sgi/INSTALL.sgi">
	.../OpenBSD/6.7/sgi/INSTALL.sgi</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.7/sparc64/INSTALL.sparc64">
	.../OpenBSD/6.7/sparc64/INSTALL.sparc64</a>
</ul>
</section>

<hr>

<section id=quickinstall>
<p>
Quick installer information for people familiar with OpenBSD, and the use of
the "<a href="https://man.openbsd.org/disklabel.8">disklabel</a> -E" command.
If you are at all confused when installing OpenBSD, read the relevant
INSTALL.* file as listed above!

<h3>OpenBSD/alpha:</h3>

<p>
If your machine can boot from CD, you can write <i>install67.iso</i> or
<i>cd67.iso</i> to a CD and boot from it.
Refer to INSTALL.alpha for more details.

<h3>OpenBSD/amd64:</h3>

<p>
If your machine can boot from CD, you can write <i>install67.iso</i> or
<i>cd67.iso</i> to a CD and boot from it.
You may need to adjust your BIOS options first.

<p>
If your machine can boot from USB, you can write <i>install67.fs</i> or
<i>miniroot67.fs</i> to a USB stick and boot from it.

<p>
If you can't boot from a CD, floppy disk, or USB,
you can install across the network using PXE as described in the included
INSTALL.amd64 document.

<p>
If you are planning to dual boot OpenBSD with another OS, you will need to
read INSTALL.amd64.

<h3>OpenBSD/arm64:</h3>

<p>
Write <i>miniroot67.fs</i> to a disk and boot from it after connecting
to the serial console.  Refer to INSTALL.arm64 for more details.

<h3>OpenBSD/armv7:</h3>

<p>
Write a system specific miniroot to an SD card and boot from it after connecting
to the serial console.  Refer to INSTALL.armv7 for more details.

<h3>OpenBSD/hppa:</h3>

<p>
Boot over the network by following the instructions in INSTALL.hppa or the
<a href="hppa.html#install">hppa platform page</a>.

<h3>OpenBSD/i386:</h3>

<p>
If your machine can boot from CD, you can write <i>install67.iso</i> or
<i>cd67.iso</i> to a CD and boot from it.
You may need to adjust your BIOS options first.

<p>
If your machine can boot from USB, you can write <i>install67.fs</i> or
<i>miniroot67.fs</i> to a USB stick and boot from it.

<p>
If you can't boot from a CD, floppy disk, or USB,
you can install across the network using PXE as described in
the included INSTALL.i386 document.

<p>
If you are planning on dual booting OpenBSD with another OS, you will need to
read INSTALL.i386.

<h3>OpenBSD/landisk:</h3>

<p>
Write <i>miniroot67.fs</i> to the start of the CF
or disk, and boot normally.

<h3>OpenBSD/loongson:</h3>

<p>
Write <i>miniroot67.fs</i> to a USB stick and boot bsd.rd from it
or boot bsd.rd via tftp.
Refer to the instructions in INSTALL.loongson for more details.

<h3>OpenBSD/luna88k:</h3>

<p>
Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader
from the PROM, and then bsd.rd from the bootloader.
Refer to the instructions in INSTALL.luna88k for more details.

<h3>OpenBSD/macppc:</h3>

<p>
Burn the image from a mirror site to a CDROM, and power on your machine
while holding down the <i>C</i> key until the display turns on and
shows <i>OpenBSD/macppc boot</i>.

<p>
Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
/6.7/macppc/bsd.rd</i>

<h3>OpenBSD/octeon:</h3>

<p>
After connecting a serial port, boot bsd.rd over the network via DHCP/tftp.
Refer to the instructions in INSTALL.octeon for more details.

<h3>OpenBSD/sgi:</h3>

<p>
To install, burn cd67.iso on a CD-R, put it in the CD drive of your
machine and select <i>Install System Software</i> from the System Maintenance
menu. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from
CD-ROM, and need a proper invocation from the PROM prompt.
Refer to the instructions in INSTALL.sgi for more details.

<p>
If your machine doesn't have a CD drive, you can setup a DHCP/tftp network
server, and boot using "bootp()/bsd.rd.IP##" using the kernel matching your
system type. Refer to the instructions in INSTALL.sgi for more details.

<h3>OpenBSD/sparc64:</h3>

<p>
Burn the image from a mirror site to a CDROM, boot from it, and type
<i>boot cdrom</i>.

<p>
If this doesn't work, or if you don't have a CDROM drive, you can write
<i>floppy67.fs</i> or <i>floppyB67.fs</i>
(depending on your machine) to a floppy and boot it with <i>boot
floppy</i>. Refer to INSTALL.sparc64 for details.

<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.

<p>
You can also write <i>miniroot67.fs</i> to the swap partition on
the disk and boot with <i>boot disk:b</i>.

<p>
If nothing works, you can boot over the network as described in INSTALL.sparc64.
</section>

<hr>

<section id=upgrade>
<h3>How to upgrade</h3>
<p>
If you already have an OpenBSD 6.6 system, and do not want to reinstall,
upgrade instructions and advice can be found in the
<a href="faq/upgrade67.html">Upgrade Guide</a>.
</section>

<hr>

<section id=sourcecode>
<h3>Notes about the source code</h3>
<p>
<code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
This file contains everything you need except for the kernel sources,
which are in a separate archive.
To extract:
<blockquote><pre>
# <kbd>mkdir -p /usr/src</kbd>
# <kbd>cd /usr/src</kbd>
# <kbd>tar xvfz /tmp/src.tar.gz</kbd>
</pre></blockquote>
<p>
<code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
This file contains all the kernel sources you need to rebuild kernels.
To extract:
<blockquote><pre>
# <kbd>mkdir -p /usr/src/sys</kbd>
# <kbd>cd /usr/src</kbd>
# <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
</pre></blockquote>
<p>
Both of these trees are a regular CVS checkout.  Using these trees it
is possible to get a head-start on using the anoncvs servers as
described <a href="anoncvs.html">here</a>.
Using these files
results in a much faster initial CVS update than you could expect from
a fresh checkout of the full OpenBSD source tree.
</section>

<hr>

<section id=ports>
<h3>Ports Tree</h3>
<p>
A ports tree archive is also provided.  To extract:
<blockquote><pre>
# <kbd>cd /usr</kbd>
# <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
</pre></blockquote>
<p>
Go read the <a href="faq/ports/index.html">ports</a> page
if you know nothing about ports
at this point.  This text is not a manual of how to use ports.
Rather, it is a set of notes meant to kickstart the user on the
OpenBSD ports system.
<p>
The <i>ports/</i> directory represents a CVS checkout of our ports.
As with our complete source tree, our ports tree is available via
<a href="anoncvs.html">AnonCVS</a>.
So, in order to keep up to date with the -stable branch, you must make
the <i>ports/</i> tree available on a read-write medium and update the tree
with a command like:
<blockquote><pre>
# <kbd>cd /usr/ports</kbd>
# <kbd>cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_6_7</kbd>
</pre></blockquote>
<p>
[Of course, you must replace the server name here with a nearby anoncvs
server.]
<p>
Note that most ports are available as packages on our mirrors. Updated
ports for the 6.7 release will be made available if problems arise.
<p>
If you're interested in seeing a port added, would like to help out, or just
would like to know more, the mailing list
<a href="mail.html">ports@openbsd.org</a> is a good place to know.
</section>