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