---
title: "FreeBSD 10.0-RELEASE Release Notes"
sidenav: download
---

include::shared/en/urls.adoc[]

= FreeBSD 10.0-RELEASE Release Notes

== Abstract

The release notes for FreeBSD 10.0-RELEASE contain a summary of the changes made to the FreeBSD base system on the 10.0-STABLE development line. This document lists applicable security advisories that were issued since the last release, as well as significant changes to the FreeBSD kernel and userland. Some brief remarks on upgrading are also presented.

== Table of Contents

* <<intro,Introduction>>
* <<new,What's New>>
* <<upgrade,Upgrading from previous releases of FreeBSD>>

[[intro]]
== Introduction

This document contains the release notes for FreeBSD 10.0-RELEASE. It describes recently added, changed, or deleted features of FreeBSD. It also provides some notes on upgrading from previous versions of FreeBSD.

The latest, up-to-date version of the release notes are available online at link:../relnotes[`FreeBSD 10.0-RELEASE Release Notes`].

This distribution of FreeBSD 10.0-RELEASE is a release distribution. It can be found at `http://www.FreeBSD.org/releases/` or any of its mirrors. More information on obtaining this (or other) release distributions of FreeBSD can be found in the link:{handbook}#mirrors[Obtaining FreeBSD' appendix] to the link:{handbook}[FreeBSD Handbook].

All users are encouraged to consult the release errata before installing FreeBSD. The errata document is updated with "late-breaking" information discovered late in the release cycle or after the release. Typically, it contains information on known bugs, security advisories, and corrections to documentation. An up-to-date copy of the errata for FreeBSD 10.0-RELEASE can be found on the FreeBSD Web site.

[[new]]
== What's New

This section describes the most user-visible new or changed features in FreeBSD since 9.2-RELEASE.

Typical release note items document recent security advisories issued after 9.2-RELEASE, new drivers or hardware support, new commands or options, major bug fixes, or contributed software upgrades. They may also list changes to major ports/packages or release engineering practices. Clearly the release notes cannot list every single change made to FreeBSD between releases; this document focuses primarily on security advisories, user-visible changes, and major architectural improvements.

[[security]]
== Security Advisories

Problems described in the following security advisories have been fixed. For more information, consult the individual advisories available from http://security.FreeBSD.org/[FreeBSD Security Information].

[cols=",,",options="header",]
|===
|Advisory |Date |Topic
|http://www.freebsd.org/security/advisories/FreeBSD-SA-13:14.openssh.asc[SA-13:14.openssh] |19 November 2013 |OpenSSH AES-GCM memory corruption vulnerability
|http://www.freebsd.org/security/advisories/FreeBSD-SA-14:01.bsnmpd.asc[SA-14:01.bsnmpd] |14 January 2014 |bsnmpd remote denial of service vulnerability
|http://www.freebsd.org/security/advisories/FreeBSD-SA-14:02.ntpd.asc[SA-14:02.ntpd] |14 January 2014 |ntpd distributed reflection Denial of Service vulnerability
|http://www.freebsd.org/security/advisories/FreeBSD-SA-14:03.openssl.asc[SA-14:03.openssl] |14 January 2014 |OpenSSL multiple vulnerabilities
|http://www.freebsd.org/security/advisories/FreeBSD-SA-14:04.bind.asc[SA-14:04.bind] |14 January 2014 |BIND remote denial of service vulnerability
|===

[[kernel]]
== Kernel Changes

Capsicum has been enabled in the kernel by default, allowing sandboxing of several programs that work within the "capabilities mode".

[amd64,i386] The drm2(4) Radeon GPU driver, which works for GPUs up-to Radeon HD 6000 and partially supports the Radeon HD 7000 family, has been added. This driver was ported from Linux 3.8. http://svn.freebsd.org/viewvc/base?view=revision&revision=254885[(r254885)]

The use of unmapped VMIO buffers eliminates the need to perform TLB shootdown for mapping on buffer creation and reuse, greatly reducing the amount of IPIs for shootdown on big-SMP machines and eliminating up to 25-30% of the system time on i/o intensive workloads. http://svn.freebsd.org/viewvc/base?view=revision&revision=248508[(r248508)]

[amd64] The maximum amount of memory the FreeBSD kernel can address has been increased from 1TB to 4TB. http://svn.freebsd.org/viewvc/base?view=revision&revision=254466[(r254466)]

The http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4[ddb(4)] kernel debugger now has an output capture facility. Input and output from http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4[ddb(4)] can now be captured to a memory buffer for later inspection using http://www.FreeBSD.org/cgi/man.cgi?query=sysctl&sektion=8[sysctl(8)] or a textdump. The new `capture` command controls this feature.

The http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4[ddb(4)] debugger now supports a simple scripting facility, which supports a set of named scripts consisting of a set of http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4[ddb(4)] commands. These commands can be managed from within http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4[ddb(4)] or with the use of the new http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=8[ddb(8)] utility. More details can be found in the http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4[ddb(4)] manual page.

[amd64,i386] Support was added for the new Intel on-CPU Bull Mountain random number generator, found on IvyBridge and supposedly later CPUs, accessible with the RDRAND instruction. http://svn.freebsd.org/viewvc/base?view=revision&revision=240135[(r240135)]

[[kernel-virtualization]]
== Virtualization support

[amd64] The BSD Hypervisor, http://www.FreeBSD.org/cgi/man.cgi?query=bhyve&sektion=8[bhyve(8)] is included with FreeBSD. http://www.FreeBSD.org/cgi/man.cgi?query=bhyve&sektion=8[bhyve(8)] requires Intel CPUs with VT-x and Extended Page Table (EPT) support. These features are on all Nehalem models and beyond (e.g. Nehalem and newer), but not on the lower-end Atom CPUs. http://svn.freebsd.org/viewvc/base?view=revision&revision=245652[(r245652)]

http://www.FreeBSD.org/cgi/man.cgi?query=virtio&sektion=4[virtio(4)] support has been added. http://www.FreeBSD.org/cgi/man.cgi?query=virtio&sektion=4[virtio(4)] is the name for the paravirtualization interface developed for the Linux KVM, but since adopted to other virtual machine hypervisors (with the notable exception of Xen). This work brings in a BSD-licensed clean-room implementation of the virtio kernel drivers for disk IO (http://www.FreeBSD.org/cgi/man.cgi?query=virtio_blk&sektion=4[virtio_blk(4)] and http://www.FreeBSD.org/cgi/man.cgi?query=virtio_scsi&sektion=4[virtio_scsi(4)]), network IO (http://www.FreeBSD.org/cgi/man.cgi?query=vtnet&sektion=4[vtnet(4)]), memory ballooning (http://www.FreeBSD.org/cgi/man.cgi?query=virtio_balloon&sektion=4[virtio_balloon(4)]), and PCI. Tested with on Qemu/KVM, VirtualBox, and http://www.FreeBSD.org/cgi/man.cgi?query=bhyve&sektion=4[bhyve(4)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=227652[(r227652)]

[amd64,i386] Paravirtualized drivers which support Microsoft Hyper-V have been imported and made part of the amd64 GENERIC kernel. For i386, these drivers are not part of GENERIC, so the following lines must be added to [.filename]`/boot/loader.conf` to load these drivers: http://svn.freebsd.org/viewvc/base?view=revision&revision=255524[(r255524)]

[.programlisting]
----
hv_ata_pci_disengage_load="YES"
hv_netsvc_load="YES"
hv_utils_load="YES"
hv_vmbus_load="YES"
----

Alternatively, the Hyper-V drivers can be added to the i386 kernel by adding `device hyperv` to the kernel config, and then recompiling the kernel. Please refer to http://wiki.freebsd.org/HyperV[FreeBSD and Microsoft Windows Server Hyper-V support] for full instructions on how to set up Hyper-V support under FreeBSD.

The http://www.FreeBSD.org/cgi/man.cgi?query=vmx&sektion=4[vmx(4)] driver has been added. http://www.FreeBSD.org/cgi/man.cgi?query=vmx&sektion=4[vmx(4)] is a VMware VMXNET3 ethernet driver ported from OpenBSD. http://svn.freebsd.org/viewvc/base?view=revision&revision=254738[(r254738)]

[amd64,i386] Xen PVHVM virtualization is now part of the GENERIC kernel. http://svn.freebsd.org/viewvc/base?view=revision&revision=255744[(r255744)]

[[kernel-arm]]
== ARM support

Raspberry PI support has been added. Refer to these http://kernelnomicon.org/?p=164[setup instructions] and this http://www.raspberrypi.org/quick-start-guide[quick start guide]. http://svn.freebsd.org/viewvc/base?view=revision&revision=239922[(r239922)]

The default ABI on ARM is now the ARM EABI. This brings a number of improvements and allows future support for VFP and Thumb-2. http://svn.freebsd.org/viewvc/base?view=revision&revision=253396[(r253396)]

ARM support has been greatly improved, including support for ARMv6 and ARMv7, SMP and thread-local storage (TLS). Additionally support for some newer SoC like the MV78x60 and OMAP4 was added. See the http://lists.freebsd.org/pipermail/freebsd-arm/2012-August/003757.html[announcement] for further details. http://svn.freebsd.org/viewvc/base?view=revision&revision=239268[(r239268)]

Superpages support on ARM has been added. Superpages support provides improved performance and scalability by allowing TLB translations to dynamically cover large physical memory regions. All ARMv6 and ARMv7-based platforms can take advantage of this feature. See the https://wiki.freebsd.org/ARMSuperpages[ARM Superpages status] page for further details. http://svn.freebsd.org/viewvc/base?view=revision&revision=254918[(r254918)]

[[proc]]
== Hardware Support

[[mm]]
== Multimedia Support

Support for version 2.0 of the USB Audio reference design has been added. New devices should support higher bandwidth, increased sampling frequency and wider dynamic range. http://svn.freebsd.org/viewvc/base?view=revision&revision=240609[(r240609)]

[[net-if]]
== Network Interface Support

The firmware for the http://www.FreeBSD.org/cgi/man.cgi?query=mxge&sektion=4[mxge(4)] driver has been to 1.4.55. http://svn.freebsd.org/viewvc/base?view=revision&revision=236212[(r236212)]

The http://www.FreeBSD.org/cgi/man.cgi?query=re&sektion=4[re(4)] driver has been overhauled to fix a number of issues. This driver now has Wake On LAN (WOL) support.

The http://www.FreeBSD.org/cgi/man.cgi?query=vr&sektion=4[vr(4)] driver has been overhauled to fix a number of outstanding issues. It also now works on all architectures.

[amd64,i386] The http://www.FreeBSD.org/cgi/man.cgi?query=wpi&sektion=4[wpi(4)] driver has been updated to include a number of stability fixes.

The http://www.FreeBSD.org/cgi/man.cgi?query=cxgbe&sektion=4[cxgbe(4)] driver has been updated to support 40G/10G Ethernet NICs based on Chelsio's Terminator 5 (T5) ASIC. http://svn.freebsd.org/viewvc/base?view=revision&revision=248925[(r248925)]

The iw_cxgbe driver has been added. This is an experimental iWARP/RDMA driver (kernel verbs only) for Chelsio's T4 and T5 based cards. http://svn.freebsd.org/viewvc/base?view=revision&revision=256694[(r256694)]

The Open Fabrics Enterprise Distribution (OFED) and OFED Infiniband core has been updated to the same version as supplied by Linux version 3.7 http://svn.freebsd.org/viewvc/base?view=revision&revision=255932[(r255932)]

The Mellanox Infiniband driver has been updated to firmware version 2.30.3200 for ConnectX3 NICs. Support has been added for ConnectX3 VPI NICs, where each port can be used as Infiniband 56 GB/s or Ethernet 40 GB/s. Support has been added for dynamically loading kernel modules for Infiniband core (ibcore) and IP over Infiniband (ipoib). http://svn.freebsd.org/viewvc/base?view=revision&revision=255932[(r255932)]

http://www.FreeBSD.org/cgi/man.cgi?query=netmap&sektion=4[netmap(4)] has been added. http://www.FreeBSD.org/cgi/man.cgi?query=netmap&sektion=4[netmap(4)] is a framework for high-performance direct-to-hardware packet IO, offering low latency and high PPS rates to userland applications while bypassing any kernel-side packet processing. With http://www.FreeBSD.org/cgi/man.cgi?query=netmap&sektion=4[netmap(4)] it is trivially possible to fully saturate a 10 Gbps network interface with minimal packet sizes. For more information, see: http://info.iet.unipi.it/~luigi/netmap/[Netmap Project]. http://svn.freebsd.org/viewvc/base?view=revision&revision=227614[(r227614)]

[[net-proto]]
== Network Protocols

http://www.FreeBSD.org/cgi/man.cgi?query=carp&sektion=4[carp(4)] has been rewritten to make addresses more sane from the viewpoint of routing daemons such as quagga/zebra. It also brings support for a single redundant address on the subnet (carpdev), switching state with http://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8[ifconfig(8)], better locking and using modern kernel interfaces to allocate multicast memberships. Configuration of the CARP protocol via http://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8[ifconfig(8)] has changed, as well as the format of CARP events submitted to http://www.FreeBSD.org/cgi/man.cgi?query=devd&sektion=8[devd(8)]. See http://www.FreeBSD.org/cgi/man.cgi?query=carp&sektion=4[carp(4)] for more information. The arpbalance feature of http://www.FreeBSD.org/cgi/man.cgi?query=carp&sektion=4[carp(4)] is currently not supported anymore. http://svn.freebsd.org/viewvc/base?view=revision&revision=228571[(r228571)]

The http://www.FreeBSD.org/cgi/man.cgi?query=pf&sektion=4[pf(4)] firewall now supports fine-grain locking and better utilization on multi-CPU machines, resulting in significant improvements in performance. http://svn.freebsd.org/viewvc/base?view=revision&revision=240233[(r240233)]

Support for up to 65536 routing tables has been introduced. http://svn.freebsd.org/viewvc/base?view=revision&revision=250700[(r250700)]

Support for setting/matching differentiated services codepoints (DSCP) in IP header has been added to http://www.FreeBSD.org/cgi/man.cgi?query=ipfw&sektion=8[ipfw(8)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=248552[(r248552)]

[[disks]]
== Disks and Storage

The http://www.FreeBSD.org/cgi/man.cgi?query=aac&sektion=4[aac(4)] driver now supports volumes larger than 2TB in size.

The http://www.FreeBSD.org/cgi/man.cgi?query=hptrr&sektion=4[hptrr(4)] driver has been updated to version 1.2 from Highpoint.

http://www.FreeBSD.org/cgi/man.cgi?query=nvme&sektion=4[nvme(4)] has been added and provides NVM Express support. NVM Express is an optimized register interface, command set and feature set of PCI Express (PCIe)-based Solid-State Drives (SSDs). For more information, see http://www.nvmexpress.org/[nvmexpress.org]. http://svn.freebsd.org/viewvc/base?view=revision&revision=240616[(r240616)]

[[fs]]
== File Systems

A new kernel-based iSCSI target and initiator has been added. http://svn.freebsd.org/viewvc/base?view=revision&revision=255570[(r255570)]

UFS filesystems can now be enlarged with http://www.FreeBSD.org/cgi/man.cgi?query=growfs&sektion=8[growfs(8)] while mounted read-write. This is especially useful for virtual machines, allowing the addition of more harddrive space without interruption of service. http://svn.freebsd.org/viewvc/base?view=revision&revision=243246[(r243246)]

A state of the art FUSE implementation is now part of the base system. It allows the use of nearly all fusefs file systems. http://svn.freebsd.org/viewvc/base?view=revision&revision=241519[(r241519)]

[[fs-zfs]]
== ZFS

http://www.FreeBSD.org/cgi/man.cgi?query=bsdinstall&sektion=8[bsdinstall(8)] now supports installing ZFS on the root file system. It includes a single configuration menu that allows you to select all of the required details, including which drives to use, what ZFS RAID level to use (taking into consideration the selected number of drives), GPT or MBR, GELI encryption, forcing 4K sectors, pool name, etc. http://svn.freebsd.org/viewvc/base?view=revision&revision=256361[(r256361)]

Support for L2ARC compression has been added to ZFS. http://svn.freebsd.org/viewvc/base?view=revision&revision=252140[(r252140)]

The zio nop-write improvement from Illumos was imported into FreeBSD. To reduce I/O, nop-write skips overwriting data if the (cryptographically secure) checksum of new data matches the checksum of existing data. It also saves space if snapshots are in use. This improvement only works on datasets with enabled compression, disabled deduplication and sha256 checksums. ZFS will now compare the checksums of incoming writes to the checksum of the existing on-disk data and avoid issuing any write I/O for data that has not changed. This will reduce I/O as well as space usage because if the old block is referenced by a snapshot, both copies of the block are kept even though both contain the same data. http://svn.freebsd.org/viewvc/base?view=revision&revision=243524[(r243524)]

[[userland]]
== Userland Changes

On platforms where http://www.FreeBSD.org/cgi/man.cgi?query=clang&sektion=1[clang(1)] is the default system compiler (such as i386, amd64, arm), GCC and GNU libstdc++ are no longer built by default. http://www.FreeBSD.org/cgi/man.cgi?query=clang&sektion=1[clang(1)] and libc++ from LLVM are used on these platforms by instead. GCC 4.2.1 and libstdc++ are still built and used by default on pc98 and all other platforms where http://www.FreeBSD.org/cgi/man.cgi?query=clang&sektion=1[clang(1)] is not the default system compiler. http://svn.freebsd.org/viewvc/base?view=revision&revision=255321[(r255321)]

http://www.FreeBSD.org/cgi/man.cgi?query=clang&sektion=1[clang(1)] and llvm have been updated to version 3.3 release. Please refer to http://llvm.org/releases/3.3/tools/clang/docs/ReleaseNotes.html[Clang 3.3 Release Notes]. http://svn.freebsd.org/viewvc/base?view=revision&revision=251662[(r251662)]

BIND has been removed from the base system. http://www.FreeBSD.org/cgi/man.cgi?query=unbound&sektion=8[unbound(8)], which is maintained by NLnet Labs, has been imported to support local DNS resolution functionality with DNSSEC. Note that it is not a replacement of BIND# and the latest versions of BIND# is still available in the Ports Collection. With this change, nslookup and dig are no longer a part of the base system. Users should instead use http://www.FreeBSD.org/cgi/man.cgi?query=host&sektion=1[host(1)] and http://www.FreeBSD.org/cgi/man.cgi?query=drill&sektion=1[drill(1)] Alternatively, nslookup and dig can be obtained by installing [.filename]`dns/bind-tools` port. http://svn.freebsd.org/viewvc/base?view=revision&revision=255949[(r255949)]

sysinstall has been removed from the base system. Auxiliary libraries and tools used by sysinstall such as libdisk, libftpio, and sade have also been removed. sysinstall has been replaced by http://www.FreeBSD.org/cgi/man.cgi?query=bsdinstall&sektion=8[bsdinstall(8)] and http://www.FreeBSD.org/cgi/man.cgi?query=bsdconfig&sektion=8[bsdconfig(8)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=225937[(r225937)]

http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-version&sektion=1[freebsd-version(1)] has been added. This tool makes a best effort to determine the version and patch level of the installed kernel and userland. http://svn.freebsd.org/viewvc/base?view=revision&revision=256106[(r256106)]

GNU patch has been removed from the base system, and replaced by a BSD-licensed http://www.FreeBSD.org/cgi/man.cgi?query=patch&sektion=1[patch(1)] program. http://svn.freebsd.org/viewvc/base?view=revision&revision=255191[(r255191)]

GNU sort has been removed from the base system, and replaced by a BSD-licensed http://www.FreeBSD.org/cgi/man.cgi?query=sort&sektion=1[sort(1)] program. http://svn.freebsd.org/viewvc/base?view=revision&revision=241511[(r241511)]

Berkeley yacc (byacc) has been imported from http://invisible-island.net/byacc/[invisible island]. This brings bison compatibilities to http://www.FreeBSD.org/cgi/man.cgi?query=yacc&sektion=1[yacc(1)] while preserving full backwards compatibility with previous version of http://www.FreeBSD.org/cgi/man.cgi?query=yacc&sektion=1[yacc(1)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=235723[(r235723)]

http://www.FreeBSD.org/cgi/man.cgi?query=lex&sektion=1[lex(1)] has been replaced by flex 2.5.37. http://svn.freebsd.org/viewvc/base?view=revision&revision=250881[(r250881)]

http://www.FreeBSD.org/cgi/man.cgi?query=make&sektion=1[make(1)] has been replaced with the "Portable" BSD make tool (bmake) from NetBSD. http://svn.freebsd.org/viewvc/base?view=revision&revision=250699[(r250699)]

Support for usernames up to 32 characters. http://svn.freebsd.org/viewvc/base?view=revision&revision=243023[(r243023)]

The http://www.FreeBSD.org/cgi/man.cgi?query=adduser&sektion=8[adduser(8)] utility now supports a `-M` option to set the mode of a new user's home directory.

BSD-licensed versions of http://www.FreeBSD.org/cgi/man.cgi?query=ar&sektion=1[ar(1)] and http://www.FreeBSD.org/cgi/man.cgi?query=ranlib&sektion=1[ranlib(1)], based on http://www.FreeBSD.org/cgi/man.cgi?query=libarchive&sektion=3[libarchive(3)], have replaced the GNU Binutils versions of these utilities.

BSD-licensed versions of http://www.FreeBSD.org/cgi/man.cgi?query=bc&sektion=1[bc(1)] and http://www.FreeBSD.org/cgi/man.cgi?query=dc&sektion=1[dc(1)] have replaced their GNU counterparts.

http://www.FreeBSD.org/cgi/man.cgi?query=chflags&sektion=1[chflags(1)] now supports a `-v` flag for verbose output and a `-f` flag to ignore errors with the same semantics as (for example) http://www.FreeBSD.org/cgi/man.cgi?query=chmod&sektion=1[chmod(1)].

For compatibility with other implementations, http://www.FreeBSD.org/cgi/man.cgi?query=cp&sektion=1[cp(1)] now supports a `-a` flag, which is equivalent to specifying the `-RrP` flags.

BSD-licensed version of http://www.FreeBSD.org/cgi/man.cgi?query=cpio&sektion=1[cpio(1)] based on http://www.FreeBSD.org/cgi/man.cgi?query=libarchive&sektion=3[libarchive(3)], has replaced the GNU cpio. Note that the GNU cpio is still installed as `gcpio`.

The http://www.FreeBSD.org/cgi/man.cgi?query=env&sektion=1[env(1)] program now supports `-u name` which will completely unset the given variable _`name`_ by removing it from the environment, instead of just setting it to a null value.

The http://www.FreeBSD.org/cgi/man.cgi?query=fdopendir&sektion=3[fdopendir(3)] library function has been added.

The http://www.FreeBSD.org/cgi/man.cgi?query=fetch&sektion=3[fetch(3)] library now supports HTTP 1.1 If-Modified-Since behavior. The http://www.FreeBSD.org/cgi/man.cgi?query=fetch&sektion=1[fetch(1)] program now supports `-i filename` which will only download the specified HTTP URL if the content is newer than _`filename`_.

http://www.FreeBSD.org/cgi/man.cgi?query=find&sektion=1[find(1)] has been enhanced by the addition of a number of primaries that were present in GNU find but not FreeBSD http://www.FreeBSD.org/cgi/man.cgi?query=find&sektion=1[find(1)].

http://www.FreeBSD.org/cgi/man.cgi?query=kgdb&sektion=1[kgdb(1)] now supports a new `add-kld` command to make it easier to debug crash dumps with kernel modules.

The http://www.FreeBSD.org/cgi/man.cgi?query=ls&sektion=1[ls(1)] program now supports a `-D` option to specify a date format string to be used with the long format (`-l`) output.

http://www.FreeBSD.org/cgi/man.cgi?query=nc&sektion=1[nc(1)] now supports a `-O` switch to disable the use of TCP options.

http://www.FreeBSD.org/cgi/man.cgi?query=nc&sektion=1[nc(1)]'s `-o` switch has been deprecated. It will be removed in a future release.

The http://www.FreeBSD.org/cgi/man.cgi?query=ping6&sektion=8[ping6(8)] utility now returns `2` when the packet transmission was successful but no responses were received (this is the same behavior as http://www.FreeBSD.org/cgi/man.cgi?query=ping&sektion=8[ping(8)]). It returned a non-zero value before this change.

The http://www.FreeBSD.org/cgi/man.cgi?query=realpath&sektion=1[realpath(1)] utility now supports a `-q` flag to suppress warnings; it now also accepts multiple paths on its command line.

http://www.FreeBSD.org/cgi/man.cgi?query=sh&sektion=1[sh(1)] has many bug fixes, some new features, and will now refuse to parse some invalid scripts. Additionally, it now has filename completion and defaults to the "emacs" editing mode.

The http://www.FreeBSD.org/cgi/man.cgi?query=split&sektion=1[split(1)] utility now supports a `-n` flag to split a file into a certain number of chunks.

The http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=1[tar(1)] utility now supports a `-Z` flag to enable http://www.FreeBSD.org/cgi/man.cgi?query=compress&sektion=1[compress(1)]-style compression/decompression.

The http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=1[tar(1)] utility now supports a `--numeric-owner` flag to ignore user/group names on create and extract.

The http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=1[tar(1)] utility now supports the `-S` flag to sparsify files on extraction.

The http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=1[tar(1)] utility now supports a `-s` flag to substitute filenames based on the specified regular expression.

The http://www.FreeBSD.org/cgi/man.cgi?query=tcgetsid&sektion=3[tcgetsid(3)] library function has been added to return the process group ID for the session leader for the controlling terminal. It is defined in IEEE Std 1003.1-2001 (POSIX).

http://www.FreeBSD.org/cgi/man.cgi?query=top&sektion=1[top(1)] now supports a `-P` flag to provide per-CPU usage statistics.

http://www.FreeBSD.org/cgi/man.cgi?query=zdump&sektion=8[zdump(8)] is now working properly on 64-bit architectures.

http://www.FreeBSD.org/cgi/man.cgi?query=traceroute&sektion=8[traceroute(8)] now has the ability to print the AS number for each hop with the new `-a` switch; a new `-A` option allows selecting a particular WHOIS server.

http://www.FreeBSD.org/cgi/man.cgi?query=traceroute6&sektion=8[traceroute6(8)] now supports a `-U` flag to send probe packets with no upper-layer protocol, rather than the usual UDP probe packets.

[[rc-scripts]]
== [.filename]`/etc/rc.d` Scripts

[.filename]`rc.d/sendmail` now generates and uses an SSL certificate by default when `sendmail_enable="YES"`. This will allow remote MTA to use STARTTLS to encrypt incoming email. The certification is signed with a key that is thrown away and is not a substitute for generating your own properly if you need to use STARTTLS authentication. Options to control the certificate generation is documented in [.filename]`rc.d/sendmail`. http://svn.freebsd.org/viewvc/base?view=revision&revision=256773[(r256773)]

The followoing http://www.FreeBSD.org/cgi/man.cgi?query=rc&sektion=8[rc(8)] scripts have been added:

[cols=",",options="header",]
|===
|http://www.FreeBSD.org/cgi/man.cgi?query=rc&sektion=8[rc(8)] Script |Function
|[.filename]`ctld` |iSCSI target daemon startup script
|[.filename]`iscsictl` |iSCSI initiator management utility startup script
|[.filename]`iscsid` |iSCSI initiatior daemon startup script
|[.filename]`kfd` |Kerberos ticket forwarding daemon startup script
|[.filename]`local_unbound` |Unbound startup script for the local caching resolver
|[.filename]`postrandom` |Generates a new entropy file at system boot
|[.filename]`swap` |Replaces [.filename]`swap1`; enable swap at system boot
|[.filename]`swaplate` |Enables swap with "late" set at system boot
|[.filename]`utx` |User accounting database startup and shutdown script
|===

The following http://www.FreeBSD.org/cgi/man.cgi?query=rc&sektion=8[rc(8)] scripts have been removed:

[cols=",",options="header",]
|===
|http://www.FreeBSD.org/cgi/man.cgi?query=rc&sektion=8[rc(8)] Script |Reason
|[.filename]`encswap` |Replaced by [.filename]`swap` and [.filename]`swaplate`
|[.filename]`named` |Removed with BIND#
|[.filename]`swap1` |Replaced by [.filename]`swap` and [.filename]`swaplate`
|===

[[contrib]]
== Contributed Software

http://www.FreeBSD.org/cgi/man.cgi?query=jemalloc&sektion=3[jemalloc(3)] has been updated to 3.4.0. See http://www.facebook.com/jemalloc/[this link] for more details. http://svn.freebsd.org/viewvc/base?view=revision&revision=251300[(r251300)]

AMD# has been updated from 6.0.10 to 6.1.5.

awk# has been updated to the 20121220 release.

CVS# has been removed from the base system, but is still available from Ports Collection. http://svn.freebsd.org/viewvc/base?view=revision&revision=251794[(r251794)]

Subversion has been imported into the base system and is installed as svnlite#. svnlite# should only be used for checking out the FreeBSD source trees and committing, and does not replace the full Subversion port. http://svn.freebsd.org/viewvc/base?view=revision&revision=251886[(r251886)]

file# has been updated to 5.11. http://svn.freebsd.org/viewvc/base?view=revision&revision=234449[(r234449)]

hostapd# has been updated from 0.5.8 to 0.5.10. http://svn.freebsd.org/viewvc/base?view=revision&revision=252726[(r252726)]

IPFilter# has been updated to 5.1.2.

less# has been updated to v458. http://svn.freebsd.org/viewvc/base?view=revision&revision=250592[(r250592v]

ncurses# has been updated to 5.7-20081102.

OpenSSH# has been updated to 6.4.

OpenPAM# has been updated to the Micrampelis release. http://svn.freebsd.org/viewvc/base?view=revision&revision=236109[(r236109)]

sendmail# has been updated from 8.14.1 to 8.14.7.

The timezone database has been updated from the tzdata2008h# release to the tzdata2009m# release.

The stdtime part of libc, http://www.FreeBSD.org/cgi/man.cgi?query=zdump&sektion=8[zdump(8)] and http://www.FreeBSD.org/cgi/man.cgi?query=zic&sektion=8[zic(8)] have been updated from the tzcode2004a# release to the tzcode2009h# release. If you have upgraded from source or via the http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8[freebsd-update(8)], then please run http://www.FreeBSD.org/cgi/man.cgi?query=tzsetup&sektion=8[tzsetup(8)] to install a new [.filename]`/etc/localtime`.

WPA Supplicant# has been updated to 2.0. http://svn.freebsd.org/viewvc/base?view=revision&revision=252726[(r252726)]

xz# has been updated from snapshot as of 12 April 2010 to 5.0.0.

http://www.FreeBSD.org/cgi/man.cgi?query=nvi&sektion=1[nvi(1)] has been updated to 2.1.2. http://svn.freebsd.org/viewvc/base?view=revision&revision=258231[(r258231)]

http://www.FreeBSD.org/cgi/man.cgi?query=nvi&sektion=1[nvi(1)] supports wide-character locales. http://svn.freebsd.org/viewvc/base?view=revision&revision=254225[(r254225)]

[[ports]]
== Ports/Packages Collection Infrastructure

The pkg_add, pkg_create, pkg_delete, pkg_info, pkg_updating, and pkg_version utilities have been removed. http://www.FreeBSD.org/cgi/man.cgi?query=pkg&sektion=7[pkg(7)] must now be used to install binary packages. http://www.FreeBSD.org/cgi/man.cgi?query=pkg&sektion=7[pkg(7)] is the next generation FreeBSD package manager, also referred to as "pkgng". If upgrading from a previous FreeBSD release, be sure to run pkg2ng# to convert the old package database to the new format. http://svn.freebsd.org/viewvc/base?view=revision&revision=257444[(r257444)]

[[releng]]
== Release Engineering and Integration

The supported version of the GNOME desktop environment (x11/gnome2) has been updated from 2.20.1 to 2.22.

[[upgrade]]
== Upgrading from previous releases of FreeBSD

[amd64,i386] Beginning with FreeBSD 6.2-RELEASE, binary upgrades between RELEASE versions (and snapshots of the various security branches) are supported using the http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8[freebsd-update(8)] utility. The binary upgrade procedure will update unmodified userland utilities, as well as unmodified GENERIC or SMP kernels distributed as a part of an official FreeBSD release. The http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8[freebsd-update(8)] utility requires that the host being upgraded have Internet connectivity.

Source-based upgrades (those based on recompiling the FreeBSD base system from source code) from previous versions are supported, according to the instructions in [.filename]`/usr/src/UPDATING`.

[.important]
*Important:* +
Upgrading FreeBSD should, of course, only be attempted after backing up _all_ data and configuration files.
