Annotation of www/68.html, Revision 1.18
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.1 benno 88: <li>General improvements and bugfixes:
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.3 benno 98:
1.1 benno 99: <li>Set <a href="https://man.openbsd.org/ddb">ddb(4)</a> "/t" to show a trace via TID on all architectures.
100: <li>Restored VGA fonts on VT switch, preventing an unusable screen when switching to a VT with a custom VGA font from X.
101: <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.
102: <li>Relaxed filename checks in <a href="https://man.openbsd.org/syspatch">syspatch(8)</a> to allow use of hyphens.
103: <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>.
104: <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.
105: <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.
106: <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.
107: <li>Fixed a panic in <a href="https://man.openbsd.org/wscons">wscons(4)</a>.
108: <li>Prevented callers inspecting unrelated fields in the libc resolver function asr_run().
109: <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.
110: <li>Provided an optimized implementation of <a href="https://man.openbsd.org/ffs">ffs(3)</a> in the kernel on arm64/powerpc/powerpc64.
111: <li>Improved CPU frequency scaling in automatic performance mode by removing accounting for offline CPUs.
112: <li>Fixed <a href="https://man.openbsd.org/sndiod">sndiod(8)</a> crashes when USB devices are disconnected.
113: <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.
114: <li>Allowed switching between alternate devices (-F) with <a href="https://man.openbsd.org/sndioctl">sndioctl(1)</a>.
115: <li>Implemented the gensub(), systime() and strftime() functions for <a href="https://man.openbsd.org/awk">awk(1)</a>.
116: <li>Stopped incrementing openclass for a literal "[" in <a href="https://man.openbsd.org/awk">awk(1)</a>, allowing parsing of expressions such as "/[[/[]/".
117: <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.
118: <li>Added an ioctl PCIOCGETVPD allowing userland to access read-only support information about pci devices via the vpd register.
119: <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.
120: <li>Fixed merging of files that lack newlines for <a href="https://man.openbsd.org/diff3">diff3(1)</a>, OpenRCS and OpenCVS.
121: <li>Switched the default CDDB database for <a href="https://man.openbsd.org/cdio">cdio(1)</a> to gnudb.gnudb.org:8880.
122: <li>Introduced a darker <a href="https://man.openbsd.org/xenodm">xenodm(1)</a> login widget and a lower contrast default background.
123: <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.
124: <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>.
125: <li>Added <a href="https://man.openbsd.org/video">video(1)</a> white balance temperature control through w/W keys.
126: <li>Added the ability to set and display <a href="https://man.openbsd.org/video">video(1)</a> control values directly on the CLI.
127: <li>Allowed the combination of <a href="https://man.openbsd.org/video">video(1)</a> "-dc" options, reset and display control values.
128: <li>Added control for backlight compensation to <a href="https://man.openbsd.org/video">video(4)</a>.
129: <li>Used an LFENCE instruction everywhere RDTSC is used for a time measurement, reducing the jitter in TSC skew measurements.
130: <li>Prevented a core dump in <a href="https://man.openbsd.org/ftp">ftp(1)</a> during fetch abort.
131: <li>Allowed specification of supported TLS protocols in <a href="https://man.openbsd.org/ftp">ftp(1)</a> "-S protocols".
132: <li>Fixed an <a href="https://man.openbsd.org/xconsole">xconsole(1)</a> crash by starting it after setting the background.
133: <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.
134: <li>Introduced <a href="https://man.openbsd.org/kstat">kstat(1)</a>, a subsystem to allow the kernel to expose statistics to userland (and <a href="https://man.openbsd.org/kstat">kstat(8)</a>, the userland side).
135: <li>Added <a href="https://man.openbsd.org/kstat">kstat(1)</a> -w option, allowing update and printing of stats at a specified wait interval.
136: <li>Added kstat to <a href="https://man.openbsd.org/cnmac">cnmac(4)</a>.
137: <li>Added tsc_delay(), a <a href="https://man.openbsd.org/delay">delay(9)</a> implementation based on the TSC, to amd64.
138: <li>Synchronized each core's CP0 cycle counter using the IO clock counter on mips64 and octeon, making the cycle counter usable as timecounter.
139: <li>Added support for set -o pipefail to <a href="https://man.openbsd.org/ksh">ksh(1)</a>, potentially helping error checking.
140: <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.
141: <li>Enabled spleen16x32 and spleen32x64 fonts on armv7 for GENERIC kernels.
142: <li>Implemented linear and power-of-two histograms in btrace(5).
143: <li>Added <a href="https://man.openbsd.org/btrace">btrace(8)</a> -p flag to filter all actions by PID.
144: <li>Enabled <a href="https://man.openbsd.org/btrace">btrace(8)</a>.
145: <li>Added support for "&" and "|" operators in btrace scripts.
146: <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>.
147: <li>Added a <a href="https://man.openbsd.org/ktrace">ktrace(1)</a> -T option to make time-related system calls more prominent.
1.12 schwarze 148: <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>.
149: <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.
1.1 benno 150: <li>Ensured only pseudo-terminal devices use reprint delays.
151: <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>.
152: <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>.
153: <li>Ported NetBSD's arm64 disassembler for <a href="https://man.openbsd.org/ddb">ddb(4)</a>.
154: <li>Added / as an alias for g (grep) in <a href="https://man.openbsd.org/top">top(1)</a>.
155: <li>Added support for remote coverage to <a href="https://man.openbsd.org/kcov">kcov(4)</a>.
156: <li>Avoided reading one byte before the path buffer in <a href="https://man.openbsd.org/mountd">mountd(8)</a>.
157: <li>Added the ability to filter which <a href="https://man.openbsd.org/kstat">kstat(1)</a> entries are displayed.
158: <li>Moved <a href="https://man.openbsd.org/sysctl">sysctl(2)</a> CTL_DEBUG from DEBUG to the new DEBUG_SYSCTL.
159: <li>Added <a href="https://man.openbsd.org/fstat">fstat(1)</a> support for looking up unix domain sockets by file name.
160: <li>Fixed <a href="https://man.openbsd.org/make">make(1)</a> :S with anchors and replacement.
161: <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.
162: <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.
163: <li>Fixed "$@" splitting with empty IFS in <a href="https://man.openbsd.org/ksh">ksh(1)</a>.
164: <li>Prevented improper disabling of the backlight in <a href="https://man.openbsd.org/umstc">umstc(4)</a> when brightness is adjusted to 0.
1.7 jsg 165: <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 166: <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.
167: <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>.
168: <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.
169: <li>Made <a href="https://man.openbsd.org/apmd">apmd(8)</a> always ask the kernel about current hw.perfpolicy rather than maintaining state.
170: <li>Reworked kernel loading with <a href="https://man.openbsd.org/octboot">octboot(4)</a>, which now does not rely on a mounted filesystem.
171: <li>Converted macppc, octeon and loongson to use machine-independent installboot.
172: <li>Forced long-names on msdos filenames for installboot on most 32-bit architectures.
173: <!-- FFS2 -->
174: <li>Improvements in the FFS2 filesystem:
175: <ul>
176: <li>Made FFS2 the default for <a href="https://man.openbsd.org/newfs">newfs(8)</a>, except for mfs.
177: <li>Enabled the FFS2 option on the luna88k ramdisk.
178: <li>Made FFS2 the default non-root filesystems on landisk, sgi and luna88k.
179: </ul>
180: <li>
181: </ul>
182: </ul>
183:
184: <li>SMP-Improvements:
185: <ul>
186: <li>
187: </ul>
188:
189: <li>Improved hardware support and driver bugfixes, including:
190: <ul>
191: <li>Enabled scrollback in <a href="https://man.openbsd.org/simplefb">simplefb(4)</a>.
192: <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.
193: <li>Disabled <a href="https://man.openbsd.org/ohci">ohci(4)</a> on the amd64 ramdisk kernel.
194: <li>Improved reporting of remaining power with batteries of different capacities in <a href="https://man.openbsd.org/acpi">acpi(4)</a>.
195: <li>Fixed bogus frame sizes being returned by <a href="https://man.openbsd.org/xhci">xhci(4)</a>.
196: <li>Added <a href="https://man.openbsd.org/wsmoused">wsmoused(8)</a> support to <a href="https://man.openbsd.org/efifb">efifb(4)</a>.
197: <li>Added <a href="https://man.openbsd.org/umstc">umstc(4)</a>, a driver for Microsoft Surface Type Cover keyboards.
198: <li>Introduced <a href="https://man.openbsd.org/acpihid">acpihid(4)</a> for ACPI HID event and 5-button array devices.
199: <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.
200: <li>Fixed broken HID descriptors of Elecom trackballs with 6 or 8 buttons.
201: <li>Added RK3328 PWM, also found in the RK3308, to <a href="https://man.openbsd.org/rkpwm">rkpwm(4)</a>.
202: <li>Added RK3308 temperature sensors to <a href="https://man.openbsd.org/rktemp">rktemp(4)</a>.
203: <li>Added <a href="https://man.openbsd.org/pcamux">pcamux(4)</a>, a driver for the PCA8548 I2C switch.
1.6 jsg 204: <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 205: <li>Enabled <a href="https://man.openbsd.org/nvme">nvme(4)</a> on i386.
206: <li>Added support for the Ericsson F5521gw Mobile Broadband Modem.
207: <li>Implemented pci_intr_establish_cpu() for <a href="https://man.openbsd.org/pyro">pyro(4)</a> and <a href="https://man.openbsd.org/vpci">vpci(4)</a>-based sparc64 systems.
208: <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.
209: <li>Fixed intermittent failing <a href="https://man.openbsd.org/pms">pms(4)</a> device initialization seen on some Synaptics devices.
210: <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.
211: <li>Improved speed of scrolling by optimizing <a href="https://man.openbsd.org/rasops">rasops(9)</a> write-only framebuffer console.
212: <li>Added support for routing interrupts to other CPUs in <a href="https://man.openbsd.org/ampintc">ampintc(4)</a> and <a href="https://man.openbsd.org/agintc">agintc(4)</a>.
213: <li>Modified <a href="https://man.openbsd.org/uvideo">uvideo(4)</a> to fix webcam detection in Firefox 78.
214: <li>Added a SENSOR_ENERGY sensor type to the <a href="https://man.openbsd.org/sensor_attach">sensors framework API</a> which uses microjoules.
215: <li>Added support for the AMDI0010 touchpad on the Inspiron 5505.
216: <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.
217: <li>Added support for Gear Head keyboards.
218: <li>Added <a href="https://man.openbsd.org/pms">pms(4)</a> support for the Elantech v1 touchpad with firmware version 0x20022.
219: <li>Added <a href="https://man.openbsd.org/sdmmc">sdmmc(4)</a> support for eMMC HS200 mode.
220: <li>Added Exar XR17V35x serial port support.
221: <li>Properly implemented <a href="https://man.openbsd.org/amlmmc">amlmmc(4)</a> setting of signal voltage.
222: <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>.
223: <li>Allowed theoretical multiple attachment of <a href="https://man.openbsd.org/asmc">asmc(4)</a> controllers.
224: <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>.
225: <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.
226: <li>Fixed <a href="https://man.openbsd.org/eeprom">eeprom(8)</a> error when setting variables on macppc.
1.4 jsg 227: <li>Updated <a href="https://man.openbsd.org/drm">drm(4)</a> to Linux 5.7.19.
1.1 benno 228: </ul>
229: <li>New or improved network hardware support:
230: <ul>
231: <li>Enabled multiple queues on <a href="https://man.openbsd.org/vmx">vmx(4)</a>, VMware VMXNET3 Virtual Interface Controller.
232: <li>Added support for hardware vlan tagging to <a href="https://man.openbsd.org/mcx">mcx(4)</a>.
233: <li>Fixed a crash in <a href="https://man.openbsd.org/re">re(4)</a>.
1.7 jsg 234: <li>Added <a href="https://man.openbsd.org/bge">bge(4)</a> support for the BCM5719 A1 Ethernet controller.
1.1 benno 235: <li>Handled AGL interfaces on octeon, making management network ports usable on some machines.
236: <li>Implemented rss/toeplitz support for <a href="https://man.openbsd.org/ixl">ixl(4)</a> 710 chips.
237: <li>Added support for the <a href="https://man.openbsd.org/mcx">mcx(4)</a> ConnectX-6 Dx.
238: <li>Fixed a potential crash when bringing down an <a href="https://man.openbsd.org/mcx">mcx(4)</a> interface.
239: <li>Enabled multiq support for <a href="https://man.openbsd.org/ix">ix(4)</a>.
240: <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.
241: <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.
242: <li>Improved <a href="https://man.openbsd.org/ure">ure(4)</a> TX performance by combining multiple packets into one xfer as possible.
1.13 benno 243: <li>Added support for the RK3308 MAC to <a href="https://man.openbsd.org/dwge">dwge(4)</a>.
1.1 benno 244: </ul>
245: <li>Added or improved wireless network drivers:
246: <ul>
247: <li>Added support to <a href="https://man.openbsd.org/urtwn">urtwn(4)</a> for TP-Link TL-WN822N-EU v5 (and v4).
248: <li>Added WPA2 (CCMP) crypto offload support to <a href="https://man.openbsd.org/iwx">iwx(4)</a>.
249: <li>Fixed a fatal firmware error at run-time on <a href="https://man.openbsd.org/iwx">iwx(4)</a>.
250: <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.
251: <li>Enabled critical temperature detection in <a href="https://man.openbsd.org/iwx">iwx(4)</a> firmware.
252: <li>Fixed mbuf leak in <a href="https://man.openbsd.org/urtwn">urtwn(4)</a> with frames CCMP-encrypted by hardware.
253: <li>Added support for the D-Link DWA-121 rev B1 <a href="https://man.openbsd.org/urtwn">urtwn(4)</a> device.
254: <li>Repaired <a href="https://man.openbsd.org/athn">athn(4)</a> in client mode against WPA2 access points.
255: <li>Switched <a href="https://man.openbsd.org/iwx">iwx(4)</a> from -46 to -48 firmware.
256: <li>Fixed <a href="https://man.openbsd.org/athn">athn(4)</a> use with WPA2 APs.
257: <li>Enabled background scanning on <a href="https://man.openbsd.org/iwx">iwx(4)</a> devices.
258: <li>Added <a href="https://man.openbsd.org/rge">rge(4)</a> support for newer RTL8125 chipset (RTL8125B).
259: <li>Fixed gain calibration for some <a href="https://man.openbsd.org/iwn">iwn(4)</a> devices (5000 and up).
260: <li>Added support for AX201 devices to <a href="https://man.openbsd.org/iwx">iwx(4)</a>.
261: </ul>
262:
263: <li>Removed hardware support
264: <ul>
265: <li>
266: </ul>
267:
268:
1.10 benno 269: <li>The powerpc64 architecture was added:
1.1 benno 270: <ul>
1.10 benno 271: <li><span style="color:red;">XXX add a text about current status</span>
1.1 benno 272: </ul>
273:
274:
275: <li>New <a href="https://www.openbsd.org/arm64.html">arm64</a> and <a
276: href="https://www.openbsd.org/armv7.html">armv7</a> hardware support
277: and bugfixes, including:
278: <ul>
279: <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 280: <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 281: <li>Added support for the SD card detect pins on the Turris Mox.
1.7 jsg 282: <li>Added support for the Marvell Xenon SDHC, used as storage on the Armada 3700 and 8040 SoCs. This should make eMMC/SD show up on the MACCHIATObin.
283: <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 284: <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.
285: <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.
286: <li>Added <a href="https://man.openbsd.org/cwfg">cwfg(4)</a>, a driver for the Cellwise CW201x fuel gauge on the Pinebook Pro.
287: <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.
288: <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 289: <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 290: <li>Fixed an <a href="https://man.openbsd.org/sdhc">sdhc(4)</a> panic on the MACCHIATObin due to unaligned memory access.
291: <li>Added <a href="https://man.openbsd.org/bcmtmon">bcmtmon(4)</a>, a driver for the temperature sensor on the Raspberry Pi 4.
292: <li>Introduced <a href="https://man.openbsd.org/opalcons">opalcons(4)</a>, a driver for the OPAL console.
293: <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.
294: <li>Introduced <a href="https://man.openbsd.org/opalsens">opalsens(4)</a>, a driver for sensors provided by the OPAL firmware.
295: <li>Introduced <a href="https://man.openbsd.org/xics">xics(4)</a>, a driver for the OPAL virtual ICS.
296: <li>Improved PLL1(CPU_PLL) stability for the Allwinner H3/H2+.
297: </ul>
298:
299: <li>IEEE 802.11 wireless stack improvements and bugfixes:
300: <ul>
301: <li>Fixed CCMP replay checks with 11n Rx aggregation and CCMP hardware offloading.
302: <li>Offloaded CCMP (WPA2) encryption and decryption to <a href="https://man.openbsd.org/iwm">iwm(4)</a> hardware, reducing CPU load during traffic bursts.
303: <li>Adjusted to complete group key renewal immediately if no station is associated when ieee80211_proto.c runs.
304: <li>Improved processing of lost frames during 802.11 Rx aggregation.
305: <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.
306: <li>Prevented a fatal <a href="https://man.openbsd.org/iwx">iwx(4)</a> firmware error when the driver moves out of AUTH state.
307: <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.
308: <li>Prevented a use-after-free when a wireless device is detached.
309: </ul>
310:
311: <li>Generic network stack improvements and bugfixes:
312: <ul>
313: <!-- carp and pf -->
314: <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.
315: <li>Fixed <a href="https://man.openbsd.org/pf.conf">pf.conf(5)</a> "route-to TABLE least-states" in an anchor.
316: <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.
317: <li>Rehashed main <a href="https://man.openbsd.org/pf">pf(4)</a> rulesets after rule expiration.
318: <li>Added a check for <a href="https://man.openbsd.org/pfctl">pfctl(8)</a> that an rtable exists when parsing the config.
319: <!-- wg -->
1.7 jsg 320: <li>Added <a href="https://man.openbsd.org/wg">wg(4)</a>, an in-kernel driver for WireGuard VPN communication.
1.1 benno 321: <!-- network pseudo drivers and other kernel network internals -->
322: <li>Protected the whole <a href="https://man.openbsd.org/pipex">pipex(4)</a> layer by NET_LOCK().
323: <li>Stopped creation of non-existent <a href="https://man.openbsd.org/bridge">bridge(4)</a> interfaces.
324: <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.
325: <li>Changed <a href="https://man.openbsd.org/tpmr">tpmr(4)</a> from ifconfig [-]trunkport to add|del synopsis.
326: <li>Filtered vlan and svlan packets by default for <a href="https://man.openbsd.org/tpmr">tpmr(4)</a>.
327: <li>Implemented IPv6 source address selection as outlined in RFC 6724 section 5.
328: <li>Set IPv6 source address selection to prefer the address with the highest preferred lifetime in case of a tie.
329: <li>Stopped preventing TCP connections to IPv6 anycast addresses.
330: <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.
331: <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.
332: <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>.
333: <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.
334: </ul>
335:
336: <li>Installer improvements:
337: <ul>
1.16 benno 338: <li>sysupgrade(8) can now be used on systems with multiple installations and boot disks.
1.1 benno 339: <li>Ensured <a href="https://man.openbsd.org/sysupgrade">sysupgrade(8)</a> on systems with multiple root disks will proceed on the disk with auto_upgrade.conf present.
340: <li>Changed install images called *.fs to *.img to accommodate some UEFI bootloaders.
341: </ul>
342:
343: <li>Security improvements:
344: <ul>
345: <li>Added RB_GOODRANDOM passed from bootloader to kernel in boothowto, indicating confidence a "great seed" was loaded.
346: <li>Passed boothowto from the sparc64 bootloader to the kernel using .openbsd.bootdata.
347: <li>Introduced detection of /etc/random.seed reuse.
348: <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.
349: <li>Enabled PAN (Privileged Access Never) on arm64 CPUs supporting it.
350: <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>.
351:
352:
353: <li>The following security bugs were addressed:
354: <ul>
355: <li>Fixed two out-of-bounds array accesses in ioctl code pathways in
356: <a href="https://man.openbsd.org/wscons">wscons(4)</a>.
357: <li>Fixed information leak in semctl SEM_GET.
358: <li>Prevented root from freezing the UTC clock with <a href="https://man.openbsd.org/settimeofday">settimeofday(2)</a> at securelevel 2.
359: <li>Fixed performance problems relating to tty subsystem abuse.<!-- tty.c,v 1.158 2020/07/14 14:33:03 deraadt -->
360: <li>Fixed heap corruption in the X input method client in libX11.
361: <li>Fixed potential information leak via X server pixel data uninitialized memory.
362: <li>Fixed a race condition for isoc devices during device close.
363: <li>Fixed an integer overflow in libX11 which could lead to a double free.
364: <li>Corrected multiple input validation deficits in X server extensions.
365: </ul>
366: </ul>
367:
368: <li>Routing daemons and other userland network improvements:
369: <ul>
370: <!-- bgpd -->
371: <li>In <a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>, the
372: "reload" command now takes a 'reason' argument to use as
1.7 jsg 373: Administrative Shutdown Communication to its neighbors.
1.1 benno 374: <li>Added <a href="https://man.openbsd.org/bgpctl">bgpctl(8)</a>
375: support for VPNv6 in the family option of the "show rib" command.
376: <!-- OSPF -->
377: <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
378: for L2 and broadcast routes.
379: <!-- ldap -->
380: <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.
381: <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.
382: <!-- snmpd -->
383: <li>Removed support for the socket keyword in <a href="https://man.openbsd.org/snmpd.conf">snmpd.conf(5)</a>.
384: <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.
385: <!-- httpd and relayd -->
386: <li>Introduced a "dark mode" for directory listings and error pages in <a href="https://man.openbsd.org/httpd">httpd(8)</a>.
387: <li>Allowed specifying -d multiple times in <a href="https://man.openbsd.org/slowcgi">slowcgi(8)</a>.
388: <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>.
389: <li>Added support for non-localhost fastcgi sockets to <a href="https://man.openbsd.org/httpd.conf">httpd.conf(5)</a>.
390: <!-- rpki-client -->
391: <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.
392: <li>Removed the -f (force) option in <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a>.
1.7 jsg 393: <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 394: <li>Released <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> 6.7p1 including OpenBSD 6.7 Errata 015.
395: <li>Changed <a href="https://man.openbsd.org/rpki-client">rpki-client(8)</a> -n behavior to automatically validate the repo.
396: <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.
397: <!-- other userland -->
398: <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.
399: <li>Added <a href="https://man.openbsd.org/netstat">netstat(1)</a> -R to show a summary of rdomains with associated interfaces and tables.
400: <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.
401: <li>Fixed <a href="https://man.openbsd.org/dhclient">dhclient(8)</a> domain-search option processing.
402: <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)".
403: <li>Added initial <a href="https://man.openbsd.org/tcpdump">tcpdump(8)</a> support for handling geneve packets.
404: <li>Added <a href="https://man.openbsd.org/top">top(1)</a> "t" to toggle the display of routing tables.
405: <li>Added filtering by routing table to <a href="https://man.openbsd.org/top">top(1)</a>.
406: <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.
407: <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.
408: <li>Added an explanation for <a href="https://man.openbsd.org/acme-client">acme-client(1)</a> account creation failure.
409: </ul>
410:
411: <li><a href="https://man.openbsd.org/ipsec">ipsec(4)</a> (and related userland programs) improvements and
412: bugfixes:
413: <ul>
414: <li>Fixed an <a href="https://man.openbsd.org/iked">iked(8)</a> policy lookup edge case for simultaneous transport and tunnel mode SAs.
415: <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.
416: <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.
417: <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>.
418: <li>Added optional <a href="https://man.openbsd.org/iked">iked(8)</a> time-stamp validation for OCSP.
419: <li>Prevented concurrent CREATE_CHILD_SA and INFORMATION exchanges in <a href="https://man.openbsd.org/iked">iked(8)</a>.
420: <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.
421: <li>Added a dpd_check_interval configuration option to <a href="https://man.openbsd.org/iked.conf">iked.conf(5)</a>.
422: <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>.
423: <li>Added a 30 second timeout for OCSP requests in <a href="https://man.openbsd.org/iked">iked(8)</a>.
424: <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.
425: </ul>
426:
427: <li><a href="https://man.openbsd.org/tmux">tmux(1)</a> improvements and bug fixes:
428: <ul>
429: <li>Added -W and -T flags to command-prompt to only complete a window and a target.
430: <li>Added the 'e' key in buffer mode to open the buffer in an editor.
431: <li>Added -e for new-session to set environment variables.
432: <li>Changed refresh-client -F to -f and added -f flags to attach-session and switch-client.
433: <li>Added M-+ and M-- to expand and collapse all items in tree mode.
434: <li>Added a customize mode (C) where keys and options can be browsed and changed.
435: <li>Added a -D flag to run in non-daemonized mode.
436: <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.
437: <li>Added an option to set the pane border lines style as single lines, double or heavy, simple or number (the pane numbers).
438: <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.
439: <li>Added a <a href="https://man.openbsd.org/tmux">tmux(1)</a> -A option to pause a pane manually.
440: <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.
441: <li>Added d and D keys to <a href="https://man.openbsd.org/tmux">tmux(1)</a> customize mode to reset to defaults.
442: <li>Corrected handling of padding cells while searching in <a href="https://man.openbsd.org/tmux">tmux(1)</a>.
443: <li>Added <a href="https://man.openbsd.org/tmux">tmux(1)</a> -d option to display-message to set delay.
444: <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.
445: <li>Added the <a href="https://man.openbsd.org/tmux">tmux(1)</a> n: modifier to get the length of a format.
446: <li>Allowed a-z keys for <a href="https://man.openbsd.org/tmux">tmux(1)</a> display-panes to jump to higher-numbered panes.
447: <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>.
448: </ul>
449:
450: <li>VMM/VMD and ldom/sparc64 virtualization improvements
451: <ul>
452: <li>Made <a href="https://man.openbsd.org/ldomctl">ldomctl(8)</a> "init-system -n" check vcpu and memory constraints.
453: <li>Increased the default number of ldom and ttyV devices for sparc64 from eight to sixteen.
454: <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.
455: <li>Prevented possible libevent state corruption in <a href="https://man.openbsd.org/vmd">vmd(8)</a>.
456: <li>Fixed a dst/src <a href="https://man.openbsd.org/iked">iked(8)</a> port configuration bug with multiple flows.
457: <li>Handled <a href="https://man.openbsd.org/iked">iked(8)</a> TEMPORARY_FAILURE notification on IKESA rekeying.
458: <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.
459: </ul>
460:
461: <li>OpenSMTPD 6.8.0
462: <ul>
463: <li>Fixed an uninitialized variable and potential stack overflow with IPv6 connections in <a href="https://man.openbsd.org/smtpd">smtpd(8)</a>.
464: <li>Fixed <a href="https://man.openbsd.org/smtpd">smtpd(8)</a> handling of user names containing "@" symbols.
465: <li>Allowed handling of long lines in an <a href="https://man.openbsd.org/smtpd">smtpd(8)</a> aliases table.
466: <li>Removed <a href="https://man.openbsd.org/mail.local">mail.local(8)</a> support for world-writable mail spools.
467: </ul>
468:
469: <li>LibreSSL 3.1.1 XXX <span style="color:red;">Temporary List, replace with LibreSSL ChangeLog:</span>
470: <ul>
471: <li>Enabled the TLSv1.3 server in <a href="https://man.openbsd.org/openssl">openssl(1)</a>.
472: <li>Added -rls1_3 and -no_tls1_3 options to <a href="https://man.openbsd.org/openssl">openssl(1)</a> s_server.
473: <li>Enabled TLSv1.3 support in <a href="https://man.openbsd.org/relayd">relayd(8)</a>.
474: <li>Added a decode error alert when a TLS server provides an empty certificate list.
1.7 jsg 475: <li>Added support for TLS 1.3 server to send certificate status messages with OCSP staples.
1.1 benno 476: <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.
477: <li>Improved TLSv1.3 client certificate selection to allow use of EC certificates.
478: <li>Added <a href="https://man.openbsd.org/ssl">ssl(8)</a> support for additional GOST curves and aliases for 256-bit GOST curves.
479: <li>Enabled TLSv1.3 for the generic TLS_method().
480: <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>.
481: <li>Corrected <a href="https://man.openbsd.org/ssl">ssl(8)</a> handling of server requests for an OCSP response.
482: <li>Added P-521 to the list of curves supported by default for TLS.
483: <li>Released <a href="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.1.4-relnotes.txt">LibreSSL 3.1.4</a>.
484: <li>Released <a href="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.2.1-relnotes.txt">LibreSSL 3.2.1</a>.
485: <li>Fixed a memory leak in x509_constraints_extract_names.
486: </ul>
487: <ul>
488: <li>New Features
489: <ul>
490: <li>...
491: </ul>
492:
493: <li>API and Documentation Enhancements
494: <ul>
495: <li>...
496: </ul>
497:
498: <li>Compatibility Changes
499: <ul>
500: <li>...
501: </ul>
502:
503: <li>Testing and Proactive Security
504: <ul>
505: <li>...
506: </ul>
507:
508: <li>Internal Improvements
509: <ul>
510: <li>...
511: </ul>
512:
513: <li>Portable Improvements
514: <ul>
515: <li>...
516: </ul>
517:
518: <li>Bug Fixes
519: <ul>
520: <li>...
521: </ul>
522: </ul>
523:
1.14 benno 524: <li>OpenSSH 8.4
1.1 benno 525: <ul>
526: <li>Potentially incompatible changes.
1.14 benno 527: <ul>
528:
529: <li>For FIDO/U2F support, OpenSSH recommends the use of libfido2
530: 1.5.0 or greater. Older libraries have limited support at the expense
531: of disabling particular features. These include resident keys, PIN-
532: required keys and multiple attached tokens.
533:
534: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
535: the format of the attestation information optionally recorded when a
536: FIDO key is generated has changed. It now includes the authenticator
537: data needed to validate attestation signatures.
538:
539: <li>The API between OpenSSH and the FIDO token middleware has
540: changed and the SSH_SK_VERSION_MAJOR version has been incremented as a
541: result. Third-party middleware libraries must support the current API
542: version (7) to work with OpenSSH 8.4.
543:
544: <li>The portable OpenSSH distribution now requires automake to
545: rebuild the configure script and supporting files. This is not
546: required when simply building portable OpenSSH from a release tar
547: file.
548:
549: </ul>
1.1 benno 550: <li>New Features
1.14 benno 551: <ul>
552:
553: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
554: href="https://man.openbsd.org/ssh-keygen">ssh-keygen">ssh-keygen(1)</a>:
555: support for FIDO keys that require a PIN for each use. These keys may
556: be generated using ssh-keygen using a new "verify-required" option.
557: When a PIN-required key is used, the user will be prompted for a PIN
558: to complete the signature operation.
559:
560: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>:
561: authorized_keys now supports a new "verify-required" option to require
562: FIDO signatures assert that the token verified that the user was
563: present before making the signature. The FIDO protocol supports
564: multiple methods for user-verification, but currently OpenSSH only
565: supports PIN verification.
566:
567: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>, <a
568: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: add
569: support for verifying FIDO webauthn signatures. Webauthn is a standard
570: for using FIDO keys in web browsers. These signatures are a slightly
571: different format to plain FIDO signatures and thus require explicit
572: support.
573:
574: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: allow some
575: keywords to expand shell-style ${ENV} environment variables. The
576: supported keywords are CertificateFile, ControlPath, IdentityAgent and
577: IdentityFile, plus LocalForward and RemoteForward when used for Unix
578: domain socket paths.
579:
580: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
581: href="https://man.openbsd.org/ssh-agent">ssh-agent(1)</a>: allow some
582: additional control over the use of ssh-askpass via a new
583: $SSH_ASKPASS_REQUIRE environment variable, including forcibly enabling
584: and disabling its use.
585:
586: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: allow <a
587: href="https://man.openbsd.org/ssh_config">ssh_config(5)</a>'s
588: AddKeysToAgent keyword accept a time limit for keys in addition to its
589: current flag options. Time- limited keys will automatically be removed
590: from ssh-agent after their expiry time has passed.
591:
592: <li><a href="https://man.openbsd.org/scp">scp(1)</a>, <a
593: href="https://man.openbsd.org/sftp">sftp(1)</a>: allow the -A flag to
594: explicitly enable agent forwarding in scp and sftp. The default
595: remains to not forward an agent, even when ssh_config enables it.
596:
597: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: add a '%k'
598: TOKEN that expands to the effective HostKey of the destination. This
599: allows, e.g., keeping host keys in individual files using
600: "UserKnownHostsFile ~/.ssh/known_hosts.d/%k".
601:
602: <li><a href="https://man.openbsd.org/ssh(1): add %-TOKEN,
603: environment variable and tilde expansion to the UserKnownHostsFile
604: directive, allowing the path to be completed by the configuration.
605:
606: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
607: allow "ssh-add -d -" to read keys to be deleted from stdin.
608:
609: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: improve
610: logging for MaxStartups connection throttling. sshd will now log when
611: it starts and stops throttling and periodically while in this state.
612:
613:
614: </ul>
1.1 benno 615: <li>Bugfixes
1.14 benno 616: <ul>
617:
618: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
619: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: better
620: support for multiple attached FIDO tokens. In cases where OpenSSH
621: cannot unambiguously determine which token to direct a request to, the
622: user is now required to select a token by touching it. In cases of
623: operations that require a PIN to be verified, this avoids sending the
624: wrong PIN to the wrong token and incrementing the token's PIN failure
625: counter (tokens effectively erase their keys after too many PIN
626: failures).
627:
628: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: fix Include
629: before Match in <a
630: href="https://man.openbsd.org/sshd_config">sshd_config(5)</a>.
631:
632: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: close
633: stdin/out/error when forking after authentication completes ("ssh -f
634: ...").
635:
636: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
637: href="https://man.openbsd.org/sshd">sshd(8)</a>: limit the amount of
638: channel input data buffered, avoiding peers that advertise large
639: windows but are slow to read from causing high memory consumption.
640:
641: <li><a href="https://man.openbsd.org/ssh-agent">ssh-agent(1)</a>:
642: handle multiple requests sent in a single write() to the agent.
643:
644: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: allow <a
645: href="https://man.openbsd.org/sshd_config">sshd_config(5)</a> longer than 256k
646:
647: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: avoid
648: spurious "Unable to load host key" message when sshd load a private
649: key but no public counterpart
650:
651: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: prefer the
652: default hostkey algorithm list whenever we have a hostkey that matches
653: its best-preference algorithm.
654:
655: <li><a href="https://man.openbsd.org/sshd">sshd(1)</a>: when
656: ordering the hostkey algorithms to request from a server, prefer
657: certificate types if the known_hosts files contain a key marked as a
658: @cert-authority;
659:
660: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: perform host
661: key fingerprint comparisons for the "Are you sure you want to continue
662: connecting (yes/no/[fingerprint])?" prompt with case sensitivity.
663:
664: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: ensure that
665: address/masklen mismatches in sshd_config yield fatal errors at daemon
666: start time rather than later when they are evaluated.
667:
668: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
669: ensure that certificate extensions are lexically sorted. Previously if
670: the user specified a custom extension then the everything would be in
671: order except the custom ones.
672:
673: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: also compare
674: username when checking for JumpHost loops.
675:
676: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
677: preserve group/world read permission on known_hosts files across runs
678: of "ssh-keygen -Rf /path". The old behaviour was to remove all rights
679: for group/other.
680:
681: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
682: Mention the [-a rounds] flag in the ssh-keygen manual page and
683: usage().
684:
685: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: explicitly construct path to ~/.ssh/rc rather than
686: relying on it being relative to the current directory, so that it
687: can still be found if the shell startup changes its directory.
688:
689: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: when
690: redirecting sshd's log output to a file, undo this redirection after
691: the session child process is forked(). Fixes missing log messages when
692: using this feature under some circumstances.
693:
694: <li><a href="https://man.openbsd.org/sshd">sshd(8)</a>: start
695: ClientAliveInterval bookkeeping before first pass through select()
696: loop; fixed theoretical case where busy sshd may ignore timeouts from
697: client.
698:
699: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>: only reset the
700: ServerAliveInterval check when we receive traffic from the server and
701: ignore traffic from a port forwarding client, preventing a client from
702: keeping a connection alive when it should be terminated.
703:
704: <li><a href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>:
705: avoid spurious error message when ssh-keygen creates files outside
706: ~/.ssh
707:
708: <li><a
709: href="https://man.openbsd.org/sftp-client">sftp-client(1)</a>: fix
710: off-by-one error that caused sftp downloads to make one more
711: concurrent request that desired. This prevented using <a
712: href="https://man.openbsd.org/sftp">sftp(1)</a> in unpipelined
713: request/response mode, which is useful when debugging.
714:
715: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
716: href="https://man.openbsd.org/sshd">sshd(8)</a>: handle EINTR in
717: waitfd() and timeout_connect() helpers.
718:
719: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
720: href="https://man.openbsd.org/ssh-keygen">ssh-keygen(1)</a>: defer
721: creation of ~/.ssh until we attempt to write to it so we don't leave
722: an empty .ssh directory when it's not needed.
723:
724: <li><a href="https://man.openbsd.org/ssh">ssh(1)</a>, <a
725: href="https://man.openbsd.org/sshd">sshd(8)</a>: fix multiplier when
726: parsing time specifications when handling seconds after other units.
727:
728: </ul>
1.1 benno 729: </ul>
730:
731: <li>Ports and packages:
732: <p>The package system provides an easy way to install 3rd party software. New features include:
733: <ul>
734: <li>...
735: </ul>
736:
737: <p>Many pre-built packages for each architecture:
738: <!-- number of FTP packages minus SHA256, SHA256.sig, index.txt -->
739: <ul style="column-count: 3">
740: <li>aarch64: XXX
1.11 sthen 741: <li>amd64: 11234
1.1 benno 742: <li>arm: XXX
1.11 sthen 743: <li>i386: 10548
1.1 benno 744: <li>mips64: XXX
745: <li>mips64el: XXX
746: <li>powerpc: XXX
1.15 deraadt 747: <li>powerpc64: XXX
1.1 benno 748: <li>sparc64: XXX
749: </ul>
750:
751: <li>As usual, steady improvements in manual pages and other documentation.
752:
753: <li>The system includes the following major components from outside suppliers: XXX
754: <ul><span style="color:red;">this list needs checking</span>
755: <li>Xenocara (based on X.Org 7.7 with xserver 1.20.8 + patches,
1.4 jsg 756: freetype 2.10.2, fontconfig 2.12.4, Mesa 20.0.8, xterm 351,
1.1 benno 757: xkeyboard-config 2.20 and more)
758: <li>LLVM/Clang 10.0.1 (+ patches)
759: <li>GCC 4.2.1 (+ patches) and 3.3.6 (+ patches)
760: <li>Perl 5.30.3 (+ patches)
761: <li>NSD 4.3.2
762: <li>Unbound 1.11.0
763: <li>Ncurses 5.7
764: <li>Binutils 2.17 (+ patches)
765: <li>Gdb 6.3 (+ patches)
766: <li>Awk August 7, 2020 version
767: <li>Expat 2.2.8
768: </ul>
769:
770: <ul><span style="color:red;">XXX. We did not list these before, i got them from plus.html. Do we want them here? libfido2 version looks funny.</span>
771: <li>Updated libpcap to 9.0.
772: <li>Updated Spleen kernel fonts to version 1.8.2.
773: <li>Updated libcbor to v0.7.0.
774: <li>Updated <a href="https://man.openbsd.org/xkbcomp">xkbcomp(1)</a> to 1.4.3.
775: <li>Updated to libfido2 46710ac06.
776: </ul>
777:
778:
779: </ul>
780: </section>
781:
782: <hr>
783:
784: <section id=install>
785: <h3>How to install</h3>
786: <p>
787: Please refer to the following files on the mirror site for
788: extensive details on how to install OpenBSD 6.8 on your machine:
789:
790: <ul>
791: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/alpha/INSTALL.alpha">
792: .../OpenBSD/6.8/alpha/INSTALL.alpha</a>
793: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/amd64/INSTALL.amd64">
794: .../OpenBSD/6.8/amd64/INSTALL.amd64</a>
795: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/arm64/INSTALL.arm64">
796: .../OpenBSD/6.8/arm64/INSTALL.arm64</a>
797: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/armv7/INSTALL.armv7">
798: .../OpenBSD/6.8/armv7/INSTALL.armv7</a>
799: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/hppa/INSTALL.hppa">
800: .../OpenBSD/6.8/hppa/INSTALL.hppa</a>
801: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/i386/INSTALL.i386">
802: .../OpenBSD/6.8/i386/INSTALL.i386</a>
803: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/landisk/INSTALL.landisk">
804: .../OpenBSD/6.8/landisk/INSTALL.landisk</a>
805: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/loongson/INSTALL.loongson">
806: .../OpenBSD/6.8/loongson/INSTALL.loongson</a>
807: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/luna88k/INSTALL.luna88k">
808: .../OpenBSD/6.8/luna88k/INSTALL.luna88k</a>
809: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/macppc/INSTALL.macppc">
810: .../OpenBSD/6.8/macppc/INSTALL.macppc</a>
811: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/octeon/INSTALL.octeon">
812: .../OpenBSD/6.8/octeon/INSTALL.octeon</a>
813: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/powerpc64/INSTALL.powerpc64">
814: .../OpenBSD/6.8/octeon/INSTALL.powerpc64</a>
815: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/sgi/INSTALL.sgi">
816: .../OpenBSD/6.8/sgi/INSTALL.sgi</a>
817: <li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/sparc64/INSTALL.sparc64">
818: .../OpenBSD/6.8/sparc64/INSTALL.sparc64</a>
819: </ul>
820: </section>
821:
822: <hr>
823:
824: <section id=quickinstall>
825: <p>
826: Quick installer information for people familiar with OpenBSD, and the use of
827: the "<a href="https://man.openbsd.org/disklabel.8">disklabel</a> -E" command.
828: If you are at all confused when installing OpenBSD, read the relevant
829: INSTALL.* file as listed above!
830:
831: <h3>OpenBSD/alpha:</h3>
832:
833: <p>
834: If your machine can boot from CD, you can write <i>install68.iso</i> or
835: <i>cd68.iso</i> to a CD and boot from it.
836: Refer to INSTALL.alpha for more details.
837:
838: <h3>OpenBSD/amd64:</h3>
839:
840: <p>
841: If your machine can boot from CD, you can write <i>install68.iso</i> or
842: <i>cd68.iso</i> to a CD and boot from it.
843: You may need to adjust your BIOS options first.
844:
845: <p>
846: If your machine can boot from USB, you can write <i>install68.fs</i> or
847: <i>miniroot68.fs</i> to a USB stick and boot from it.
848:
849: <p>
850: If you can't boot from a CD, floppy disk, or USB,
851: you can install across the network using PXE as described in the included
852: INSTALL.amd64 document.
853:
854: <p>
855: If you are planning to dual boot OpenBSD with another OS, you will need to
856: read INSTALL.amd64.
857:
858: <h3>OpenBSD/arm64:</h3>
859:
860: <p>
861: Write <i>miniroot68.fs</i> to a disk and boot from it after connecting
862: to the serial console. Refer to INSTALL.arm64 for more details.
863:
864: <h3>OpenBSD/armv7:</h3>
865:
866: <p>
867: Write a system specific miniroot to an SD card and boot from it after connecting
868: to the serial console. Refer to INSTALL.armv7 for more details.
869:
870: <h3>OpenBSD/hppa:</h3>
871:
872: <p>
873: Boot over the network by following the instructions in INSTALL.hppa or the
874: <a href="hppa.html#install">hppa platform page</a>.
875:
876: <h3>OpenBSD/i386:</h3>
877:
878: <p>
879: If your machine can boot from CD, you can write <i>install68.iso</i> or
880: <i>cd68.iso</i> to a CD and boot from it.
881: You may need to adjust your BIOS options first.
882:
883: <p>
884: If your machine can boot from USB, you can write <i>install68.fs</i> or
885: <i>miniroot68.fs</i> to a USB stick and boot from it.
886:
887: <p>
888: If you can't boot from a CD, floppy disk, or USB,
889: you can install across the network using PXE as described in
890: the included INSTALL.i386 document.
891:
892: <p>
893: If you are planning on dual booting OpenBSD with another OS, you will need to
894: read INSTALL.i386.
895:
896: <h3>OpenBSD/landisk:</h3>
897:
898: <p>
899: Write <i>miniroot68.fs</i> to the start of the CF
900: or disk, and boot normally.
901:
902: <h3>OpenBSD/loongson:</h3>
903:
904: <p>
905: Write <i>miniroot68.fs</i> to a USB stick and boot bsd.rd from it
906: or boot bsd.rd via tftp.
907: Refer to the instructions in INSTALL.loongson for more details.
908:
909: <h3>OpenBSD/luna88k:</h3>
910:
911: <p>
912: Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader
913: from the PROM, and then bsd.rd from the bootloader.
914: Refer to the instructions in INSTALL.luna88k for more details.
915:
916: <h3>OpenBSD/macppc:</h3>
917:
918: <p>
919: Burn the image from a mirror site to a CDROM, and power on your machine
920: while holding down the <i>C</i> key until the display turns on and
921: shows <i>OpenBSD/macppc boot</i>.
922:
923: <p>
924: Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
925: /6.8/macppc/bsd.rd</i>
926:
927: <h3>OpenBSD/octeon:</h3>
928:
929: <p>
930: After connecting a serial port, boot bsd.rd over the network via DHCP/tftp.
931: Refer to the instructions in INSTALL.octeon for more details.
932:
933: <h3>OpenBSD/powerpc64:</h3>
934:
935: <p>
936: After XXX
937: Refer to the instructions in INSTALL.powerpc64 for more details.
938:
939: <h3>OpenBSD/sgi:</h3>
940:
941: <p>
942: To install, burn cd68.iso on a CD-R, put it in the CD drive of your
943: machine and select <i>Install System Software</i> from the System Maintenance
944: menu. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from
945: CD-ROM, and need a proper invocation from the PROM prompt.
946: Refer to the instructions in INSTALL.sgi for more details.
947:
948: <p>
949: If your machine doesn't have a CD drive, you can setup a DHCP/tftp network
950: server, and boot using "bootp()/bsd.rd.IP##" using the kernel matching your
951: system type. Refer to the instructions in INSTALL.sgi for more details.
952:
953: <h3>OpenBSD/sparc64:</h3>
954:
955: <p>
956: Burn the image from a mirror site to a CDROM, boot from it, and type
957: <i>boot cdrom</i>.
958:
959: <p>
960: If this doesn't work, or if you don't have a CDROM drive, you can write
961: <i>floppy68.fs</i> or <i>floppyB68.fs</i>
962: (depending on your machine) to a floppy and boot it with <i>boot
963: floppy</i>. Refer to INSTALL.sparc64 for details.
964:
965: <p>
966: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
967: will most likely fail.
968:
969: <p>
970: You can also write <i>miniroot68.fs</i> to the swap partition on
971: the disk and boot with <i>boot disk:b</i>.
972:
973: <p>
974: If nothing works, you can boot over the network as described in INSTALL.sparc64.
975: </section>
976:
977: <hr>
978:
979: <section id=upgrade>
980: <h3>How to upgrade</h3>
981: <p>
1.2 benno 982: If you already have an OpenBSD 6.7 system, and do not want to reinstall,
1.1 benno 983: upgrade instructions and advice can be found in the
984: <a href="faq/upgrade68.html">Upgrade Guide</a>.
985: </section>
986:
987: <hr>
988:
989: <section id=sourcecode>
990: <h3>Notes about the source code</h3>
991: <p>
992: <code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
993: This file contains everything you need except for the kernel sources,
994: which are in a separate archive.
995: To extract:
996: <blockquote><pre>
997: # <kbd>mkdir -p /usr/src</kbd>
998: # <kbd>cd /usr/src</kbd>
999: # <kbd>tar xvfz /tmp/src.tar.gz</kbd>
1000: </pre></blockquote>
1001: <p>
1002: <code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
1003: This file contains all the kernel sources you need to rebuild kernels.
1004: To extract:
1005: <blockquote><pre>
1006: # <kbd>mkdir -p /usr/src/sys</kbd>
1007: # <kbd>cd /usr/src</kbd>
1008: # <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
1009: </pre></blockquote>
1010: <p>
1011: Both of these trees are a regular CVS checkout. Using these trees it
1012: is possible to get a head-start on using the anoncvs servers as
1013: described <a href="anoncvs.html">here</a>.
1014: Using these files
1015: results in a much faster initial CVS update than you could expect from
1016: a fresh checkout of the full OpenBSD source tree.
1017: </section>
1018:
1019: <hr>
1020:
1021: <section id=ports>
1022: <h3>Ports Tree</h3>
1023: <p>
1024: A ports tree archive is also provided. To extract:
1025: <blockquote><pre>
1026: # <kbd>cd /usr</kbd>
1027: # <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
1028: </pre></blockquote>
1029: <p>
1030: Go read the <a href="faq/ports/index.html">ports</a> page
1031: if you know nothing about ports
1032: at this point. This text is not a manual of how to use ports.
1033: Rather, it is a set of notes meant to kickstart the user on the
1034: OpenBSD ports system.
1035: <p>
1036: The <i>ports/</i> directory represents a CVS checkout of our ports.
1037: As with our complete source tree, our ports tree is available via
1038: <a href="anoncvs.html">AnonCVS</a>.
1039: So, in order to keep up to date with the -stable branch, you must make
1040: the <i>ports/</i> tree available on a read-write medium and update the tree
1041: with a command like:
1042: <blockquote><pre>
1043: # <kbd>cd /usr/ports</kbd>
1044: # <kbd>cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_6_8</kbd>
1045: </pre></blockquote>
1046: <p>
1047: [Of course, you must replace the server name here with a nearby anoncvs
1048: server.]
1049: <p>
1050: Note that most ports are available as packages on our mirrors. Updated
1051: ports for the 6.8 release will be made available if problems arise.
1052: <p>
1053: If you're interested in seeing a port added, would like to help out, or just
1054: would like to know more, the mailing list
1055: <a href="mail.html">ports@openbsd.org</a> is a good place to know.
1056: </section>