[BACK]Return to 53.html CVS log [TXT][DIR] Up to [local] / www

File: [local] / www / 53.html (download) (as text)

Revision 1.97, Thu Jun 13 06:16:25 2019 UTC (4 years, 11 months ago) by deraadt
Branch: MAIN
CVS Tags: HEAD
Changes since 1.96: +0 -4 lines

settle on a single pattern for the untar related blockquotes

<!doctype html>
<html lang=en id=release>
<meta charset=utf-8>

<title>OpenBSD 5.3</title>
<meta name="description" content="OpenBSD 5.3">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/53.html">

<h2 id=OpenBSD>
<a href="index.html">
<i>Open</i><b>BSD</b></a>
5.3
</h2>

<table>
<tr>
<td>
<a href="images/RoyPuffy.jpg">
<img width="227" height="343" src="images/RoyPuffy.jpg" alt="Roy Puffy"></a>
<td>
Released May 1, 2013<br>
Copyright 1997-2013, Theo de Raadt.<br>
<cite class=isbn>ISBN 978-0-9881561-1-1</cite>
<br>
5.3 Song: <a href="lyrics.html#53">"Blade Swimmer"</a>
<br>
<br>
<ul>
<li>See the information on <a href="ftp.html">the FTP page</a> for
    a list of mirror machines.
<li>Go to the <code class=reldir>pub/OpenBSD/5.3/</code> directory on
    one of the mirror sites.
<li>Have a look at <a href="errata53.html">The 5.3 Errata page</a> for a list
    of bugs and workarounds.
<li>See a <a href="plus53.html">detailed log of changes</a> between the
    5.2 and 5.3 releases.
</ul>
<p>
All applicable copyrights and credits are in the src.tar.gz,
sys.tar.gz, xenocara.tar.gz, ports.tar.gz files, or in the
files fetched via <code>ports.tar.gz</code>.
</table>

<hr>

<section id=new>
<h3>What's New</h3>
<p>
This is a partial list of new features and systems included in OpenBSD 5.3.
For a comprehensive list, see the <a href="plus53.html">changelog</a> leading
to 5.3.
<p>

<ul>
<li>Improved hardware support, including:
    <ul>
    <li>New driver <a href="https://man.openbsd.org/oce.4">oce(4)</a> for Emulex OneConnect 10Gb Ethernet adapters.
    <li>New driver <a href="https://man.openbsd.org/rtsx.4">rtsx(4)</a> for the Realtek RTS5209 card reader.
    <li>New driver <a href="https://man.openbsd.org/mfii.4">mfii(4)</a> for the LSI Logic MegaRAID SAS Fusion controllers.
    <li>New driver <a href="https://man.openbsd.org/smsc.4">smsc(4)</a> for SMSC LAN95xx 10/100 USB Ethernet adapters.
    <li>New drivers for Toradex OAK USB sensors: <a href="https://man.openbsd.org/uoaklux.4">uoaklux(4)</a> (illuminance), <a href="https://man.openbsd.org/uoakrh.4">uoakrh(4)</a> (temperature and relative humidity) and <a href="https://man.openbsd.org/uoakv.4">uoakv(4)</a> (+/- 10V 8channel ADC).
    <li>New drivers for <a href="https://man.openbsd.org/virtio.4">virtio(4)</a> devices: <a href="https://man.openbsd.org/vio.4">vio(4)</a> (network), <a href="https://man.openbsd.org/vioblk.4">vioblk(4)</a> (block devices, attaching as SCSI disks) and <a href="https://man.openbsd.org/viomb.4">viomb(4)</a> (memory ballooning).
    <li>Support for Adaptec 39320LPE added to <a href="https://man.openbsd.org/ahd.4">ahd(4)</a>.
    <li>Broadcom 5718/5719/5720 Gigabit Ethernet devices supported in <a href="https://man.openbsd.org/bge.4">bge(4)</a>.
    <li>Intel X540-based 10Gb Ethernet devices supported in <a href="https://man.openbsd.org/ix.4">ix(4)</a>.
    <li>Support for SFP+ hot-plug (82599) and various other improvements in <a href="https://man.openbsd.org/ix.4">ix(4)</a>.
    <li>TX interrupt mitigation, hardware VLAN tagging and checksum offload reduce CPU use in <a href="https://man.openbsd.org/vr.4">vr(4)</a>.
    <li>Baby jumbo frames supported in <a href="https://man.openbsd.org/vr.4">vr(4)</a> and <a href="https://man.openbsd.org/sis.4">sis(4)</a> useful for e.g. MPLS, <a href="https://man.openbsd.org/vlan.4">vlan(4)</a> tag stacking (QinQ) and RFC4638 <a href="https://man.openbsd.org/pppoe.4">pppoe(4)</a>.
    <li>TCP RX Checksum offload in <a href="https://man.openbsd.org/gem.4">gem(4)</a>.
    <li>Improvements for NICs using 82579/pch2 in <a href="https://man.openbsd.org/em.4">em(4)</a>.
    <li>Flow control is now supported on <a href="https://man.openbsd.org/bnx.4">bnx(4)</a> 5708S/5709S adapters, <a href="https://man.openbsd.org/gem.4">gem(4)</a> and <a href="https://man.openbsd.org/jme.4">jme(4)</a>.

    <li>Power-saving clients supported in hostap mode with <a href="https://man.openbsd.org/acx.4">acx(4)</a> and <a href="https://man.openbsd.org/athn.4">athn(4)</a>.
    <li>A cause of RT2661 <a href="https://man.openbsd.org/ral.4">ral(4)</a> wedging in hostap mode was fixed.
    <li><a href="https://man.openbsd.org/iwn.4">iwn(4)</a> supports additional devices (Centrino Advanced-N 6235 and initial support for Centrino Wireless-N 1030).

    <li>Improvements to <a href="https://man.openbsd.org/ahci.4">ahci(4)</a>.
    <li>Support for the fixed-function performance counter on newer x86 chips with constant time stamp counters.
    <li>Elantech touchpads supported in <a href="https://man.openbsd.org/pms.4">pms(4)</a> and <a href="https://man.openbsd.org/synaptics.4">synaptics(4)</a>.
    <li>Support for "physical devices" on skinny <a href="https://man.openbsd.org/mfi.4">mfi(4)</a> controllers.
    <li>VMware emulated SAS adapters supported by <a href="https://man.openbsd.org/mpi.4">mpi(4)</a>.
    <li>Support for Intel's Supervisor Mode Execution Protection (SMEP) and Supervisor Mode Access Prevention (SMAP) features on i386 and amd64.
    <li>Support for the RDRAND instruction to read the hardware random number generator on recent Intel processors.
    <li>amd64 PCI memory extent changed to cover the whole 64-bit memory space; fixes erroneous extent allocation panic on IBM x3100.
    <li><a href="https://man.openbsd.org/ulpt.4">ulpt(4)</a> can now upload firmware to certain HP LaserJet printers.
    <li>Added stat clock to Loongson machines, improving accuracy of CPU usage statistics.
    <li>CPU throttling supported on Loongson 2F.
    <li>Support for Apple UniNorth and U3 AGP added to <a href="https://man.openbsd.org/agp.4">agp(4)</a>.
    <li>DRM support for macppc.
    </ul>
<p>

<li>Generic network stack improvements:
    <ul>
    <li>Restriction on writing to <a href="https://man.openbsd.org/trunk.4">trunk(4)</a> member interfaces relaxed; BPF can now write to interfaces directly (useful for LLDP).
    <li>UDP support added to <a href="https://man.openbsd.org/sosplice.9">sosplice(9)</a> (zero-copy socket splicing).
    <li>IPv6 autoconfprivacy is enabled by default (can be disabled per-interface with an <a href="https://man.openbsd.org/ifconfig.8">ifconfig(8)</a> flag).
    <li><a href="https://man.openbsd.org/ifconfig.8">ifconfig(8)</a> <code>hwfeatures</code> displays the maximum MTU supported by the driver (indicating support for jumbo/baby-jumbo frames).
    <li>Vastly improved IPsec v3 compatibility, including support for Extended Sequence Numbers in the AES-NI driver for AES-GCM and other modes.
    </ul>
<p>

<li>Routing daemons and other userland network improvements:
    <ul>
    <li>OpenBSD now includes <a href="https://man.openbsd.org/npppd.8">npppd(8)</a>, a server-side daemon for L2TP, L2TP/IPsec, PPTP and PPPoE.
    <li>New standalone <a href="https://man.openbsd.org/tftp-proxy.8">tftp-proxy(8)</a> to replace the old <a href="https://man.openbsd.org/inetd.8">inetd(8)</a>-based implementation.
    <li>SNMPv3 supported in <a href="https://man.openbsd.org/snmpd.8">snmpd(8)</a>.
    <li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> is more tolerant of unknown capabilities when bringing up a session (logs a warning rather than fails).
    <li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> now handles client side of "graceful restart".
    <li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> can now filter based on the NEXTHOP attribute.
    <li>A stratum can now be assigned to hardware sensors in <a href="https://man.openbsd.org/ntpd.8">ntpd(8)</a>.
    <li><a href="https://man.openbsd.org/authpf.8">authpf(8)</a> now supports the use of per-group rules files.
    <li><a href="https://man.openbsd.org/ftp.1">ftp(1)</a> client now supports basic HTTP authentication as per RFC 2617 and 3986 like "ftp http[s]://user:pass@host/file".
    <li><a href="https://man.openbsd.org/ftp.1">ftp(1)</a> client's mput command allows to upload a directory tree recursively using the -r switch.
    <li><a href="https://man.openbsd.org/relayd.8">relayd(8)</a> has various improvements including additional scheduling algorithms (least-states, for redirections, and random/source-hash, for relays).
    <li>The <a href="https://man.openbsd.org/iked.8">iked(8)</a> IKEv2 daemon supports NAT-T. (The isakmpd daemon for IKEv1 has supported this for a long time).
    <li><a href="https://man.openbsd.org/iked.8">iked(8)</a> blocks IPv6 traffic unless there are v6 VPN flows; this is to prevent leakages as described in <a href="http://tools.ietf.org/html/draft-gont-opsec-vpn-leakages">draft-gont-opsec-vpn-leakages</a>.
    </ul>
<p>

<li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a> improvements:
    <ul>
    <li>dhclient-script eliminated, all configuration is done with ioctl's and routing sockets.
    <li>interface configuration is much faster.
    <li>HUP signals cause dhclient to restart; making it re-read the <a href="https://man.openbsd.org/dhclient.conf.5">dhclient.conf(5)</a> and <a href="https://man.openbsd.org/resolv.conf.tail.5">resolv.conf.tail(5)</a> files, and obtain a new lease.
    <li>INIT, USR1, USR2 signals cause dhclient to exit after attempting to remove routes and addresses it configured.
    <li><a href="https://man.openbsd.org/resolv.conf.5">resolv.conf(5)</a> is written only when the in-use default route was inserted by dhclient. Possible changes to the default route are detected and cause dhclient to write out resolv.conf when appropriate.
    <li>interface hardware address changes are detected and cause dhclient to restart.
    <li>dhclient.conf directive 'ignore' and command line option '-i' added, allowing the suppression of specific options offered by server.
    <li>'-L' command line option added, allowing the creation of a complete record of the most recent offer and what we modified it to when binding the lease.
    <li>rejected offers no longer prevent dhclient from trying recorded leases and going daemon.
    <li>cleanup of routing tables when starting and exiting is more complete.
    <li>log messages cleaned up and reduced.
    <li>dhclient is automatically placed in the routing domain of the interface.
    <li>incoming and outgoing packet buffers are separate, eliminating possible transmission of inappropriate packets when re-trying DISCOVER and REQUEST.
    <li>resolv.conf.tail read only once, at startup.
    <li>both OFFER and ACK packets that lack required options are rejected.
    <li>file names passed to '-L' and '-l' are constrained to be regular files.
    <li>bind success reported after binding complete, not when it is started.
    <li>privileged process daemonizes, eliminating its controlling terminal.
    <li>STDIN/STDOUT/STDERR no longer redirected to /dev/null when '-d' specified.
    <li>all existing addresses on the interface are deleted when binding a new lease.
    <li>leases which would cause routing problems because another interface is already configured with the same subnet are rejected.
    <li>premature and repeated DISCOVER and/or REQUEST messages at startup are avoided.
    <li>permanent ARP cache entries are no longer deleted during binding.
    <li>allow empty lists of option names for 'ignore', 'request', and 'require' dhclient.conf directives, so lists can be reset in interface declarations.
    <li><a href="https://man.openbsd.org/dhcpd.8">dhcpd(8)</a> and dhclient recognize the same list of dhcp options.
    <li>hand-rolled IMSG implementation replaced with <a href="https://man.openbsd.org/imsg_init.3">imsg_init(3)</a> and related functions..
    <li>hand-rolled date string construction replaced with <a href="https://man.openbsd.org/strftime.3">strftime(3)</a> invocations.
    <li>hand-rolled '%m' option replaced with <a href="https://man.openbsd.org/strerror.3">strerror(3)</a> invocations.
    <li>many other internal code improvements.
    </ul>
<p>

<li><a href="https://man.openbsd.org/pf.4">pf(4)</a> improvements:
    <ul>
    <li> The <a href="https://man.openbsd.org/divert.4">divert(4)</a>
         socket now supports the new IP_DIVERTFL socket option to control whether both inbound and outbound packets are diverted (the default) or only packets travelling in one direction.
    <li>Sloppy state tracking (a special mode occasionally needed with asymmetric routing) now works correctly with ICMP.
    <li>PF now restricts the fragment limit to protect against a misconfiguration running the kernel out of mbuf clusters.
    </ul>
<p>

<li>OpenSMTPD 5.3:
    <ul>
    <li>New features:
      <ul>
	<li>code is now considered stable and suitable for use in production.
	<li><a href="https://man.openbsd.org/smtpctl.8">smtpctl(8)</a> <i>trace</i> supports runtime tracing of various components, including imsg exchanges, incoming and outgoing sessions, aliases expansion and much more.
	<li><a href="https://man.openbsd.org/smtpctl.8">smtpctl(8)</a> <i>monitor</i> can now be used to monitor in real-time an instance of <a href="https://man.openbsd.org/smtpd.8">smtpd(8)</a>.
	<li><a href="https://man.openbsd.org/smtpctl.8">smtpctl(8)</a> <i>show queue</i> now supports an "online" mode where the scheduler is queried instead of the disk-based queue to provide more accurate information.
	<li>virtual domain support has been reworked to simplify and bring support for new features like global catch-alls and shared user mappings.
	<li>new table API replaces the map API: better handling of transient errors, improved performances and a much better interface.
	<li>the transfer process may now select the source IP address to use as well as the HELO hostname to advertise from a table.
	<li>each listener may advertise a different banner hostname.
	<li>an alternate user database may be provided instead of relying on <a href="https://man.openbsd.org/getpwnam.3">getpwnam(3)</a>.
	<li>users may now be authenticated using credentials from a table.
	<li>incoming sessions can be tagged, allowing for rules to only match envelopes that have been reinjected in the daemon after being passed to a proxy tool.
	<li>intermediate bounces are now sent at configurable rates.
	<li>rules can now check for a sender email address or domain.
	<li>experimental (yet functional) support for aldap and sqlite as table backends.
      </ul>

    <li>Improvements:
      <ul>
	<li>improved logging format to make it both easier to read and parse.
	<li>improved memory use by scheduler, smtp, queue and transfer processes.
	<li>more reliable and efficient disk-based queue.
	<li>improved scheduler, dns and relaying logic that optimizes transfers.
	<li>simplified grammar for <a href="https://man.openbsd.org/smtpd.conf.5">smtpd.conf(5)</a>.
	<li>initial support for client and server SSL peer certificates validation.
	<li>SSL certificate tree is now isolated and network-facing processes request SSL information on-demand by imsg.
	<li>improved and simplified SMTP and MTA engines.
	<li>much improved performances on both incoming and outgoing code paths.
	<li>tons of cleanup and assorted minor bug fixes.
      </ul>
    </ul>
<p>

<li>Security improvements:
    <ul>
    <li>Position-independent executables (PIE) are now used <b>by default</b> on alpha, amd64, hppa, landisk, loongson, sgi and sparc64.
    <li><a href="https://man.openbsd.org/gcc.1">gcc(1)</a> stack smashing protector added for Alpha and MIPS (enabled by default).
    <li>Shared libraries on GCC 4 platforms now each get their own stack protector cookies instead of sharing a single global cookie.
    </ul>
<p>

<li>Performance improvements:
    <ul>
    <li>Switch default disk I/O sort algorithm to NSCAN for improved fairness and response times.
    <li>Softdep speedup improvements by the revert of a previously necessary workaround to prevent kva starvation.
    <li>Large performance and reliability improvements in
<a href="https://man.openbsd.org/make.1">make(1)</a>,
especially in parallel mode. make no longer does any busy waiting, it handles
concurrent targets correctly, and displays more accurate error messages.
    <li>Increased stack alignment in constructor functions and new threads on i386 to meet requirements for SSE.
    <li>Coredumping no longer hogs CPU or I/O and can be aborted by sending the process a SIGKILL signal.
    </ul>
<p>

<li>Threading improvements:
    <ul>
    <li>Threaded programs and libraries can now be linked with the POSIX-standard -lpthread flag instead of the OpenBSD-specific -pthread flag
    <li><a href="https://man.openbsd.org/abort.3">abort(3)</a> and <a href="https://man.openbsd.org/raise.3">raise(3)</a> now direct the signal to the calling thread, as specified by POSIX.
    <li>Whether a thread is currently executing on an alternate signal stack (c.f.  <a href="https://man.openbsd.org/sigaltstack.2">sigaltstack(2)</a>) is now determined dynamically, so the stack can be reused if <a href="https://man.openbsd.org/siglongjmp.3">siglongjmp(3)</a> is used to exit the signal handler.
    <li>libpthread now caches automatically allocated, default size thread stacks.
    <li>Improvements in the handling of profiling, tracing, and %cpu calculation of threaded processes.
    </ul>
<p>

<li>Assorted improvements:
    <ul>
    <li><a href="https://man.openbsd.org/sparc64/ldomctl.8">ldomctl(8)</a>
      was added to manage logical domains on sun4v systems through
      <a href="https://man.openbsd.org/sparc64/ldomd.8">ldomd(8)</a>.
    <li>Support for WPA Enterprise was added to the wpa_supplicant package.
    <li>OpenBSD/luna88k and OpenBSD/mvme88k have switched to GCC 3, <a href="https://man.openbsd.org/elf.5">elf(5)</a> and gained shared library support.
    <li>OpenBSD/hp300 and OpenBSD/mvme68k have switched to GCC 3 and <a href="https://man.openbsd.org/elf.5">elf(5)</a>.
    <li><a href="https://man.openbsd.org/softraid.4">softraid(4)</a> RAID1 and crypto volumes are now bootable on i386 and amd64 (full disk encryption).
    <li>The <a href="https://man.openbsd.org/mg.1">mg(1)</a>
      emacs-like editor now supports <code>diff-buffer-with-file</code>, <code>make-directory</code> and <code>revert-buffer</code>.
      Column numbers have been made configurable and locale is respected for ctype purposes, like displaying ISO Latin 1 characters.
    <li>Improved our own <a href="https://man.openbsd.org/pkg-config.1">pkg-config(1)</a>
      implementation to make it compatible with freedesktop.org's 0.27.1 release.
    <li>A number of improvements to the buffer cache and page daemon interactions to avoid issues in low memory/low kva situations.
    <li>Various bug fixes in uvm to avoid potential races and deadlock issues.
    <li>Memory filesystem (mfs) switched to bufq, giving us queue limits and FIFO queueing (rather than the current LIFO queueing).
    <li>Many improvements to the <a href="https://man.openbsd.org/cwm.1">cwm(1)</a> window manager,
including tab completion and Xft support for menus, improved Xinerama support, and per-group vertical/horizontal manual tiling support.
    <li>Added <a href="https://man.openbsd.org/dprintf.3">dprintf(3)</a>, <a href="https://man.openbsd.org/grantpt.3">grantpt(3)</a>, <a href="https://man.openbsd.org/posix_openpt.3">posix_openpt(3)</a>, <a href="https://man.openbsd.org/ptsname.3">ptsname(3)</a>, <a href="https://man.openbsd.org/unlockpt.3">unlockpt(3)</a>, and <a href="https://man.openbsd.org/vdprintf.3">vdprintf(3)</a>.
    <li>Corrected the order of invocation of constructor and destruction functions.
    <li>Improved compliance and/or cleanliness of header files, particularly
	&lt;dlfcn.h&gt;, &lt;netdb.h&gt;, &lt;net/if.h&gt;,
	&lt;netinet/in.h&gt;, &lt;sys/socket.h&gt;, &lt;sys/uio.h&gt;,
	and &lt;sys/un.h&gt;.
    </ul>
<p>

<li>OpenSSH 6.2:
    <ul>
    <li>New features:
      <ul>
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
          and
          <a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
          Added support for AES-GCM authenticated encryption in SSH protocol 2.
          The new cipher is available as "aes128-gcm@openssh.com" and
          "aes256-gcm@openssh.com". It uses an identical packet format to the
          AES-GCM mode specified in RFC 5647, but uses simpler and different
          selection rules during key exchange.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
          and
          <a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
          Added support for encrypt-then-mac (EtM) MAC modes for SSH protocol 2.
          These modes alter the packet format and compute the MAC over the
          packet length and encrypted packet rather than over the plaintext
          data. These modes are considered more secure and are used by default
          when available.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
          and
          <a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
          Added support for the UMAC-128 MAC as "umac-128@openssh.com" and
          "umac-128-etm@openssh.com". The latter being an encrypt-then-mac mode.
      <li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
          Added support for multiple required authentication in SSH protocol 2
          via an <code>AuthenticationMethods</code> option. This option lists one
          or more comma-separated lists of authentication method names.
          Successful completion of all the methods in any list is required for
          authentication to complete. This allows, for example, requiring a
          user having to authenticate via public key or GSSAPI before they are
          offered password authentication.
      <li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>
          and
          <a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
          Added support for Key Revocation Lists (KRLs), a compact binary
          format to represent lists of revoked keys and certificates that take
          as little as one bit per certificate when revoking by serial number.
          KRLs may be generated using
          <a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>
          and are loaded into
          <a href="https://man.openbsd.org/sshd.8">sshd(8)</a>
          via the existing <code>RevokedKeys</code>
          <a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>
          option.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          <code>IdentitiesOnly</code> now applies to keys obtained from a
          PKCS11Provider. This allows control of which keys are offered from
          tokens using <code>IdentityFile</code>.
      <li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
          <a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>'s
          AllowTcpForwarding now accepts "<code>local</code>" and "<code>remote</code>"
          in addition to its previous "<code>yes</code>"/"<code>no</code>" keywords to
          allow the server to specify whether just local or remote TCP
          forwarding is enabled.
      <li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
          Added a
          <a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>
          option <code>AuthorizedKeysCommand</code> to support fetching
          authorized_keys from a command in addition to (or instead of) from
          the filesystem. The command is run under an account specified by an
          <code>AuthorizedKeysCommandUser</code>
          <a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>
          option.
      <li><a href="https://man.openbsd.org/sftp-server.8">sftp-server(8)</a>:
          Now supports a <code>-d</code> option to allow the starting directory to
          be something other than the user's home directory.
      <li><a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
          Now allows fingerprinting of keys hosted in PKCS#11 tokens using
          "ssh-keygen -lD pkcs11_provider".
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          When SSH protocol 2 only is selected (the default),
          <a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
          now immediately sends its SSH protocol banner to the server without
          waiting to receive the server's banner, saving time when connecting.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
          Added <code>~v</code> and <code>~V</code> escape sequences to raise and lower
          the logging level respectively.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
          Made the escape command help (<code>~?</code>) context sensitive so that
          only commands that will work in the current session are shown.
      <li><a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
          When deleting host lines from known_hosts using "ssh-keygen -R host",
          <a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>
          now prints details of which lines were removed.
      </ul>
    <li>The following significant bugs have been fixed in this release:
      <ul>
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          Force a clean shutdown of ControlMaster client sessions when the
          <code>~.</code> escape sequence is used. This means that <code>~.</code>
          should now work in mux clients even if the server is no longer
          responding.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          Correctly detect errors during local TCP forward setup in multiplexed
          clients. (bz#2055)
      <li><a href="https://man.openbsd.org/ssh-add.1">ssh-add(1)</a>:
          Made deleting explicit keys "ssh-add -d" symmetric with adding keys
          with respect to certificates. It now tries to delete the
          corresponding certificate and respects the <code>-k</code> option to
          allow deleting of the key only.
      <li><a href="https://man.openbsd.org/sftp.1">sftp(1)</a>:
          Fix a number of parsing and command-editing bugs, including bz#1956.
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          When muxmaster is run with <code>-N</code>, ensure that it shuts down
          gracefully when a client sends it "-O stop" rather than hanging
          around. (bz#1985)
      <li><a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
          When screening moduli candidates, append to the file rather than
          overwriting to allow resumption. (bz#1957)
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          Record "Received disconnect" messages at ERROR rather than INFO
          priority. (bz#2057)
      <li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
          Loudly warn if explicitly-provided private key is unreadable.
          (bz#1981)
      </ul>
    </ul>
<p>

<li>Over 7,800 ports, major performance and stability improvements in
the package build process
    <ul>
    <li>The parallel ports builder is more efficient. The main improvement is
that dpb consumes much less cpu on busy boxes, but there are lots of small
optimizations that amount to a large performance increase:
dpb can now build selected large ports using parallel make, and it
has a notion of affinity, so that ports failing on a cluster will be
preferentially restarted on the same machine.
    </ul>
<p>
<li>Many pre-built packages for each architecture:
    <ul style="column-count: 4">
      <li>i386:       7670
      <li>sparc64:    6756
      <li>alpha:      6151
      <li>sh:         1111
      <li>amd64:      7632
      <li>powerpc:    7215
      <li>sparc:      4635
      <li>arm:        4944
      <li>hppa:       6401
      <li>vax:        2081
      <li>mips64:     6519
      <li>mips64el:   6539
    </ul>
<p>

<li>Some highlights:
    <ul>
    <li>GNOME 3.6.2			<li>KDE 3.5.10
    <li>Xfce 4.10			<li>MySQL 5.1.68
    <li>PostgreSQL 9.2.3		<li>Postfix 2.9.6
    <li>OpenLDAP 2.3.43 and 2.4.33	<li>Mozilla Firefox 3.6.28 and 18.0.2
    <li>Mozilla Thunderbird 17.0.2	<li>GHC 7.4.2
    <li>LibreOffice 3.6.5.2		<li>Emacs 21.4 and 24.2
    <li>Vim 7.3.154			<li>PHP 5.2.17 and 5.3.21
    <li>Python 2.5.4, 2.7.3 and 3.2.3	<li>Ruby 1.8.7.370 and 1.9.3.392
    <li>Tcl/Tk 8.5.13 and 8.6.0		<li>Jdk 1.6.0.32 and 1.7.0.11
    <li>Mono 2.10.9			<li>Chromium 24.0.1312.68
    <li>Groff 1.21			<li>Go 1.0.3
    <li>GCC 4.6.3 and 4.7.2		<li>LLVM/Clang 3.2
    </ul>
<p>

<li>As usual, steady improvements in manual pages and other documentation.
<p>

<li>The system includes the following major components from outside suppliers:
    <ul>
    <li>Xenocara (based on X.Org 7.7 with xserver 1.12.3 + patches,
      freetype 2.4.11, fontconfig 2.8.0, Mesa 7.11.2, xterm 287,
      xkeyboard-config 2.7 and more)
    <li>Gcc 4.2.1 (+patches), 3.3.6 (+ patches) and 2.95.3 (+ patches)
    <li>Perl 5.12.2 (+ patches)
    <li>Our improved and secured version of Apache 1.3, with
      SSL/TLS and DSO support
    <li>Nginx 1.2.6 (+ patches)
    <li>OpenSSL 1.0.1c (+ patches)
    <li>SQLite 3.7.14.1 (+ patches)
    <li>Sendmail 8.14.6, with libmilter
    <li>Bind 9.4.2-P2 (+ patches)
    <li>NSD 3.2.15
    <li>Lynx 2.8.7rel.2 with HTTPS and IPv6 support (+ patches)
    <li>Sudo 1.7.2p8
    <li>Ncurses 5.7
    <li>Heimdal 0.7.2 (+ patches)
    <li>Binutils 2.15 (+ patches)
    <li>Gdb 6.3 (+ patches)
    <li>Less 444 (+ patches)
    <li>Awk Aug 10, 2011 version
    </ul>
</ul>
</section>

<hr>

<section id=install>
<h3>How to install</h3>
<p>
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 FTP (or other style
of) install are very similar; the CDROM instructions are left intact
so that you can see how much easier it would have been if you had
purchased a CDROM instead.
<p>

<hr>
Please refer to the following files on the three CDROMs or FTP mirror for
extensive details on how to install OpenBSD 5.3 on your machine:
<p>
<ul>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/i386/INSTALL.i386">
	.../OpenBSD/5.3/i386/INSTALL.i386 (on CD1)</a>
<p>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/amd64/INSTALL.amd64">
	.../OpenBSD/5.3/amd64/INSTALL.amd64 (on CD2)</a>
<p>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/sparc64/INSTALL.sparc64">
	.../OpenBSD/5.3/sparc64/INSTALL.sparc64 (on CD3)</a>
<p>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/alpha/INSTALL.alpha">
	.../OpenBSD/5.3/alpha/INSTALL.alpha</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/armish/INSTALL.armish">
	.../OpenBSD/5.3/armish/INSTALL.armish</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/hp300/INSTALL.hp300">
	.../OpenBSD/5.3/hp300/INSTALL.hp300</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/hppa/INSTALL.hppa">
	.../OpenBSD/5.3/hppa/INSTALL.hppa</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/landisk/INSTALL.landisk">
	.../OpenBSD/5.3/landisk/INSTALL.landisk</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/loongson/INSTALL.loongson">
	.../OpenBSD/5.3/loongson/INSTALL.loongson</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/luna88k/INSTALL.luna88k">
	.../OpenBSD/5.3/luna88k/INSTALL.luna88k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/macppc/INSTALL.macppc">
	.../OpenBSD/5.3/macppc/INSTALL.macppc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/mvme68k/INSTALL.mvme68k">
	.../OpenBSD/5.3/mvme68k/INSTALL.mvme68k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/mvme88k/INSTALL.mvme88k">
	.../OpenBSD/5.3/mvme88k/INSTALL.mvme88k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/sgi/INSTALL.sgi">
	.../OpenBSD/5.3/sgi/INSTALL.sgi</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/socppc/INSTALL.socppc">
	.../OpenBSD/5.3/socppc/INSTALL.socppc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/sparc/INSTALL.sparc">
	.../OpenBSD/5.3/sparc/INSTALL.sparc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/vax/INSTALL.vax">
	.../OpenBSD/5.3/vax/INSTALL.vax</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/zaurus/INSTALL.zaurus">
	.../OpenBSD/5.3/zaurus/INSTALL.zaurus</a>
</ul>
</section>

<hr>

<section id=quickinstall>

<p>
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!

<h3>OpenBSD/i386:</h3>

<p>
Play with your BIOS options to enable booting from a CD. The OpenBSD/i386
release is on CD1. If your BIOS does not support booting from CD, you will need
to create a boot floppy to install from. To create a boot floppy write
<i>CD1:5.3/i386/floppy53.fs</i> to a floppy and boot via the floppy drive.

<p>
Use <i>CD1:5.3/i386/floppyB53.fs</i> instead for greater SCSI controller
support, or <i>CD1:5.3/i386/floppyC53.fs</i> for better laptop support.

<p>
If you can't boot from a CD or a floppy disk,
you can install across the network using PXE as described in
the included INSTALL.i386 document.

<p>
If you are planning on dual booting OpenBSD with another OS, you will need to
read INSTALL.i386.

<p>
To make a boot floppy under MS-DOS, use the &quot;rawrite&quot; utility located
at <i>CD1:5.3/tools/rawrite.exe</i>. To make the boot floppy under a Unix OS,
use the
<a href="https://man.openbsd.org/dd.1">dd(1)</a>
utility. The following is an example usage of
<a href="https://man.openbsd.org/dd.1">dd(1)</a>,
where the device could be &quot;floppy&quot;, &quot;rfd0c&quot;, or
&quot;rfd0a&quot;.

<blockquote><pre>
# <kbd>dd if=&lt;file&gt; of=/dev/&lt;device&gt; bs=32k</kbd>
</pre></blockquote>

<p>
Make sure you use properly formatted perfect floppies with NO BAD BLOCKS or
your install will most likely fail. For more information on creating a boot
floppy and installing OpenBSD/i386 please refer to
<a href="faq/faq4.html#MkFlop">this page</a>.

<h3>OpenBSD/amd64:</h3>

<p>
The 5.3 release of OpenBSD/amd64 is located on CD2.
Boot from the CD to begin the install - you may need to adjust
your BIOS options first.
If you can't boot from the CD, you can create a boot floppy to install from.
To do this, write <i>CD2:5.3/amd64/floppy53.fs</i> to a floppy, then
boot from the floppy drive.

<p>
If you can't boot from a CD or a floppy disk,
you can install across the network using PXE as described in the included
INSTALL.amd64 document.

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

<h3>OpenBSD/macppc:</h3>

<p>
Burn the image from the FTP site to a CDROM, and poweron your machine
while holding down the <i>C</i> key until the display turns on and
shows <i>OpenBSD/macppc boot</i>.

<p>
Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
/5.3/macppc/bsd.rd</i>

<h3>OpenBSD/sparc64:</h3>

<p>
Put CD3 in your CDROM drive and type <i>boot cdrom</i>.

<p>
If this doesn't work, or if you don't have a CDROM drive, you can write
<i>CD3:5.3/sparc64/floppy53.fs</i> or <i>CD3:5.3/sparc64/floppyB53.fs</i>
(depending on your machine) to a floppy and boot it with <i>boot
floppy</i>. Refer to INSTALL.sparc64 for details.

<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.

<p>
You can also write <i>CD3:5.3/sparc64/miniroot53.fs</i> to the swap partition on
the disk and boot with <i>boot disk:b</i>.

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

<h3>OpenBSD/alpha:</h3>

<p>
Write <i>5.3/alpha/floppy53.fs</i> or
<i>5.3/alpha/floppyB53.fs</i> (depending on your machine) to a diskette and
enter <i>boot dva0</i>. Refer to INSTALL.alpha for more details.

<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.

<h3>OpenBSD/armish:</h3>

<p>
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.
IOData HDL-G can only boot from an EXT-2 partition. Boot into linux
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.

<h3>OpenBSD/hp300:</h3>

<p>
Boot over the network by following the instructions in INSTALL.hp300.

<h3>OpenBSD/hppa:</h3>

<p>
Boot over the network by following the instructions in INSTALL.hppa or the
<a href="hppa.html#install">hppa platform page</a>.

<h3>OpenBSD/landisk:</h3>

<p>
Write <i>miniroot53.fs</i> to the start of the CF
or disk, and boot normally.

<h3>OpenBSD/loongson:</h3>

<p>
Write <i>miniroot53.fs</i> 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.

<h3>OpenBSD/luna88k:</h3>

<p>
Copy bsd.rd to a Mach or UniOS partition, and boot it from the PROM.
Alternatively, you can create a bootable tape and boot from it. Refer to
the instructions in INSTALL.luna88k for more details.

<h3>OpenBSD/mvme68k:</h3>

<p>
You can create a bootable installation tape or boot over the network.<br>
The network boot requires a MVME68K BUG version that supports the <i>NIOT</i>
and <i>NBO</i> debugger commands. Follow the instructions in INSTALL.mvme68k
for more details.

<h3>OpenBSD/mvme88k:</h3>

<p>
You can create a bootable installation tape or boot over the network.<br>
The network boot requires a MVME88K BUG version that supports the <i>NIOT</i>
and <i>NBO</i> debugger commands. Follow the instructions in INSTALL.mvme88k
for more details.

<h3>OpenBSD/sgi:</h3>

<p>
To install on an O2, burn cd53.iso on a CD-R, put it in the CD drive of your
machine and select <i>Install System Software</i> from the System Maintenance
menu.

<p>
On other systems, or 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.

<h3>OpenBSD/socppc:</h3>

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

<h3>OpenBSD/sparc:</h3>

<p>
Boot from one of the provided install ISO images, using one of the two
commands listed below, depending on the version of your ROM.

<blockquote><pre>
ok <kbd>boot cdrom 5.3/sparc/bsd.rd</kbd>
or
> <kbd>b sd(0,6,0)5.3/sparc/bsd.rd</kbd>
</pre></blockquote>

<p>
If your SPARC system does not have a CD drive, you can alternatively boot from floppy.
To do so you need to write <i>floppy53.fs</i> to a floppy.
For more information see <a href="faq/faq4.html#MkFlop">this page</a>.
To boot from the floppy use one of the two commands listed below,
depending on the version of your ROM.

<blockquote><pre>
ok <kbd>boot floppy</kbd>
or
> <kbd>b fd()</kbd>
</pre></blockquote>

<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.

<p>
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.

<h3>OpenBSD/vax:</h3>

<p>
Boot over the network via mopbooting as described in INSTALL.vax.

<h3>OpenBSD/zaurus:</h3>

<p>
Using the Linux built-in graphical ipkg installer, install the
openbsd53_arm.ipk package.  Reboot, then run it.  Read INSTALL.zaurus
for a few important details.
</section>

<hr>

<section id=sourcecode>
<h3>Notes about the source code</h3>
<p>
<code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
This file contains everything you need except for the kernel sources, which are
in a separate archive.  To extract:
<blockquote><pre>
# <kbd>mkdir -p /usr/src</kbd>
# <kbd>cd /usr/src</kbd>
# <kbd>tar xvfz /tmp/src.tar.gz</kbd>
</pre></blockquote>
<p>
<code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
This file contains all the kernel sources you need to rebuild kernels.
To extract:
<blockquote><pre>
# <kbd>mkdir -p /usr/src/sys</kbd>
# <kbd>cd /usr/src</kbd>
# <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
</pre></blockquote>
<p>
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
described <a href="anoncvs.html">here</a>.
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.
</section>

<hr>

<section id=upgrade>
<h3>How to upgrade</h3>
<p>
If you already have an OpenBSD 5.2 system, and do not want to reinstall,
upgrade instructions and advice can be found in the
<a href="faq/upgrade53.html">Upgrade Guide</a>.
</section>

<hr>

<section id=ports>
<h3>Ports Tree</h3>
<p>
A ports tree archive is also provided.  To extract:
<blockquote><pre>
# <kbd>cd /usr</kbd>
# <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
</pre></blockquote>
<p>
The <i>ports/</i> subdirectory is a checkout of the OpenBSD ports tree.  Go
read the <a href="faq/ports/index.html">ports</a> page
if you know nothing about ports
at this point.  This text is not a manual of how to use ports.
Rather, it is a set of notes meant to kickstart the user on the
OpenBSD ports system.
<p>
The <i>ports/</i> directory represents a CVS (see the manpage for
<a href="https://man.openbsd.org/cvs.1">cvs(1)</a> if
you aren't familiar with CVS) checkout of our ports.  As with our complete
source tree, our ports tree is available via
<a href="anoncvs.html">AnonCVS</a>.
So, in order to keep current with it, you must make the <i>ports/</i> tree
available on a read-write medium and update the tree with a command
like:
<blockquote><pre>
# <kbd>cd /usr/ports</kbd>
# <kbd>cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_5_3</kbd>
</pre></blockquote>
<p>
[Of course, you must replace the server name here with a nearby anoncvs
server.]
<p>
Note that most ports are available as packages on our mirrors. Updated
packages for the 5.3 release will be made available if problems arise.
<p>
If you're interested in seeing a port added, would like to help out, or just
would like to know more, the mailing list
<a href="mail.html">ports@openbsd.org</a> is a good place to know.
</section>