Annotation of www/68.html, Revision 1.42
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: <li>For FIDO/U2F support, OpenSSH recommends the use of libfido2
508: 1.5.0 or greater. Older libraries have limited support at the expense
509: of disabling particular features. These include resident keys, PIN-
510: required keys and multiple attached tokens.
511: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
512: the format of the attestation information optionally recorded when a
513: FIDO key is generated has changed. It now includes the authenticator
514: data needed to validate attestation signatures.
515: <li>The API between OpenSSH and the FIDO token middleware has
516: changed and the SSH_SK_VERSION_MAJOR version has been incremented as a
517: result. Third-party middleware libraries must support the current API
518: version (7) to work with OpenSSH 8.4.
519: <li>The portable OpenSSH distribution now requires automake to
520: rebuild the configure script and supporting files. This is not
521: required when simply building portable OpenSSH from a release tar
522: file.
523: </ul>
1.1 benno 524: <li>New Features
1.14 benno 525: <ul>
526: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
527: href="https://man.openbsd.org/ssh-keygen">ssh-keygen">ssh-keygen(1)</a>:
528: support for FIDO keys that require a PIN for each use. These keys may
529: be generated using ssh-keygen using a new "verify-required" option.
530: When a PIN-required key is used, the user will be prompted for a PIN
531: to complete the signature operation.
532: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>:
533: authorized_keys now supports a new "verify-required" option to require
534: FIDO signatures assert that the token verified that the user was
535: present before making the signature. The FIDO protocol supports
536: multiple methods for user-verification, but currently OpenSSH only
537: supports PIN verification.
538: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>, <a
539: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: add
540: support for verifying FIDO webauthn signatures. Webauthn is a standard
541: for using FIDO keys in web browsers. These signatures are a slightly
542: different format to plain FIDO signatures and thus require explicit
543: support.
544: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: allow some
545: keywords to expand shell-style ${ENV} environment variables. The
546: supported keywords are CertificateFile, ControlPath, IdentityAgent and
547: IdentityFile, plus LocalForward and RemoteForward when used for Unix
548: domain socket paths.
549: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
550: href="https://man.openbsd.org/ssh-agent">ssh-agent(1)</a>: allow some
551: additional control over the use of ssh-askpass via a new
552: $SSH_ASKPASS_REQUIRE environment variable, including forcibly enabling
553: and disabling its use.
554: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: allow <a
555: href="https://man.openbsd.org/ssh_config">ssh_config(5)</a>'s
556: AddKeysToAgent keyword accept a time limit for keys in addition to its
557: current flag options. Time- limited keys will automatically be removed
558: from ssh-agent after their expiry time has passed.
559: <li><a href="https://man.openbsd.org/scp">scp(1)</a>, <a
560: href="https://man.openbsd.org/sftp">sftp(1)</a>: allow the -A flag to
561: explicitly enable agent forwarding in scp and sftp. The default
562: remains to not forward an agent, even when ssh_config enables it.
563: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: add a '%k'
564: TOKEN that expands to the effective HostKey of the destination. This
565: allows, e.g., keeping host keys in individual files using
566: "UserKnownHostsFile ~/.ssh/known_hosts.d/%k".
567: <li><a href="https://man.openbsd.org/ssh(1): add %-TOKEN,
568: environment variable and tilde expansion to the UserKnownHostsFile
569: directive, allowing the path to be completed by the configuration.
570: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
571: allow "ssh-add -d -" to read keys to be deleted from stdin.
572: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: improve
573: logging for MaxStartups connection throttling. sshd will now log when
574: it starts and stops throttling and periodically while in this state.
575: </ul>
1.1 benno 576: <li>Bugfixes
1.14 benno 577: <ul>
578: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
579: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: better
580: support for multiple attached FIDO tokens. In cases where OpenSSH
581: cannot unambiguously determine which token to direct a request to, the
582: user is now required to select a token by touching it. In cases of
583: operations that require a PIN to be verified, this avoids sending the
584: wrong PIN to the wrong token and incrementing the token's PIN failure
585: counter (tokens effectively erase their keys after too many PIN
586: failures).
587: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: fix Include
588: before Match in <a
589: href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>.
590: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: close
591: stdin/out/error when forking after authentication completes ("ssh -f
592: ...").
593: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
594: href="https://man.openbsd.org/sshd">sshd(8)</a>: limit the amount of
595: channel input data buffered, avoiding peers that advertise large
596: windows but are slow to read from causing high memory consumption.
597: <li><a href="https://man.openbsd.org/ssh-agent">ssh-agent(1)</a>:
598: handle multiple requests sent in a single write() to the agent.
599: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: allow <a
600: href="https://man.openbsd.org/sshd_config">sshd_config(5)</a> longer than 256k
601: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: avoid
602: spurious "Unable to load host key" message when sshd load a private
603: key but no public counterpart
604: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: prefer the
605: default hostkey algorithm list whenever we have a hostkey that matches
606: its best-preference algorithm.
607: <li><a href="https://man.openbsd.org/sshd">sshd(1)</a>: when
608: ordering the hostkey algorithms to request from a server, prefer
609: certificate types if the known_hosts files contain a key marked as a
610: @cert-authority;
611: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: perform host
612: key fingerprint comparisons for the "Are you sure you want to continue
613: connecting (yes/no/[fingerprint])?" prompt with case sensitivity.
614: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: ensure that
615: address/masklen mismatches in sshd_config yield fatal errors at daemon
616: start time rather than later when they are evaluated.
617: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
618: ensure that certificate extensions are lexically sorted. Previously if
619: the user specified a custom extension then the everything would be in
620: order except the custom ones.
621: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: also compare
622: username when checking for JumpHost loops.
623: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
624: preserve group/world read permission on known_hosts files across runs
625: of "ssh-keygen -Rf /path". The old behaviour was to remove all rights
626: for group/other.
1.42 ! deraadt 627: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
1.14 benno 628: Mention the [-a rounds] flag in the ssh-keygen manual page and
629: usage().
630: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: explicitly construct path to ~/.ssh/rc rather than
631: relying on it being relative to the current directory, so that it
632: can still be found if the shell startup changes its directory.
633: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: when
634: redirecting sshd's log output to a file, undo this redirection after
635: the session child process is forked(). Fixes missing log messages when
636: using this feature under some circumstances.
637: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: start
638: ClientAliveInterval bookkeeping before first pass through select()
639: loop; fixed theoretical case where busy sshd may ignore timeouts from
640: client.
641: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: only reset the
642: ServerAliveInterval check when we receive traffic from the server and
643: ignore traffic from a port forwarding client, preventing a client from
644: keeping a connection alive when it should be terminated.
645: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
646: avoid spurious error message when ssh-keygen creates files outside
647: ~/.ssh
648: <li><a
649: href="https://man.openbsd.org/sftp-client">sftp-client(1)</a>: fix
650: off-by-one error that caused sftp downloads to make one more
651: concurrent request that desired. This prevented using <a
652: href="https://man.openbsd.org/sftp">sftp(1)</a> in unpipelined
653: request/response mode, which is useful when debugging.
654: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
655: href="https://man.openbsd.org/sshd">sshd(8)</a>: handle EINTR in
656: waitfd() and timeout_connect() helpers.
657: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
658: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: defer
659: creation of ~/.ssh until we attempt to write to it so we don't leave
660: an empty .ssh directory when it's not needed.
661: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
662: href="https://man.openbsd.org/sshd">sshd(8)</a>: fix multiplier when
663: parsing time specifications when handling seconds after other units.
664: </ul>
1.1 benno 665: </ul>
666:
667: <li>Ports and packages:
668: <p>The package system provides an easy way to install 3rd party software. New features include:
669: <ul>
1.42 ! deraadt 670: <li><span style="color:red;">missing chunk</span>...
1.1 benno 671: </ul>
672:
673: <p>Many pre-built packages for each architecture:
674: <!-- number of FTP packages minus SHA256, SHA256.sig, index.txt -->
675: <ul style="column-count: 3">
1.39 naddy 676: <li>aarch64: 10768
1.11 sthen 677: <li>amd64: 11234
1.1 benno 678: <li>arm: XXX
1.11 sthen 679: <li>i386: 10548
1.1 benno 680: <li>mips64: XXX
681: <li>mips64el: XXX
682: <li>powerpc: XXX
1.15 deraadt 683: <li>powerpc64: XXX
1.39 naddy 684: <li>sparc64: 9688
1.1 benno 685: </ul>
686:
687: <li>As usual, steady improvements in manual pages and other documentation.
688:
689: <li>The system includes the following major components from outside suppliers: XXX
690: <ul><span style="color:red;">this list needs checking</span>
691: <li>Xenocara (based on X.Org 7.7 with xserver 1.20.8 + patches,
1.4 jsg 692: freetype 2.10.2, fontconfig 2.12.4, Mesa 20.0.8, xterm 351,
1.1 benno 693: xkeyboard-config 2.20 and more)
694: <li>LLVM/Clang 10.0.1 (+ patches)
695: <li>GCC 4.2.1 (+ patches) and 3.3.6 (+ patches)
696: <li>Perl 5.30.3 (+ patches)
697: <li>NSD 4.3.2
698: <li>Unbound 1.11.0
699: <li>Ncurses 5.7
700: <li>Binutils 2.17 (+ patches)
701: <li>Gdb 6.3 (+ patches)
702: <li>Awk August 7, 2020 version
703: <li>Expat 2.2.8
704: </ul>
705:
706: </ul>
707: </section>
708:
709: <hr>
710:
711: <section id=install>
712: <h3>How to install</h3>
713: <p>
714: Please refer to the following files on the mirror site for
715: extensive details on how to install OpenBSD 6.8 on your machine:
716:
717: <ul>
718: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/alpha/INSTALL.alpha">
719: .../OpenBSD/6.8/alpha/INSTALL.alpha</a>
720: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/amd64/INSTALL.amd64">
721: .../OpenBSD/6.8/amd64/INSTALL.amd64</a>
722: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/arm64/INSTALL.arm64">
723: .../OpenBSD/6.8/arm64/INSTALL.arm64</a>
724: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/armv7/INSTALL.armv7">
725: .../OpenBSD/6.8/armv7/INSTALL.armv7</a>
726: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/hppa/INSTALL.hppa">
727: .../OpenBSD/6.8/hppa/INSTALL.hppa</a>
728: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/i386/INSTALL.i386">
729: .../OpenBSD/6.8/i386/INSTALL.i386</a>
730: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/landisk/INSTALL.landisk">
731: .../OpenBSD/6.8/landisk/INSTALL.landisk</a>
732: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/loongson/INSTALL.loongson">
733: .../OpenBSD/6.8/loongson/INSTALL.loongson</a>
734: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/luna88k/INSTALL.luna88k">
735: .../OpenBSD/6.8/luna88k/INSTALL.luna88k</a>
736: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/macppc/INSTALL.macppc">
737: .../OpenBSD/6.8/macppc/INSTALL.macppc</a>
738: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/octeon/INSTALL.octeon">
739: .../OpenBSD/6.8/octeon/INSTALL.octeon</a>
740: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/powerpc64/INSTALL.powerpc64">
741: .../OpenBSD/6.8/octeon/INSTALL.powerpc64</a>
742: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/sgi/INSTALL.sgi">
743: .../OpenBSD/6.8/sgi/INSTALL.sgi</a>
744: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/sparc64/INSTALL.sparc64">
745: .../OpenBSD/6.8/sparc64/INSTALL.sparc64</a>
746: </ul>
747: </section>
748:
749: <hr>
750:
751: <section id=quickinstall>
752: <p>
753: Quick installer information for people familiar with OpenBSD, and the use of
754: the "<a href="https://man.openbsd.org/disklabel.8">disklabel</a> -E" command.
755: If you are at all confused when installing OpenBSD, read the relevant
756: INSTALL.* file as listed above!
757:
758: <h3>OpenBSD/alpha:</h3>
759:
760: <p>
761: If your machine can boot from CD, you can write <i>install68.iso</i> or
762: <i>cd68.iso</i> to a CD and boot from it.
763: Refer to INSTALL.alpha for more details.
764:
765: <h3>OpenBSD/amd64:</h3>
766:
767: <p>
768: If your machine can boot from CD, you can write <i>install68.iso</i> or
769: <i>cd68.iso</i> to a CD and boot from it.
770: You may need to adjust your BIOS options first.
771:
772: <p>
1.23 kettenis 773: If your machine can boot from USB, you can write <i>install68.img</i> or
774: <i>miniroot68.img</i> to a USB stick and boot from it.
1.1 benno 775:
776: <p>
777: If you can't boot from a CD, floppy disk, or USB,
778: you can install across the network using PXE as described in the included
779: INSTALL.amd64 document.
780:
781: <p>
782: If you are planning to dual boot OpenBSD with another OS, you will need to
783: read INSTALL.amd64.
784:
785: <h3>OpenBSD/arm64:</h3>
786:
787: <p>
1.23 kettenis 788: Write <i>miniroot68.img</i> to a disk and boot from it after connecting
1.1 benno 789: to the serial console. Refer to INSTALL.arm64 for more details.
790:
791: <h3>OpenBSD/armv7:</h3>
792:
793: <p>
794: Write a system specific miniroot to an SD card and boot from it after connecting
795: to the serial console. Refer to INSTALL.armv7 for more details.
796:
797: <h3>OpenBSD/hppa:</h3>
798:
799: <p>
800: Boot over the network by following the instructions in INSTALL.hppa or the
801: <a href="hppa.html#install">hppa platform page</a>.
802:
803: <h3>OpenBSD/i386:</h3>
804:
805: <p>
806: If your machine can boot from CD, you can write <i>install68.iso</i> or
807: <i>cd68.iso</i> to a CD and boot from it.
808: You may need to adjust your BIOS options first.
809:
810: <p>
1.23 kettenis 811: If your machine can boot from USB, you can write <i>install68.img</i> or
812: <i>miniroot68.img</i> to a USB stick and boot from it.
1.1 benno 813:
814: <p>
815: If you can't boot from a CD, floppy disk, or USB,
816: you can install across the network using PXE as described in
817: the included INSTALL.i386 document.
818:
819: <p>
820: If you are planning on dual booting OpenBSD with another OS, you will need to
821: read INSTALL.i386.
822:
823: <h3>OpenBSD/landisk:</h3>
824:
825: <p>
1.23 kettenis 826: Write <i>miniroot68.img</i> to the start of the CF
1.1 benno 827: or disk, and boot normally.
828:
829: <h3>OpenBSD/loongson:</h3>
830:
831: <p>
1.23 kettenis 832: Write <i>miniroot68.img</i> to a USB stick and boot bsd.rd from it
1.1 benno 833: or boot bsd.rd via tftp.
834: Refer to the instructions in INSTALL.loongson for more details.
835:
836: <h3>OpenBSD/luna88k:</h3>
837:
838: <p>
839: Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader
840: from the PROM, and then bsd.rd from the bootloader.
841: Refer to the instructions in INSTALL.luna88k for more details.
842:
843: <h3>OpenBSD/macppc:</h3>
844:
845: <p>
846: Burn the image from a mirror site to a CDROM, and power on your machine
847: while holding down the <i>C</i> key until the display turns on and
848: shows <i>OpenBSD/macppc boot</i>.
849:
850: <p>
851: Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
852: /6.8/macppc/bsd.rd</i>
853:
854: <h3>OpenBSD/octeon:</h3>
855:
856: <p>
857: After connecting a serial port, boot bsd.rd over the network via DHCP/tftp.
858: Refer to the instructions in INSTALL.octeon for more details.
859:
860: <h3>OpenBSD/powerpc64:</h3>
861:
862: <p>
1.23 kettenis 863: To install, write <i>install68.img</i> or <i>miniroot68.img</i> to a
864: USB stick, plug it into the machine and coose the <i>OpenBSD
865: install</i> menu item in Petitboot.
1.1 benno 866: Refer to the instructions in INSTALL.powerpc64 for more details.
867:
868: <h3>OpenBSD/sgi:</h3>
869:
870: <p>
871: To install, burn cd68.iso on a CD-R, put it in the CD drive of your
872: machine and select <i>Install System Software</i> from the System Maintenance
873: menu. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from
874: CD-ROM, and need a proper invocation from the PROM prompt.
875: Refer to the instructions in INSTALL.sgi for more details.
876:
877: <p>
878: If your machine doesn't have a CD drive, you can setup a DHCP/tftp network
879: server, and boot using "bootp()/bsd.rd.IP##" using the kernel matching your
880: system type. Refer to the instructions in INSTALL.sgi for more details.
881:
882: <h3>OpenBSD/sparc64:</h3>
883:
884: <p>
885: Burn the image from a mirror site to a CDROM, boot from it, and type
886: <i>boot cdrom</i>.
887:
888: <p>
889: If this doesn't work, or if you don't have a CDROM drive, you can write
1.23 kettenis 890: <i>floppy68.img</i> or <i>floppyB68.img</i>
1.1 benno 891: (depending on your machine) to a floppy and boot it with <i>boot
892: floppy</i>. Refer to INSTALL.sparc64 for details.
893:
894: <p>
895: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
896: will most likely fail.
897:
898: <p>
1.23 kettenis 899: You can also write <i>miniroot68.img</i> to the swap partition on
1.1 benno 900: the disk and boot with <i>boot disk:b</i>.
901:
902: <p>
903: If nothing works, you can boot over the network as described in INSTALL.sparc64.
904: </section>
905:
906: <hr>
907:
908: <section id=upgrade>
909: <h3>How to upgrade</h3>
910: <p>
1.2 benno 911: If you already have an OpenBSD 6.7 system, and do not want to reinstall,
1.1 benno 912: upgrade instructions and advice can be found in the
913: <a href="faq/upgrade68.html">Upgrade Guide</a>.
914: </section>
915:
916: <hr>
917:
918: <section id=sourcecode>
919: <h3>Notes about the source code</h3>
920: <p>
921: <code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
922: This file contains everything you need except for the kernel sources,
923: which are in a separate archive.
924: To extract:
925: <blockquote><pre>
926: # <kbd>mkdir -p /usr/src</kbd>
927: # <kbd>cd /usr/src</kbd>
928: # <kbd>tar xvfz /tmp/src.tar.gz</kbd>
929: </pre></blockquote>
930: <p>
931: <code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
932: This file contains all the kernel sources you need to rebuild kernels.
933: To extract:
934: <blockquote><pre>
935: # <kbd>mkdir -p /usr/src/sys</kbd>
936: # <kbd>cd /usr/src</kbd>
937: # <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
938: </pre></blockquote>
939: <p>
940: Both of these trees are a regular CVS checkout. Using these trees it
941: is possible to get a head-start on using the anoncvs servers as
942: described <a href="anoncvs.html">here</a>.
943: Using these files
944: results in a much faster initial CVS update than you could expect from
945: a fresh checkout of the full OpenBSD source tree.
946: </section>
947:
948: <hr>
949:
950: <section id=ports>
951: <h3>Ports Tree</h3>
952: <p>
953: A ports tree archive is also provided. To extract:
954: <blockquote><pre>
955: # <kbd>cd /usr</kbd>
956: # <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
957: </pre></blockquote>
958: <p>
959: Go read the <a href="faq/ports/index.html">ports</a> page
960: if you know nothing about ports
961: at this point. This text is not a manual of how to use ports.
962: Rather, it is a set of notes meant to kickstart the user on the
963: OpenBSD ports system.
964: <p>
965: The <i>ports/</i> directory represents a CVS checkout of our ports.
966: As with our complete source tree, our ports tree is available via
967: <a href="anoncvs.html">AnonCVS</a>.
968: So, in order to keep up to date with the -stable branch, you must make
969: the <i>ports/</i> tree available on a read-write medium and update the tree
970: with a command like:
971: <blockquote><pre>
972: # <kbd>cd /usr/ports</kbd>
973: # <kbd>cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_6_8</kbd>
974: </pre></blockquote>
975: <p>
976: [Of course, you must replace the server name here with a nearby anoncvs
977: server.]
978: <p>
979: Note that most ports are available as packages on our mirrors. Updated
980: ports for the 6.8 release will be made available if problems arise.
981: <p>
982: If you're interested in seeing a port added, would like to help out, or just
983: would like to know more, the mailing list
984: <a href="mail.html">ports@openbsd.org</a> is a good place to know.
985: </section>