Annotation of www/68.html, Revision 1.41
1.1 benno 1: <!doctype html>
2: <html lang=en id=release>
3: <meta charset=utf-8>
4:
5: <title>OpenBSD 6.8</title>
6: <meta name="description" content="OpenBSD 6.8">
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/68.html">
10:
11: <h2 id=OpenBSD>
12: <a href="index.html">
13: <i>Open</i><b>BSD</b></a>
14: 6.8
15: </h2>
16:
17: <table>
18: <tr>
19: <td>
20: <a href="images/XXX.gif">
21: <img width="227" height="343" src="images/XXX-s.gif" alt="XXX"></a>
22: <td>
23: Released Oct XXX, 2020<br>
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.8/</code> directory on
33: one of the mirror sites.
34: <li>Have a look at <a href="errata68.html">the 6.8 errata page</a> for a list
35: of bugs and workarounds.
36: <li>See a <a href="plus68.html">detailed log of changes</a> between the
37: 6.7 and 6.8 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-68-base.pub:
45: <td>
46: <a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/openbsd-68-base.pub">
47: RWQZj25CSG5R2oLo5735Hh6C48kkjFsj5rJDjW+fGZwyY+BkD5/zps8f
48: <tr><td>
49: openbsd-68-fw.pub:
50: <td>
51: RWSYx4htNi/zavF8ZToMBDFz2xymRfFnnR1MEKV9csYbvnrTBwdkXhdy
52: <tr><td>
53: openbsd-68-pkg.pub:
54: <td>
55: RWQlDXyHx5KlPoEiz4yWRK/Gt/rvPwI8KEAt3utge/dBS7R+EscdzA5K
56: <tr><td>
57: openbsd-68-syspatch.pub:
58: <td>
59: RWRWuHkSV0U8PUX24vGa3ywrvKNQY6llV3PLvKEzDTiTVPfIRaXPfvzR
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.8.
74: For a comprehensive list, see the <a href="plus68.html">changelog</a> leading
75: to 6.8.
76:
77: <ul>
78:
1.17 kettenis 79: <li>New/extended platforms:
80: <ul>
81: <li>New <a href="https://www.openbsd.org/powerpc64.html">powerpc64</a>
82: platform, supporting PowerNV (non-virtualized) systems with
83: POWER8 and POWER9 CPUs, such as Raptor Computing Systems Talos
84: II and Blackbird systems. POWER8 support has not been tested
85: on real hardware yet.
86: </ul>
87:
1.40 schwarze 88: <li>Improvements to time measurements, mostly in the kernel:
1.1 benno 89: <ul>
1.3 benno 90: <li>Added support in the kernel and libc for timecounting in
91: userland, eliminating the need for a context switch everytime a
92: process requests the current time, thereby improving speed and
93: responsiveness in programs which make many <a
94: href="https://man.openbsd.org/gettimeofday">gettimeofday(2)</a> calls,
95: especially browsers and office software.<br>The userland timecounters
96: are enabled on the amd64, arm64, macppc, octeon and sparc64
1.18 kettenis 97: architectures.
1.40 schwarze 98: <li>Added a <a href="https://man.openbsd.org/ktrace">ktrace(1)</a> -T option to make time-related system calls more prominent.
99: <li>Added tsc_delay(), a <a href="https://man.openbsd.org/delay">delay(9)</a> implementation based on the TSC, to amd64.
100: <li>Used an LFENCE instruction everywhere RDTSC is used for a time measurement, reducing the jitter in TSC skew measurements.
101: <li>Introduced <a href="https://man.openbsd.org/gettime">gettime(9)</a> and <a href="https://man.openbsd.org/getuptime">getuptime(9)</a> and substituted these for time_second(9) and time_uptime(9) throughout the kernel to prevent split-read problems on 32-bit platforms.
102: <li>Synchronized each core's CP0 cycle counter using the IO clock counter on mips64 and octeon, making the cycle counter usable as timecounter.
103: <li>Improved CPU frequency scaling in automatic performance mode by removing accounting for offline CPUs.
104: </ul>
1.3 benno 105:
1.40 schwarze 106: <li>Various kernel improvements:
107: <ul>
108: <li>Added <a href="https://man.openbsd.org/intrmap_create">intrmap</a>, an interrupt to CPU mapping API that is used by hardware drivers to use multiple CPUs for interrupt handling.
109: <li>Added an ioctl PCIOCGETVPD allowing userland to access read-only support information about pci devices via the vpd register.
1.1 benno 110: <li>Set <a href="https://man.openbsd.org/ddb">ddb(4)</a> "/t" to show a trace via TID on all architectures.
1.40 schwarze 111: <li>Introduced <a href="https://man.openbsd.org/kstat">kstat(1)</a>, a subsystem to allow the kernel to expose statistics to userland.
112: <li>Added kstat to <a href="https://man.openbsd.org/cnmac">cnmac(4)</a>.
113: <li>Added support for remote coverage to <a href="https://man.openbsd.org/kcov">kcov(4)</a>.
114: <li>Moved <a href="https://man.openbsd.org/sysctl">sysctl(2)</a> CTL_DEBUG from DEBUG to the new DEBUG_SYSCTL.
115: <li>Prevented creation of bogus <a href="https://man.openbsd.org/sd">sd(4)</a> devices for <a href="https://man.openbsd.org/nvme">nvme(4)</a> namespaces which are configured but have size 0.
116: <li>Used READ(16)/WRITE(16) commands for disks large enough to require them to access the last sectors, fixing large 512E devices plugged into USB to ATA/ATAPI bridges which mistakenly use 4K sector addresses/sizes.
1.1 benno 117: <li>Restored VGA fonts on VT switch, preventing an unusable screen when switching to a VT with a custom VGA font from X.
1.40 schwarze 118: <li>Ensured only pseudo-terminal devices use reprint delays.
119: <li>Prevented improper disabling of the backlight in <a href="https://man.openbsd.org/umstc">umstc(4)</a> when brightness is adjusted to 0.
120: <li>Provided an optimized implementation of <a href="https://man.openbsd.org/ffs">ffs(3)</a> in the kernel on arm64/powerpc/powerpc64.
1.1 benno 121: <li>Rewrote m88k mutex code as a slight variation of the MI mutex code, potentially improving stability and rendering mutex spinning time visible in <a href="https://man.openbsd.org/top">top(1)</a>.
1.40 schwarze 122: <li>Reworked kernel loading with <a href="https://man.openbsd.org/octboot">octboot(4)</a>, which now does not rely on a mounted filesystem.
123: </ul>
124:
125: <li>Various new userland features:
126: <ul>
127: <li>Imported <a href="https://man.openbsd.org/login_ldap">login_ldap(8)</a>, using <a href="https://man.openbsd.org/ldap">ldap(1)</a> rather than openldap.
128: <li>Added support for set -o pipefail to <a href="https://man.openbsd.org/ksh">ksh(1)</a>, potentially helping error checking.
129: <li>Cleared the screen in <a href="https://man.openbsd.org/ksh">ksh(1)</a>'s vi editing mode before redrawing the line with ^L.
130: <li>Implemented the gensub(), systime() and strftime() functions for <a href="https://man.openbsd.org/awk">awk(1)</a>.
131: <li>Allowed specification of supported TLS protocols in <a href="https://man.openbsd.org/ftp">ftp(1)</a> "-S protocols".
132: <li>Switched the default <a href="https://man.openbsd.org/man.1">man(1)</a> pager from "<a href="https://man.openbsd.org/more.1">more(1)</a> -s" to <a href="https://man.openbsd.org/less.1">less(1)</a>.
133: <li>Supported -T html -O tag in <a href="https://man.openbsd.org/man.1">man(1)</a> by passing a file:// URI to the pager.
134: <li>Added <a href="https://man.openbsd.org/fstat">fstat(1)</a> support for looking up unix domain sockets by file name.
135: <li>Added / as an alias for g (grep) in <a href="https://man.openbsd.org/top">top(1)</a>.
136: <li>Provided a naptime variable for userspace via <a href="https://man.openbsd.org/kvm_read">kvm_read(3)</a>, usable by <a href="https://man.openbsd.org/vmstat">vmstat(8)</a>.
1.1 benno 137: <li>Allowed switching between alternate devices (-F) with <a href="https://man.openbsd.org/sndioctl">sndioctl(1)</a>.
138: <li>Added the ability to set and display <a href="https://man.openbsd.org/video">video(1)</a> control values directly on the CLI.
139: <li>Allowed the combination of <a href="https://man.openbsd.org/video">video(1)</a> "-dc" options, reset and display control values.
1.40 schwarze 140: <li>Added <a href="https://man.openbsd.org/video">video(1)</a> white balance temperature control through w/W keys.
1.1 benno 141: <li>Added control for backlight compensation to <a href="https://man.openbsd.org/video">video(4)</a>.
1.40 schwarze 142: <li>Initialized v4l2_requestbuffers for libv4l compatibility, allowing view of video encodings not directly supported by <a href="https://man.openbsd.org/video">video(1)</a>.
143: <li>Added a new column to <a href="https://man.openbsd.org/wsfontload">wsfontload(8)</a> -l output to report the number of characters contained in a loaded font.
144: <li>Relaxed filename checks in <a href="https://man.openbsd.org/syspatch">syspatch(8)</a> to allow use of hyphens.
145: <li>Enabled <a href="https://man.openbsd.org/btrace">btrace(8)</a> (<a href="https://man.openbsd.org/dt">dt(4)</a> not yet enabled in GENERIC, though).
146: <li>Added <a href="https://man.openbsd.org/btrace">btrace(8)</a> -p flag to filter all actions by PID.
147: <li>Implemented linear and power-of-two histograms in bt(5).
148: <li>Added support for "&" and "|" operators in btrace scripts.
149: </ul>
150:
151: <li>Various bugfixes and tweaks in userland:
152: <ul>
153: <li>Fixed the <a href="https://man.openbsd.org/ksh">ksh(1)</a> exit code when evaluating a || compound list to prevent termination of the shell when running under -e.
154: <li>Fixed "$@" splitting with empty IFS in <a href="https://man.openbsd.org/ksh">ksh(1)</a>.
155: <li>Stopped incrementing openclass for a literal "[" in <a href="https://man.openbsd.org/awk">awk(1)</a>, allowing parsing of expressions such as "/[[/[]/".
156: <li>Fixed <a href="https://man.openbsd.org/make">make(1)</a> :S with anchors and replacement.
157: <li>Prevented <a href="https://man.openbsd.org/mg">mg(1)</a> from running out of memory or segfaulting with <code>query-replace-regex ^</code>.
158: <li>Fixed <a href="https://man.openbsd.org/ls">ls(1)</a> -R mode to not display subdirectories of a directory beginning with '.' and ensure directory names are always displayed.
1.1 benno 159: <li>Prevented a core dump in <a href="https://man.openbsd.org/ftp">ftp(1)</a> during fetch abort.
160: <li>Taught <a href="https://man.openbsd.org/su">su(1)</a> -l -f to start a regular shell for non-csh shells rather than a login shell.
161: <li>Used <a href="https://man.openbsd.org/su">su(1)</a> -fl to avoid sourcing the target user's .profile in <a href="https://man.openbsd.org/rc.d">rc.d(8)</a>/<a href="https://man.openbsd.org/rcctl">rcctl(8)</a>.
1.40 schwarze 162: <li>Fixed merging of files that lack newlines for <a href="https://man.openbsd.org/diff3">diff3(1)</a>, OpenRCS and OpenCVS.
163: <li>Prevented <a href="https://man.openbsd.org/rcs">rcs(1)</a> removal of locked revisions with rcs -orange, avoiding leaving behind a lock for a revision which no longer exists.
164: <li>Fixed <a href="https://man.openbsd.org/sndiod">sndiod(8)</a> crashes when USB devices are disconnected.
165: <li>Fixed the initial <a href="https://man.openbsd.org/sndiod">sndiod(8)</a> alternate device number, preventing device number 1 from being skipped on first use.
166: <li>Switched the default CDDB database for <a href="https://man.openbsd.org/cdio">cdio(1)</a> to gnudb.gnudb.org:8880.
1.7 jsg 167: <li>Stopped <a href="https://man.openbsd.org/syslogd">syslogd(8)</a> from closing UDP sockets for sending messages when DNS lookup of a UDP loghost fails, allowing them to be used to send if DNS is working during the next SIGHUP.
1.1 benno 168: <li>Prevented established TCP and TLS sockets of <a href="https://man.openbsd.org/syslogd">syslogd(8)</a> from staying open forever if a client aborted the connection silently.
1.40 schwarze 169: <li>Avoided reading one byte before the path buffer in <a href="https://man.openbsd.org/mountd">mountd(8)</a>.
1.1 benno 170: <li>Made <a href="https://man.openbsd.org/apmd">apmd(8)</a> always ask the kernel about current hw.perfpolicy rather than maintaining state.
1.40 schwarze 171: <li>Prevented an <a href="https://man.openbsd.org/unveil">unveil(2)</a> failure with chdir / on <a href="https://man.openbsd.org/sensorsd">sensorsd(8)</a>.
172: <li>Corrected <a href="https://man.openbsd.org/getopt_long">getopt_long(3)</a> parsing of a trailing dash in an option group, which was being incorrectly returned as an argument.
173: <li>Prevented callers inspecting unrelated fields in the libc resolver function asr_run().
174: <li>Introduced a darker <a href="https://man.openbsd.org/xenodm">xenodm(1)</a> login widget and a lower contrast default background.
175: <li>Fixed an <a href="https://man.openbsd.org/xconsole">xconsole(1)</a> crash by starting it after setting the background.
1.1 benno 176: </ul>
177:
178: <li>Improved hardware support and driver bugfixes, including:
179: <ul>
180: <li>Enabled scrollback in <a href="https://man.openbsd.org/simplefb">simplefb(4)</a>.
181: <li>Fixed display glitches on smaller screens or with larger fonts in <a href="https://man.openbsd.org/efifb">efifb(4)</a> associated with remapping and attaching.
182: <li>Improved reporting of remaining power with batteries of different capacities in <a href="https://man.openbsd.org/acpi">acpi(4)</a>.
183: <li>Fixed bogus frame sizes being returned by <a href="https://man.openbsd.org/xhci">xhci(4)</a>.
184: <li>Added <a href="https://man.openbsd.org/wsmoused">wsmoused(8)</a> support to <a href="https://man.openbsd.org/efifb">efifb(4)</a>.
185: <li>Added <a href="https://man.openbsd.org/umstc">umstc(4)</a>, a driver for Microsoft Surface Type Cover keyboards.
186: <li>Introduced <a href="https://man.openbsd.org/acpihid">acpihid(4)</a> for ACPI HID event and 5-button array devices.
187: <li>Moved Powerbook5,4 audio from <a href="https://man.openbsd.org/aoa">aoa(4)</a> to <a href="https://man.openbsd.org/snapper">snapper(4)</a>, adding the missing TAS3004 volume control.
188: <li>Fixed broken HID descriptors of Elecom trackballs with 6 or 8 buttons.
189: <li>Added RK3328 PWM, also found in the RK3308, to <a href="https://man.openbsd.org/rkpwm">rkpwm(4)</a>.
190: <li>Added RK3308 temperature sensors to <a href="https://man.openbsd.org/rktemp">rktemp(4)</a>.
1.32 patrick 191: <li>Added <a href="https://man.openbsd.org/pcamux">pcamux(4)</a>, a driver for the PCA9548 I2C switch.
1.6 jsg 192: <li>Introduced a framework for digital audio interfaces, and added <a href="https://man.openbsd.org/simpleaudio">simpleaudio(4)</a>, a driver for "simple audio cards." This is a wrapper connecting the I2S controller, the codec and some aux devices, and <a href="https://man.openbsd.org/simpleamp">simpleamp(4)</a>, a driver for "simple audio amplifier," one of the aux devices for <a href="https://man.openbsd.org/simpleaudio">simpleaudio(4)</a>.
1.1 benno 193: <li>Enabled <a href="https://man.openbsd.org/nvme">nvme(4)</a> on i386.
194: <li>Added support for the Ericsson F5521gw Mobile Broadband Modem.
195: <li>Ensured the STOP command sent by <a href="https://man.openbsd.org/sd">sd(4)</a> on powerdown will not result in hanging the machine if commands to the USB mass storage fail.
196: <li>Fixed intermittent failing <a href="https://man.openbsd.org/pms">pms(4)</a> device initialization seen on some Synaptics devices.
197: <li>Corrected trackstick/button attachment of Windows Precision Touchpad <a href="https://man.openbsd.org/imt">imt(4)</a> devices, fixing behavior on certain Dell Latitude laptops.
198: <li>Improved speed of scrolling by optimizing <a href="https://man.openbsd.org/rasops">rasops(9)</a> write-only framebuffer console.
199: <li>Modified <a href="https://man.openbsd.org/uvideo">uvideo(4)</a> to fix webcam detection in Firefox 78.
200: <li>Added a SENSOR_ENERGY sensor type to the <a href="https://man.openbsd.org/sensor_attach">sensors framework API</a> which uses microjoules.
201: <li>Added support for the AMDI0010 touchpad on the Inspiron 5505.
202: <li>Avoided nvram lock timeout on sparc64 systems with onboard BCM5704 <a href="https://man.openbsd.org/bge">bge(4)</a> instances that come without a fitted EEPROM/NVRAM.
203: <li>Added <a href="https://man.openbsd.org/pms">pms(4)</a> support for the Elantech v1 touchpad with firmware version 0x20022.
204: <li>Added <a href="https://man.openbsd.org/sdmmc">sdmmc(4)</a> support for eMMC HS200 mode.
205: <li>Added Exar XR17V35x serial port support.
206: <li>Properly implemented <a href="https://man.openbsd.org/amlmmc">amlmmc(4)</a> setting of signal voltage.
207: <li>Implemented UHS-I support in the <a href="https://man.openbsd.org/sdmmc">sdmmc(4)</a> midlayer and enabled it in <a href="https://man.openbsd.org/amlmmc">amlmmc(4)</a>.
208: <li>Introduced <a href="https://man.openbsd.org/abl">abl(4)</a>, a new driver to control the backlight brightness on Intel-based Apple machines, and allowed it to be controlled through <a href="https://man.openbsd.org/wsconsctl">wsconsctl(8)</a>.
209: <li>Disabled <a href="https://man.openbsd.org/acpivout">acpivout(4)</a> brightness control on machines aware of Windows 8, enabling inteldrm to handle brightness ioctls.
210: <li>Fixed <a href="https://man.openbsd.org/eeprom">eeprom(8)</a> error when setting variables on macppc.
1.4 jsg 211: <li>Updated <a href="https://man.openbsd.org/drm">drm(4)</a> to Linux 5.7.19.
1.1 benno 212: </ul>
213: <li>New or improved network hardware support:
214: <ul>
1.34 jmatthew 215: <li>Enabled multiple tx/rx queues with Toeplitz RSS hashing in <a href="https://man.openbsd.org/vmx">vmx(4)</a>, <a href="https://man.openbsd.org/ix">ix(4)</a> and <a href="https://man.openbsd.org/ixl">ixl(4)</a>.
1.35 jmatthew 216: <li>Added support for hardware VLAN tagging and checksumming to <a href="https://man.openbsd.org/mcx">mcx(4)</a>.
1.1 benno 217: <li>Fixed a crash in <a href="https://man.openbsd.org/re">re(4)</a>.
1.7 jsg 218: <li>Added <a href="https://man.openbsd.org/bge">bge(4)</a> support for the BCM5719 A1 Ethernet controller.
1.1 benno 219: <li>Handled AGL interfaces on octeon, making management network ports usable on some machines.
220: <li>Added support for the <a href="https://man.openbsd.org/mcx">mcx(4)</a> ConnectX-6 Dx.
221: <li>Fixed a potential crash when bringing down an <a href="https://man.openbsd.org/mcx">mcx(4)</a> interface.
222: <li>Increased the <a href="https://man.openbsd.org/mcx">mcx(4)</a> event queue size, preventing a potential interrupt storm on the ConnectX-4.
223: <li>Fixed outbound <a href="https://man.openbsd.org/bpf">bpf(4)</a> tap on <a href="https://man.openbsd.org/ogx">ogx(4)</a> interfaces.
1.29 jsg 224: <li>Improved <a href="https://man.openbsd.org/ure">ure(4)</a> performance by combining multiple sent packets into one transfer.
225: <li>Added support for RK3308 Ethernet to <a href="https://man.openbsd.org/dwge">dwge(4)</a>.
1.31 kevlo 226: <li>Added <a href="https://man.openbsd.org/rge">rge(4)</a> support for newer RTL8125 chipset (RTL8125B).
1.1 benno 227: </ul>
228: <li>Added or improved wireless network drivers:
229: <ul>
230: <li>Added support to <a href="https://man.openbsd.org/urtwn">urtwn(4)</a> for TP-Link TL-WN822N-EU v5 (and v4).
1.33 benno 231: <li>Added WPA2 (CCMP) crypto offload support to <a href="https://man.openbsd.org/iwm">iwm(4)</a> and
232: <a href="https://man.openbsd.org/iwx">iwx(4)</a>,
233: reducing CPU load during traffic bursts.
234: <li>Fixed causes of several fatal firmware errors on <a href="https://man.openbsd.org/iwx">iwx(4)</a> devices.
1.1 benno 235: <li>Added <a href="https://man.openbsd.org/bwfm">bwfm(4)</a> support for BCM4359 SDIO variants such as the AP6359SA module found on the RockPro64 WiFi module.
236: <li>Enabled critical temperature detection in <a href="https://man.openbsd.org/iwx">iwx(4)</a> firmware.
237: <li>Fixed mbuf leak in <a href="https://man.openbsd.org/urtwn">urtwn(4)</a> with frames CCMP-encrypted by hardware.
238: <li>Added support for the D-Link DWA-121 rev B1 <a href="https://man.openbsd.org/urtwn">urtwn(4)</a> device.
239: <li>Repaired <a href="https://man.openbsd.org/athn">athn(4)</a> in client mode against WPA2 access points.
1.33 benno 240: <li>Prevented a panic where <a href="https://man.openbsd.org/athn">athn(4)</a> attempted to transmit old, unencryptable frames after switching to a new group key in hostap mode.
1.1 benno 241: <li>Switched <a href="https://man.openbsd.org/iwx">iwx(4)</a> from -46 to -48 firmware.
242: <li>Enabled background scanning on <a href="https://man.openbsd.org/iwx">iwx(4)</a> devices.
243: <li>Fixed gain calibration for some <a href="https://man.openbsd.org/iwn">iwn(4)</a> devices (5000 and up).
244: <li>Added support for AX201 devices to <a href="https://man.openbsd.org/iwx">iwx(4)</a>.
245: </ul>
246:
247: <li>New <a href="https://www.openbsd.org/arm64.html">arm64</a> and <a
248: href="https://www.openbsd.org/armv7.html">armv7</a> hardware support
249: and bugfixes, including:
250: <ul>
251: <li>Added <a href="https://man.openbsd.org/amlpwrc">amlpwrc(4)</a>, a driver for the power domain controller found on Amlogic SoCs.
1.7 jsg 252: <li>Made OpenBSD boot on the ODROID-C4 with power domain in <a href="https://man.openbsd.org/amldwusb">amldwusb(4)</a>.
1.1 benno 253: <li>Added support for the SD card detect pins on the Turris Mox.
1.29 jsg 254: <li>Added support for the Marvell Xenon SDHC, used as storage on the Armada 3700 and 8040 SoCs.
1.7 jsg 255: <li>Opened up a 4GB memory bus window for <a href="https://man.openbsd.org/mvneta">mvneta(4)</a> on the Marvell Armada 3700, making the second Ethernet controller/port work on the Turris Mox.
1.1 benno 256: <li>Added <a href="https://man.openbsd.org/mvkpcie">mkvpcie(4)</a>, a driver for the Aardvark PCIe controller found on the Armada 3700 SoC.
257: <li>Adjusted <a href="https://man.openbsd.org/dwpcie">dwpcie(4)</a> timing to improve likelihood of a successful PCIe link on the i.MX8MM. Avoids a failure to detect <a href="https://man.openbsd.org/em">em(4)</a> on the HummingBoard Pulse.
258: <li>Added <a href="https://man.openbsd.org/cwfg">cwfg(4)</a>, a driver for the Cellwise CW201x fuel gauge on the Pinebook Pro.
259: <li>Populated a list of 256 brightness levels as a fallback when the device tree does not specify a list, making the Pinebook Pro display work with the dtb from Linux 5.7.
260: <li>Added <a href="https://man.openbsd.org/escodec">escodec(4)</a>, a driver for the Everest ES8316 audio codec used on the Pinebook Pro.
1.6 jsg 261: <li>Added <a href="https://man.openbsd.org/rkiis">rkiis(4)</a>, a driver for the I2S controller found on the Rockchip RK3399.
1.1 benno 262: <li>Added <a href="https://man.openbsd.org/bcmtmon">bcmtmon(4)</a>, a driver for the temperature sensor on the Raspberry Pi 4.
263: <li>Introduced <a href="https://man.openbsd.org/mvpp">mvpp(4)</a>, a driver for the Marvell Packet Processor v2 as used on the Armada 7K and 8K SoCs.
264: <li>Improved PLL1(CPU_PLL) stability for the Allwinner H3/H2+.
1.40 schwarze 265: <li>Ported NetBSD's arm64 disassembler for <a href="https://man.openbsd.org/ddb">ddb(4)</a>.
266: <li>Enabled spleen16x32 and spleen32x64 fonts on armv7 for GENERIC kernels.
267: <li>Enabled building <a href="https://man.openbsd.org/wsmoused">wsmoused(8)</a> and <a href="https://man.openbsd.org/wsfontload">wsfontload(8)</a> on arm64 and armv7.
1.1 benno 268: </ul>
269:
270: <li>IEEE 802.11 wireless stack improvements and bugfixes:
271: <ul>
272: <li>Fixed CCMP replay checks with 11n Rx aggregation and CCMP hardware offloading.
1.33 benno 273: <li>In hostap mode, complete WPA group key renewals immediately if no station is associated.
1.1 benno 274: <li>Improved processing of lost frames during 802.11 Rx aggregation.
275: <li>Allowed passage of unencrypted 802.11 frames during hardware decryption post-processing, fixing failure of some <a href="https://man.openbsd.org/ral">ral(4)</a> devices to receive packets on encrypted networks.
276: <li>Prevented a use-after-free when a wireless device is detached.
277: </ul>
278:
279: <li>Generic network stack improvements and bugfixes:
280: <ul>
281: <!-- carp and pf -->
282: <li>Implemented a <a href="https://man.openbsd.org/carp">carp(4)</a> transmit bypassing the ifq on output, enqueuing the packet directly on the parent interface.
283: <li>Fixed <a href="https://man.openbsd.org/pf.conf">pf.conf(5)</a> "route-to TABLE least-states" in an anchor.
284: <li>Allowed <a href="https://man.openbsd.org/pf">pf(4)</a> to divert packets from <a href="https://man.openbsd.org/bridge">bridge(4)</a> to local socket.
285: <li>Rehashed main <a href="https://man.openbsd.org/pf">pf(4)</a> rulesets after rule expiration.
286: <li>Added a check for <a href="https://man.openbsd.org/pfctl">pfctl(8)</a> that an rtable exists when parsing the config.
1.24 kn 287: <li>Corrected ruleset checksum calculation to allow <a href="https://man.openbsd.org/pfsync">pfsync(4)</a> to verify rulesets are identical on all nodes.
1.1 benno 288: <!-- wg -->
1.7 jsg 289: <li>Added <a href="https://man.openbsd.org/wg">wg(4)</a>, an in-kernel driver for WireGuard VPN communication.
1.1 benno 290: <!-- network pseudo drivers and other kernel network internals -->
291: <li>Protected the whole <a href="https://man.openbsd.org/pipex">pipex(4)</a> layer by NET_LOCK().
292: <li>Stopped creation of non-existent <a href="https://man.openbsd.org/bridge">bridge(4)</a> interfaces.
293: <li>Added a symmetric toeplitz implementation with integration for nics, usable through the <a href="https://man.openbsd.org/stoeplitz_to_key">stoeplitz_to_key(9)</a> hash algorithm API.
294: <li>Changed <a href="https://man.openbsd.org/tpmr">tpmr(4)</a> from ifconfig [-]trunkport to add|del synopsis.
295: <li>Filtered vlan and svlan packets by default for <a href="https://man.openbsd.org/tpmr">tpmr(4)</a>.
296: <li>Implemented IPv6 source address selection as outlined in RFC 6724 section 5.
297: <li>Set IPv6 source address selection to prefer the address with the highest preferred lifetime in case of a tie.
298: <li>Stopped preventing TCP connections to IPv6 anycast addresses.
299: <li>Added the <a href="https://man.openbsd.org/pcap-filter">pcap-filter(5)</a> "sample NUM" primitive to allow capture of 1/NUM packets.
300: <li>Added a <a href="https://man.openbsd.org/man4/route.4">ROUTE_FLAGFILTER</a> socket option for routing sockets, allowing routing daemons to opt out of receiving messages for L2 and broadcast route entries.
301: <li>Allowed SIOCSWGDPID and SIOCSWGMAXFLOW ioctls for non-root, preventing <a href="https://man.openbsd.org/switch">switch(4)</a> interfaces from appearing partially as <a href="https://man.openbsd.org/bridge">bridge(4)</a> devices for unprivileged users running <a href="https://man.openbsd.org/ifconfig">ifconfig(8)</a>.
302: <li>Modified <a href="https://man.openbsd.org/trunk">trunk(4)</a> to keep port interfaces UP on removal, matching <a href="https://man.openbsd.org/aggr">aggr(4)</a> behavior.
1.25 kn 303: <li>Fixed <a href="https://man.openbsd.org/rdomain">rdomain(4)</a> handling for IPv6.
304: <li>Fixed <a href="https://man.openbsd.org/rtable">rtable(4)</a> separation of raw sockets for IPv6.
305: <li>Documented <a href="https://man.openbsd.org/rtable">rtable(4)</a> removal semantics.
1.1 benno 306: </ul>
307:
308: <li>Installer improvements:
309: <ul>
1.36 florian 310: <li>On systems with multiple root disks, the installer will upgrade the disk with auto_upgrade.conf present when the upgrade was initiated by <a href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a>.
1.1 benno 311: <li>Changed install images called *.fs to *.img to accommodate some UEFI bootloaders.
1.40 schwarze 312: <li>Forced long-names on msdos filenames for installboot on most 32-bit architectures.
313: <li>Converted macppc, octeon and loongson to use machine-independent installboot.
314: <!-- FFS2 -->
315: <li>Improvements in the FFS2 filesystem:
316: <ul>
317: <li>Made FFS2 the default for <a href="https://man.openbsd.org/newfs">newfs(8)</a>, except for mfs.
318: <li>Enabled the FFS2 option on the luna88k ramdisk.
319: <li>Made FFS2 the default non-root filesystems on landisk, sgi and luna88k.
320: </ul>
1.1 benno 321: </ul>
322:
323: <li>Security improvements:
324: <ul>
325: <li>Added RB_GOODRANDOM passed from bootloader to kernel in boothowto, indicating confidence a "great seed" was loaded.
326: <li>Passed boothowto from the sparc64 bootloader to the kernel using .openbsd.bootdata.
327: <li>Introduced detection of /etc/random.seed reuse.
328: <li>Rewrote the entropy enqueue ring to collect damage asynchronously and adapted the dequeue to mix a selection of "best" ring entries, exponentially backing off the dequeue timeout, to compensate rapidly for weak seeding in unidentifiable conditions and ensure quality to arc4random() calls early in boot.
329: <li>Enabled PAN (Privileged Access Never) on arm64 CPUs supporting it.
330: <li>Skipped scanning file systems which are both nodev and nosuid for SUID, SGID and device files with <a href="https://man.openbsd.org/security">security(8)</a>.
1.41 ! deraadt 331: <li>Fixed two out-of-bounds array accesses in ioctl code pathways in
! 332: <a href="https://man.openbsd.org/wscons">wscons(4)</a>.
! 333: <li>Fixed information leak in semctl SEM_GET.
! 334: <li>Prevented root from freezing the UTC clock with <a href="https://man.openbsd.org/settimeofday">settimeofday(2)</a> at securelevel 2.
! 335: <li>Fixed performance problems relating to tty subsystem abuse.<!-- tty.c,v 1.158 2020/07/14 14:33:03 deraadt -->
! 336: <li>Fixed heap corruption in the X input method client in libX11.
! 337: <li>Fixed potential information leak via X server pixel data uninitialized memory.
! 338: <li>Fixed a race condition for isoc devices during device close.
! 339: <li>Fixed an integer overflow in libX11 which could lead to a double free.
! 340: <li>Corrected multiple input validation deficits in X server extensions.
1.1 benno 341: </ul>
342:
343: <li>Routing daemons and other userland network improvements:
344: <ul>
345: <!-- bgpd -->
346: <li>In <a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>, the
347: "reload" command now takes a 'reason' argument to use as
1.7 jsg 348: Administrative Shutdown Communication to its neighbors.
1.1 benno 349: <li>Added <a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>
350: support for VPNv6 in the family option of the "show rib" command.
351: <!-- OSPF -->
352: <li>Improve performance of <a href="https://man.openbsd.org/ospfd">ospfd(8)</a>, <a href="https://man.openbsd.org/ospf6d">ospf6d(8)</a> by using the ROUTE_FLAGFILTER setsockopt to filter out routing socket messages
353: for L2 and broadcast routes.
354: <!-- ldap -->
355: <li>Modified <a href="https://man.openbsd.org/ldapd">ldapd(8)</a> use of "ldaps" and "tls" keywords to enable only the libtls defaults for protocols and ciphers. The new "legacy" keyword can be used before these keywords in <a href="https://man.openbsd.org/ldapd.conf">ldapd.conf(5)</a> to enable them all.
356: <li>Added a bsd.schema to <a href="https://man.openbsd.org/ldapd">ldapd(8)</a> including a shadowPassword and an sshPublicKey attribute which can be used to extend existing LDAP users with the additional bsdAccount objectclass.
357: <!-- snmpd -->
358: <li>Removed support for the socket keyword in <a href="https://man.openbsd.org/snmpd.conf">snmpd.conf(5)</a>.
359: <li>Allowed <a href="https://man.openbsd.org/snmp">snmp(1)</a> mibtree to take one or more arguments to be converted to a chosen output format.
360: <!-- httpd and relayd -->
361: <li>Introduced a "dark mode" for directory listings and error pages in <a href="https://man.openbsd.org/httpd">httpd(8)</a>.
362: <li>Allowed specifying -d multiple times in <a href="https://man.openbsd.org/slowcgi">slowcgi(8)</a>.
363: <li>Added <a href="https://man.openbsd.org/unveil">unveil(2)</a> to the main process of <a href="https://man.openbsd.org/relayd">relayd(8)</a>.
364: <li>Added support for non-localhost fastcgi sockets to <a href="https://man.openbsd.org/httpd.conf">httpd.conf(5)</a>.
365: <!-- rpki-client -->
366: <li>Fixed a hang in <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> by properly waiting for exiting <a href="https://man.openbsd.org/openrsync">openrsync(1)</a> processes.
367: <li>Removed the -f (force) option in <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a>.
1.7 jsg 368: <li>Fixed <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> return value check for OpenSSL API used during pubkey validation.
1.1 benno 369: <li>Released <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> 6.7p1 including OpenBSD 6.7 Errata 015.
370: <li>Changed <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> -n behavior to automatically validate the repo.
371: <li>Added a "-s timeout" feature to <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> with a one hour default, allowing fresh attempts with <a href="https://man.openbsd.org/cron">cron(8)</a> if rpki-client gets stuck.
372: <!-- other userland -->
1.37 florian 373: <li>Added an optional "domain name" <a href="https://man.openbsd.org/acme-client.conf">acme-client.conf(5)</a> option allowing use of multiple domain sections with the same name and creation of an rsa and an ecdsa key for the same domain name.
374: <li>Added an optional "contact" <a href="https://man.openbsd.org/acme-client.conf">acme-client.conf(5)</a> option to the account section allowing issuance of certificates from authorities that require a contact email address.
1.1 benno 375: <li>Added <a href="https://man.openbsd.org/netstat">netstat(1)</a> -R to show a summary of rdomains with associated interfaces and tables.
376: <li>Defaulted to showing full IPv6 address entries in the routing tables displayed by <a href="https://man.openbsd.org/route">route(8)</a> show and <a href="https://man.openbsd.org/netstat">netstat(1)</a> -r.
1.27 kn 377: <li>Fixed <a href="https://man.openbsd.org/pcap-filters">pcap-filters(5)</a> on DLT_LOOP links, e.g. <a href="https://man.openbsd.org/lo">lo(4)</a>, <a href="https://man.openbsd.org/gre">gre(4)</a>, <a href="https://man.openbsd.org/wg">wg(4)</a>, etc.
1.1 benno 378: <li>Fixed <a href="https://man.openbsd.org/dhclient">dhclient(8)</a> domain-search option processing.
379: <li>Corrected <a href="https://man.openbsd.org/route">route(8)</a> handling of ::/0 and "route add -inet 0.0.0.0 -prefixlen 0 (gateway)".
1.27 kn 380: <li>Fixed integer underflow in <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a> due to tiny snaplen causing bogus hexdumps.
1.1 benno 381: <li>Added initial <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a> support for handling geneve packets.
382: <li>Added <a href="https://man.openbsd.org/top">top(1)</a> "t" to toggle the display of routing tables.
383: <li>Added filtering by routing table to <a href="https://man.openbsd.org/top">top(1)</a>.
384: <li>Moved <a href="https://man.openbsd.org/ntpd">ntpd(8)</a> to unsynced mode if no replies are received for awhile due to connectivity issues.
385: <li>Made <a href="https://man.openbsd.org/slaacd">slaacd(8)</a> handle IPv6 address configuration in all rdomains in a single daemon, instead of running one daemon per rdomain.
386: </ul>
387:
388: <li><a href="https://man.openbsd.org/ipsec">ipsec(4)</a> (and related userland programs) improvements and
389: bugfixes:
390: <ul>
391: <li>Fixed an <a href="https://man.openbsd.org/iked">iked(8)</a> policy lookup edge case for simultaneous transport and tunnel mode SAs.
392: <li>Added AES-GCM mode ciphers for IKEv2, configurable in <a href="https://man.openbsd.org/iked.conf">iked.conf(5)</a> with the new "ikesa enc" options aes-128-gcm, aes-256-gcm, aes-128-gcm-12 and aes-256-gcm-12.
1.38 tobhe 393: <li>Added AES-GCM ciphers to the default proposals for IKE and Child SAs resulting in considerable performance improvements with hardware acceleration support.
1.1 benno 394: <li>Fixed <a href="https://man.openbsd.org/iked">iked(8)</a> public key authentication interoperability with *swan and other IKEv2 implementations by making CERT and CERTREQ payloads optional.
395: <li>Prioritized incoming certificate requests by the order of CERTEQ payloads in the received message in <a href="https://man.openbsd.org/iked">iked(8)</a>.
396: <li>Added optional <a href="https://man.openbsd.org/iked">iked(8)</a> time-stamp validation for OCSP.
397: <li>Prevented concurrent CREATE_CHILD_SA and INFORMATION exchanges in <a href="https://man.openbsd.org/iked">iked(8)</a>.
398: <li>Added the new <a href="https://man.openbsd.org/iked">iked(8)</a> configuration option "set enforcesingleikesa" to limit the number of connections for each peer.
399: <li>Added a dpd_check_interval configuration option to <a href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
400: <li>Allowed disabling of <a href="https://man.openbsd.org/iked">iked(8)</a> DPD liveness checks by setting dpd_check_interval to 0 in <a href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
401: <li>Added a 30 second timeout for OCSP requests in <a href="https://man.openbsd.org/iked">iked(8)</a>.
402: <li>Added a new "set cert_partial_chain" config option to <a href="https://man.openbsd.org/iked.conf">iked.conf(5)</a> to allow verification of partial certificate chains if a trusted intermediate CA is found in /etc/iked/ca.
1.24 kn 403: <li>Fixed a dst/src <a href="https://man.openbsd.org/iked">iked(8)</a> port configuration bug with multiple flows.
404: <li>Handled <a href="https://man.openbsd.org/iked">iked(8)</a> TEMPORARY_FAILURE notification on IKESA rekeying.
1.1 benno 405: </ul>
406:
407: <li><a href="https://man.openbsd.org/tmux">tmux(1)</a> improvements and bug fixes:
408: <ul>
409: <li>Added -W and -T flags to command-prompt to only complete a window and a target.
410: <li>Added the 'e' key in buffer mode to open the buffer in an editor.
411: <li>Added -e for new-session to set environment variables.
412: <li>Changed refresh-client -F to -f and added -f flags to attach-session and switch-client.
413: <li>Added M-+ and M-- to expand and collapse all items in tree mode.
414: <li>Added a customize mode (C) where keys and options can be browsed and changed.
415: <li>Added a -D flag to run in non-daemonized mode.
416: <li>Added a client flag 'active-pane' which stores the active pane in the client and allows it to be changed independently from the real active pane stored in the window.
417: <li>Added an option to set the pane border lines style as single lines, double or heavy, simple or number (the pane numbers).
418: <li>Added support for pausing a <a href="https://man.openbsd.org/tmux">tmux(1)</a> pane when the output buffered for a control mode client is too far behind, controllable with refresh-client -f and -A.
419: <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a> -A option to pause a pane manually.
420: <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> -b flags to insert a window before (like the existing -a for after) to break-pane, move-window and new-window.
421: <li>Added d and D keys to <a href="https://man.openbsd.org/tmux">tmux(1)</a> customize mode to reset to defaults.
422: <li>Corrected handling of padding cells while searching in <a href="https://man.openbsd.org/tmux">tmux(1)</a>.
423: <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> -d option to display-message to set delay.
424: <li>Changed <a href="https://man.openbsd.org/tmux">tmux(1)</a> searching to behave more like emacs and prevented regex searching from overlapping when searching forward.
425: <li>Added the <a href="https://man.openbsd.org/tmux">tmux(1)</a> n: modifier to get the length of a format.
426: <li>Allowed a-z keys for <a href="https://man.openbsd.org/tmux">tmux(1)</a> display-panes to jump to higher-numbered panes.
427: <li>Allowed use of -N without a command to change or add a note to an existing key in <a href="https://man.openbsd.org/tmux">tmux(1)</a>.
428: </ul>
429:
430: <li>VMM/VMD and ldom/sparc64 virtualization improvements
431: <ul>
1.24 kn 432: <li>Fixed <a href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> "init-system" with multiple PCIe root complexes (Oracle SPARC T4-2 machines).
433: <li>Made <a href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> reject vdisk, vnet and iodevice parameters for primary domain.
1.1 benno 434: <li>Made <a href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> "init-system -n" check vcpu and memory constraints.
435: <li>Increased the default number of ldom and ttyV devices for sparc64 from eight to sixteen.
436: <li>Fixed <a href="https://man.openbsd.org/vmd">vmd(8)</a> ns8250 lockup due to a race condition, helping to prevent linux vm crashes when the return key is held on boot.
437: <li>Prevented possible libevent state corruption in <a href="https://man.openbsd.org/vmd">vmd(8)</a>.
438: </ul>
439:
440: <li>OpenSMTPD 6.8.0
441: <ul>
442: <li>Fixed an uninitialized variable and potential stack overflow with IPv6 connections in <a href="https://man.openbsd.org/smtpd">smtpd(8)</a>.
443: <li>Fixed <a href="https://man.openbsd.org/smtpd">smtpd(8)</a> handling of user names containing "@" symbols.
444: <li>Allowed handling of long lines in an <a href="https://man.openbsd.org/smtpd">smtpd(8)</a> aliases table.
445: <li>Removed <a href="https://man.openbsd.org/mail.local">mail.local(8)</a> support for world-writable mail spools.
446: </ul>
447:
448: <li>LibreSSL 3.1.1 XXX <span style="color:red;">Temporary List, replace with LibreSSL ChangeLog:</span>
449: <ul>
450: <li>Enabled the TLSv1.3 server in <a href="https://man.openbsd.org/openssl">openssl(1)</a>.
451: <li>Added -rls1_3 and -no_tls1_3 options to <a href="https://man.openbsd.org/openssl">openssl(1)</a> s_server.
452: <li>Enabled TLSv1.3 support in <a href="https://man.openbsd.org/relayd">relayd(8)</a>.
453: <li>Added a decode error alert when a TLS server provides an empty certificate list.
1.7 jsg 454: <li>Added support for TLS 1.3 server to send certificate status messages with OCSP staples.
1.1 benno 455: <li>Began looking for non-expired certificates first when building a chain, making certificate validation possible for various sites that are serving expired AddTrust certificates.
456: <li>Improved TLSv1.3 client certificate selection to allow use of EC certificates.
457: <li>Added <a href="https://man.openbsd.org/ssl">ssl(8)</a> support for additional GOST curves and aliases for 256-bit GOST curves.
458: <li>Enabled TLSv1.3 for the generic TLS_method().
459: <li>Fixed potential use-after-free and double-free issues in <a href="https://man.openbsd.org/PEM_X509_INFO_read_bio">PEM_X509_INFO_read_bio(3)</a>.
460: <li>Corrected <a href="https://man.openbsd.org/ssl">ssl(8)</a> handling of server requests for an OCSP response.
461: <li>Added P-521 to the list of curves supported by default for TLS.
462: <li>Released <a href="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.1.4-relnotes.txt">LibreSSL 3.1.4</a>.
463: <li>Released <a href="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.2.1-relnotes.txt">LibreSSL 3.2.1</a>.
464: <li>Fixed a memory leak in x509_constraints_extract_names.
465: </ul>
466: <ul>
467: <li>New Features
468: <ul>
469: <li>...
470: </ul>
471:
472: <li>API and Documentation Enhancements
473: <ul>
474: <li>...
475: </ul>
476:
477: <li>Compatibility Changes
478: <ul>
479: <li>...
480: </ul>
481:
482: <li>Testing and Proactive Security
483: <ul>
484: <li>...
485: </ul>
486:
487: <li>Internal Improvements
488: <ul>
489: <li>...
490: </ul>
491:
492: <li>Portable Improvements
493: <ul>
494: <li>...
495: </ul>
496:
497: <li>Bug Fixes
498: <ul>
499: <li>...
500: </ul>
501: </ul>
502:
1.14 benno 503: <li>OpenSSH 8.4
1.1 benno 504: <ul>
505: <li>Potentially incompatible changes.
1.14 benno 506: <ul>
507:
508: <li>For FIDO/U2F support, OpenSSH recommends the use of libfido2
509: 1.5.0 or greater. Older libraries have limited support at the expense
510: of disabling particular features. These include resident keys, PIN-
511: required keys and multiple attached tokens.
512:
513: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
514: the format of the attestation information optionally recorded when a
515: FIDO key is generated has changed. It now includes the authenticator
516: data needed to validate attestation signatures.
517:
518: <li>The API between OpenSSH and the FIDO token middleware has
519: changed and the SSH_SK_VERSION_MAJOR version has been incremented as a
520: result. Third-party middleware libraries must support the current API
521: version (7) to work with OpenSSH 8.4.
522:
523: <li>The portable OpenSSH distribution now requires automake to
524: rebuild the configure script and supporting files. This is not
525: required when simply building portable OpenSSH from a release tar
526: file.
527:
528: </ul>
1.1 benno 529: <li>New Features
1.14 benno 530: <ul>
531:
532: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
533: href="https://man.openbsd.org/ssh-keygen">ssh-keygen">ssh-keygen(1)</a>:
534: support for FIDO keys that require a PIN for each use. These keys may
535: be generated using ssh-keygen using a new "verify-required" option.
536: When a PIN-required key is used, the user will be prompted for a PIN
537: to complete the signature operation.
538:
539: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>:
540: authorized_keys now supports a new "verify-required" option to require
541: FIDO signatures assert that the token verified that the user was
542: present before making the signature. The FIDO protocol supports
543: multiple methods for user-verification, but currently OpenSSH only
544: supports PIN verification.
545:
546: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>, <a
547: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: add
548: support for verifying FIDO webauthn signatures. Webauthn is a standard
549: for using FIDO keys in web browsers. These signatures are a slightly
550: different format to plain FIDO signatures and thus require explicit
551: support.
552:
553: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: allow some
554: keywords to expand shell-style ${ENV} environment variables. The
555: supported keywords are CertificateFile, ControlPath, IdentityAgent and
556: IdentityFile, plus LocalForward and RemoteForward when used for Unix
557: domain socket paths.
558:
559: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
560: href="https://man.openbsd.org/ssh-agent">ssh-agent(1)</a>: allow some
561: additional control over the use of ssh-askpass via a new
562: $SSH_ASKPASS_REQUIRE environment variable, including forcibly enabling
563: and disabling its use.
564:
565: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: allow <a
566: href="https://man.openbsd.org/ssh_config">ssh_config(5)</a>'s
567: AddKeysToAgent keyword accept a time limit for keys in addition to its
568: current flag options. Time- limited keys will automatically be removed
569: from ssh-agent after their expiry time has passed.
570:
571: <li><a href="https://man.openbsd.org/scp">scp(1)</a>, <a
572: href="https://man.openbsd.org/sftp">sftp(1)</a>: allow the -A flag to
573: explicitly enable agent forwarding in scp and sftp. The default
574: remains to not forward an agent, even when ssh_config enables it.
575:
576: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: add a '%k'
577: TOKEN that expands to the effective HostKey of the destination. This
578: allows, e.g., keeping host keys in individual files using
579: "UserKnownHostsFile ~/.ssh/known_hosts.d/%k".
580:
581: <li><a href="https://man.openbsd.org/ssh(1): add %-TOKEN,
582: environment variable and tilde expansion to the UserKnownHostsFile
583: directive, allowing the path to be completed by the configuration.
584:
585: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
586: allow "ssh-add -d -" to read keys to be deleted from stdin.
587:
588: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: improve
589: logging for MaxStartups connection throttling. sshd will now log when
590: it starts and stops throttling and periodically while in this state.
591:
592:
593: </ul>
1.1 benno 594: <li>Bugfixes
1.14 benno 595: <ul>
596:
597: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
598: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: better
599: support for multiple attached FIDO tokens. In cases where OpenSSH
600: cannot unambiguously determine which token to direct a request to, the
601: user is now required to select a token by touching it. In cases of
602: operations that require a PIN to be verified, this avoids sending the
603: wrong PIN to the wrong token and incrementing the token's PIN failure
604: counter (tokens effectively erase their keys after too many PIN
605: failures).
606:
607: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: fix Include
608: before Match in <a
609: href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>.
610:
611: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: close
612: stdin/out/error when forking after authentication completes ("ssh -f
613: ...").
614:
615: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
616: href="https://man.openbsd.org/sshd">sshd(8)</a>: limit the amount of
617: channel input data buffered, avoiding peers that advertise large
618: windows but are slow to read from causing high memory consumption.
619:
620: <li><a href="https://man.openbsd.org/ssh-agent">ssh-agent(1)</a>:
621: handle multiple requests sent in a single write() to the agent.
622:
623: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: allow <a
624: href="https://man.openbsd.org/sshd_config">sshd_config(5)</a> longer than 256k
625:
626: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: avoid
627: spurious "Unable to load host key" message when sshd load a private
628: key but no public counterpart
629:
630: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: prefer the
631: default hostkey algorithm list whenever we have a hostkey that matches
632: its best-preference algorithm.
633:
634: <li><a href="https://man.openbsd.org/sshd">sshd(1)</a>: when
635: ordering the hostkey algorithms to request from a server, prefer
636: certificate types if the known_hosts files contain a key marked as a
637: @cert-authority;
638:
639: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: perform host
640: key fingerprint comparisons for the "Are you sure you want to continue
641: connecting (yes/no/[fingerprint])?" prompt with case sensitivity.
642:
643: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: ensure that
644: address/masklen mismatches in sshd_config yield fatal errors at daemon
645: start time rather than later when they are evaluated.
646:
647: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
648: ensure that certificate extensions are lexically sorted. Previously if
649: the user specified a custom extension then the everything would be in
650: order except the custom ones.
651:
652: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: also compare
653: username when checking for JumpHost loops.
654:
655: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
656: preserve group/world read permission on known_hosts files across runs
657: of "ssh-keygen -Rf /path". The old behaviour was to remove all rights
658: for group/other.
659:
660: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
661: Mention the [-a rounds] flag in the ssh-keygen manual page and
662: usage().
663:
664: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: explicitly construct path to ~/.ssh/rc rather than
665: relying on it being relative to the current directory, so that it
666: can still be found if the shell startup changes its directory.
667:
668: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: when
669: redirecting sshd's log output to a file, undo this redirection after
670: the session child process is forked(). Fixes missing log messages when
671: using this feature under some circumstances.
672:
673: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: start
674: ClientAliveInterval bookkeeping before first pass through select()
675: loop; fixed theoretical case where busy sshd may ignore timeouts from
676: client.
677:
678: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: only reset the
679: ServerAliveInterval check when we receive traffic from the server and
680: ignore traffic from a port forwarding client, preventing a client from
681: keeping a connection alive when it should be terminated.
682:
683: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
684: avoid spurious error message when ssh-keygen creates files outside
685: ~/.ssh
686:
687: <li><a
688: href="https://man.openbsd.org/sftp-client">sftp-client(1)</a>: fix
689: off-by-one error that caused sftp downloads to make one more
690: concurrent request that desired. This prevented using <a
691: href="https://man.openbsd.org/sftp">sftp(1)</a> in unpipelined
692: request/response mode, which is useful when debugging.
693:
694: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
695: href="https://man.openbsd.org/sshd">sshd(8)</a>: handle EINTR in
696: waitfd() and timeout_connect() helpers.
697:
698: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
699: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: defer
700: creation of ~/.ssh until we attempt to write to it so we don't leave
701: an empty .ssh directory when it's not needed.
702:
703: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
704: href="https://man.openbsd.org/sshd">sshd(8)</a>: fix multiplier when
705: parsing time specifications when handling seconds after other units.
706:
707: </ul>
1.1 benno 708: </ul>
709:
710: <li>Ports and packages:
711: <p>The package system provides an easy way to install 3rd party software. New features include:
712: <ul>
713: <li>...
714: </ul>
715:
716: <p>Many pre-built packages for each architecture:
717: <!-- number of FTP packages minus SHA256, SHA256.sig, index.txt -->
718: <ul style="column-count: 3">
1.39 naddy 719: <li>aarch64: 10768
1.11 sthen 720: <li>amd64: 11234
1.1 benno 721: <li>arm: XXX
1.11 sthen 722: <li>i386: 10548
1.1 benno 723: <li>mips64: XXX
724: <li>mips64el: XXX
725: <li>powerpc: XXX
1.15 deraadt 726: <li>powerpc64: XXX
1.39 naddy 727: <li>sparc64: 9688
1.1 benno 728: </ul>
729:
730: <li>As usual, steady improvements in manual pages and other documentation.
731:
732: <li>The system includes the following major components from outside suppliers: XXX
733: <ul><span style="color:red;">this list needs checking</span>
734: <li>Xenocara (based on X.Org 7.7 with xserver 1.20.8 + patches,
1.4 jsg 735: freetype 2.10.2, fontconfig 2.12.4, Mesa 20.0.8, xterm 351,
1.1 benno 736: xkeyboard-config 2.20 and more)
737: <li>LLVM/Clang 10.0.1 (+ patches)
738: <li>GCC 4.2.1 (+ patches) and 3.3.6 (+ patches)
739: <li>Perl 5.30.3 (+ patches)
740: <li>NSD 4.3.2
741: <li>Unbound 1.11.0
742: <li>Ncurses 5.7
743: <li>Binutils 2.17 (+ patches)
744: <li>Gdb 6.3 (+ patches)
745: <li>Awk August 7, 2020 version
746: <li>Expat 2.2.8
747: </ul>
748:
749: </ul>
750: </section>
751:
752: <hr>
753:
754: <section id=install>
755: <h3>How to install</h3>
756: <p>
757: Please refer to the following files on the mirror site for
758: extensive details on how to install OpenBSD 6.8 on your machine:
759:
760: <ul>
761: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/alpha/INSTALL.alpha">
762: .../OpenBSD/6.8/alpha/INSTALL.alpha</a>
763: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/amd64/INSTALL.amd64">
764: .../OpenBSD/6.8/amd64/INSTALL.amd64</a>
765: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/arm64/INSTALL.arm64">
766: .../OpenBSD/6.8/arm64/INSTALL.arm64</a>
767: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/armv7/INSTALL.armv7">
768: .../OpenBSD/6.8/armv7/INSTALL.armv7</a>
769: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/hppa/INSTALL.hppa">
770: .../OpenBSD/6.8/hppa/INSTALL.hppa</a>
771: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/i386/INSTALL.i386">
772: .../OpenBSD/6.8/i386/INSTALL.i386</a>
773: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/landisk/INSTALL.landisk">
774: .../OpenBSD/6.8/landisk/INSTALL.landisk</a>
775: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/loongson/INSTALL.loongson">
776: .../OpenBSD/6.8/loongson/INSTALL.loongson</a>
777: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/luna88k/INSTALL.luna88k">
778: .../OpenBSD/6.8/luna88k/INSTALL.luna88k</a>
779: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/macppc/INSTALL.macppc">
780: .../OpenBSD/6.8/macppc/INSTALL.macppc</a>
781: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/octeon/INSTALL.octeon">
782: .../OpenBSD/6.8/octeon/INSTALL.octeon</a>
783: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/powerpc64/INSTALL.powerpc64">
784: .../OpenBSD/6.8/octeon/INSTALL.powerpc64</a>
785: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/sgi/INSTALL.sgi">
786: .../OpenBSD/6.8/sgi/INSTALL.sgi</a>
787: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/sparc64/INSTALL.sparc64">
788: .../OpenBSD/6.8/sparc64/INSTALL.sparc64</a>
789: </ul>
790: </section>
791:
792: <hr>
793:
794: <section id=quickinstall>
795: <p>
796: Quick installer information for people familiar with OpenBSD, and the use of
797: the "<a href="https://man.openbsd.org/disklabel.8">disklabel</a> -E" command.
798: If you are at all confused when installing OpenBSD, read the relevant
799: INSTALL.* file as listed above!
800:
801: <h3>OpenBSD/alpha:</h3>
802:
803: <p>
804: If your machine can boot from CD, you can write <i>install68.iso</i> or
805: <i>cd68.iso</i> to a CD and boot from it.
806: Refer to INSTALL.alpha for more details.
807:
808: <h3>OpenBSD/amd64:</h3>
809:
810: <p>
811: If your machine can boot from CD, you can write <i>install68.iso</i> or
812: <i>cd68.iso</i> to a CD and boot from it.
813: You may need to adjust your BIOS options first.
814:
815: <p>
1.23 kettenis 816: If your machine can boot from USB, you can write <i>install68.img</i> or
817: <i>miniroot68.img</i> to a USB stick and boot from it.
1.1 benno 818:
819: <p>
820: If you can't boot from a CD, floppy disk, or USB,
821: you can install across the network using PXE as described in the included
822: INSTALL.amd64 document.
823:
824: <p>
825: If you are planning to dual boot OpenBSD with another OS, you will need to
826: read INSTALL.amd64.
827:
828: <h3>OpenBSD/arm64:</h3>
829:
830: <p>
1.23 kettenis 831: Write <i>miniroot68.img</i> to a disk and boot from it after connecting
1.1 benno 832: to the serial console. Refer to INSTALL.arm64 for more details.
833:
834: <h3>OpenBSD/armv7:</h3>
835:
836: <p>
837: Write a system specific miniroot to an SD card and boot from it after connecting
838: to the serial console. Refer to INSTALL.armv7 for more details.
839:
840: <h3>OpenBSD/hppa:</h3>
841:
842: <p>
843: Boot over the network by following the instructions in INSTALL.hppa or the
844: <a href="hppa.html#install">hppa platform page</a>.
845:
846: <h3>OpenBSD/i386:</h3>
847:
848: <p>
849: If your machine can boot from CD, you can write <i>install68.iso</i> or
850: <i>cd68.iso</i> to a CD and boot from it.
851: You may need to adjust your BIOS options first.
852:
853: <p>
1.23 kettenis 854: If your machine can boot from USB, you can write <i>install68.img</i> or
855: <i>miniroot68.img</i> to a USB stick and boot from it.
1.1 benno 856:
857: <p>
858: If you can't boot from a CD, floppy disk, or USB,
859: you can install across the network using PXE as described in
860: the included INSTALL.i386 document.
861:
862: <p>
863: If you are planning on dual booting OpenBSD with another OS, you will need to
864: read INSTALL.i386.
865:
866: <h3>OpenBSD/landisk:</h3>
867:
868: <p>
1.23 kettenis 869: Write <i>miniroot68.img</i> to the start of the CF
1.1 benno 870: or disk, and boot normally.
871:
872: <h3>OpenBSD/loongson:</h3>
873:
874: <p>
1.23 kettenis 875: Write <i>miniroot68.img</i> to a USB stick and boot bsd.rd from it
1.1 benno 876: or boot bsd.rd via tftp.
877: Refer to the instructions in INSTALL.loongson for more details.
878:
879: <h3>OpenBSD/luna88k:</h3>
880:
881: <p>
882: Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader
883: from the PROM, and then bsd.rd from the bootloader.
884: Refer to the instructions in INSTALL.luna88k for more details.
885:
886: <h3>OpenBSD/macppc:</h3>
887:
888: <p>
889: Burn the image from a mirror site to a CDROM, and power on your machine
890: while holding down the <i>C</i> key until the display turns on and
891: shows <i>OpenBSD/macppc boot</i>.
892:
893: <p>
894: Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
895: /6.8/macppc/bsd.rd</i>
896:
897: <h3>OpenBSD/octeon:</h3>
898:
899: <p>
900: After connecting a serial port, boot bsd.rd over the network via DHCP/tftp.
901: Refer to the instructions in INSTALL.octeon for more details.
902:
903: <h3>OpenBSD/powerpc64:</h3>
904:
905: <p>
1.23 kettenis 906: To install, write <i>install68.img</i> or <i>miniroot68.img</i> to a
907: USB stick, plug it into the machine and coose the <i>OpenBSD
908: install</i> menu item in Petitboot.
1.1 benno 909: Refer to the instructions in INSTALL.powerpc64 for more details.
910:
911: <h3>OpenBSD/sgi:</h3>
912:
913: <p>
914: To install, burn cd68.iso on a CD-R, put it in the CD drive of your
915: machine and select <i>Install System Software</i> from the System Maintenance
916: menu. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from
917: CD-ROM, and need a proper invocation from the PROM prompt.
918: Refer to the instructions in INSTALL.sgi for more details.
919:
920: <p>
921: If your machine doesn't have a CD drive, you can setup a DHCP/tftp network
922: server, and boot using "bootp()/bsd.rd.IP##" using the kernel matching your
923: system type. Refer to the instructions in INSTALL.sgi for more details.
924:
925: <h3>OpenBSD/sparc64:</h3>
926:
927: <p>
928: Burn the image from a mirror site to a CDROM, boot from it, and type
929: <i>boot cdrom</i>.
930:
931: <p>
932: If this doesn't work, or if you don't have a CDROM drive, you can write
1.23 kettenis 933: <i>floppy68.img</i> or <i>floppyB68.img</i>
1.1 benno 934: (depending on your machine) to a floppy and boot it with <i>boot
935: floppy</i>. Refer to INSTALL.sparc64 for details.
936:
937: <p>
938: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
939: will most likely fail.
940:
941: <p>
1.23 kettenis 942: You can also write <i>miniroot68.img</i> to the swap partition on
1.1 benno 943: the disk and boot with <i>boot disk:b</i>.
944:
945: <p>
946: If nothing works, you can boot over the network as described in INSTALL.sparc64.
947: </section>
948:
949: <hr>
950:
951: <section id=upgrade>
952: <h3>How to upgrade</h3>
953: <p>
1.2 benno 954: If you already have an OpenBSD 6.7 system, and do not want to reinstall,
1.1 benno 955: upgrade instructions and advice can be found in the
956: <a href="faq/upgrade68.html">Upgrade Guide</a>.
957: </section>
958:
959: <hr>
960:
961: <section id=sourcecode>
962: <h3>Notes about the source code</h3>
963: <p>
964: <code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
965: This file contains everything you need except for the kernel sources,
966: which are in a separate archive.
967: To extract:
968: <blockquote><pre>
969: # <kbd>mkdir -p /usr/src</kbd>
970: # <kbd>cd /usr/src</kbd>
971: # <kbd>tar xvfz /tmp/src.tar.gz</kbd>
972: </pre></blockquote>
973: <p>
974: <code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
975: This file contains all the kernel sources you need to rebuild kernels.
976: To extract:
977: <blockquote><pre>
978: # <kbd>mkdir -p /usr/src/sys</kbd>
979: # <kbd>cd /usr/src</kbd>
980: # <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
981: </pre></blockquote>
982: <p>
983: Both of these trees are a regular CVS checkout. Using these trees it
984: is possible to get a head-start on using the anoncvs servers as
985: described <a href="anoncvs.html">here</a>.
986: Using these files
987: results in a much faster initial CVS update than you could expect from
988: a fresh checkout of the full OpenBSD source tree.
989: </section>
990:
991: <hr>
992:
993: <section id=ports>
994: <h3>Ports Tree</h3>
995: <p>
996: A ports tree archive is also provided. To extract:
997: <blockquote><pre>
998: # <kbd>cd /usr</kbd>
999: # <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
1000: </pre></blockquote>
1001: <p>
1002: Go read the <a href="faq/ports/index.html">ports</a> page
1003: if you know nothing about ports
1004: at this point. This text is not a manual of how to use ports.
1005: Rather, it is a set of notes meant to kickstart the user on the
1006: OpenBSD ports system.
1007: <p>
1008: The <i>ports/</i> directory represents a CVS checkout of our ports.
1009: As with our complete source tree, our ports tree is available via
1010: <a href="anoncvs.html">AnonCVS</a>.
1011: So, in order to keep up to date with the -stable branch, you must make
1012: the <i>ports/</i> tree available on a read-write medium and update the tree
1013: with a command like:
1014: <blockquote><pre>
1015: # <kbd>cd /usr/ports</kbd>
1016: # <kbd>cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_6_8</kbd>
1017: </pre></blockquote>
1018: <p>
1019: [Of course, you must replace the server name here with a nearby anoncvs
1020: server.]
1021: <p>
1022: Note that most ports are available as packages on our mirrors. Updated
1023: ports for the 6.8 release will be made available if problems arise.
1024: <p>
1025: If you're interested in seeing a port added, would like to help out, or just
1026: would like to know more, the mailing list
1027: <a href="mail.html">ports@openbsd.org</a> is a good place to know.
1028: </section>