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

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

Revision 1.111, Fri Oct 8 16:31:36 2021 UTC (2 years, 7 months ago) by tj
Branch: MAIN
CVS Tags: HEAD
Changes since 1.110: +1 -1 lines

spell x.509 consistently; from raf czlonka

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

<title>OpenBSD 6.4</title>
<meta name="description" content="OpenBSD 6.4">
<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/64.html">

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

<table>
<tr>
<td>
<a href="images/Puffoil.jpg">
<img width="227" height="343" src="images/Puffoil.gif" alt="Puffoil"></a>
<td>
Released Oct 18, 2018<br>
Copyright 1997-2018, Theo de Raadt.<br>
<br>
<br>
Artwork by Aston Fenby.<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/6.4/</code> directory on
    one of the mirror sites.
<li>Have a look at <a href="errata64.html">the 6.4 errata page</a> for a list
    of bugs and workarounds.
<li>See a <a href="plus64.html">detailed log of changes</a> between the
    6.3 and 6.4 releases.
<p>
<li><a href="https://man.openbsd.org/signify.1">signify(1)</a>
    pubkeys for this release:<p>

<table class=signify>
<tr><td>
openbsd-64-base.pub:
<td>
RWQq6XmS4eDAcQW4KsT5Ka0KwTQp2JMOP9V/DR4HTVOL5Bc0D7LeuPwA
<tr><td>
openbsd-64-fw.pub:
<td>
RWRoBbjnosJ/39llpve1XaNIrrQND4knG+jSBeIUYU8x4WNkxz6a2K97
<tr><td>
openbsd-64-pkg.pub:
<td>
RWRF5TTY+LoN/51QD5kM2hKDtMTzycQBBPmPYhyQEb1+4pff/H6fh/kA
</table>
</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 6.4.
For a comprehensive list, see the <a href="plus64.html">changelog</a> leading
to 6.4.

<ul>

<li>Improved hardware support, including:
    <ul>
    <li>ACPI support on OpenBSD/arm64 platforms.
    <li>The <a href="https://man.openbsd.org/radeondrm.4">radeondrm(4)</a>
        driver was updated to code based on Linux 4.4.155, adding modesetting
        support for KAVERI/KABINI/MULLINS APUs and
        OLAND/BONAIRE/HAINAN/HAWAII GPUs.
    <li>Support for
       <a href="https://man.openbsd.org/radeondrm.4">radeondrm(4)</a>
       on OpenBSD/arm64 platforms.
    <li>New <a href="https://man.openbsd.org/umt.4">umt(4)</a> driver
       for USB Windows Precision Touchpad devices.
    <li>New <a href="https://man.openbsd.org/bnxt.4">bnxt(4)</a>
       driver for Broadcom NetXtreme-C/E PCI Express Ethernet
       adapters based on the Broadcom BCM573xx and BCM574xx chipsets. Enabled
       on amd64 and arm64 platforms.
    <li>New <a href="https://man.openbsd.org/mue.4">mue(4)</a>
       driver for Microchip LAN7500/LAN7505/LAN7515/LAN7850 USB 2.0
       and LAN7800/LAN7801 USB 3.0 Gigabit Ethernet devices.
    <li>New <a href="https://man.openbsd.org/acpisurface.4">acpisurface(4)</a>
       driver providing ACPI support for Microsoft Surface Book laptops.
    <li>New
       <a href="https://man.openbsd.org/agintcmsi.4">agintcmsi(4/arm64)</a>
       driver for the ITS component of the ARM GIC.
    <li>New <a href="https://man.openbsd.org/dwpcie.4">dwpcie(4)</a>
       driver for the Synopsys Designware PCIe controller,
       which is built into various SoCs.
    <li>New <a href="https://man.openbsd.org/acpipci.4">acpipci(4/arm64)</a>
       driver providing support for PCI host bridges
       based on information provided by ACPI.
    <li>New
       <a href="https://man.openbsd.org/mvclock.4">mvclock(4)</a>,
       <a href="https://man.openbsd.org/mvgpio.4">mvgpio(4)</a>,
       <a href="https://man.openbsd.org/mvicu.4">mvicu(4)</a>,
       <a href="https://man.openbsd.org/mvrng.4">mvrng(4)</a>,
       <a href="https://man.openbsd.org/mvrtc.4">mvrtc(4)</a>, and
       <a href="https://man.openbsd.org/mvtemp.4">mvtemp(4)</a>
       drivers for various components of the Marvell Armada SoCs.
    <li>New
       <a href="https://man.openbsd.org/hiclock.4">hiclock(4)</a>,
       <a href="https://man.openbsd.org/hidwusb.4">hidwusb(4)</a>,
       <a href="https://man.openbsd.org/hireset.4">hireset(4)</a>, and
       <a href="https://man.openbsd.org/hitemp.4">hitemp(4)</a>
       drivers for various components of the HiSilicon SoCs.
    <li>New <a href="https://man.openbsd.org/ccp.4">ccp(4)</a> and
       <a href="https://man.openbsd.org/octcrypto.4">octcrypto(4/octeon)</a>
       drivers for hardware-accelerated cryptography.
    <li>New <a href="https://man.openbsd.org/ccpmic.4">ccpmic(4)</a> and
       <a href="https://man.openbsd.org/tipmic.4">tipmic(4)</a>
       drivers for Intel Crystal Cove and Dollar Cove
       TI Power Management ICs.
    <li>New <a href="https://man.openbsd.org/imxrtc.4">imxrtc(4)</a>
       driver for the RTC integrated in Freescale i.MX7 and i.MX8 processors.
    <li>New <a href="https://man.openbsd.org/fanpwr.4">fanpwr(4)</a>
       driver for the Fairchild FAN53555 and Silergy SYR827/828
       voltage regulators.
    <li>New <a href="https://man.openbsd.org/pinctrl.4">pinctrl(4)</a>
       driver for generic pin multiplexing.
    <li>New <a href="https://man.openbsd.org/plgpio.4">plgpio(4)</a>
       driver for the ARM PrimeCell PL061 GPIO controller.
    <li>PIE support for the m88k platform.
    <li>Support for some HID-over-I&sup2;C touchscreen devices in
       <a href="https://man.openbsd.org/imt.4">imt(4)</a>.
    <li>Support for RTL8188EE and RTL8723AE in
       <a href="https://man.openbsd.org/rtwn.4">rtwn(4)</a>.
    <li>Support for RT3290 in
       <a href="https://man.openbsd.org/ral.4">ral(4)</a>.
    <li>Support for SAS 3.5 controllers (SAS34xx and SAS35xx) in
       <a href="https://man.openbsd.org/mpii.4">mpii(4)</a>.
    <li>Support for drive and battery status sensors and bio in
       <a href="https://man.openbsd.org/mfii.4">mfii(4)</a>.
    <li>On i386 Intel CPU microcode is loaded on boot.
    <li>On i386 reduce the size of the area reserved for
	<a href="https://man.openbsd.org/brk.2">brk(2)</a>
	to make more memory available to anonymous
       <a href="https://man.openbsd.org/mmap.2">mmap(2)</a> calls.
    <li>On sparc64 <a href="https://man.openbsd.org/ldomctl.8">ldomctl(8)</a>
       now supports more modern firmware found on SPARC T2+ and T3 machines in
       particular such as T1000, T5120 and T5240.
       NVRAM variables can now be set per logical domain.
    <li><a href="https://man.openbsd.org/com.4">com(4)</a>
       better supports Synopsys Designware UARTs.
    <li>New <a href="https://man.openbsd.org/islrtc.4">islrtc(4)</a>
       driver for Intersil ISL1208 Real Time Clock.
    <li>Support for the Huawei k3772 in
       <a href="https://man.openbsd.org/umsm.4">umsm(4)</a>.
    <li>Support for the VIA VX900 chipset in
        <a href="https://man.openbsd.org/viapm.4">viapm(4)</a>.
    <li>Support for GNSS networks other than GPS in
        <a href="https://man.openbsd.org/nmea.4">nmea(4)</a>.
    <li>Support for Elantech trackpoints in
        <a href="https://man.openbsd.org/pms.4">pms(4)</a>.
    <li>Added a sensor for port replicatior status to
        <a href="https://man.openbsd.org/acpithinkpad.4">acpithinkpad(4)</a>.
    <li>Support for Allwinner H3 and A64 SoC in
        <a href="https://man.openbsd.org/sxitemp.4">scitemp(4)</a>.
    </ul>

<li><a href="https://man.openbsd.org/amd64/vmm.4">vmm(4)</a> and
    <a href="https://man.openbsd.org/amd64/vmd.8">vmd(8)</a> improvements:
    <ul>
    <li>Support for qcow2 disk and snapshot images.
    <li>Support for VM templates and derived instances in
       <a href="https://man.openbsd.org/vm.conf.5#VM_INSTANCES">vm.conf(5)</a> and
       <a href="https://man.openbsd.org/vmctl.8">vmctl(8)</a>.
    <li>Added initial <a href="https://man.openbsd.org/unveil.2">unveil(2)</a>
       support to <a href="https://man.openbsd.org/vmctl.8">vmctl(8)</a>
       along with general cleanups.
    <li>Various bug fixes and improvements.
    </ul>

<li>IEEE 802.11 wireless stack improvements:
    <ul>
    <li>With the new 'join' feature (managed with <a
       href="http://man.openbsd.org/ifconfig#IEEE_802.11_(WIRELESS_DEVICES)">
       ifconfig(8)</a>), the kernel manages automatic switching between
       different WiFi networks.
    <li><a href="https://man.openbsd.org/ifconfig.8">ifconfig(8)</a>
       scan performance has been improved for many devices.
    </ul>

<li>Generic network stack improvements:
    <ul>
    <li><a href="https://man.openbsd.org/trunk.4">trunk(4)</a>
       now has LACP administrative knobs for mode, timeout, system priority,
       port priority, and ifq priority.
    <li><a href="https://man.openbsd.org/ifconfig.8">ifconfig(8)</a>
       now has the ability to adjust LACP administrative knobs
       <code>lacpmode</code> and <code>lacptimeout</code>.
    <li><a href="https://man.openbsd.org/sendmsg.2">sendmsg(2)</a>,
        <a href="https://man.openbsd.org/sendto.2">sendto(2)</a>,
        <a href="https://man.openbsd.org/recvfrom.2">recvfrom(2)</a> and
        <a href="https://man.openbsd.org/recvmsg.2">recvmsg(2)</a> are
        run without KERNEL_LOCK.
    <li>New global IPsec counters are available via
        <a href="https://man.openbsd.org/netstat.1">netstat(1)</a>.
    <li>New <a href="https://man.openbsd.org/eoip.4">eoip(4)</a>
        interface for the MikroTik Ethernet over IP (EoIP)
        encapsulation protocol.
    </ul>

<li>Installer improvements:
    <ul>
    <li><a href="https://man.openbsd.org/installurl.5">installurl(5)</a> now
        defaults to
        <a href="ftp.html">cdn.openbsd.org</a> if
        no mirror was chosen during installation.
        <a href="https://man.openbsd.org/pkg_add.1">pkg_add(1)</a> and
        <a href="https://man.openbsd.org/syspatch.8">syspatch(8)</a>
        will thus work out of the box.
    <li>DUID can be used to answer the "Which disk is the root disk?"
        question during upgrade.
    <li>Installing a
      <a href="https://man.openbsd.org/diskless.8">diskless(8)</a>
      setup can be done over interfaces configured with
      <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>.
    <li><a href="https://man.openbsd.org/disklabel.8">disklabel(8)</a>
	now creates a /usr/obj partition with a minimum size of 5G when using
	automatic disk allocation.
    <li><a href="https://man.openbsd.org/disklabel.8">disklabel(8)</a>
	now creates a /usr/local partition with a maximum size of 20G when
	using automatic disk allocation.
    </ul>

<li>Security improvements:
    <ul>
    <li>New <a href="https://man.openbsd.org/unveil.2">unveil(2)</a>
        system call to restrict file system access of the calling
        process to the specified files and directories.  It is most
        powerful when properly combined with privilege separation
        and <a href="https://man.openbsd.org/pledge.2">pledge(2)</a>.
    <li>Implemented MAP_STACK option for
        <a href="https://man.openbsd.org/mmap.2">mmap(2)</a>.
        At pagefaults and syscalls the kernel will check that the
        stack pointer points to MAP_STACK memory, which mitigates
        against attacks using stack pivots.
    <li>New RETGUARD security mechanism on amd64 and arm64:
        use per-function random cookies to protect access to function
        return instructions, making them harder to use in ROP gadgets.
    <li><a href="https://man.openbsd.org/clang-local.1">clang(1)</a>
        includes a pass that identifies common instructions which
        may be useful in ROP gadgets and replaces them with safe
        alternatives on amd64 and i386.
    <li>The Retpoline mitigation against Spectre Variant 2 has been
        enabled in <a href="https://man.openbsd.org/clang.1">clang(1)</a>
        and in assembly files on amd64 and i386.
    <li>Added SpectreRSB mitigation on amd64.
    <li>Added Intel L1 Terminal Fault mitigation on amd64.
    <li>When available, PCIDs are used on amd64 to separate user
        and kernel thread TLB entries.
    <li>Meltdown mitigation was added to i386.
    <li>amd64 now uses eager-FPU switching to prevent FPU state
        information speculatively leaking across protection boundaries.
    <li>Because Simultaneous MultiThreading (SMT) uses core resources in
        a shared and unsafe manner, it is now disabled by default.
        It can be enabled with the new <code>hw.smt</code>
        <a href="https://man.openbsd.org/sysctl.2">sysctl(2)</a> variable.
    <li>Audio recording is now disabled by default and can be enabled
        with the new <code>kern.audio.record</code>
        <a href="https://man.openbsd.org/sysctl.2">sysctl(2)</a> variable.
    <li><a href="https://man.openbsd.org/getpwnam.3">getpwnam(3)</a> and
        <a href="https://man.openbsd.org/getpwnam.3">getpwuid(3)</a> no
	longer return a pointer to static storage but a managed allocation
	which gets unmapped.  This allows detection of access to stale entries.
    <li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a> includes
        improved defence against user enumeration attacks.
    </ul>

<li>Routing daemons and other userland network improvements:
    <ul>
    <li><a href="https://man.openbsd.org/ospf6d.8">ospf6d(8)</a> can now set
        the metric for a route depending on the status of an interface.
    <li><a href="https://man.openbsd.org/ospf6d.8">ospf6d(8)</a> can now be
        bound into an alternate routing domain.
    <li><a href="https://man.openbsd.org/ospf6d.8">ospf6d(8)</a> is
        now pledged.
    <li>Prevent <a href="https://man.openbsd.org/ospfd.8">ospfd(8)</a> and
        <a href="https://man.openbsd.org/ospf6d.8">ospf6d(8)</a> from being
        started more than once (in the same routing domain).
    <li><a href="https://man.openbsd.org/slaacd.8">slaacd(8)</a> is now fully
        pledged.
    <li><a href="https://man.openbsd.org/slaacd.8">slaacd(8)</a> is informed by
        the kernel when Duplicate Address Detection (DAD) fails and generates
        different addresses when possible.
    <li>When <a href="https://man.openbsd.org/slaacd.8">slaacd(8)</a> detects
        roaming between networks, it deprecates all configured IPs. IPs from
        newly advertised prefixes will be preferred.
    <li>A new daemon, <a href="https://man.openbsd.org/rad.8">rad(8)</a>, sends
        IPv6 Router Advertisement messages and replaces the old rtadvd(8)
        daemon from KAME.
    <li>The anachronistic
      <a href="https://man.openbsd.org/OpenBSD-6.3/networks.5">networks(5)</a>
      configuration file is no longer supported.
    <li>More robust <a href="https://man.openbsd.org/pfctl.8">pfctl(8)</a>
        parsing routines and corner case fixes around table and anchor
        handling.
    <li><a href="https://man.openbsd.org/route.8">route(8)</a> now errors out
        on bad <code>-netmask/-prefixlen</code> usage instead of configuring
        ambiguous routes.
    <li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
        now adds a direct route to the default route gateway when the
        gateway is not reachable via the address/netmask provided by the
        lease.
    <li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
        now updates
        <a href="https://man.openbsd.org/dhclient.leases.5">dhclient.leases(5)</a>,
        <a href="https://man.openbsd.org/resolv.conf.5">resolv.conf(5)</a>,
        and any '-L'
	file before daemonizing and returning control
	to invoking scripts.
    <li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>'s
        '-i' option now discards any previously defined values for the options
        to be ignored.
    <li>Any change to any interface now causes
        <a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
        to appropriately update
        <a href="https://man.openbsd.org/resolv.conf.5">resolv.conf(5)</a>.
    <li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
        now always records the client identifier used to obtain a lease,
        enabling better conformance to RFC 6842.
    <li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
        now has the '-r' option to release the current lease and exit.
    <li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a>
        now avoids inappropriate changes to
        <a href="https://man.openbsd.org/resolv.conf.5">resolv.conf(5)</a>
        by ignoring
        <a href="https://man.openbsd.org/dhclient.leases.5">dhclient.leases(5)</a>
        for interfaces that cannot report their link status.
    </ul>

<li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> improvements:
    <ul>
    <li>The default filter action was changed from allow to deny.
    <li>The config option 'announce (all|self|none|default-route)'
        has been deprecated and superseded by filter configuration.
    <li>Improved prefix-sets both in speed and user experience.
    <li>Introduced as-sets to match ASPATH against large lists of AS numbers.
    <li>Support for BGP Origin Validation
        <a href="https://tools.ietf.org/html/rfc6811">RFC 6811</a>
        through the <code>roa-set</code> directive.
    <li>Added origin-sets for matching prefix / origin AS pairs efficiently.
    <li>Some syntax cleanups: newlines are optional inside expansion
        lists (previously newlines needed to be escaped) but, in neighbor,
        group and rdomain blocks multiple statements have to be on new lines.
    <li>Reduce the amount of work done during a configuration reload.
    <li>Config reloading no longer blocks other event handling in the
        route decision engine.
    <li>Better support and bugfixes for multiple bgpd processes
        running in different rdomains.
    </ul>

<li>Assorted improvements:
    <ul>
    <li><a href="https://man.openbsd.org/rasops.9">rasops(9)</a>-backed
        framebuffer consoles such as
        <a href="https://man.openbsd.org/inteldrm.4">inteldrm(4)</a>,
        <a href="https://man.openbsd.org/radeondrm.4">radeondrm(4)</a> and
        <a href="https://man.openbsd.org/efifb.4">efifb(4)</a> now support
        scrollback.
    <li><a href="https://man.openbsd.org/rebound.8">rebound(8)</a>
        gained support for permanent A records, similar to
        <code>local-data</code>
        supported by
        <a href="https://man.openbsd.org/unbound.8">unbound(8)</a>.
    <li>New
        <a href="https://man.openbsd.org/kcov.4">kcov(4)</a>
        driver used for collection of code coverage inside the kernel.
        It's used in an ongoing effort to fuzz the kernel.
    <li><a href="https://man.openbsd.org/uid_from_user.3">uid_from_user(3)</a>
        and
        <a href="https://man.openbsd.org/gid_from_group.3">gid_from_group(3)</a>
        were added to the C library and are now used in several programs
        to speed up repeated lookups.
    <li>New semaphore implementation making
        <a href="https://man.openbsd.org/sem_post.3">sem_post(3)</a>
        async-safe.
    <li><a href="https://man.openbsd.org/pcap_set_immediate_mode.3"
        >pcap_set_immediate_mode(3)</a> was imported from mainline libpcap,
        allowing programs to process packets as soon as they arrive.
    <li><a href="https://man.openbsd.org/ksh.1">ksh(1)</a> now supports
        64-bit integers on all architectures.
    <li>A bug in
        <a href="https://man.openbsd.org/ksh.1">ksh(1)</a>
        related to variable expansion of read-only variables has been fixed.
    <li><a href="https://man.openbsd.org/lam.1">lam(1)</a>
        now provides UTF-8 support.
    <li>Enable <a href="https://man.openbsd.org/trunk.4">trunk(4)</a> and
       <a href="https://man.openbsd.org/vlan.4">vlan(4)</a> on arm64 RAMDISK.
    <li><a href="https://man.openbsd.org/pf.4">pf(4)</a> IP fragment
	reassembly uses a better algorithm to make it robust against
	denial of service attacks.
    <li>New <a href="https://man.openbsd.org/ldap.1">ldap(1)</a>
        tool implementing a simple LDAP search client.
    <li>A bug in <a href="https://man.openbsd.org/init.8">init(8)</a>
        that caused hangs on i386 under VMware has been fixed.
    <li>TFTP boot support was added for U-Boot based arm64 and armv7 platforms
        via EFI Simple Network protocol.
    <li>Support was added for the EFI Random Number Generator Protocol
        to insert additional entropy into the kernel at boot.
    <li>Support for RFC 3430 (TCP connections) was added to
        <a href="https://man.openbsd.org/snmpd.8">snmpd(8)</a>.
    <li>Enable <a href="https://man.openbsd.org/bwfm.4">bwfm(4)</a> on amd64,
        i386, arm64 and armv7. Also on loongson and macppc for USB devices.
    <li>New "Spleen 5x8" font added to wsfont, targeted at small OLED displays.
    <li><a href="https://man.openbsd.org/usbdevs.8">usbdevs(8)</a> now reports
        USB port statuses.
    <li><a href="https://man.openbsd.org/top.1">top(1)</a> and
        <a href="https://man.openbsd.org/systat.1">systat(1)</a> now report
        the time spent by each CPU waiting on spinning locks.
    <li>Improved read speed on MSDOSFS via clustering.
    <li>Access to NFS nodes is now serialized.
    <li><a href="https://man.openbsd.org/systat.1">systat(1)</a>
        has a new uvm view that displays statistics relevant to the UVM subsystem.
    <li><a href="https://man.openbsd.org/mg.1">mg(1)</a>
        now handles carriage returns during incremental search by setting the
        mark and exiting the search, as modern emacsen do.
    <li><a href="https://man.openbsd.org/disklabel.8">disklabel(8)</a>
         improved the rounding of partition offsets and
         sizes to cylinder boundaries.
    <li><a href="https://man.openbsd.org/disklabel.8">disklabel(8)</a>
        now range checks all user input.
    <li><a href="https://man.openbsd.org/disklabel.8">disklabel(8)</a>
         no longer allows FS_RAID partitions to be given a mount point.
    <li><a href="https://man.openbsd.org/disklabel.8">disklabel(8)</a>
        now changes partition information only when all user
        input is valid.
    <li><a href="https://man.openbsd.org/relayd.8">relayd(8)</a> has
        improved log directives in its configuration file for finer
        grained control of what gets logged.
    <li><a href="https://man.openbsd.org/tmux.1">tmux(1)</a>
        now handles terminfo colors greater than 256 correctly.
    <li><a href="https://man.openbsd.org/httpd.8">httpd(8)</a>
        now supports client certificate authentication.
    <li>Numerous improvements to the
        <a href="https://man.openbsd.org/fuse.4">fuse(4)</a> subsystem.
    <li>Improvements to the way the kernel searches for available
	memory to satisfy anonymous
	<a href="https://man.openbsd.org/mmap.2">mmap(2)</a>
	calls.
    <li><a href="https://man.openbsd.org/efifb.4">efifb(4)</a> now remaps
        the EFI framebuffer early to use a write combining mapping, speeding
        things up considerably.
    </ul>

<li>OpenSMTPD
    <ul>
    <li>Incompatible change to the
        <a href="https://man.openbsd.org/smtpd.conf.5">smtpd.conf(5)</a>
        grammar: separate envelope matching, which happens during the
        SMTP dialogue while receiving a message and merely results
        in assigning an action name, from delivery actions, which do
        not take effect until the queue runner makes a delivery attempt.
        This gets rid of several different roadblocks in OpenSMTPD
        development.
    <li>Improve SMTP server engine with a new RFC 5322 message parser.
    <li>Remove limitations preventing
      <a href="https://man.openbsd.org/smtpd.8">smtpd(8)</a>
      from dealing with clients submitting long lines.
    <li>Improve security by moving expansion of .forward file variables
      into the users' MDA process.
    <li>Introduce MDA wrappers allowing recipient MDA commands to be
      transparently wrapped inside global commands.
    <li>A new <a href="https://man.openbsd.org/smtp.1">smtp(1)</a>
      command line client has been added.
    <li>Assorted documentation improvements, cleanups and minor bug fixes.
    </ul>

<li><a href="https://www.openssh.com/releasenotes.html#7.9">OpenSSH 7.9</a>
    <ul>
    <li>New features:
      <ul>
      <li>In most places
         in <a href="http://man.openbsd.org/ssh.1">ssh(1)</a>
         and <a href="http://man.openbsd.org/sshd.8">sshd(8)</a> where
         port numbers are used, service names (from /etc/services) can
         now be used.
      <li>The <a href="http://man.openbsd.org/ssh.1">ssh(1)</a>
         IdentityAgent configuration directive now accepts environment
         variable names. This supports the use of multiple agent
         sockets without needing to use fixed paths.
      <li>Support signalling sessions via the SSH protocol in
         <a href="http://man.openbsd.org/sshd.8">sshd(8)</a>.
      <li>"ssh -Q sig" can be used to list supported signature
         options.  Also "ssh -Q help" will show the full set of
         supported queries.
      <li>The new CASignatureAlgorithms option
         in <a href="http://man.openbsd.org/ssh.1">ssh(1)</a>
         and <a href="http://man.openbsd.org/sshd.8">sshd(8)</a>
         controls the allowed signature formats for CAs to sign
         certificates with. For example, this allows banning CAs that
         sign certificates using the RSA-SHA1 signature algorithm.
      <li>Key revocation lists (KRLs) can now contain keys specified
         by SHA256 hash. These lists are managed
         by <a href="http://man.openbsd.org/ssh-keygen.8">ssh-keygen(8)</a>. In
         addition, KRLs can now be created from base64-encoded SHA256
         fingerprints, i.e. from only the information contained
         in <a href="http://man.openbsd.org/sshd.8">sshd(8)</a>
         authentication log messages.
      </ul>
    <li>Non-exhaustive list of bug fixes:
      <ul>
      <li><a href="http://man.openbsd.org/ssh.1">ssh(1)</a>:
	<a href="http://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
	avoid spurious "invalid format" errors when attempting to load
	PEM private keys while using an incorrect passphrase.
      <li><a href="http://man.openbsd.org/sshd.8">sshd(8)</a>: when a
	channel closed message is received from a client, close the
	stderr file descriptor at the same time stdout is closed. This
	avoids stuck processes if they were waiting for stderr to
	close and were insensitive to stdin/out closing.
      <li><a href="http://man.openbsd.org/ssh.1">ssh(1)</a>: allow
	ForwardX11Timeout=0 to disable the untrusted X11 forwarding
	timeout and support X11 forwarding indefinitely.  Previously
	the behaviour of ForwardX11Timeout=0 was undefined.
      <li><a href="http://man.openbsd.org/sshd.8">sshd(8)</a>: do not
         fail closed when configured with a text key revocation list
         that contains a too-short key.
      <li><a href="http://man.openbsd.org/ssh.1">ssh(1)</a>: treat
	connections with ProxyJump specified the same as ones with a
	ProxyCommand set with regards to hostname canonicalisation
	(i.e. don't try to canonicalise the hostname unless
	CanonicalizeHostname is set to 'always').
      <li><a href="http://man.openbsd.org/ssh.1">ssh(1)</a>: fix
        regression in OpenSSH 7.8 that could prevent public-key
        authentication using certificates hosted in
        a <a href="http://man.openbsd.org/ssh-agent.1">ssh-agent(1)</a> or
        against <a href="http://man.openbsd.org/sshd.8">sshd(8)</a>
        from OpenSSH &lt;7.8.
      </ul>
    </ul>

<li>LibreSSL 2.8.2
  <ul>
    <li>API and Documentation Enhancements
      <ul>
        <li>X.509 verification is now more strict so
          <a href="https://man.openbsd.org/X509_VERIFY_PARAM_set_flags.3">X509_VERIFY_PARAM</a>
          host, ip or email failure will cause future
          <a href="https://man.openbsd.org/X509_verify_cert.3">X509_verify_cert(3)</a>
          calls to fail.
        <li>Support for single DES cipher suites is removed.
        <li>Support for RSASSA-PKCS1-v1_5 (RFC 8017) is added to
          <a href="https://man.openbsd.org/man3/RSA_sign.3">RSA_sign(3)</a>
        <li>Modified signature of <a href="https://man.openbsd.org/CRYPTO_mem_leaks.3">CRYPTO_mem_leaks_*(3)</a> to return -1. This function
          is a no-op in LibreSSL, so this function returns an error to not
          indicate the (non-)existence of memory leaks.
        <li><a href="https://man.openbsd.org/SSL_copy_session_id.3">SSL_copy_session_id(3)</a>, PEM_Sign, <a href="https://man.openbsd.org/EVP_EncodeUpdate.3">EVP_EncodeUpdate(3)</a>, <a href="https://man.openbsd.org/BIO_set_cipher.3">BIO_set_cipher(3)</a>, <a href="https://man.openbsd.org/X509_OBJECT_up_ref_count.3">X509_OBJECT_up_ref_count(3)</a> now return an int for error handling, matching OpenSSL.
        <li>Converted a number of #defines into proper functions, matching
          OpenSSL's ABI (e.g. <a href="https://man.openbsd.org/X509_CRL_get_issuer.3">X509_CRL_get_issuer(3)</a> and other X509_*get*(3) functions)
        <li>Added X509_get0_serialNumber(3) from OpenSSL.
        <li>Removed EVP_PKEY2PKCS8_broken(3) and PKCS8_set_broken(3), while adding
          PKCS8_pkey_add1_attr_by_NID(3) and PKCS8_pkey_get0_attrs(3), matching
          OpenSSL.
        <li>Removed broken pkcs8 formats from <a href="https://man.openbsd.org/openssl.1">openssl(1)</a>.
        <li>Added <a href="https://man.openbsd.org/RSA_meth_get_finish.3">RSA_meth_get_finish(3)</a> and <a href="https://man.openbsd.org/RSA_meth_set1_name.3">RSA_meth_set1_name(3)</a> from OpenSSL.
        <li>Added new <a href="https://man.openbsd.org/EVP_CIPHER_CTX_get_iv.3">EVP_CIPHER_CTX_(get|set)_iv(3)</a> API that allows the IV to be retrieved and set with appropriate validation.
        <li>Extensive documentation updates and additional API history.
        <li>Removed SSL_OP_TLS_ROLLBACK_BUG buggy client workarounds.
        <li>Made <a href="https://man.openbsd.org/ENGINE_finish.3">ENGINE_finish(3)</a> and <a href="https://man.openbsd.org/ENGINE_free.3">ENGINE_free(3)</a> succeed on NULL and simplify callers and matching OpenSSL behavior, rewrote ENGINE_* documentation.
        <li>Added const annotations to many existing APIs from OpenSSL, making
          interoperability easier for downstream applications.
        <li>Documented <a href="https://man.openbsd.org/BN_set_flags.3#BUGS">security pitfalls</a> with BN_FLG_CONSTTIME and constant-time operation of BN_* functions.
      </ul>
     <li>Testing and Proactive Security
       <ul>
       <li>Added Wycheproof test support for ECDH, RSASSA-PSS, AES-GCM,
         AES-CMAC, AES-CCM, AES-CBC-PKCS5, DSA, ChaCha20-Poly1305, ECDSA, and
         X25519 test vectors. Applied appropriate fixes for errors uncovered by
         tests.
       <li>Added more cipher tests, including all TLSv1.2 ciphers.
       <li>Added a blinding value when generating DSA and ECDSA signatures, in
         order to reduce the possibility of a side-channel attack leaking the
         private key.
       <li>Added timing-safe compares for checking results of signature
         verification.
       <li>Added ECC constant time scalar multiplication support.
         From Billy Brumley and his team at Tampere University of Technology.
       </ul>

     <li>Internal Improvements
       <ul>
         <li>Simplified key exchange signature generation and verification.
         <li>Converted more code paths to use CBB/CBS. All handshake messages are
           now created by CBB. RSA key exchange is simplified and uses dedicated
           buffers for secrets.
         <li>Simplified session ticket parsing and handling, inspired by
           BoringSSL.
         <li>Stopped handing AES-GCM in ssl_cipher_get_evp, since they use the
           EVP_AEAD interface.
         <li>Stopped using composite EVP_CIPHER AEADs.
         <li>Removed unused SSL3_FLAGS_DELAY_CLIENT_FINISHED and
           SSL3_FLAGS_POP_BUFFER flags in write path, simplifying IO paths.
         <li>Updated BN_clear to use explicit_bzero.
         <li>Cleaned up BN_* implementations following changes made in OpenSSL by
           Davide Galassi and others.
         <li>Revised the implementation of RSASSA-PKCS1-v1_5 to match the
           specification in RFC 8017. Based on an OpenSSL commit by David
           Benjamin.
       </ul>

     <li>Bug Fixes
       <ul>
         <li>Fixed a one-byte buffer overrun in callers of EVP_read_pw_string
         <li>Fixed various memory leaks found by Coverity.
         <li>Converted more functions in public API to use const arguments.
         <li>Correctly clear the current cipher state, when changing cipher state.
           This fixed an issue where renegotiation of cipher suites would fail
           when switched from AEAD to non-AEAD or vice-versa.
           Issue reported by Bernard Spil.
         <li>Fixed a pair of 20+ year-old bugs in X509_NAME_add_entry
         <li>Fixed a potential memory leak on failure in ASN1_item_digest
         <li>Fixed a potential memory alignment crash in asn1_item_combine_free
         <li>Fixed small timing side-channels in ecdsa_sign_setup and
           dsa_sign_setup.
         <li>Added a missing bounds check in c2i_ASN1_BIT_STRING.
         <li>Fixed a potential leak/incorrect return value in DSA signature
           generation.
       </ul>
   </ul>

<li>Mandoc 1.14.4
   <ul>
   <li>In HTML output, many
     <a href="https://man.openbsd.org/mdoc.7">mdoc(7)</a> macros
     now use more fitting HTML elements.
   <li>In HTML output, almost all "style" attributes and a number of
     redundant "class" attributes were removed.
   <li>Baby steps towards responsive design: use a @media query in
     mandoc.css, use the HTML meta viewport element, and remove all
     hard-coded widths and heights from the generated HTML code.
   <li>Many style improvements in
     <a href="https://man.openbsd.org/mandoc.css">mandoc.css</a>.
   <li>More than 15 new low level
     <a href="https://man.openbsd.org/roff.7">roff(7)</a>
     and GNU man-ext features.
     Mandoc can now format the manuals of the groff port.
   </ul>

<li><p>Ports and packages:
    <ul>
      <li><a href="https://man.openbsd.org/update-plist.1">update-plist(1)</a>
        has been entirely rewritten and now figures out MULTI_PACKAGES and
	variable substitution almost 100%.
      <li>New packages now run maintenance database tools like
        update-desktop-database just once instead of after
	every package addition/removal.
      <li>Ports infrastructure manuals
        (<a href="https://man.openbsd.org/bulk.8">bulk(8)</a>,
        <a href="https://man.openbsd.org/dpb.1">dpb(1)</a> and others) are now
        included in the base install and are therefore readable without the
        ports tree.
    </ul>

    <p>Many pre-built packages for each architecture:
    <!-- number of FTP packages minus SHA256, SHA256.sig, index.txt -->
    <ul style="column-count: 3">
      <li>aarch64:     8319
      <li>amd64:      10304
      <li>arm:         8324
      <li>i386:       10230
      <li>mips64:      7181
      <li>mips64el:    7255
      <li>powerpc:     8737
      <li>sparc64:     7327
    </ul>

    <p>Some highlights:
    <ul style="column-count: 2">
	<li>AFL 2.52b
	<li>CMake 3.10.2
	<li>Chromium 69.0.3497.100
	<li>Emacs 21.4 and 26.1
	<li>GCC 4.9.4
	<li>GHC 8.2.2
	<li>Gimp 2.8.22
	<li>GNOME 3.28.2
	<li>Go 1.11
	<li>Groff 1.22.3
	<li>JDK 8u172
	<li>LLVM/Clang 6.0.1
	<li>LibreOffice 6.1.1.2
	<li>Lua 5.1.5, 5.2.4 and 5.3.5
	<li>MariaDB 10.0.36
	<li>Mono 5.14.0.177
	<li>Mozilla Firefox 60.2.2esr and 62.0.3
	<li>Mozilla Thunderbird 60.2.1
	<li>Mutt 1.10.1 and NeoMutt 20180716
	<li>Node.js 8.12.0
	<li>OCaml 4.03.0
	<li>OpenLDAP 2.3.43 and 2.4.46
	<li>PHP 5.6.38, 7.0.32, 7.1.22 and 7.2.10
	<li>Postfix 3.3.1 and 3.4-20180904
	<li>PostgreSQL 10.5
	<li>Python 2.7.15 and 3.6.6
	<li>R 3.5.1
	<li>Ruby 2.3.7, 2.4.4 and 2.5.1
	<li>Rust 1.29.2
	<li>Sendmail 8.16.0.29
	<li>SQLite3 3.24.0
	<li>Sudo 1.8.25
	<li>Tcl/Tk 8.5.19 and 8.6.8
	<li>TeX Live 2017
	<li>Vim 8.1.438
	<li>Xfce 4.12
    </ul>

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

<li>The system includes the following major components from outside suppliers:
    <ul>
    <li>Xenocara (based on X.Org 7.7 with xserver 1.19.6 + patches,
      freetype 2.9.1, fontconfig 2.12.4, Mesa 13.0.6, xterm 331,
      xkeyboard-config 2.20 and more)
    <li>LLVM/Clang 6.0.0 (+ patches)
    <li>GCC 4.2.1 (+ patches) and 3.3.6 (+ patches)
    <li>Perl 5.24.3 (+ patches)
    <li>NSD 4.1.25
    <li>Unbound 1.8.1
    <li>Ncurses 5.7
    <li>Binutils 2.17 (+ patches)
    <li>Gdb 6.3 (+ patches)
    <li>Awk Aug 10, 2011 version
    <li>Expat 2.2.6
    </ul>
</ul>
</section>

<hr>

<section id=install>
<h3>How to install</h3>
<p>
Please refer to the following files on the mirror site for
extensive details on how to install OpenBSD 6.4 on your machine:

<ul>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/alpha/INSTALL.alpha">
	.../OpenBSD/6.4/alpha/INSTALL.alpha</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/amd64/INSTALL.amd64">
	.../OpenBSD/6.4/amd64/INSTALL.amd64</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/arm64/INSTALL.arm64">
	.../OpenBSD/6.4/arm64/INSTALL.arm64</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/armv7/INSTALL.armv7">
	.../OpenBSD/6.4/armv7/INSTALL.armv7</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/hppa/INSTALL.hppa">
	.../OpenBSD/6.4/hppa/INSTALL.hppa</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/i386/INSTALL.i386">
	.../OpenBSD/6.4/i386/INSTALL.i386</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/landisk/INSTALL.landisk">
	.../OpenBSD/6.4/landisk/INSTALL.landisk</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/loongson/INSTALL.loongson">
	.../OpenBSD/6.4/loongson/INSTALL.loongson</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/luna88k/INSTALL.luna88k">
	.../OpenBSD/6.4/luna88k/INSTALL.luna88k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/macppc/INSTALL.macppc">
	.../OpenBSD/6.4/macppc/INSTALL.macppc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/octeon/INSTALL.octeon">
	.../OpenBSD/6.4/octeon/INSTALL.octeon</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/sgi/INSTALL.sgi">
	.../OpenBSD/6.4/sgi/INSTALL.sgi</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/6.4/sparc64/INSTALL.sparc64">
	.../OpenBSD/6.4/sparc64/INSTALL.sparc64</a>
</ul>
</section>

<hr>

<section id=quickinstall>
<p>
Quick installer information for people familiar with OpenBSD, and the use of
the "<a href="https://man.openbsd.org/disklabel.8">disklabel</a> -E" command.
If you are at all confused when installing OpenBSD, read the relevant
INSTALL.* file as listed above!

<h3>OpenBSD/alpha:</h3>

<p>
Write <i>floppy64.fs</i> or <i>floppyB64.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/amd64:</h3>

<p>
If your machine can boot from CD, you can write <i>install64.iso</i> or
<i>cd64.iso</i> to a CD and boot from it.
You may need to adjust your BIOS options first.

<p>
If your machine can boot from USB, you can write <i>install64.fs</i> or
<i>miniroot64.fs</i> to a USB stick and boot from it.

<p>
If you can't boot from a CD, floppy disk, or USB,
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/arm64:</h3>

<p>
Write <i>miniroot64.fs</i> to a disk and boot from it after connecting
to the serial console.  Refer to INSTALL.arm64 for more details.

<h3>OpenBSD/armv7:</h3>

<p>
Write a system specific miniroot to an SD card and boot from it after connecting
to the serial console.  Refer to INSTALL.armv7 for more details.

<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/i386:</h3>

<p>
If your machine can boot from CD, you can write <i>install64.iso</i> or
<i>cd64.iso</i> to a CD and boot from it.
You may need to adjust your BIOS options first.

<p>
If your machine can boot from USB, you can write <i>install64.fs</i> or
<i>miniroot64.fs</i> to a USB stick and boot from it.

<p>
If you can't boot from a CD, floppy disk, or USB,
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.

<h3>OpenBSD/landisk:</h3>

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

<h3>OpenBSD/loongson:</h3>

<p>
Write <i>miniroot64.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 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader
from the PROM, and then bsd.rd from the bootloader.
Refer to the instructions in INSTALL.luna88k for more details.

<h3>OpenBSD/macppc:</h3>

<p>
Burn the image from a mirror site to a CDROM, and power on 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
/6.4/macppc/bsd.rd</i>

<h3>OpenBSD/octeon:</h3>

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

<h3>OpenBSD/sgi:</h3>

<p>
To install, burn cd64.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. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from
CD-ROM, and need a proper invocation from the PROM prompt.
Refer to the instructions in INSTALL.sgi for more details.

<p>
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/sparc64:</h3>

<p>
Burn the image from a mirror site to a CDROM, boot from it, 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>floppy64.fs</i> or <i>floppyB64.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>miniroot64.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.
</section>

<hr>

<section id=upgrade>
<h3>How to upgrade</h3>
<p>
If you already have an OpenBSD 6.3 system, and do not want to reinstall,
upgrade instructions and advice can be found in the
<a href="faq/upgrade64.html">Upgrade Guide</a>.
</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=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>
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 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 up to date with the -stable branch, 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_6_4</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
ports for the 6.4 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>