=================================================================== RCS file: /cvsrepo/anoncvs/cvs/www/57.html,v retrieving revision 1.108 retrieving revision 1.109 diff -u -r1.108 -r1.109 --- www/57.html 2019/04/24 15:54:54 1.108 +++ www/57.html 2019/05/27 22:55:18 1.109 @@ -1,28 +1,29 @@ - - - + + + + OpenBSD 5.7 - - - - -

+

-OpenBSD -5.7 +OpenBSD +5.7

+ + +
- +Bluefish + Released May 1, 2015
Copyright 1997-2015, Theo de Raadt.
-ISBN 978-0-9881561-5-9 +ISBN 978-0-9881561-5-9
5.7 Song: "Source Fish"
@@ -30,27 +31,27 @@
  • See the information on the FTP page for a list of mirror machines. -
  • Go to the pub/OpenBSD/5.7/ directory on +
  • Go to the pub/OpenBSD/5.7/ directory on one of the mirror sites.
  • Have a look at the 5.7 errata page for a list of bugs and workarounds.
  • See a detailed log of changes between the 5.6 and 5.7 releases.

    -

  • signify(1) pubkeys for this release:

    +

  • signify(1) pubkeys for this release:

    - -
    + +
    openbsd-57-base.pub: - + RWSvUZXnw9gUb70PdeSNnpSmodCyIPJEGN1wWr+6Time1eP7KiWJ5eAM -
    +
    openbsd-57-fw.pub: - + RWSuRBL44FVkb2QuvtlwOJmzS9UJtbKZd7GEYcol8HPXu4On/Ct1LoZr -
    +
    openbsd-57-pkg.pub: - + RWTJ1iHLn/zcvJJSbxJIEU9ChlfAlU16XoLLxmxciliOFWfTLyOv0vQs
    @@ -60,68 +61,68 @@ sys.tar.gz, xenocara.tar.gz, ports.tar.gz files, or in the files fetched via ports.tar.gz. -
    +


    - -

    What's New

    +
    +

    What's New

    +

    This is a partial list of new features and systems included in OpenBSD 5.7. For a comprehensive list, see the changelog leading to 5.7. -

    • Improved hardware support, including:
        -
      • New xhci(4) driver for USB 3.0 host controllers. -
      • New umcs(4) driver for MosChip Semiconductor 78x0 USB multiport serial adapters. -
      • New skgpio(4) driver for Soekris net6501 GPIO and LEDs. -
      • New uslhcom(4) driver for Silicon Labs CP2110 USB HID based UART. -
      • New nep(4) driver for Sun Neptune 10Gb Ethernet devices. -
      • New iwm(4) driver for Intel 7260, 7265, and 3160 wifi cards. -
      • The rtsx(4) driver now supports RTS5227 and RTL8411B card readers. -
      • The bge(4) driver now supports jumbo frames on various additional BCM57xx chipsets. -
      • The ciss(4) driver now supports HP Gen9 Smart Array/Smart HBA devices. -
      • The mpi(4) and mfi(4) drivers now have mpsafe interrupt handlers running without the big lock. -
      • The ppb(4) driver now supports PCI bridges that support subtractive decoding (fixes PCMCIA behind the ATI SB400 PCI bridge), and devices with 64-bit BARs behind PCI-PCI bridges as seen on SPARC T5-2 systems. -
      • The puc(4) driver now supports Winchiphead CH382 devices. -
      • The sdmmc(4) driver now supports eMMC storage devices larger than 2GB. -
      • The sdhc(4) driver can properly resume on Ricoh controllers. -
      • The sdhc(4) driver now supports Ricoh R5U822 and R5U823 card readers. -
      • The mfii(4) driver now supports the Megaraid 3008 (Fury) and 3108 (Invader) cards. -
      • The myx(4) driver runs less code under the big lock. -
      • The msk(4) driver now supports Yukon Prime, Yukon Optima 2, Yukon 88E8079, and various EC U and Supreme chipsets. -
      • The umass(4) driver now supports Archos 24y Vision devices. -
      • The athn(4) driver now supports Atheros UB94 devices. -
      • The azalia(4) driver now supports Realtek ALC885 codecs and Bay Trail HD Audio devices. -
      • The ix(4) driver now supports onboard Ethernet devices in SPARC T5 machines. -
      • The upd(4) driver now handles UPSes with broken report descriptors. -
      • The ums(4) driver now supports the USB Tablet device emulated by Qemu. -
      • The umsm(4) driver now supports MEDION S4222 devices. -
      • The pciide(4) driver now supports Intel C610 chipsets. -
      • The ukbd(4) driver now supports "wellspring" Apple keyboards. -
      • The pms(4) driver now supports click-and-drag with Elantech v4 touchpads. -
      • The umodem(4) driver now supports Arduino Leonardo devices. -
      • The sk(4) driver now supports receive ring scaling. +
      • New xhci(4) driver for USB 3.0 host controllers. +
      • New umcs(4) driver for MosChip Semiconductor 78x0 USB multiport serial adapters. +
      • New skgpio(4) driver for Soekris net6501 GPIO and LEDs. +
      • New uslhcom(4) driver for Silicon Labs CP2110 USB HID based UART. +
      • New nep(4) driver for Sun Neptune 10Gb Ethernet devices. +
      • New iwm(4) driver for Intel 7260, 7265, and 3160 wifi cards. +
      • The rtsx(4) driver now supports RTS5227 and RTL8411B card readers. +
      • The bge(4) driver now supports jumbo frames on various additional BCM57xx chipsets. +
      • The ciss(4) driver now supports HP Gen9 Smart Array/Smart HBA devices. +
      • The mpi(4) and mfi(4) drivers now have mpsafe interrupt handlers running without the big lock. +
      • The ppb(4) driver now supports PCI bridges that support subtractive decoding (fixes PCMCIA behind the ATI SB400 PCI bridge), and devices with 64-bit BARs behind PCI-PCI bridges as seen on SPARC T5-2 systems. +
      • The puc(4) driver now supports Winchiphead CH382 devices. +
      • The sdmmc(4) driver now supports eMMC storage devices larger than 2GB. +
      • The sdhc(4) driver can properly resume on Ricoh controllers. +
      • The sdhc(4) driver now supports Ricoh R5U822 and R5U823 card readers. +
      • The mfii(4) driver now supports the Megaraid 3008 (Fury) and 3108 (Invader) cards. +
      • The myx(4) driver runs less code under the big lock. +
      • The msk(4) driver now supports Yukon Prime, Yukon Optima 2, Yukon 88E8079, and various EC U and Supreme chipsets. +
      • The umass(4) driver now supports Archos 24y Vision devices. +
      • The athn(4) driver now supports Atheros UB94 devices. +
      • The azalia(4) driver now supports Realtek ALC885 codecs and Bay Trail HD Audio devices. +
      • The ix(4) driver now supports onboard Ethernet devices in SPARC T5 machines. +
      • The upd(4) driver now handles UPSes with broken report descriptors. +
      • The ums(4) driver now supports the USB Tablet device emulated by Qemu. +
      • The umsm(4) driver now supports MEDION S4222 devices. +
      • The pciide(4) driver now supports Intel C610 chipsets. +
      • The ukbd(4) driver now supports "wellspring" Apple keyboards. +
      • The pms(4) driver now supports click-and-drag with Elantech v4 touchpads. +
      • The umodem(4) driver now supports Arduino Leonardo devices. +
      • The sk(4) driver now supports receive ring scaling.
      • Replaced custom jumbo allocators in - sk(4), - nge(4), - lge(4), and - ti(4) with - MCLGETI(9). -
      • Wireless network scanning problems with the iwn(4) driver have been fixed. -
      • Support for RS* IGP Radeon devices in the radeondrm(4) driver has been fixed. + sk(4), + nge(4), + lge(4), and + ti(4) with + MCLGETI(9). +
      • Wireless network scanning problems with the iwn(4) driver have been fixed. +
      • Support for RS* IGP Radeon devices in the radeondrm(4) driver has been fixed.
      • PowerMac7,2 and PowerMac7,3 can now boot with a multiprocessor kernel.

    • Removed hardware support:
        -
      • The lofn(4) and nofn(4) drivers for Hifn crypto accelerator devices have been removed. -
      • The art(4) driver for Accoom Networks Artery T1/E1 devices has been removed. -
      • The urio(4) driver for Diamond Multimedia Rio MP3 players has been removed. +
      • The lofn(4) and nofn(4) drivers for Hifn crypto accelerator devices have been removed. +
      • The art(4) driver for Accoom Networks Artery T1/E1 devices has been removed. +
      • The urio(4) driver for Diamond Multimedia Rio MP3 players has been removed.

      @@ -129,43 +130,43 @@

      • The routing table is now used for most of the address lookup operations superseding the RB-tree and IPv4 address list.
      • The SipHash algorithm is now used for PCB hashing, - trunk(4) loadbalancing, - pf(4) and - bridge(4). + trunk(4) loadbalancing, + pf(4) and + bridge(4).
      • Traffic destinated to link-local IPv6 addresses can now be seen with - tcpdump(8). -
      • A carp(4) now needs to be configured with an explicit carpdev parent interface. + tcpdump(8). +
      • A carp(4) now needs to be configured with an explicit carpdev parent interface.
      • The - mbuf(9) + mbuf(9) layer has been made mpsafe.
      • Introduce mbuf_list and mbuf_queue structures and APIs.
      • Support changing the IPv6 input queue length via - sysctl(1) and net.inet6.ip6.ifq. + sysctl(1) and net.inet6.ip6.ifq.

    • Installer improvements:
        -
      • The etc and xetc sets are now part of base and - xbase and are not distributed separately anymore. They are extracted - from base and xbase during installation and upgrades.
        - Note that this includes the rc and rc.conf files! +
      • The etc and xetc sets are now part of base and + xbase and are not distributed separately anymore. They are extracted + from base and xbase during installation and upgrades.
        + Note that this includes the rc and rc.conf files!
      • The installer now supports - trunk(4) + trunk(4) interfaces during upgrades.
      • The discovery of the responsefile location for unattended installation and upgrades has been extended to be more flexible.
        • Ask for the location if DHCP discovery fails for location or mode.
        • Provide a default URL if the 'next-server' DHCP option is found. -
        • Use /auto_install.conf or /auto_upgrade.conf if present. +
        • Use /auto_install.conf or /auto_upgrade.conf if present.
        • Automatically start the installer in unattended mode if either one of these files is present when the system boots.
      • Ignore hostname.if.* files when upgrading.
      • Configure all physical interfaces before any dynamic interface types (e.g. trunks, vlans) when upgrading.
      • - fdisk(8) now zeros out GPT signatures found when writing out an MBR that has been re-initialized and has no EFI or EFISYS partition. + fdisk(8) now zeros out GPT signatures found when writing out an MBR that has been re-initialized and has no EFI or EFISYS partition.
      • Fixed manipulation of 'ro' and 'rw' fstab options to avoid damage to other options that happen to contain 'ro' or 'rw'.
      • The ramdisk binary (one binary contains all the commands) is now compiled without optimization and security features. The benefit is a substantial saving in space, allowing more features in the future.
      @@ -173,15 +174,15 @@
    • Routing daemons and other userland network improvements:
        -
      • nginx has been removed from base -- use the package if you need it. +
      • nginx has been removed from base – use the package if you need it.
      • sliplogin has been removed. -
      • Sendmail has been removed from base -- use the package if you need it. +
      • Sendmail has been removed from base – use the package if you need it.
      • IPv6 router solicitations are now sent by the kernel ("inet6 autoconf"); rtsol(8) and rtsold(8) are no longer necessary and have been removed. -
      • Enhancements and bugfixes in arp(8) and ndp(8) -
      • The effects of the AI_ADDRCONFIG flag on getaddrinfo(3) results are limited to DNS queries. This avoids erratic behavior with transient network problems, "raw" addresses and localhost entries in /etc/hosts. -
      • gethostbyname(3) now no longer fails when more than 16 addresses/aliases are returned. The original pre-asr limit of 35 has been restored, with additional results being truncated. -
      • tftp(1) now supports sending or receiving files larger than 65536 blocks in size. -
      • ntpd(8) now supports authenticated TLS constraints. +
      • Enhancements and bugfixes in arp(8) and ndp(8) +
      • The effects of the AI_ADDRCONFIG flag on getaddrinfo(3) results are limited to DNS queries. This avoids erratic behavior with transient network problems, "raw" addresses and localhost entries in /etc/hosts. +
      • gethostbyname(3) now no longer fails when more than 16 addresses/aliases are returned. The original pre-asr limit of 35 has been restored, with additional results being truncated. +
      • tftp(1) now supports sending or receiving files larger than 65536 blocks in size. +
      • ntpd(8) now supports authenticated TLS constraints.

      @@ -190,139 +191,139 @@

    • Stricter enforcement of W^X in the kernel address space, especially on architectures with the right featureset (amd64, in particular, has seen substantial improvements).
    • Support for loadable kernel modules has been removed.
    • procfs has been removed. -
    • Comprehensive audit of the tree to use the reallocarray(3) idiom throughout. -
    • Many conversions from select(2) to poll(2). +
    • Comprehensive audit of the tree to use the reallocarray(3) idiom throughout. +
    • Many conversions from select(2) to poll(2).
    • /var/tmp is now a symbolic link to /tmp, as a first step towards reducing the "fill it up" attack surface against the /var partition. -
    • memcpy(3) with overlapping arguments now aborts a program (with a syslog report), allowing these problems to be found. Overlapping copies should use memmove(3). Sometime after 5.7 release, having learned more about the situation and repairing instances that are discovered by users during release use, we will go back to the optimized version. +
    • memcpy(3) with overlapping arguments now aborts a program (with a syslog report), allowing these problems to be found. Overlapping copies should use memmove(3). Sometime after 5.7 release, having learned more about the situation and repairing instances that are discovered by users during release use, we will go back to the optimized version.
    • Change - rand(3), - random(3), - drand48(3), - lrand48(3), - mrand48(3), - srand48(3) + rand(3), + random(3), + drand48(3), + lrand48(3), + mrand48(3), + srand48(3) to return non-deterministic strong random values by default, sourced from - arc4random(3). + arc4random(3). New functions - srand_deterministic(3), - srandom_deterministic(3), - seed48_deterministic(3) and - lcong48_deterministic(3) + srand_deterministic(3), + srandom_deterministic(3), + seed48_deterministic(3) and + lcong48_deterministic(3) are added for cases where determinism needs to be requested.
    • At resume (or unhibernate) time, use a variety of methods to reseed the random number generator. This also works on VMs which wake up (if a wakeup event is seen).
    • All architectures have been transitioned to static PIE, meaning the statically linked binaries in /bin and /sbin now have randomly located text segments.
    • Allow larger .openbsd.randomdata ELF segments. -
    • Sync kernel AES code and ssh(1) AES code to the one shipped with OpenSSL/LibreSSL. -
    • Removed passwd(1) support for all password ciphers except blowfish(3). -
    • Use sha512 instead of md5 for tcp(4) initial sequence number. +
    • Sync kernel AES code and ssh(1) AES code to the one shipped with OpenSSL/LibreSSL. +
    • Removed passwd(1) support for all password ciphers except blowfish(3). +
    • Use sha512 instead of md5 for tcp(4) initial sequence number.
    • Use sha512 instead of md5 in the random number generator. -
    • Delete secret or secret-derived data in many base utilities with explicit_bzero(3). +
    • Delete secret or secret-derived data in many base utilities with explicit_bzero(3).

  • Assorted improvements:
      -
    • New rcctl(8) utility to control daemons. -
    • fw_update(1) has been rewritten to be faster and smarter. -
    • Cleanup libevent(3), +
    • New rcctl(8) utility to control daemons. +
    • fw_update(1) has been rewritten to be faster and smarter. +
    • Cleanup libevent(3), the compatibility layer for other operating systems has been removed. The API is still compatible with upstream libevent 1.4.15-stable. -
    • openssl(1) +
    • openssl(1) s_client now supports a -proxy parameter for connecting over an HTTP proxy.
    • gzsig has been removed.
    • Switch to fast assembly versions of some libc functions on amd64. -
    • Frequency scaling has been moved from apmd(8) to the kernel with an improved algorithm. +
    • Frequency scaling has been moved from apmd(8) to the kernel with an improved algorithm.
    • Switch last workq API uses to - taskq API and remove all traces of workq. + taskq API and remove all traces of workq.
    • Use - services(5) names in the default pf rules in force during startup. + services(5) names in the default pf rules in force during startup.
    • - what(1) now correctly displays $OpenBSD$ expansions. + what(1) now correctly displays $OpenBSD$ expansions.
    • - dhcpd(8) now removes addresses from its pf table a single time when they expire, rather than at every timeout after the expiry. + dhcpd(8) now removes addresses from its pf table a single time when they expire, rather than at every timeout after the expiry.
    • - dhcpd(8) now ensures that the pf table process exits when the main process does. + dhcpd(8) now ensures that the pf table process exits when the main process does.
    • - dhcpd(8) has more informative log entries for DHCPACKs issued in response to DHCPINFORM messages. + dhcpd(8) has more informative log entries for DHCPACKs issued in response to DHCPINFORM messages.
    • Added POSIX types blkcnt_t (int64) and blksize_t (int32), and used them for st_blocks (formerly int64_t) and st_blksize (formerly u_int32_t) in struct stat.
    • Improved typography for - banner(6). -
    • Allow hangman + banner(6). +
    • Allow hangman to play against any ELF file.
    • - dhclient(8) adjusts MTU when the interface-mtu DHCP option is provided. + dhclient(8) adjusts MTU when the interface-mtu DHCP option is provided.
    • Various memory leaks in - dhclient(8) plugged, providing more stability for long running (in terms of time or renewals) instances. + dhclient(8) plugged, providing more stability for long running (in terms of time or renewals) instances.
    • The - dhclient(8) + dhclient(8) command line options -q (quiet) and -d (don't daemonize) are now mutually exclusive.
    • The communication between the privileged and unprivileged - dhclient(8) processes was reworked to further minimize information sharing. + dhclient(8) processes was reworked to further minimize information sharing.
    • - dhclient(8) ensures lease timeouts (renew, rebind, expire) are sane and uses default values closer to RFC suggestions. + dhclient(8) ensures lease timeouts (renew, rebind, expire) are sane and uses default values closer to RFC suggestions.
    • - dhclient(8) no longer crashes when a lease expires and cannot be renewed or replaced. + dhclient(8) no longer crashes when a lease expires and cannot be renewed or replaced.
    • - dhclient(8) improved tracking network interface link states. + dhclient(8) improved tracking network interface link states.
    • Improved network error tracking and accounting in - dhclient(8). + dhclient(8).
    • Private number conversion functions in - dhclient(8) eliminated in favour of standard library functions. + dhclient(8) eliminated in favour of standard library functions.
    • Further signal race cleanups in - ftp(1). + ftp(1).
    • BIND has been retired, encouraging use of - nsd(8) and - unbound(8). + nsd(8) and + unbound(8).
    • Significant namespace cleanup in the /usr/include files, especially related to <sys/param.h> and <limits.h>. -
    • softraid(4) RAID1 and CRYPTO volumes are now bootable on the sparc64 platform. -
    • relayd(8) now uses "TLS" rather than "SSL" terminology to reflect the deprecation of the latter. -
    • relayd(8) now supports the random and source-hash modes with redirections. -
    • relayd(8) now supports the OPENBSD-RELAYD-MIB via agentx with snmpd(8). -
    • Added interfaces for setting the close-on-exec flag and/or non-blocking mode on new file descriptors: pipe2(2), dup3(2), accept4(2), mkostemp(3), mkostemps(3), the SOCK_CLOEXEC and SOCK_NONBLOCK flags for socket(2) and socketpair(2), and the MSG_CMSG_CLOEXEC flag for recvmsg(2). In addition, posix_spawn_file_actions_adddup2(3) now always clears the close-on-exec flag. -
    • Added interfaces for setting the close-on-exec flag on new FILE handles and for requesting exclusive creation via the the 'e' and 'x' mode letters for fopen(3), fdopen(3), freopen(3), and popen(3). +
    • softraid(4) RAID1 and CRYPTO volumes are now bootable on the sparc64 platform. +
    • relayd(8) now uses "TLS" rather than "SSL" terminology to reflect the deprecation of the latter. +
    • relayd(8) now supports the random and source-hash modes with redirections. +
    • relayd(8) now supports the OPENBSD-RELAYD-MIB via agentx with snmpd(8). +
    • Added interfaces for setting the close-on-exec flag and/or non-blocking mode on new file descriptors: pipe2(2), dup3(2), accept4(2), mkostemp(3), mkostemps(3), the SOCK_CLOEXEC and SOCK_NONBLOCK flags for socket(2) and socketpair(2), and the MSG_CMSG_CLOEXEC flag for recvmsg(2). In addition, posix_spawn_file_actions_adddup2(3) now always clears the close-on-exec flag. +
    • Added interfaces for setting the close-on-exec flag on new FILE handles and for requesting exclusive creation via the the 'e' and 'x' mode letters for fopen(3), fdopen(3), freopen(3), and popen(3).
    • Many library functions and programs changed to use the above for safety or simplicity. -
    • Added chflagsat(2), sockatmark(3), and stravis(3). -
    • Merged performance and safety fixes for fts(3) from FreeBSD. -
    • Merged fixes for file descriptor leaks in various rpc(3) functions from NetBSD. -
    • Added a kern.global_ptrace sysctl(1) to disable, by default, the ability to ptrace(2) processes that aren't your descendent. -
    • kdump(1) now always displays both the numeric and the textual forms for users, groups, timestamps, and sysctl ids, eliminating the -r option. It also auto-selects between decimal and hex format for arguments, renders more types of flags, and is more robust when parsing corrupt ktrace files. -
    • chmod(1)/chgrp(1)/chown(8) now comply with POSIX's requirements when they encounter symlinks when the -R option is used, and are safe from race conditions when doing so. -
    • The dmesg(8) utility can now display the console message buffer in addition to the system message buffer. -
    • inetd(8) now uses libevent instead of - select(3). +
    • Added chflagsat(2), sockatmark(3), and stravis(3). +
    • Merged performance and safety fixes for fts(3) from FreeBSD. +
    • Merged fixes for file descriptor leaks in various rpc(3) functions from NetBSD. +
    • Added a kern.global_ptrace sysctl(1) to disable, by default, the ability to ptrace(2) processes that aren't your descendent. +
    • kdump(1) now always displays both the numeric and the textual forms for users, groups, timestamps, and sysctl ids, eliminating the -r option. It also auto-selects between decimal and hex format for arguments, renders more types of flags, and is more robust when parsing corrupt ktrace files. +
    • chmod(1)/chgrp(1)/chown(8) now comply with POSIX's requirements when they encounter symlinks when the -R option is used, and are safe from race conditions when doing so. +
    • The dmesg(8) utility can now display the console message buffer in addition to the system message buffer. +
    • inetd(8) now uses libevent instead of + select(3).
    • Reworking of the kernel - pool(9) + pool(9) implementation to provide mpsafety and pave the way for performance improvements.
    • Removed the - workq API + workq API after replacing it with the - task API. + task API.
    • Add support for creating kernel threads that cannot sleep to - taskq_create(9). + taskq_create(9).
    • Completed the implementation of the atomic (eg, - atomic_cas_uint(9), - atomic_swap_uint(9), - atomic_add_int(9), - atomic_sub_int(9), - atomic_inc_int(9), and - atomic_dec_int(9)) + atomic_cas_uint(9), + atomic_swap_uint(9), + atomic_add_int(9), + atomic_sub_int(9), + atomic_inc_int(9), and + atomic_dec_int(9)) and membar - (membar_sync(9)) + (membar_sync(9)) APIs across all supported architectures.

    -

  • OpenBSD httpd(8): +
  • OpenBSD httpd(8):
    • SSLv2/3 is not supported anymore; renamed all occurrences of "SSL" to "TLS".
    • Various TLS improvements with better support for ECDHE/DHE forward secrecy.
    • Improved support for virtual hosts by supporting name- and IP- based aliases. -
    • Added support for basic authentication by checking against files created with htpasswd(1). +
    • Added support for basic authentication by checking against files created with htpasswd(1).
    • Added support for custom error codes, blocking and dropping of connections.
    • Added support for redirections and macros in specified target URLs.
    • Added the "root strip" option to sanitize PATH_INFO for some CGI scripts.
    • Added an option to specify an alternative log directory instead of /var/www/logs. -
    • Various FastCGI improvements; httpd(8) is now compatible with many well-known web applications. +
    • Various FastCGI improvements; httpd(8) is now compatible with many well-known web applications.
    • Various other fixes and improvements.

    @@ -342,11 +343,11 @@

    • Potentially-incompatible changes:
        -
      • sshd(8): - UseDNS now defaults to 'no'. Configurations that match +
      • sshd(8): + UseDNS now defaults to 'no'. Configurations that match against the client host name (via - sshd_config(5) - or authorized_keys) may need to re-enable it or convert to + sshd_config(5) + or authorized_keys) may need to re-enable it or convert to matching against addresses.
    • New/changed features: @@ -354,113 +355,113 @@
    • Much of OpenSSH's internal code has been re-factored to be more library-like. These changes are mostly not user-visible, but have greatly improved OpenSSH's testability and internal layout. -
    • Add FingerprintHash option to - ssh(1) +
    • Add FingerprintHash option to + ssh(1) and - sshd(8), + sshd(8), and equivalent command-line flags to the other tools to control algorithm used for key fingerprints. The default changes from MD5 to SHA256 and format from hex to base64. Fingerprints now have the hash algorithm prepended. Please note that visual host keys will also be different. -
    • ssh(1), - sshd(8): +
    • ssh(1), + sshd(8): Experimental host key rotation support. Add a protocol extension for a server to inform a client of all its available host keys after authentication has completed. The client may record the keys in - known_hosts, allowing it to upgrade to better host key + known_hosts, allowing it to upgrade to better host key algorithms and a server to gracefully rotate its keys. The client - side of this is controlled by a UpdateHostkeys config option + side of this is controlled by a UpdateHostkeys config option (default off). -
    • ssh(1): +
    • ssh(1): Add a - ssh_config(5) - HostbasedKeyType option to control which host public key types + ssh_config(5) + HostbasedKeyType option to control which host public key types are tried during host-based authentication. -
    • ssh(1), - sshd(8): +
    • ssh(1), + sshd(8): fix connection-killing host key mismatch errors when - sshd(8) + sshd(8) offers multiple ECDSA keys of different lengths. -
    • ssh(1): +
    • ssh(1): when host name canonicalisation is enabled, try to parse host names as addresses before looking them up for canonicalisation. Fixes bz#2074 and avoiding needless DNS lookups in some cases. -
    • ssh-keygen(1), - sshd(8): +
    • ssh-keygen(1), + sshd(8): Key Revocation Lists (KRLs) no longer require OpenSSH to be compiled with OpenSSL support. -
    • ssh(1), - ssh-keysign(8): +
    • ssh(1), + ssh-keysign(8): Make ed25519 keys work for host based authentication. -
    • sshd(8): +
    • sshd(8): SSH protocol v.1 workaround for the Meyer, et al., Bleichenbacher Side Channel Attack. Fake up a bignum key before RSA decryption. -
    • sshd(8): +
    • sshd(8): Remember which public keys have been used for authentication and refuse to accept previously-used keys. This allows - AuthenticationMethods=publickey,publickey to require that + AuthenticationMethods=publickey,publickey to require that users authenticate using two different public keys. -
    • sshd(8): +
    • sshd(8): add - sshd_config(5) - HostbasedAcceptedKeyTypes and PubkeyAcceptedKeyTypes + sshd_config(5) + HostbasedAcceptedKeyTypes and PubkeyAcceptedKeyTypes options to allow - sshd(8) + sshd(8) to control what public key types will be accepted. Currently defaults to all. -
    • sshd(8): +
    • sshd(8): Don't count partial authentication success as a failure against - MaxAuthTries. -
    • ssh(1): - Add RevokedHostKeys option for the client to allow text-file + MaxAuthTries. +
    • ssh(1): + Add RevokedHostKeys option for the client to allow text-file or KRL-based revocation of host keys. -
    • ssh-keygen(1), - sshd(8): +
    • ssh-keygen(1), + sshd(8): Permit KRLs that revoke certificates by serial number or key ID without scoping to a particular CA. -
    • ssh(1): +
    • ssh(1): Add a "Match canonical" criteria that allows - ssh_config(5) - Match blocks to trigger only in the second config pass. -
    • ssh(1): - Add a -G option to - ssh(1) + ssh_config(5) + Match blocks to trigger only in the second config pass. +
    • ssh(1): + Add a -G option to + ssh(1) that causes it to parse its configuration and dump the result to - stdout, similar to "sshd -T". -
    • ssh(1): - Allow Match criteria to be negated - (e.g. "Match !host"). + stdout, similar to "sshd -T". +
    • ssh(1): + Allow Match criteria to be negated + (e.g. "Match !host").
    • The regression test suite has been extended to cover more OpenSSH features. The unit tests have been expanded and now cover key exchange.
  • The following significant bugs have been fixed in this release:
      -
    • ssh-keyscan(1): - ssh-keyscan(1) +
    • ssh-keyscan(1): + ssh-keyscan(1) has been made much more robust again servers that hang or violate the SSH protocol. -
    • ssh(1), - ssh-keygen(1): +
    • ssh(1), + ssh-keygen(1): Fix regression bz#2306: Key path names were being lost as comment fields. -
    • ssh(1): +
    • ssh(1): Allow - ssh_config(5) - Port options set in the second config parse phase to be + ssh_config(5) + Port options set in the second config parse phase to be applied (they were being ignored). (bz#2286) -
    • ssh(1): - Tweak config re-parsing with host canonicalisation—make the +
    • ssh(1): + Tweak config re-parsing with host canonicalisation—make the second pass through the config files always run when host name canonicalisation is enabled (and not whenever the host name changes). (bz#2267) -
    • ssh(1): +
    • ssh(1): Fix passing of wildcard forward bind addresses when connection multiplexing is in use. (bz#2324) -
    • ssh-keygen(1): +
    • ssh-keygen(1): Fix broken private key conversion from non-OpenSSH formats. (bz#2345) -
    • ssh-keygen(1): +
    • ssh-keygen(1): Fix KRL generation bug when multiple CAs are in use.
    • Various fixes to manual pages. (bz#2273, bz#2288 and bz#2316)
    @@ -471,30 +472,30 @@
    • User-visible features:
        -
      • Reluctantly add server-side support for TLS_FALLBACK_SCSV. +
      • Reluctantly add server-side support for TLS_FALLBACK_SCSV.
      • Import BoringSSL's crypto bytestring and crypto bytebuilder APIs.
      • Jettison DTLS over SCTP.
      • Move - openssl(1) - from /usr/sbin/openssl to /usr/bin/openssl. + openssl(1) + from /usr/sbin/openssl to /usr/bin/openssl.
      • Two important cipher suites, GOST and Camellia, have been reworked or reenabled, providing better interoperability with systems around the world.
      • libtls: New API for loading CA chains directly from memory instead of a file, allowing verification with privilege separation in a - chroot(8) + chroot(8) without direct access to CA certificate files.
      • libtls: Ciphers default to TLSv1.2 with AEAD and PFS.
      • libtls: Improved error handling and message generation. -
      • Added X509_STORE_load_mem API for loading certificates from +
      • Added X509_STORE_load_mem API for loading certificates from memory. This facilitates accessing certificates from a chrooted environment.
      • New AEAD "MAC alias" allows configuring TLSv1.2 AEAD ciphers by using 'TLSv1.2+AEAD' as the cipher selection string.
      • New - openssl(1) - command 'certhash' replaces the c_rehash script. + openssl(1) + command 'certhash' replaces the c_rehash script.
      • Application-Layer Protocol Negotiation (ALPN) support.
    • Code improvements: @@ -524,33 +525,33 @@

    • mandoc 1.13.3:
        -
      • man(1), - apropos(1), and - mandoc(1) +
      • man(1), + apropos(1), and + mandoc(1) now have a unified user interface, all with the same options, and are in fact all implemented by the same binary program. -
      • For man(1), +
      • For man(1), this implies new options -l and -IKOTW, and it now finds manual pages by the names in their NAME sections even if they lack matching file names. -
      • For apropos(1), +
      • For apropos(1), this implies new options -acfhklw and -IKOTW. -
      • For mandoc(1), +
      • For mandoc(1), this implies new options -acfhkl. -
      • mandoc(1) +
      • mandoc(1) now automatically detects and transparently accepts input encoded in utf-8 and iso-8859-1, and provides a new option -K to explicitly specify the input encoding. -
      • The mandoc(1) +
      • The mandoc(1) default output mode now is -Tlocale rather than -Tascii. -
      • eqn(7) +
      • eqn(7) now supports in-line equations, and terminal rendering of equations is considerably improved. -
      • mandoc(1) -Thtml +
      • mandoc(1) -Thtml now generates polyglot HTML5 and renders - eqn(7) + eqn(7) using MathML. -
      • mandoc(1) +
      • mandoc(1) can no longer fail with fatal errors, no matter how broken the input file may be, and the -Wfatal message level no longer has any effect. A new diagnostic level -Wunsupp is provided. Besides, many @@ -562,14 +563,14 @@

      • Syslogd:
          -
        • OpenBSD syslogd(8) +
        • OpenBSD syslogd(8) is based on - libevent + libevent now.
        • Sending and receiving UDP messages works with both IPv4 and IPv6.
        • Syslog messages can also be sent over TCP or TLS. The syntax to specify the loghost is documented in - syslog.conf(5). + syslog.conf(5).
        • Sending over TCP and TLS is reliable. If a connection terminates, syslogd tries to reconnect. When the message buffer in memory gets full, the number of dropped @@ -584,33 +585,25 @@

      • Many pre-built packages for each architecture: - - -
        -
          +
          • i386: 8722
          • sparc64: 8184
          • alpha: 6811
          • sh: 0 -
        • amd64: 8745
        • powerpc: 8286
        • m88k: 1148
        • sparc: 4026 -
        • arm: 0
        • hppa: 6718
        • vax: 1550 -
        • mips64: 1595
        • mips64el: 6914 -
        +

    • Some highlights: - - -
        +
        • Chromium 40.0.2214.115
        • Emacs 21.4 and 24.4
        • GCC 4.8.4 and 4.9.2 @@ -626,7 +619,6 @@
        • Mono 3.12.0
        • Mozilla Firefox 31.4.0esr and 35.0.1
        • Mozilla Thunderbird 31.4.0 -
      • Node.js 0.10.35
      • OpenLDAP 2.3.43 and 2.4.40
      • PHP 5.3.29, 5.4.38, 5.5.22 and 5.6.5 @@ -640,8 +632,7 @@
      • TeX Live 2013
      • Vim 7.4.475
      • Xfce 4.10 -
      -
      +

  • As usual, steady improvements in manual pages and other documentation. @@ -664,14 +655,15 @@
  • Less 458 (+ patches)
  • Awk Aug 10, 2011 version
- + -
+ +
+

How to install

+

-

How to install

-

Following this are the instructions which you would have on a piece of paper if you had purchased a CDROM set instead of doing an alternate form of install. The instructions for doing an HTTP (or other style @@ -733,14 +725,16 @@


+
+

Quick installer information for people familiar with OpenBSD, and the use of the "disklabel -E" command. If you are at all confused when installing OpenBSD, read the relevant INSTALL.* file as listed above! -

-

OpenBSD/i386:

-
    +

    OpenBSD/i386:

    + +

    The OpenBSD/i386 release is on CD1. Boot from the CD to begin the install - you may need to adjust your BIOS options first. @@ -758,11 +752,9 @@ If you are planning on dual booting OpenBSD with another OS, you will need to read INSTALL.i386. -

+

OpenBSD/amd64:

-

OpenBSD/amd64:

-
    The OpenBSD/amd64 release is on CD2. Boot from the CD to begin the install - you may need to adjust your BIOS options first. @@ -779,11 +771,10 @@

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

+

OpenBSD/macppc:

+

-

OpenBSD/macppc:

-
    Burn the image from a mirror site to a CDROM, and power on your machine while holding down the C key until the display turns on and shows OpenBSD/macppc boot. @@ -791,17 +782,17 @@

    Alternatively, at the Open Firmware prompt, enter boot cd:,ofwboot /5.7/macppc/bsd.rd -

+

OpenBSD/sparc64:

+

-

OpenBSD/sparc64:

-
    5.7 Errata 001: Unfortunately, 5.7 cannot boot from CDROM on some machines due a bootloader bug. -

    + +

    Put CD3 in your CDROM drive and type boot cdrom.

    @@ -820,12 +811,11 @@

    If nothing works, you can boot over the network as described in INSTALL.sparc64. -

+

OpenBSD/alpha:

+

-

OpenBSD/alpha:

-
    -

    Write FTP:5.7/alpha/floppy57.fs or +Write FTP:5.7/alpha/floppy57.fs or FTP:5.7/alpha/floppyB57.fs (depending on your machine) to a diskette and enter boot dva0. Refer to INSTALL.alpha for more details. @@ -833,12 +823,9 @@ Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail. -

+

OpenBSD/armish:

-

OpenBSD/armish:

-
    -

    After connecting a serial port, Thecus can boot directly from the network either tftp or http. Configure the network using fconfig, reset, then load bsd.rd, see INSTALL.armish for specific details. @@ -846,55 +833,42 @@ and copy 'boot' and bsd.rd into the first partition on wd0 (hda1) then load and run bsd.rd, preserving the wd0i (hda1) ext2fs partition. More details are available in INSTALL.armish. -

+

OpenBSD/hppa:

+

-

OpenBSD/hppa:

-
    -

    Boot over the network by following the instructions in INSTALL.hppa or the hppa platform page. -

+

OpenBSD/landisk:

+

-

OpenBSD/landisk:

-
    -

    Write miniroot57.fs to the start of the CF or disk, and boot normally. -

+

OpenBSD/loongson:

+

-

OpenBSD/loongson:

-
    -

    Write miniroot57.fs to a USB stick and boot bsd.rd from it or boot bsd.rd via tftp. Refer to the instructions in INSTALL.loongson for more details. -

-

+

OpenBSD/luna88k:

+

-

OpenBSD/luna88k:

-
    -

    -Copy `boot' and `bsd.rd' to a Mach or UniOS partition, and boot the bootloader +Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader from the PROM, and the bsd.rd from the bootloader. Refer to the instructions in INSTALL.luna88k for more details. -

+

OpenBSD/octeon:

+

-

OpenBSD/octeon:

-
    -

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

+

OpenBSD/sgi:

+

-

OpenBSD/sgi:

-
    -

    To install, burn cd57.iso on a CD-R, put it in the CD drive of your machine and select Install System Software from the System Maintenance menu. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from @@ -905,27 +879,24 @@ If your machine doesn't have a CD drive, you can setup a DHCP/tftp network server, and boot using "bootp()/bsd.rd.IP##" using the kernel matching your system type. Refer to the instructions in INSTALL.sgi for more details. -

+

OpenBSD/socppc:

+

-

OpenBSD/socppc:

-
    -

    After connecting a serial port, boot over the network via DHCP/tftp. Refer to the instructions in INSTALL.socppc for more details. -

+

OpenBSD/sparc:

+

-

OpenBSD/sparc:

-
    Boot from one of the provided install ISO images, using one of the two commands listed below, depending on the version of your ROM. -
      -ok boot cdrom 5.7/sparc/bsd.rd
      +
      +ok boot cdrom 5.7/sparc/bsd.rd
       or
      -> b sd(0,6,0)5.7/sparc/bsd.rd
      -
    +> b sd(0,6,0)5.7/sparc/bsd.rd +

    If your SPARC system does not have a CD drive, you can alternatively boot from floppy. @@ -934,11 +905,11 @@ To boot from the floppy use one of the two commands listed below, depending on the version of your ROM. -

      -ok boot floppy
      +
      +ok boot floppy
       or
      -> b fd()
      -
    +> b fd() +

    Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install @@ -948,56 +919,54 @@ If your SPARC system doesn't have a floppy drive nor a CD drive, you can either setup a bootable tape, or install via network, as told in the INSTALL.sparc file. -

+

OpenBSD/vax:

+

-

OpenBSD/vax:

-
    Boot over the network via mopbooting as described in INSTALL.vax. -
+

OpenBSD/zaurus:

+

-

OpenBSD/zaurus:

-
    -

    Using the Linux built-in graphical ipkg installer, install the openbsd57_arm.ipk package. Reboot, then run it. Read INSTALL.zaurus for a few important details. -

- +
+
+ +
+

How to upgrade

-

How to upgrade

-

If you already have an OpenBSD 5.6 system, and do not want to reinstall, upgrade instructions and advice can be found in the Upgrade Guide. +

-
+
+

Notes about the source code

-

Notes about the source code

-

src.tar.gz contains a source archive starting at /usr/src. This file contains everything you need except for the kernel sources, which are in a separate archive. To extract:

-

    -# mkdir -p /usr/src
    -# cd /usr/src
    -# tar xvfz /tmp/src.tar.gz
    -
+
+# mkdir -p /usr/src
+# cd /usr/src
+# tar xvfz /tmp/src.tar.gz
+

sys.tar.gz contains a source archive starting at /usr/src/sys. This file contains all the kernel sources you need to rebuild kernels. To extract:

-

    -# mkdir -p /usr/src/sys
    -# cd /usr/src
    +
    +# mkdir -p /usr/src/sys
    +# cd /usr/src
     # tar xvfz /tmp/sys.tar.gz
    -
+

Both of these trees are a regular CVS checkout. Using these trees it is possible to get a head-start on using the anoncvs servers as @@ -1005,19 +974,20 @@ Using these files results in a much faster initial CVS update than you could expect from a fresh checkout of the full OpenBSD source tree. -

+

+
-
+ +
+

Ports Tree

-

Ports Tree

-

A ports tree archive is also provided. To extract:

-

    -# cd /usr
    -# tar xvfz /tmp/ports.tar.gz
    -
+
+# cd /usr
+# tar xvfz /tmp/ports.tar.gz
+

Go read the ports page if you know nothing about ports @@ -1026,7 +996,7 @@ OpenBSD ports system.

The ports/ directory represents a CVS (see the manpage for - + cvs(1) if you aren't familiar with CVS) checkout of our ports. As with our complete source tree, our ports tree is available via @@ -1035,10 +1005,10 @@ the ports/ tree available on a read-write medium and update the tree with a command like:

-

    +
     # cd /usr/ports
     # cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_5_7
    -
+

[Of course, you must replace the server name here with a nearby anoncvs server.] @@ -1049,6 +1019,4 @@ If you're interested in seeing a port added, would like to help out, or just would like to know more, the mailing list ports@openbsd.org is a good place to know. -

- - +