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

++++


<h3 class="CORPAUTHOR">The FreeBSD Project</h3>

<p class="COPYRIGHT">Copyright &copy; 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
2008 The FreeBSD Documentation Project</p>

<p class="PUBDATE">$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v
1.1068.2.20.2.3 2008/02/16 16:03:48 bmah Exp $<br />
</p>

<div class="LEGALNOTICE"><a id="TRADEMARKS" name="TRADEMARKS"></a>
<p>FreeBSD is a registered trademark of the FreeBSD Foundation.</p>

<p>IBM, AIX, EtherJet, Netfinity, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks
of International Business Machines Corporation in the United States, other countries, or
both.</p>

<p>IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical and
Electronics Engineers, Inc. in the United States.</p>

<p>Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are trademarks or
registered trademarks of Intel Corporation or its subsidiaries in the United States and
other countries.</p>

<p>Sparc, Sparc64, SPARCEngine, and UltraSPARC are trademarks of SPARC International, Inc
in the United States and other countries. Products bearing SPARC trademarks are based
upon architecture developed by Sun Microsystems, Inc.</p>

<p>Many of the designations used by manufacturers and sellers to distinguish their
products are claimed as trademarks. Where those designations appear in this document, and
the FreeBSD Project was aware of the trademark claim, the designations have been followed
by the &#8220;&trade;&#8221; or the &#8220;&reg;&#8221; symbol.</p>
</div>

<div>
<div class="ABSTRACT"><a id="AEN26" name="AEN26"></a>
<p>The release notes for FreeBSD 7.0-RELEASE contain a summary of the changes made to the
FreeBSD base system on the 7-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.</p>
</div>
</div>

<hr />
</div>

<div class="TOC">
<dl>
<dt><b>Table of Contents</b></dt>

<dt>1 <a href="#INTRO">Introduction</a></dt>

<dt>2 <a href="#NEW">What's New</a></dt>

<dd>
<dl>
<dt>2.1 <a href="#SECURITY">Security Advisories</a></dt>

<dt>2.2 <a href="#KERNEL">Kernel Changes</a></dt>

<dd>
<dl>
<dt>2.2.1 <a href="#BOOT">Boot Loader Changes</a></dt>

<dt>2.2.2 <a href="#PROC">Hardware Support</a></dt>

<dt>2.2.3 <a href="#NET-PROTO">Network Protocols</a></dt>

<dt>2.2.4 <a href="#DISKS">Disks and Storage</a></dt>

<dt>2.2.5 <a href="#FS">File Systems</a></dt>
</dl>
</dd>

<dt>2.3 <a href="#USERLAND">Userland Changes</a></dt>

<dd>
<dl>
<dt>2.3.1 <a href="#RC-SCRIPTS"><tt class="FILENAME">/etc/rc.d</tt> Scripts</a></dt>
</dl>
</dd>

<dt>2.4 <a href="#CONTRIB">Contributed Software</a></dt>

<dt>2.5 <a href="#PORTS">Ports/Packages Collection Infrastructure</a></dt>

<dt>2.6 <a href="#RELENG">Release Engineering and Integration</a></dt>

<dt>2.7 <a href="#DOC">Documentation</a></dt>
</dl>
</dd>

<dt>3 <a href="#UPGRADE">Upgrading from previous releases of FreeBSD</a></dt>
</dl>
</div>

<div class="SECT1">
<h2 class="SECT1"><a id="INTRO" name="INTRO">1 Introduction</a></h2>

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

<p>This distribution of FreeBSD 7.0-RELEASE is a snapshot distribution. It can be found
at <a href="http://www.FreeBSD.org/snapshots/"
target="_top">http://www.FreeBSD.org/snapshots/</a> or any of its mirrors. More
information on obtaining this (or other) snapshot distributions of FreeBSD can be found
in the <a href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/mirrors.html"
target="_top">&#8220;Obtaining FreeBSD&#8221; appendix</a> to the <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/" target="_top">FreeBSD
Handbook</a>.</p>

<p>All users are encouraged to consult the release errata before installing FreeBSD. The
errata document is updated with &#8220;late-breaking&#8221; 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 7.0-RELEASE can be found on the FreeBSD Web site.</p>
</div>

<div class="SECT1">
<hr />
<h2 class="SECT1"><a id="NEW" name="NEW">2 What's New</a></h2>

<p>This section describes the most user-visible new or changed features in FreeBSD since
6.0-RELEASE. In general, changes described here are unique to the 7-STABLE branch unless
specifically marked as [MERGED] features.</p>

<p>Typical release note items document recent security advisories issued after
6.0-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.</p>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="SECURITY" name="SECURITY">2.1 Security Advisories</a></h3>

<p>Two remote denials of service in BIND (one involving DNSSEC and one involving
recursive DNS queries) have been fixed. For more information, see security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:02.bind.asc"
target="_top">FreeBSD-SA-07:02.bind</a>. [MERGED]</p>

<p>Processing of IPv6 type 0 Routing Headers is now controlled by the <code
class="VARNAME">net.inet6.ip6.rthdr0_allowed</code> sysctl variable, which defaults to
<tt class="LITERAL">0</tt> (off). For more information, see security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:03.ipv6.asc"
target="_top">FreeBSD-SA-07:03.ipv6</a>. [MERGED]</p>

<p>A potential heap overflow in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=file&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">file</span>(1)</span></a> utility
(and the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=libmagic&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">libmagic</span>(3)</span></a>
library on which it relies) has been fixed. More details can be found in security
advisory <a href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:04.file.asc"
target="_top">FreeBSD-SA-07:04.file</a>. [MERGED]</p>

<p>Problems with <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=libarchive&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">libarchive</span>(3)</span></a>
and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tar</span>(1)</span></a> handling
corrupted <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tar</span>(5)</span></a> archive
files have been fixed. More details can be found in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:05.libarchive.asc"
target="_top">FreeBSD-SA-07:05.libarchive</a>. [MERGED]</p>

<p>A buffer overflow in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tcpdump&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tcpdump</span>(1)</span></a> has
been corrected. More information can be found in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:06.tcpdump.asc"
target="_top">FreeBSD-SA-07:06.tcpdump</a>. [MERGED]</p>

<p>A bug in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=named&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">named</span>(8)</span></a>, which
could result in an attacker being able to poison a resolver's DNS cache, has been fixed.
More details are included in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:07.bind.asc"
target="_top">FreeBSD-SA-07:07.bind</a>. [MERGED]</p>

<p>A buffer overflow in OpenSSL (fixed incorrectly in a previously security patch) has
been corrected. More details can be found in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:08.openssl.asc"
target="_top">FreeBSD-SA-07:08.openssl</a>. [MERGED]</p>

<p>An flaw that could lead to the disclosure of previously-generated <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=random&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">random</span>(4)</span></a> data
has been corrected. Information regarding this issue can be found in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-07:09.random.asc"
target="_top">FreeBSD-SA-07:09.random</a>. [MERGED]</p>

<p>Information disclosure issues found in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=openpty&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">openpty</span>(3)</span></a> and
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ptsname&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ptsname</span>(3)</span></a> have
been corrected. Information regarding this issue can be found in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-08:01.pty.asc"
target="_top">FreeBSD-SA-08:01.pty</a>. [MERGED]</p>

<p>A programming error in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=inet_network&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">inet_network</span>(3)</span></a>
Internet address manipulation function that could lead to overwriting a region of memory
with user defined data has been corrected. Information regarding this issue can be found
in security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-08:02.libc.asc"
target="_top">FreeBSD-SA-08:02.libc</a>. [MERGED]</p>

<p>An error that could allow <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sendfile&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sendfile</span>(2)</span></a> to
inappropriately access the contents of a file has been fixed. For more information, see
security advisory <a
href="http://security.FreeBSD.org/advisories/FreeBSD-SA-08:03.sendfile.asc"
target="_top">FreeBSD-SA-08:03.sendfile</a>. [MERGED]</p>

<p>&#13;</p>
</div>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="KERNEL" name="KERNEL">2.2 Kernel Changes</a></h3>

<p><a
href="http://www.FreeBSD.org/cgi/man.cgi?query=acpi&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">acpi</span>(4)</span></a> now has
support for the HPET time counter. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=acpi_ibm&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">acpi_ibm</span>(4)</span></a>
driver now supports setting the fan control mode to manual or automatic, and adjusting
the fan speed if the fan control mode is manual. To enable manual control of the fan
speed, the sysctl variable <code class="VARNAME">dev.acpi_ibm.<tt
class="REPLACEABLE"><i>0</i></tt>.fan</code> needs to be set to zero (manual). This
should only be used with extreme precaution, as disabling automatic fan control might
overheat the hardware and lead to permanent damage.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=apm&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">apm</span>(4)</span></a>
suspend/resume support has been improved.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cpufreq&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cpufreq</span>(4)</span></a> CPU
frequency control framework is now enabled in the <tt class="FILENAME">GENERIC</tt>
kernel.</p>

<p>Support for the Camellia block cipher has been added to the FreeBSD kernel. It can now
be specified as a cipher in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ipsec&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ipsec</span>(4)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=geli&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">geli</span>(8)</span></a>. More
information on Camellia can be found in RFC 4132.</p>

<p>The <tt class="LITERAL">options COMPAT_43</tt> kernel configuration option has been
deemed unnecessary and has been removed from <tt class="FILENAME">GENERIC</tt> and
related kernel configurations. This change may result in a small performance increase for
some workloads.</p>

<p>The dumb console driver (<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=dcons&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">dcons</span>(4)</span></a>) is now
enabled in the <tt class="FILENAME">GENERIC</tt> kernel.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ddb&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ddb</span>(4)</span></a> debugger
now provides the <tt class="LITERAL">show sleepq</tt> command. This takes a wait channel
as an argument and looks for a sleep queue associated with that wait channel.</p>

<p>A bug in file descriptor handling such that a simple <tt class="LITERAL">close(0);
dup(fd)</tt> sequence does not return descriptor <tt class="LITERAL">0</tt> in some
cases, has been fixed.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gdb&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gdb</span>(1)</span></a> remote
debugging interface now supports copying console messages to a remote debugger instance.
To enable this, set <tt class="LITERAL">debug.gdbcons="1"</tt> in <tt
class="FILENAME">loader.conf</tt>, enter <tt class="LITERAL">boot -d; gdb; step</tt> from
the loader prompt, then attach <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gdb&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gdb</span>(1)</span></a> from a
remote machine. The sysctl variable <code class="VARNAME">debug.gdbcons</code> can be
used to turn on/off this functionality.</p>

<p><a
href="http://www.FreeBSD.org/cgi/man.cgi?query=hwpmc&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">hwpmc</span>(4)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pmcstat&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pmcstat</span>(8)</span></a> now
support profiling of dynamically loaded kernel modules and shared objects loaded with <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=dlopen&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">dlopen</span>(3)</span></a>.</p>

<p>A new <code class="VARNAME">kern.hostuuid</code> sysctl variable has been added to
hold a host's Universally Unique Identifier (UUID). This UUID is computed or generated by
a new <tt class="FILENAME">rc.d/hostid</tt> startup script and, where possible, is saved
to disk to be persistent across reboots.</p>

<p>The <code class="OPTION">INCLUDE_CONFIG_FILE</code> kernel configuration option has
been improved. The full configuration of a running kernel can now be obtained via <tt
class="COMMAND">sysctl -b kern.conftxt</tt>. It can also be extracted from a kernel file
via <tt class="COMMAND">config -x kernelfile</tt>. To preserve the literal kernel
configuration with all the comments included, the <code class="OPTION">-C</code> option
of <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=config&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">config</span>(8)</span></a> can be
used.</p>

<p>Support for Kernel Scheduled Entities (KSE) is now a kernel option (previously it was
a mandatory feature in the kernel). It is enabled in the GENERIC kernel (thus there is no
change in functionality) for all platforms except sun4v.</p>

<p>The Linux ABI support was enhanced to support emulation of Linux 2.6.16. This is not
enabled by default. To turn it on the <code class="VARNAME">compat.linux.osrelease</code>
sysctl variable has to be set to <tt class="LITERAL">2.6.16</tt>. Note that this support
is still experimental.</p>

<p>Support for Message Signaled Interrupts (MSI) and Extended Message Signaled Interrupts
(MSI-X) has been added to the kernel's PCI support code. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=priv&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">priv</span>(9)</span></a> kernel
interface has been added. Its purpose is checking the availability of privilege for
threads and credentials. Unlike the existing <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=suser&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">suser</span>(9)</span></a>
interface, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=priv&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">priv</span>(9)</span></a> exposes
a named privilege identifier to the privilege checking code, allowing more complex
policies regarding the granting of privilege to be expressed.</p>

<p>FreeBSD now supports concurrent <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=read&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">read</span>(2)</span></a>/<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=readv&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">readv</span>(2)</span></a> access
to a file.</p>

<p>The kernel's <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sx&sektion=9&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">sx</span>(9)</span></a> locks have been
optimized to use simple atomic operations for the common cases of obtaining and releasing
shared and exclusive locks. While this change is not generally user-visible, it is the
basis for some substantial performance improvements.</p>

<p>The ULE process scheduler has been revised to improve its behavior, in particular
interactivity under load, for both uniprocessor and multiprocessor machines. This
implementation has commonly been referred to as &#8220;ULE 3.0&#8221;. (ULE 3.0 was
formerly known as SCHED_SMP, which in turn was based on version 2.0 of the ULE scheduler.
ULE 2.0 was never a part of any FreeBSD release, however it was the subject of many
development, testing, and benchmarking efforts.)</p>

<p>The <tt class="LITERAL">SIGCHLD</tt> signal queuing has been added. For each child
process whose status has been changed, a <tt class="LITERAL">SIGCHLD</tt> instance is
queued. If the signal is still pending, and the process changed status several times, the
signal information is updated to reflect the latest process status. There is a loader
tunable <code class="VARNAME">kern.sigqueue.queue_sigchild</code> which can control the
behavior, setting it to zero disables the <tt class="LITERAL">SIGCHLD</tt> queuing
feature.</p>

<p>A new sysctl variable <code class="VARNAME">kern.malloc_stats</code> has been added.
This allows exporting of kernel malloc statistics via a binary structure stream.</p>

<p>A new sysctl variable <code class="VARNAME">kern.forcesigexit</code> has been added.
This forces a process to sigexit if a trap signal is being held by the current thread or
ignored by the current process. It is enabled by default.</p>

<p>The pcvt(4) driver, an alternative to <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=syscons&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">syscons</span>(4)</span></a>, has
been removed, as it had fallen out of sync with the rest of the kernel.</p>

<p>RedZone, a buffer corruption protection for the kernel <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=malloc&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">malloc</span>(9)</span></a>
facility has been implemented. This detects both buffer underflows and overflows at
runtime on <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=free&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">free</span>(9)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=realloc&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">realloc</span>(9)</span></a>, and
prints backtraces from where memory was allocated and from where it was freed. For more
details, see the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=redzone&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">redzone</span>(9)</span></a>
manual page.</p>

<p>A new loader tunable <code class="VARNAME">vm.kmem_size_min</code> has been added.
This allows to specify a minimal size for <code class="VARNAME">vm.kmem_size</code>.</p>

<p>A new sysctl variable <code class="VARNAME">vm.zone_stats</code> has been added. This
allows to export <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uma&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uma</span>(9)</span></a> allocator
statistics via a binary structure stream.</p>

<p>The sysctl variable <code class="VARNAME">hw.pci.do_powerstate</code> has been split
into two sysctl variables <code class="VARNAME">hw.pci.do_powerstate_nodriver</code> and
<code class="VARNAME">hw.pci.do_powerstate_resume</code>. Also, these variables have been
changed from a boolean to a range. <tt class="LITERAL">0</tt> means no power management,
<tt class="LITERAL">1</tt> means conservative power management which any device class
that has caused problems is added to the watch list, <tt class="LITERAL">2</tt> means
aggressive power management where any device class that is not fundamental to the system
is added to the list, and <tt class="LITERAL">3</tt> means power them all down
unconditionally. The default values are <tt class="LITERAL">0</tt> for <code
class="VARNAME">hw.pci.do_powerstate_nodriver</code> and <tt class="LITERAL">1</tt> for
<code class="VARNAME">hw.pci.do_powerstate_resume</code>.</p>

<p>[ia64] The <tt class="FILENAME">GENERIC</tt> kernel now enables SMP support by
default.</p>

<p>Sample kernel configuration files <tt class="FILENAME">src/sys/<tt
class="REPLACEABLE"><i>arch</i></tt>/conf/MAC</tt> for the Mandatory Access Control
framework have been added.</p>

<p><code class="VARNAME">POSIX_TIMERS</code> support has been updated to 200112L.</p>

<p>An experimental support for POSIX message queue has been implemented.</p>

<p>The locking strategy for UNIX domain sockets has been revised to improve concurrency;
this change has yielded substantial performance improvements on various SMP workloads (in
particular, MySQL on 8-way amd64 systems) with little or no measured overhead on UP
systems.</p>

<p>Several minor but widespread changes to the Newbus API have been made In order to
support some on-going work with interrupt filtering. Because this change also breaks the
kernel ABI, all third-party device drivers will need to be modified and recompiled.</p>

<div class="SECT3">
<hr />
<h4 class="SECT3"><a id="BOOT" name="BOOT">2.2.1 Boot Loader Changes</a></h4>

<p>A new option <code class="OPTION">-S</code>, which allows setting the <tt
class="FILENAME">boot2</tt> serial console speed in the <tt
class="FILENAME">/boot.config</tt> file or on the <samp class="PROMPT">boot:</samp>
prompt line, has been added.</p>

<p>[amd64, i386] <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=firewire&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">firewire</span>(4)</span></a> and
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=dcons&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">dcons</span>(4)</span></a> support
has been added to the boot loader. To enable it, <tt
class="LITERAL">LOADER_FIREWIRE_SUPPORT=yes</tt> has to be added to <tt
class="FILENAME">/etc/make.conf</tt> and the loader be rebuilt.</p>

<p>[pc98] The <b class="APPLICATION">IPLware</b> support in boot0.5 has been enhanced to
support version 3.33.</p>
</div>

<div class="SECT3">
<hr />
<h4 class="SECT3"><a id="PROC" name="PROC">2.2.2 Hardware Support</a></h4>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cardbus&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cardbus</span>(4)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pccard&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pccard</span>(4)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pccbb&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pccbb</span>(4)</span></a>, and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ex&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">ex</span>(4)</span></a> drivers are now
buildable as kernel modules.</p>

<p>An <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=acpi_dock&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">acpi_dock</span>(4)</span></a>
driver has been added to provide support for controlling laptop docking station functions
via ACPI. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=acpi_thermal&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">acpi_thermal</span>(4)</span></a>
driver now supports overriding the <tt class="LITERAL">_PSV</tt>, <tt
class="LITERAL">_HOT</tt>, and <tt class="LITERAL">_CRT</tt> temperature values.</p>

<p>Support for the alpha architecture has been removed. Alpha support will remain on the
RELENG_5 and RELENG_6 codelines.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cardbus&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cardbus</span>(4)</span></a>
driver now supports <tt class="FILENAME">/dev/cardbus<tt
class="REPLACEABLE"><i>%d</i></tt>.cis</tt>.</p>

<p>[i386, amd64] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=coretemp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">coretemp</span>(4)</span></a>
driver has been added to provide temperature readings on <span
class="TRADEMARK">Intel</span>&reg; <span class="TRADEMARK">Core</span>&#8482;
processors. [MERGED]</p>

<p>The <tt class="LITERAL">est</tt> <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cpufreq&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cpufreq</span>(4)</span></a>
driver now supports frequency control for the VIA C7-M family of processors.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=firewire&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">firewire</span>(4)</span></a> code
is now MPSAFE.</p>

<p>icee(4), a generic I2C EEPROM driver, has been added.</p>

<p>A bug which prevented the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ichsmb&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ichsmb</span>(4)</span></a> kernel
module from unloading has been fixed.</p>

<p>[amd64, i386] Dual-core processors (such as the Intel Core Duo) now have both cores
available for use by default in SMP-enabled kernels. [MERGED]</p>

<p>[ia64, powerpc] The loader tunable <code class="VARNAME">debug.mpsafevfs</code> is set
to <tt class="LITERAL">1</tt> by default.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sab&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sab</span>(4)</span></a> driver
has been removed (it has been superceded by the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=scc&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">scc</span>(4)</span></a>
driver).</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=scc&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">scc</span>(4)</span></a> driver
has been added. This provides generic support for serial communications controllers and
delegates the control over each channel and mode to a subordinate driver such as <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uart&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uart</span>(4)</span></a>.</p>

<p>[amd64] The smbios(4) driver support for amd64 has been added.</p>

<p>[sun4v] FreeBSD now has preliminary support for the Sun Microsystems UltraSPARC-T1
architecture. FreeBSD/sun4v has been demonstrated to run on the Sun Fire T1000 and Sun
Fire T2000 servers. More information can be found on the <a
href="http://www.FreeBSD.org/platforms/sun4v.html" target="_top">sun4v Project</a>
page.</p>

<p>The tnt4882(4) driver, which supports the National Instruments PCI-GPIB card, has been
added.</p>

<p>[amd64, i386, ia64, sparc64] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uart&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uart</span>(4)</span></a> driver
has been included in the <tt class="FILENAME">GENERIC</tt> kernel by default. When both
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sio&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sio</span>(4)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uart&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uart</span>(4)</span></a> can
handle a given serial port, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sio&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sio</span>(4)</span></a> will
claim it.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uark&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uark</span>(4)</span></a> driver,
which supports the Arkmicro Technologies ARK3116-based USB serial adapter, has been
added.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uart&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uart</span>(4)</span></a> driver
now supports LOM (Lights Out Management) and RSC (Remote System Control) devices as
consoles.</p>

<p>The zs driver has been removed. Its functionality has been superceded by that of the
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uart&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uart</span>(4)</span></a>
driver.</p>

<p>[i386] A new loader tunable <code class="VARNAME">hw.apic.enable_extint</code> has
been added. This tunable can be used to disable masking of the ExtINT pin on the first
I/O APIC. At least one chipset for the Intel Pentium III seems to need this, even though
all of the pins in the 8259As are masked. The default is still to mask the ExtINT
pin.</p>

<div class="SECT4">
<hr />
<h5 class="SECT4"><a id="MM" name="MM">2.2.2.1 Multimedia Support</a></h5>

<p>The new midi(4) driver which is based on NetBSD's one has been added. This supports <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_cmi&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_cmi</span>(4)</span></a> and
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_emu10k1&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_emu10k1</span>(4)</span></a>
drivers.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_cmi&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_cmi</span>(4)</span></a>
driver is now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_emu10kx&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_emu10kx</span>(4)</span></a>
driver has been added. It supports Creative SoundBlaster Live! and Audigy series sound
cards with optional pseudo-multichannel playback.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_envy24&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_envy24</span>(4)</span></a>
driver has been added to support the Envy24 series of audio chips. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_envy24ht&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_envy24ht</span>(4)</span></a>
driver has been added to support the VIA Envy24HT series of audio chips. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_hda&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_hda</span>(4)</span></a>
driver has been added. It supports devices that conform to revision 1.0 of the Intel High
Definition Audio specification. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_solo&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_solo</span>(4)</span></a>
driver is now MPSAFE. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_spicds&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_spicds</span>(4)</span></a>
driver has been added to support I2S SPI audio codec chips. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uaudio&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uaudio</span>(4)</span></a> driver
now supports 24/32 bit audio formats and conversion.</p>
</div>

<div class="SECT4">
<hr />
<h5 class="SECT4"><a id="NET-IF" name="NET-IF">2.2.2.2 Network Interface Support</a></h5>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ath&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ath</span>(4)</span></a> driver
has been updated to HAL version 0.9.20.3. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=axe&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">axe</span>(4)</span></a> driver
now supports <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=altq&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">altq</span>(4)</span></a>.
[MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=bge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">bge</span>(4)</span></a> driver's
Jumbo frame support is now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=bge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">bge</span>(4)</span></a> driver
now supports big-endian architectures such as sparc64.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cm&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">cm</span>(4)</span></a> driver is now
MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cxgb&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cxgb</span>(4)</span></a> driver
has been added. It provides support for 10 Gigabit Ethernet adapters based on the Chelsio
T3 and T3B chipsets. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=edsc&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">edsc</span>(4)</span></a> driver,
which provides Ethernet discard network interfaces, has been added. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=el&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">el</span>(4)</span></a> driver has been
removed due to lack of use.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=em&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">em</span>(4)</span></a> driver has been
updated to version 6.7.3 from Intel. Among other changes, it now supports 80003, 82571,
82571EB, 82572 and 82575 based adapters, as well as onboard-NICs on ICH8-based
motherboards. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=em&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">em</span>(4)</span></a> driver now
includes initial support for suspend and resume features.</p>

<p>The performance of the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=em&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">em</span>(4)</span></a> driver has been
improved by using a fast interrupt handler and taskqueue instead of ithread handler. This
change can be disabled by defining <tt class="LITERAL">NO_EM_FASTINTR</tt> kernel option
for debugging purpose.</p>

<p>The IP over FireWire (<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=fwip&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">fwip</span>(4)</span></a>) driver
is now enabled in the <tt class="FILENAME">GENERIC</tt> kernel.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gem&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gem</span>(4)</span></a> driver
now supports <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=altq&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">altq</span>(4)</span></a>.</p>

<p>The firmware images needed by the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ipw&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ipw</span>(4)</span></a> driver
are now part of the FreeBSD base system. For the loaded firmware to work the license at
<tt class="FILENAME">/usr/share/doc/legal/intel_ipw/LICENSE</tt> must be agreed to and
<tt class="LITERAL">legal.intel_ipw.license_ack=1</tt> has to be added to <tt
class="FILENAME">/boot/loader.conf</tt>. Prior versions of the driver used the firmware
image in the <a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/net/ipw-firmware-kmod/pkg-descr"><tt
class="FILENAME">net/ipw-firmware-kmod</tt></a> port/package or the <a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/net/ipw-firmware/pkg-descr"><tt
class="FILENAME">net/ipw-firmware</tt></a> port/package.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=iwi&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">iwi</span>(4)</span></a> driver
now supports big-endian architectures such as sparc64.</p>

<p>The firmware images needed by the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=iwi&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">iwi</span>(4)</span></a> driver
are now part of the FreeBSD base system. For the loaded firmware to work the license at
<tt class="FILENAME">/usr/share/doc/legal/intel_iwi/LICENSE</tt> must be agreed to and
<tt class="LITERAL">legal.intel_iwi.license_ack=1</tt> has to be added to <tt
class="FILENAME">/boot/loader.conf</tt>. Prior versions of the driver used the firmware
image in the <a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/net/iwi-firmware-kmod/pkg-descr"><tt
class="FILENAME">net/iwi-firmware-kmod</tt></a> port/package or the <a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/net/iwi-firmware/pkg-descr"><tt
class="FILENAME">net/iwi-firmware</tt></a> port/package.</p>

<p>The ixgbe driver, which supports the Intel 10G PCI-Express adapter (82598), has been
added.</p>

<p>The lnc(4) driver has been removed. The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=le&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">le</span>(4)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pcn&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pcn</span>(4)</span></a> drivers
support all devices that were supported by lnc(4).</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=msk&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">msk</span>(4)</span></a> driver
has been added. It supports network interfaces using the Marvell/SysKonnect Yukon II
Gigabit Ethernet controller. [MERGED]</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mxge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mxge</span>(4)</span></a> driver,
which supports Myricom Myri10GE 10 Gigabit Ethernet adapters, has been added. For more
details, see <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mxge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mxge</span>(4)</span></a>.
[MERGED]</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nfe&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nfe</span>(4)</span></a> driver,
an open-source driver for nForce Ethernet devices, has been added, originally from
OpenBSD. This driver has replaced the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nve&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nve</span>(4)</span></a> driver in
the <tt class="FILENAME">GENERIC</tt> kernel.</p>

<p>[arm] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=npe&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">npe</span>(4)</span></a> driver,
which supports the Intel XScale Network Processing Engine, has been added. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nxge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nxge</span>(4)</span></a> driver,
which supports the Neterion Xframe 10 Gigabit Ethernet adapter, has been added.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=re&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">re</span>(4)</span></a> driver now
supports the D-Link DGE-528(T) Gigabit Ethernet card.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rum&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rum</span>(4)</span></a> driver
has been added. It supports WLAN adapters based on the Ralink RT2501USB and RT2601USB
chipsets.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ti&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">ti</span>(4)</span></a> driver now
supports big-endian architectures such as sparc64.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ufoma&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ufoma</span>(4)</span></a> driver
for FOMA (third generation mobile phone system by NTT DoCoMo, Inc. in Japan) has been
added. This should support other third generation mobile phones since the driver is based
on USB Implementation Guideline from MCPC (Mobile Computing Promotion Consortium) in
Japan.</p>

<p>The vgapci(4) driver has been added. This is a stub device driver for VGA PCI devices
and serves as a bus so that other drivers such as drm(4), <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=acpi_video&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">acpi_video</span>(4)</span></a>,
and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=agp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">agp</span>(4)</span></a> can
attach to it thus allowing multiple drivers for the same device.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=vge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">vge</span>(4)</span></a> driver
now supports <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=altq&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">altq</span>(4)</span></a>.
[MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wi&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">wi</span>(4)</span></a> driver is now
buildable as a kernel module.</p>

<p>[amd64, i386, pc98] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wlan_wep&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">wlan_wep</span>(4)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wlan_ccmp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">wlan_ccmp</span>(4)</span></a>,
and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wlan_tkip&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">wlan_tkip</span>(4)</span></a>
drivers have been included in the <tt class="FILENAME">GENERIC</tt> kernel by
default.</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wpi&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">wpi</span>(4)</span></a> driver
has been added to support the Intel 3945 Wireless LAN Controller.</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=zyd&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">zyd</span>(4)</span></a> driver
has been added. It provides support for ZyDAS ZD1211/ZD1211B USB IEEE 802.11 b/g wireless
network devices.</p>

<p>The network interface groups feature has been imported from OpenBSD. This feature
allows an administrator to, for example, apply firewall rules to an entire group of
interfaces. More information can be found in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ifconfig</span>(8)</span></a>.</p>

<p>The 802.11 protocol stack has been significantly reworked. Among the new features are
support for background scanning and roaming between APs, as well as support that will be
required by 802.11n-capable devices.</p>

<p>The 802.11 protocol stack now has support for 900 MHz cards, as well as quarter- and
half-channel support for 802.11a. [MERGED]</p>

<p>The FreeBSD network stack now runs entirely free of the Giant kernel lock, and relies
solely on the kernel's fine-grained locking primitives to manage parallelism. This
significantly improves the network stack's performance on multi-processor systems;
uni-processor systems could also see performance gains. ISDN4BSD and netatm have been
temporarily disconnected from the build. These modules all require the Giant kernel lock
for their operation; disconnecting them allows the removal of the NET_NEEDS_GIANT
compatability shim. It is planned to convert these modules to fine-grained kernel locking
and re-connect them for FreeBSD 7.1-RELEASE.</p>
</div>
</div>

<div class="SECT3">
<hr />
<h4 class="SECT3"><a id="NET-PROTO" name="NET-PROTO">2.2.3 Network Protocols</a></h4>

<p>[amd64, i386, pc98] An experimental BPF Just-In-Time compiler has been implemented for
both <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=bpf&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">bpf</span>(4)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ng_bpf&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ng_bpf</span>(4)</span></a>. To
enable this, the <tt class="LITERAL">options BPF_JITTER</tt> kernel option is needed. The
<code class="VARNAME">net.bpf_jitter.enable</code> can be used to disable this
feature.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=bpf&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">bpf</span>(4)</span></a> device
now supports several new <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ioctl&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ioctl</span>(2)</span></a> calls
to allow examining inbound vs. outbound packets, as well as packets that have been
injected onto the network.</p>

<p>The bridge(4) driver has been removed from the tree. Its functionality has been
completely replaced by <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=if_bridge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">if_bridge</span>(4)</span></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gre&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gre</span>(4)</span></a> driver,
which is for GRE encapsulation found in RFC 1701 and RFC 1702, now supports IPv6 over
GRE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=if_bridge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">if_bridge</span>(4)</span></a>
driver now supports RSTP, the Rapid Spanning Tree Protocol (802.1w). [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=if_bridge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">if_bridge</span>(4)</span></a>
driver now supports a <tt class="LITERAL">private</tt> flag on bridge ports; no private
port on a bridge can communicate with any other private port. This functionlity is useful
in scenarios such as number of customers VLANs bridged with a server network; it might be
desirable to prevent the customer VLANs from communicating with each other but allow all
of them to access the server network. The private flag on a bridge port can be set or
cleared via <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ifconfig</span>(8)</span></a>.</p>

<p>A hard-coded limit on the number of IPv4 multicast group memberships (formerly 20) has
been removed.</p>

<p>IPv6 multicast forwarding is now dynamically loadable, via the <tt
class="FILENAME">ip_mroute.ko</tt> module.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ipfw&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ipfw</span>(4)</span></a> packet
filter now supports filtering on Routing Header Type 0 and Mobile IPv6 Routing Header
Type 2 in addition to filtering on the non-differentiated presence of any Routing
Header.</p>

<p>The ip6fw(8) packet filter has been removed. Since <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ipfw&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ipfw</span>(4)</span></a> has
gained IPv6 support, it should be used instead. Please note that some rules might need to
be adjusted.</p>

<p>The KAME IPsec implementation has been removed. In its place, <tt
class="LITERAL">FAST_IPSEC</tt> is now the only IPsec implementation supported by the
FreeBSD kernel. The <tt class="LITERAL">IPSEC</tt> kernel configuration option, which
formerly enabled KAME IPsec, now enables <tt class="LITERAL">FAST_IPSEC</tt>. <tt
class="LITERAL">FAST_IPSEC</tt> now supports both IPv4 and IPv6, uses fine-grained kernel
locking, and supports hardware cryptographic acceleration.</p>

<p>Support for tunneling IPX over IP has been removed.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=lagg&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">lagg</span>(4)</span></a> driver,
ported from OpenBSD and NetBSD, has been added to support a variety of protocols and
algorithms for link aggregation, failover, and fault tolerance. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=natm&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">natm</span>(4)</span></a>, Native
Mode ATM protocol layer is now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ng_car&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ng_car</span>(4)</span></a>
Netgraph node has been added. It implements various traffic shaping and rate limiting
algorithms.</p>

<p>A new <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ng_deflate&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ng_deflate</span>(4)</span></a>
Netgraph node type has been added. It implements Deflate PPP compression. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ng_h4&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ng_h4</span>(4)</span></a>
Netgraph node is now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ng_ppp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ng_ppp</span>(4)</span></a>
Netgraph node is now MPSAFE. [MERGED]</p>

<p>A new <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ng_pred1&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ng_pred1</span>(4)</span></a>
Netgraph node type has been added to implement Predictor-1 PPP compression. [MERGED]</p>

<p>The default retransmit timer for NFS over TCP is now 60 seconds. This change prevents
the unnecessary retransmission of non-idempotent NFS requests. The <code
class="VARNAME">nfs_access_cache</code> variable in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rc.conf&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rc.conf</span>(5)</span></a> has
also been changed to 60.</p>

<p>The default minimum number of nfsiod kernel threads (<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sysctl&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sysctl</span>(8)</span></a>
variable <code class="VARNAME">vfs.nfs.iodmin</code>) has been changed from 4 to 0.</p>

<p>A new sysctl variable <code class="VARNAME">net.inet.icmp.reply_from_interface</code>
has been added. This allows the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=icmp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">icmp</span>(4)</span></a> reply to
non-local packets to be generated with the IP address the packet came through in. This is
useful for routers to show in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=traceroute&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">traceroute</span>(8)</span></a>
the actual path a packet has taken instead of the possibly different return path.</p>

<p>A new sysctl variable <code class="VARNAME">net.inet.icmp.quotelen</code> has been
added. This allows to change length of the quotation of the original packet in an ICMP
reply. The minimum of 8 bytes is internally enforced. The maximum quotation is the
remaining space in the reply mbuf. This option is added in response to the issues raised
in I-D <tt class="FILENAME">draft-gont-icmp-payload-00.txt</tt>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=icmp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">icmp</span>(4)</span></a> now
always quotes the entire TCP header when responding and allocate an mbuf cluster if
needed. This change fixes the TCP issues raised in I-D <tt
class="FILENAME">draft-gont-icmp-payload-00.txt</tt>.</p>

<p>A new socket option <tt class="LITERAL">IP_MINTTL</tt> has been added. This may be
used to set the minimum acceptable TTL a packet must have when received on a socket. All
packets with a lower TTL are silently dropped. This works on already connected/connecting
and listening sockets for RAW, UDP, and TCP. This option is only really useful when set
to <tt class="LITERAL">255</tt>, preventing packets from outside the directly connected
networks reaching local listeners on sockets. Also, this option allows userland
implementation of &#8220;The Generalized TTL Security Mechanism (GTSM)&#8221; found in
RFC 3682.</p>

<p>The kernel <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ppp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ppp</span>(4)</span></a> driver
now supports IPv6.</p>

<p>Stealth forwarding now supports IPv6 as well as IPv4. This behavior can be controlled
by using a new sysctl variable <code class="VARNAME">net.inet6.ip6.stealth</code>.</p>

<p>The <tt class="LITERAL">PIM</tt> kernel option has been removed. The corresponding
code is now included in the <tt class="LITERAL">MROUTING</tt> kernel option.</p>

<p>Support has been added for the RFC 3678 Source-Specific Multicast (SSM) socket API.
More details can be found in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sourcefilter&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sourcefilter</span>(3)</span></a>
manual page.</p>

<p>Support has been added for the Stream Control Transmission Protocol (SCTP). SCTP
implements a reliable, message-oriented transport protocol, and is defined in RFC 4960.
It is enabled in FreeBSD with the <tt class="LITERAL">SCTP</tt> kernel option and is part
of the <tt class="FILENAME">GENERIC</tt> kernel. More information can be found in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sctp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sctp</span>(4)</span></a> manual
page.</p>

<p>The <tt class="LITERAL">IPV6_V6ONLY</tt> socket option now works for UDP.</p>

<p>The <tt class="LITERAL">TCP_DROP_SYNFIN</tt> kernel option is now included in the
kernel by default. The <code class="VARNAME">net.inet.tcp.drop_synfin</code> sysctl
variable still defaults to <tt class="LITERAL">0</tt>.</p>

<p>The FreeBSD network stack now has support for TCP Segmentation Offload (TSO). TSO
reduces the overhead of sending bulk TCP data by allowing a network interface to convert
a large data transfer into multiple TCP segments to be sent on the network. This
functionality can be enabled or disabled on a per-interface basis with the <tt
class="LITERAL">tso</tt> and <tt class="LITERAL">-tso</tt> flags to <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ifconfig</span>(8)</span></a>.
Network interfaces and drivers supporting TSO currently include <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=em&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">em</span>(4)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mxge&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mxge</span>(4)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cxgb&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cxgb</span>(4)</span></a>.</p>

<p>FreeBSD now supports auto-sizing of TCP socket buffers. This allows the socket buffer
sizes to adapt dynamically to network conditions, rather than being set statically. The
behavior of this feature can be controlled using the <code
class="VARNAME">net.inet.tcp.sendbuf_*</code> and <code
class="VARNAME">net.inet.tcp.recvbuf_*</code> sysctl variables.</p>

<p>The <code class="VARNAME">net.link.tap.up_on_open</code> sysctl variable has been
added to the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tap&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tap</span>(4)</span></a> driver.
If enabled, new tap devices will marked <tt class="LITERAL">up</tt> upon creation.
[MERGED]</p>
</div>

<div class="SECT3">
<hr />
<h4 class="SECT3"><a id="DISKS" name="DISKS">2.2.4 Disks and Storage</a></h4>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=aac&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">aac</span>(4)</span></a> driver
now supports the Adaptec 2610SA SATA-RAID controller in some Hewlett-Packard
machines.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ahc&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ahc</span>(4)</span></a> driver is
now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ahd&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ahd</span>(4)</span></a> driver is
now MPSAFE.</p>

<p>The CAM subsystem is now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ciss&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ciss</span>(4)</span></a> driver
is now MPSAFE.</p>

<p>A new <tt class="LITERAL">GEOM_JOURNAL</tt> class has been added to the GEOM storage
transformation system. It supports block-level journaling operations, which can be used
by file system modules to perform file system journaling and to keep file systems in a
consistent state. (Currently, only UFS file systems are supported.) Its operation can be
controlled using the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gjournal&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gjournal</span>(8)</span></a>
utility.</p>

<p>A new GEOM_MULTIPATH class has been added to support multiple access paths to disk
devices. The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gmultipath&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gmultipath</span>(8)</span></a>
utility has been added to control the behavior of disk devices using this feature.</p>

<p>A new <tt class="LITERAL">GEOM_VIRSTOR</tt> class has been added to provide virtual
storage devices of arbitrary size with physical devices as backing store. More
information can be found in the manual page for its control utility, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gvirstor&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gvirstor</span>(8)</span></a>.</p>

<p>The GEOM class kernel module <tt class="FILENAME">g_md.ko</tt> has been renamed to <tt
class="FILENAME">geom_md.ko</tt> for consistency.</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=hptiop&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">hptiop</span>(4)</span></a> driver
has been added. It supports the Highpoint RocketRAID 3xxx and 4xxx series of SAS and SATA
RAID controllers.</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=hptrr&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">hptrr</span>(4)</span></a> driver
has been added, to support several HighPoint RocketRAID controllers (more details can be
found in the manual page). [MERGED]</p>

<p>[amd64, i386] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=hptmv&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">hptmv</span>(4)</span></a> driver
has been updated and now supports amd64 as well as PAE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=isp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">isp</span>(4)</span></a> driver is
now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mpt&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mpt</span>(4)</span></a> driver
has been updated to support various new features such as RAID volume and RAID member
state/settings reporting, periodic volume re-synchronization status reporting, and sysctl
variables for volume re-synchronization rate, volume member write cache status, and
volume transaction queue depth. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mpt&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mpt</span>(4)</span></a> driver
now supports SAS HBA (partially), 64-bit PCI, and large data transfer. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mpt&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mpt</span>(4)</span></a> driver is
now MPSAFE.</p>

<p>The rr232x(4) driver, which appeared in some older versions of FreeBSD, is no longer
supported, and has been superceded by the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=hptrr&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">hptrr</span>(4)</span></a> driver.
At the request of Highpoint, the rr232x(4) driver has been removed. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=twa&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">twa</span>(4)</span></a> driver
has been updated to the 3.70.03.007 release on the 3ware Web site. It now supports AMCC's
3ware 9650 series of SATA controllers. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=iscsi_initiator&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">iscsi_initiator</span>(4)</span></a> driver, a kernel driver for
the Internet SCSI (iSCSI) protocol, has been added. This driver allows access to remote
SCSI devices over TCP/IP networks. The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=iscontrol&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">iscontrol</span>(8)</span></a>
userland utility is used to control the operation of the driver.</p>

<p>The scsi_sg driver, which emulates a significant subset of the Linux SCSI SG
passthrough device API, has been added. It is intended to allow programs running under
Linux emulation (as well as native FreeBSD applications) to access the <tt
class="FILENAME">/dev/sg<tt class="REPLACEABLE"><i>*</i></tt></tt> devices supported by
Linux. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=umass&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">umass</span>(4)</span></a> driver
now supports <tt class="LITERAL">PLAY_MSF</tt>, <tt class="LITERAL">PLAY_TRACK</tt>, <tt
class="LITERAL">PLAY_TRACK_REL</tt>, <tt class="LITERAL">PAUSE</tt>, <tt
class="LITERAL">PLAY_12</tt> commands so that the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cdcontrol&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cdcontrol</span>(1)</span></a>
utility can handle a USB CD drive.</p>
</div>

<div class="SECT3">
<hr />
<h4 class="SECT3"><a id="FS" name="FS">2.2.5 File Systems</a></h4>

<p>A part of the FreeBSD NFS subsystem (the interface with the protocol stack and
callouts, the NFS client side) is now MPSAFE.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pseudofs&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pseudofs</span>(9)</span></a>
pseudo file system construction kit and all of its consumers (<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=procfs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">procfs</span>(5)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=linprocfs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">linprocfs</span>(5)</span></a> and
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=linsysfs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">linsysfs</span>(5)</span></a>),
are now MPSAFE.</p>

<p>[amd64, i386] Experimental support for the TMPFS file system has been added. TMPFS is
an efficient memory file system originally developed for the NetBSD project during the
Google Summer of Code. More information can be found in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tmpfs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tmpfs</span>(5)</span></a> manual
page.</p>

<p>The unionfs file system has been re-implemented. This version solves many crashing and
locking issues compared to the previous implementation. It also adds new
&#8220;transparent&#8221; and &#8220;masquerade&#8221; modes for automatically creating
files in the upper file system layer of unions. More information can be found in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mount_unionfs&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mount_unionfs</span>(8)</span></a>
manual page. [MERGED]</p>

<p>[amd64, i386, pc98] Support for Sun's ZFS has been added. More information about this
file system can be found in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=zfs&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">zfs</span>(8)</span></a> manual
page or on the <a href="http://www.opensolaris.org/os/community/zfs/"
target="_top">OpenSolaris ZFS page</a>.</p>

<p>Initial (read-only) support for SGI's XFS file system has been added.</p>
</div>
</div>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="USERLAND" name="USERLAND">2.3 Userland Changes</a></h3>

<p>The addr2ascii() and ascii2addr() library calls, originally introduced by the INRIA
IPv6 implementation, have been removed from <tt class="FILENAME">libc</tt>. They have no
consumers in the FreeBSD base system. In a related change, support for <tt
class="LITERAL">AF_LINK</tt> addresses has been added to <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=getnameinfo&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">getnameinfo</span>(3)</span></a>.</p>

<p>Padding of <code class="VARNAME">ai_addrlen</code> in <code class="VARNAME">struct
addrinfo</code> has been removed, which was originally for the ABI compatibility. For
example, this change breaks the ABI compatibility of the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=getaddrinfo&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">getaddrinfo</span>(3)</span></a>
function on 64-bit architectures, including FreeBSD/amd64, FreeBSD/ia64, and
FreeBSD/sparc64.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=atrun&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">atrun</span>(8)</span></a> utility
has gained PAM support. Before running a job for a user account, it will check the
account status with PAM and refuse to run the job if the account is unavailable. The
default definition of an unavailable account includes those expired and administratively
locked out with <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pw&sektion=8&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">pw</span>(8)</span></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=camcontrol&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">camcontrol</span>(8)</span></a>
utility now supports a <tt class="COMMAND">readcap</tt> command to display the size of
devices. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cron&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cron</span>(8)</span></a> daemon
has gained PAM support. Before running a command from account's private <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=crontab&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">crontab</span>(5)</span></a> file,
it will check the account status with PAM and skip the command if the account is
unavailable. The default definition of an unavailable account includes those expired and
administratively locked out with <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pw&sektion=8&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">pw</span>(8)</span></a>. In addition,
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=cron&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">cron</span>(8)</span></a> will
skip commands from private <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=crontab&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">crontab</span>(5)</span></a> files
if a <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nologin&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nologin</span>(5)</span></a> file
exists, unless the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=crontab&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">crontab</span>(5)</span></a>
owner's login class is exempt from <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nologin&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nologin</span>(5)</span></a>
restriction. Commands from the system file <tt class="FILENAME">/etc/crontab</tt> are not
subject to the PAM check.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=dhclient&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">dhclient</span>(8)</span></a>
program now supports the Classless Static Route option as described in RFC 3442.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=dump&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">dump</span>(8)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=restore&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">restore</span>(8)</span></a>
programs now attempt to save and restore extended attribute information on files.</p>

<p>A <b class="APPLICATION">libelf</b> library implementing the SVR4 <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=elf&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">elf</span>(3)</span></a> / <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gelf&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gelf</span>(3)</span></a> API for
manipulating ELF files has been added.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=fdisk&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">fdisk</span>(8)</span></a> program
now supports a <code class="OPTION">-p</code> flag to print the slice table in fdisk
configuration format. [MERGED]</p>

<p>T/TCP support in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=finger&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">finger</span>(1)</span></a> (and
the <code class="OPTION">-T</code> flag used to enable it) has been removed.</p>

<p>A bug in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=find&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">find</span>(1)</span></a> program
which prevents numeric arguments for <code class="OPTION">-user</code> and <code
class="OPTION">-group</code> from working as expected has been fixed.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">freebsd-update</span>(8)</span></a> command now supports an <tt
class="COMMAND">upgrade</tt> command to perform binary upgrades between different
versions of FreeBSD. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ftpd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ftpd</span>(8)</span></a> utility
now has support for RFC2389 (FEAT) and rudimentary support for RFC2640 (UTF8). The
RFC2640 support is optional and can be enabled using the new <code
class="OPTION">-8</code> flag. More information can be found in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ftpd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ftpd</span>(8)</span></a> manual
page. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gcc&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gcc</span>(1)</span></a> SSP
(Stack-Smashing Protector) support is now enabled by default.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gbde&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gbde</span>(8)</span></a> utility
now supports <code class="OPTION">-k</code> and <code class="OPTION">-K</code> options to
specify a key file in addition to a passphrase.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gpt&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gpt</span>(8)</span></a> utility
now supports setting GPT partition labels.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=gvinum&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">gvinum</span>(8)</span></a>
utility now supports the <tt class="COMMAND">resetconfig</tt> sub-command.</p>

<p>An implementation of Generic Security Service API (GSS-API) version 2 and its C
binding described in RFC2743 and RFC2744 has been added. This is a new extensible GSS-API
layer which can support GSS-API plugins, similar to the Solaris implementation, and the
Kerberos 5 GSS mechanism has been rewritten as a plugin library for the new
implementation.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=hccontrol&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">hccontrol</span>(8)</span></a>
utility now supports HCI node autodetection.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=id&sektion=1&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">id</span>(1)</span></a> utility now
prints the effective user ID after the group ID.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ipfwpcap&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ipfwpcap</span>(8)</span></a>
utility has been added; it captures packets on a <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=divert&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">divert</span>(4)</span></a> socket
and writes them as <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pcap&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pcap</span>(3)</span></a> (also
known as <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tcpdump&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tcpdump</span>(1)</span></a>)
format data to a file or pipe. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=kdump&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">kdump</span>(1)</span></a> program
now supports printing flags in a system call argument by using symbol names.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=kenv&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">kenv</span>(1)</span></a> utility
now supports a <code class="OPTION">-q</code> flag to suppress warnings.</p>

<p><a
href="http://www.FreeBSD.org/cgi/man.cgi?query=kgdb&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">kgdb</span>(1)</span></a> now
supports a <code class="OPTION">-w</code> option to open kmem-based targets in read-write
mode. This allows one to use kgdb on <tt class="FILENAME">/dev/mem</tt> and be able to
patch memory on a live system.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=libarchive&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">libarchive</span>(3)</span></a>
library now supports POSIX.1e-style Extended Attributes.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=libarchive&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">libarchive</span>(3)</span></a>
library now contains support for <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ar&sektion=1&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">ar</span>(1)</span></a>-style
archives.</p>

<p>The <b class="APPLICATION">libc</b> library now includes initial implementation of
symbol maps and symbol version definitions.</p>

<p>The <b class="APPLICATION">libedit</b> library has been updated from the NetBSD source
tree as of August 2005.</p>

<p>The <b class="APPLICATION">libm</b> library now includes initial implementation of
symbol maps and symbol version definitions.</p>

<p>A new <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=malloc&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">malloc</span>(3)</span></a>
implementation has been introduced. This implementation, sometimes referred to as
&#8220;jemalloc&#8221;, was designed to improve the performance of multi-threaded
programs, particularly on SMP systems, while preserving the performance of
single-threaded programs. Due to the use of different algorithms and data structures,
jemalloc may expose some previously-unknown bugs in userland code, although most of the
FreeBSD base system and common ports have been tested and/or fixed. Note that jemalloc
uses <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mmap&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mmap</span>(2)</span></a> to
obtain memory and only uses <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sbrk&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sbrk</span>(2)</span></a> under
limited circumstances (and then only for 32-bit architectures). As a result, the <tt
class="LITERAL">datasize</tt> resource limit has little practical effect for typical
applications. The <tt class="LITERAL">vmemoryuse</tt> resource limit, however, can be
used to bound the total virtual memory used by a process, as described in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=limits&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">limits</span>(1)</span></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mdconfig</span>(8)</span></a>
utility now supports producing device listings formatted as XML. Currently, the <tt
class="COMMAND">list</tt> and <tt class="COMMAND">query</tt> sub-commands support this
feature.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mdconfig</span>(8)</span></a>
utility's <code class="OPTION">-u</code> option now supports specifying multiple devices
separated by comma character.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mdmfs&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mdmfs</span>(8)</span></a> utility
now supports a <code class="OPTION">-P</code> flag to allow skipping the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=newfs&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">newfs</span>(8)</span></a> process
when using a vnode-backed disk.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mdmfs&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mdmfs</span>(8)</span></a> utility
now supports a <code class="OPTION">-E</code> flag to allow to specify location of the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mdconfig</span>(8)</span></a>
utility instead of using the default one (<tt class="FILENAME">/sbin/mdconfig</tt>).</p>

<p>A new function <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=memmem&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">memmem</span>(3)</span></a> has
been implemented in <tt class="FILENAME">libc</tt>. This is the binary equivalent to <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=strstr&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">strstr</span>(3)</span></a> and
found in <tt class="FILENAME">glibc</tt>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mount&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mount</span>(8)</span></a> <tt
class="LITERAL">dev</tt> and <tt class="LITERAL">nodev</tt> options have been
removed.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mount&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mount</span>(8)</span></a> utility
now supports <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mqueuefs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mqueuefs</span>(5)</span></a>.</p>

<p>A bug which prevents the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mount&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mount</span>(8)</span></a> utility
from converting a read-only mount to read-write via <tt class="COMMAND">mount -u -o
rw</tt>, has been fixed.</p>

<p>A number of the file system-specific <tt class="COMMAND">mount_<tt
class="REPLACEABLE"><i>*</i></tt></tt> utilities have been removed, in favor of the more
general <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mount&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mount</span>(8)</span></a> command
with a <code class="OPTION">-t</code> option. Specifically, these commands are: <tt
class="COMMAND">mount_devfs</tt>, <tt class="COMMAND">mount_ext2fs</tt>, <tt
class="COMMAND">mount_fdescfs</tt>, <tt class="COMMAND">mount_linprocfs</tt>, <tt
class="COMMAND">mount_procfs</tt>, <tt class="COMMAND">mount_std</tt>, <tt
class="COMMAND">mount_linsysfs</tt>, <tt class="COMMAND">mount_reiserfs</tt>, and <tt
class="COMMAND">mount_umapfs</tt>.</p>

<p>The mrouted(8) multicast routing daemon has been removed from the FreeBSD base system.
It implements the DVMRP multicast routing protocol, which has largely been replaced by
PIM in many multicast installations. The related map-mbone(8) and mrinfo(8) utilities
have also been removed. These programs are now available in the FreeBSD Ports Collection
as <a href="http://www.FreeBSD.org/cgi/url.cgi?ports/net/mrouted/pkg-descr"><tt
class="FILENAME">net/mrouted</tt></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=netstat&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">netstat</span>(1)</span></a>
utility now supports printing <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sctp&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sctp</span>(4)</span></a> protocol
statistics.</p>

<p>The <tt class="FILENAME">/etc/nsswitch.conf</tt> file is now installed statically
instead of being generated on every reboot.</p>

<p>The objformat(1) utility and getobjformat(3) library (the last remnants of a.out
object file support) have been removed.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pam_nologin&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pam_nologin</span>(8)</span></a>
module no longer provides an authentication function; instead it now provides an account
management function. Third-party files in <tt class="FILENAME">/usr/local/etc/pam.d</tt>
may need manual editing; specifically, lines in these files of the form:</p>

<pre class="SCREEN">
auth    required        pam_nologin.so  no_warn
</pre>

<br />
<br />
<p>These lines need to have the word <tt class="LITERAL">auth</tt> replaced with the word
<tt class="LITERAL">account</tt>.</p>

<p><a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nscd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nscd</span>(8)</span></a> has been
added. It is a daemon that caches the results of nsswitch lookups (such as those to the
password, group, and services databases) for improved performance.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pkill&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pkill</span>(1)</span></a> utility
now supports a <code class="OPTION">-F</code> option which allows to restrict matches to
a process whose PID is stored in the pidfile file. When another new option <code
class="OPTION">-L</code> is also specified, the pidfile file must be locked with the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=flock&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">flock</span>(2)</span></a> syscall
or created with <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pidfile&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pidfile</span>(3)</span></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pkill&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pkill</span>(1)</span></a> utility
now supports a <code class="OPTION">-I</code> flag which works like <code
class="OPTION">-i</code> of <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rm&sektion=1&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">rm</span>(1)</span></a>. When this flag
is specified, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pkill&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pkill</span>(1)</span></a> will
ask for confirmation before sending a signal to each matching process.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pmcstat&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pmcstat</span>(8)</span></a>
program has seen several enhancements: It can now log over a network socket to a remote
host. The <code class="OPTION">-c</code> now takes a comma-seperated list of CPUs to
configure for PMC allocation. The <code class="OPTION">-t</code> option has been enhanced
to take a regular expression for selecting processes based on their command names. <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pmcstat&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pmcstat</span>(8)</span></a> now
allocates system PMCs on all CPUs by default, not just CPU 0.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=powerd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">powerd</span>(8)</span></a>
program now supports a <code class="OPTION">-P</code> option, which specifies a pidfile
to use.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pw&sektion=8&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">pw</span>(8)</span></a> program now
supports a <code class="OPTION">-M</code> option to set the permissions of a user's newly
created home directory. [MERGED]</p>

<p>The DNS resolver library in FreeBSD's <b class="APPLICATION">libc</b> has been updated
to that from BIND 9.4.1.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rpcbind&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rpcbind</span>(8)</span></a>
program can now bind its TCP listening socket to an IP address other than INADDR_ANY
using the <code class="OPTION">-h</code> flag. The new <code class="OPTION">-6</code>
flag allows it to bind to IPv6 addresses only.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rpcgen&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rpcgen</span>(1)</span></a>
utility now generates headers and stub files that can be used with ANSI C compilers by
default.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rpc.lockd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rpc.lockd</span>(8)</span></a> and
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rpc.statd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rpc.statd</span>(8)</span></a>
programs now accept <code class="OPTION">-p</code> options to indicate which port they
should bind to. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rtld&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rtld</span>(1)</span></a> runtime
linker now supports ELF symbol versioning using GNU semantics. This implementation aims
to be compatible with symbol versioning support as implemented by GNU libc and documented
in <a href="http://people.redhat.com/~drepper/symbol-versioning"
target="_top">http://people.redhat.com/~drepper/symbol-versioning</a> and LSB 3.0. Also,
<code class="FUNCTION">dlvsym()</code> function has been added to allow lookups for a
specific version of a given symbol.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sa&sektion=8&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">sa</span>(8)</span></a> utility now
supports <code class="OPTION">-U</code> and <code class="OPTION">-P</code> flags. They
can be used to specify the per-user and per-process summary file location,
respectively.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sade&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sade</span>(8)</span></a> disk
partitioning and labeling utility has been added. This utility is based on the partition
editing bits of <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sysinstall&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">sysinstall</span>(8)</span></a>.</p>

<p>A bug in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sed&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sed</span>(1)</span></a> utility
which can cause incorrect calculation of pattern space length in some cases has been
fixed.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sed&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sed</span>(1)</span></a> utility
now supports case-insensitive pattern matching; this feature can be enabled by using the
<tt class="LITERAL">I</tt> flag after the closing delimiter for a regular expression.</p>

<p>The behavior of the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=setenv&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">setenv</span>(3)</span></a> family
of library calls has been changed from the historic BSD API to the behavior mandated by
POSIX. As a result, several base system utility that relied on the old API have been
updated to track this change.</p>

<p>The <code class="OPTION">-h</code> flag to <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=setfacl&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">setfacl</span>(1)</span></a> now
properly sets the ACL on a symbolic link, not the link target.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sockstat&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sockstat</span>(1)</span></a>
utility, which shows connected and listening network sockets, now supports a new <code
class="OPTION">-P</code> command-line option, which can be used to filter displayed
sockets by protocol name (as listed in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=protocols&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">protocols</span>(5)</span></a>).</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sysctl&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sysctl</span>(8)</span></a>
utility now supports a <code class="OPTION">-q</code> flag to suppress a limited set of
warnings and errors.</p>

<p>The version of tcpslice in the FreeBSD base system has been removed due to
obsolescence. A more up-to-date version can be found in the Ports Collection as <a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/net/tcpslice/pkg-descr"><tt
class="FILENAME">net/tcpslice</tt></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=time&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">time</span>(1)</span></a> utility
now prints the time that a given command has been running if sent a <tt
class="LITERAL">SIGINFO</tt> signal.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=top&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">top</span>(1)</span></a> program
now supports a <code class="OPTION">-a</code> flag to display process titles from their
argument vectors; this feature is useful for watching processes that change their titles
via <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=setproctitle&sektion=3&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">setproctitle</span>(3)</span></a>.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=top&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">top</span>(1)</span></a> program
now supports a <code class="OPTION">-j</code> flag to display the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=jail&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">jail</span>(8)</span></a> ID for
each process. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=touch&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">touch</span>(1)</span></a> utility
now supports a <code class="OPTION">-A</code> flag that allows the access and
modification times of a file to be adjusted by a specified value. [MERGED]</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=truss&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">truss</span>(1)</span></a> utility
now supports an <code class="OPTION">-s</code> flag for the same functionality as the
strace utility (<a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/devel/strace/pkg-descr"><tt
class="FILENAME">devel/strace</tt></a>).</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=truss&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">truss</span>(1)</span></a> utility
no longer depends on the availability of the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=procfs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">procfs</span>(5)</span></a> file
system; it uses the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ptrace&sektion=2&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ptrace</span>(2)</span></a>
interface instead for controlling a traced process.</p>

<p>[powerpc] The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=truss&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">truss</span>(1)</span></a> utility
now supports FreeBSD/powerpc.</p>

<p>The usbd(8) utility has been removed. The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=devd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">devd</span>(8)</span></a> utility
and its configuration file now support functionality which is equivalent to it.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=uuidgen&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">uuidgen</span>(1)</span></a>
utility has been moved from <tt class="FILENAME">/usr/bin</tt> to <tt
class="FILENAME">/bin</tt>.</p>

<p>The vnconfig(8) utility, which was long ago replaced by <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mdconfig</span>(8)</span></a>, has
been removed.</p>

<p>The wicontrol(8) utility has been removed. Configuration functions for <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wi&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">wi</span>(4)</span></a> interfaces
should be performed using <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ifconfig</span>(8)</span></a>.</p>

<p>The shared library version number of all libraries has been updated due to some
possible ABI changes. The libraries include: snmp_<tt class="REPLACEABLE"><i>*</i></tt>,
libdialog, libg2c, libobjc, libreadline, libregex, libstdc++, libkrb5, libalias,
libarchive, libbegemot, libbluetooth, libbsnmp, libbz2, libc_r, libcrypt, libdevstat,
libedit, libexpat, libfetch, libftpio, libgpib, libipsec, libkiconv, libmagic, libmp,
libncp, libncurses, libnetgraph, libngatm, libopie, libpam, libpthread, libradius,
libsdp, libsmb, libtacplus, libthr, libthread_db, libugidfw, libusbhid, libutil, libvgl,
libwrap, libypclnt, libm, libcrypto, libssh, and libssl.</p>

<p>The <code class="FUNCTION">wcsdup()</code> function has been implemented. This
function is popular in Microsoft and GNU systems.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wlandebug&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">wlandebug</span>(8)</span></a>
utility has been added to the main FreeBSD source tree (it previously lived in a tools
area). It provides control over a number of types of debugging output in the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wlan&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">wlan</span>(4)</span></a> module
and related drivers, and can be useful for debugging wireless issues.</p>

<p>The <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=wpa_passphrase&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">wpa_passphrase</span>(8)</span></a> utility has been added. It
generates a 256-bit pre-shared WPA key from an ASCII passphrase. [MERGED]</p>

<div class="SECT3">
<hr />
<h4 class="SECT3"><a id="RC-SCRIPTS" name="RC-SCRIPTS">2.3.1 <tt
class="FILENAME">/etc/rc.d</tt> Scripts</a></h4>

<p>The <tt class="FILENAME">ftpd</tt> script for stand-alone <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ftpd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ftpd</span>(8)</span></a> has been
added.</p>

<p>The <tt class="FILENAME">gbde_swap</tt> script has been removed in favor a new <tt
class="FILENAME">encswap</tt> script which also supports <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=geli&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">geli</span>(8)</span></a> for swap
encryption.</p>

<p>The <tt class="FILENAME">geli</tt> and <tt class="FILENAME">geli2</tt> scripts has
been added for <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=geli&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">geli</span>(8)</span></a> device
configuration on boot.</p>

<p>The <tt class="FILENAME">ike</tt> script for IPsec IKE daemon has been removed because
no such daemon is included in the base system.</p>

<p>The <tt class="FILENAME">mdconfig</tt> script to handle vnode backed <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=md&sektion=4&manpath=FreeBSD+7.0-RELEASE"><span
 class="CITEREFENTRY"><span class="REFENTRYTITLE">md</span>(4)</span></a> devices has
been added. This is a replacement of the <tt class="FILENAME">ramdisk</tt> script, and
all of variables in <code class="VARNAME">ramdisk_*</code> have been changed to <code
class="VARNAME">mdconfig_*</code>. Also, two new <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=rc.conf&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">rc.conf</span>(5)</span></a>
variables <code class="VARNAME">mdconfig_<tt
class="REPLACEABLE"><i>*</i></tt>_files</code> and <code class="VARNAME">mdconfig_<tt
class="REPLACEABLE"><i>*</i></tt>_cmd</code> have been added. For example:</p>

<pre class="PROGRAMLISTING">
mdconfig_md0="-t malloc -s 10m"
mdconfig_md1="-t vnode -f /var/foo.img"
</pre>

<p>The <tt class="FILENAME">rcconf.sh</tt> script in <tt class="FILENAME">/etc/rc.d</tt>
has been removed and a variable <code class="VARNAME">early_late_divider</code>, which
designates the script to separate the early and late stages of the boot process, has been
added.</p>

<p>The <tt class="FILENAME">rc.initdiskless</tt> script now uses <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=tar&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">tar</span>(1)</span></a> instead
of <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pax&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pax</span>(1)</span></a> because
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pax&sektion=1&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pax</span>(1)</span></a> needs a
writable temporary directory that may not be available when this script runs.</p>

<p>The <tt class="FILENAME">pccard</tt> script has been removed since OLDCARD is
deprecated.</p>

<p>The <tt class="FILENAME">sendmail</tt> script no longer rebuilds the aliases database
if it is missing or older than the aliases file. [MERGED] If desired, set the new rc.conf
option <code class="VARNAME">sendmail_rebuild_aliases</code> to "YES" to restore that
functionality.</p>

<p>The <code class="VARNAME">removable_interfaces</code> variable has been removed.</p>

<p>A new keyword <tt class="LITERAL">NOAUTO</tt> in <code class="VARNAME">ifconfig_<tt
class="REPLACEABLE"><i>ifn</i></tt></code> has been added. This prevents configuration of
an interface at boot time or via <tt class="FILENAME">/etc/pccard_ether</tt>, and allows
<tt class="FILENAME">/etc/rc.d/netif</tt> to be used to start and stop an interface on a
purely manual basis.</p>

<p>The <tt class="FILENAME">/etc/rc.d/nfslocking</tt> script has been deprecated and will
be removed in a future release. It has been replaced by the <tt
class="FILENAME">/etc/rc.d/lockd</tt> and <tt class="FILENAME">/etc/rc.d/statd</tt>
scripts. [MERGED]</p>
</div>
</div>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="CONTRIB" name="CONTRIB">2.4 Contributed Software</a></h3>

<p><b class="APPLICATION">Intel ACPI-CA</b> has been updated to 20070320.</p>

<p><b class="APPLICATION">awk</b> has been updated from the 24 April 2005 release to the
1 May 2007 release. [MERGED]</p>

<p><b class="APPLICATION">BIND</b> has been updated from 9.3.3 to 9.4.2.</p>

<p><b class="APPLICATION">BSNMPD</b> has been updated from 1.11 to 1.12.</p>

<p><b class="APPLICATION">BZIP2</b> has been updated from 1.0.3 to 1.0.4. [MERGED]</p>

<p>GNU <b class="APPLICATION">Diffutils</b> has been updated from 2.7 to 2.8.7.
[MERGED]</p>

<p><b class="APPLICATION">DRM</b> has been updated to a snapshot from DRI CVS as of
20060517. [MERGED]</p>

<p>The Forth Inspired Command Language (<b class="APPLICATION">FICL</b>) used in the boot
loader has been updated to 3.03.</p>

<p><b class="APPLICATION">FILE</b> has been updated from 4.12 to 4.23.</p>

<p><b class="APPLICATION">GCC</b> has been updated from 3.4.6 to 4.2.1.</p>

<p><b class="APPLICATION">GNU Readline library</b> has been updated from 5.0 to 5.2 patch
2. [MERGED]</p>

<p>The GNU version of <b class="APPLICATION">gzip</b> has been replaced with a modified
version of gzip ported from NetBSD. [MERGED]</p>

<p><b class="APPLICATION">IPFilter</b> has been updated from 4.1.13 to 4.1.28.
[MERGED]</p>

<p><b class="APPLICATION">less</b> has been updated from v394 to v416. [MERGED]</p>

<p><b class="APPLICATION">libpcap</b> has been updated from 0.9.4 to 0.9.8.</p>

<p><b class="APPLICATION">netcat</b> has been updated from the version included in
OpenBSD 3.9 to the version included in OpenBSD 4.1. [MERGED]</p>

<p><b class="APPLICATION">OpenSSL</b> has been updated from 0.9.7e to 0.9.8e.</p>

<p><b class="APPLICATION">ncurses</b> has been updated from 5.2-20020615 to 5.6-20061217.
ncurses now also has wide character support. [MERGED]</p>

<p><b class="APPLICATION">hostapd</b> has been updated from version 0.3.9 to version
0.5.8.</p>

<p><b class="APPLICATION">PF</b> has been updated from OpenBSD version 3.7 to OpenBSD
version 4.1. This update includes a number of functional enhancements. Two notable
changes are that <tt class="LITERAL">keep state</tt> is now the default behavior for
rules in <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=pf.conf&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">pf.conf</span>(5)</span></a> and
that <tt class="LITERAL">flags S/SA</tt> is now the default flags setting for TCP rules.
The options <tt class="LITERAL">no state</tt> and <tt class="LITERAL">flags any</tt> can
be used to disable stateful filtering or TCP flags checking, respectively.</p>

<p><b class="APPLICATION">sendmail</b> has been updated from 8.13.8 to 8.14.2.
[MERGED]</p>

<p><b class="APPLICATION">tcpdump</b> has been updated from 3.9.4 to 3.9.8.</p>

<p>The timezone database has been updated from the <b class="APPLICATION">tzdata2006g</b>
release to the <b class="APPLICATION">tzdata2007k</b> release. [MERGED]</p>

<p><b class="APPLICATION">tip</b> has been updated to a snapshot from OpenBSD as of
20060831.</p>

<p>TrustedBSD <b class="APPLICATION">OpenBSM</b>, has been updated from version 1.0 alpha
12 to version 1.0.</p>

<p><b class="APPLICATION">WPA Supplicant</b> has been updated from version 0.3.9 to
version 0.5.8.</p>
</div>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="PORTS" name="PORTS">2.5 Ports/Packages Collection
Infrastructure</a></h3>
</div>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="RELENG" name="RELENG">2.6 Release Engineering and
Integration</a></h3>

<p>The default partition sizing algorithm of the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sysinstall&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sysinstall</span>(8)</span></a>
utility has been changed.</p>

<ul>
<li>
<p>On systems where the disk capacity is larger than (3 * RAMsize + 10GB), the default
sizes will now be as follows:</p>

<div class="INFORMALTABLE"><a id="AEN1520" name="AEN1520"></a>
<table border="0" frame="void" class="CALSTABLE">
<col width="1*" />
<col width="2*" />
<thead>
<tr>
<th>Partition</th>
<th>Size</th>
</tr>
</thead>

<tbody>
<tr>
<td>swap</td>
<td>RAMsize * 2</td>
</tr>

<tr>
<td><tt class="FILENAME">/</tt></td>
<td>512 MB</td>
</tr>

<tr>
<td><tt class="FILENAME">/tmp</tt></td>
<td>512 MB</td>
</tr>

<tr>
<td><tt class="FILENAME">/var</tt></td>
<td>1024 MB + RAMsize</td>
</tr>

<tr>
<td><tt class="FILENAME">/usr</tt></td>
<td>the rest (8GB or more)</td>
</tr>
</tbody>
</table>
</div>
</li>

<li>
<p>On systems where the disk capacity is larger than (RAMsize / 8 + 2 GB), the default
sizes will be in the following ranges, with space allocated proportionally:</p>

<div class="INFORMALTABLE"><a id="AEN1550" name="AEN1550"></a>
<table border="0" frame="void" class="CALSTABLE">
<col width="1*" />
<col width="2*" />
<thead>
<tr>
<th>Partition</th>
<th>Size</th>
</tr>
</thead>

<tbody>
<tr>
<td>swap</td>
<td>from RAMsize / 8 to RAMsize * 2</td>
</tr>

<tr>
<td><tt class="FILENAME">/</tt></td>
<td>from 256MB to 512MB</td>
</tr>

<tr>
<td><tt class="FILENAME">/tmp</tt></td>
<td>from 128MB to 512MB</td>
</tr>

<tr>
<td><tt class="FILENAME">/var</tt></td>
<td>from 128MB to 1024MB</td>
</tr>

<tr>
<td><tt class="FILENAME">/usr</tt></td>
<td>from 1536MB to 8192MB</td>
</tr>
</tbody>
</table>
</div>
</li>

<li>
<p>On systems with even less disk space, the existing behavior is not changed.</p>
</li>
</ul>

<p>A new <tt class="LITERAL">showconfig</tt> target has been added in <tt
class="FILENAME">src/Makefile</tt> to show the build configuration of the FreeBSD source
tree.</p>

<p>The <tt class="FILENAME">src.conf</tt> file, which contains settings that will apply
to every build involving the FreeBSD source tree, has been added. For details, see <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=build&sektion=7&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">build</span>(7)</span></a> and <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=src.conf&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">src.conf</span>(5)</span></a>.</p>

<p>The supported version of the <b class="APPLICATION">GNOME</b> desktop environment (<a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/x11/gnome2/pkg-descr"><tt
class="FILENAME">x11/gnome2</tt></a>) has been updated from 2.16.1 to 2.20.1.
[MERGED]</p>

<p>The supported version of the <b class="APPLICATION">KDE</b> desktop environment (<a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/x11/kde3/pkg-descr"><tt
class="FILENAME">x11/kde3</tt></a>) has been updated from 3.5.4 to 3.5.7. [MERGED]</p>

<p>The supported version of the <b class="APPLICATION">Xorg</b> windowing system (<a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/x11/xorg/pkg-descr"><tt
class="FILENAME">x11/xorg</tt></a>) has been updated from 6.9.0 to 7.3.0. [MERGED]</p>

<p>The default value of <code class="VARNAME">X11BASE</code> has been changed from <tt
class="FILENAME">/usr/X11R6</tt> to <tt class="FILENAME">/usr/local</tt>, the default
value of <code class="VARNAME">LOCALBASE</code>. [MERGED]</p>

<p>The ISO images for FreeBSD are now sized for 700MB CDROM media. For most prior
versions of FreeBSD, they assumed 650MB CDROM media. [MERGED]</p>
</div>

<div class="SECT2">
<hr />
<h3 class="SECT2"><a id="DOC" name="DOC">2.7 Documentation</a></h3>

<p>Documentation of existing functionality has been improved by the addition of the
following manual pages: <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=acpi_sony&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">acpi_sony</span>(4)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=device_get_sysctl&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">device_get_sysctl</span>(9)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=ext2fs&sektion=5&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">ext2fs</span>(5)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=mca&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">mca</span>(8)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=nanobsd&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">nanobsd</span>(8)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_mss&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_mss</span>(4)</span></a>, <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=snd_t4dwave&sektion=4&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">snd_t4dwave</span>(4)</span></a>,
<a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sysctl&sektion=9&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sysctl</span>(9)</span></a>.</p>

<p>Initial support for kernel subsystem API documentation generating framework using <a
href="http://www.FreeBSD.org/cgi/url.cgi?ports/devel/doxygen/pkg-descr"><tt
class="FILENAME">devel/doxygen</tt></a> has been added into <tt
class="FILENAME">src/sys/doc/subsys</tt>. To generate the API document, type <tt
class="COMMAND">make doxygen</tt> in <tt class="FILENAME">src/</tt> directory.</p>
</div>
</div>

<div class="SECT1">
<hr />
<h2 class="SECT1"><a id="UPGRADE" name="UPGRADE">3 Upgrading from previous releases of
FreeBSD</a></h2>

<p>[i386, amd64] Beginning with FreeBSD 6.2-RELEASE, binary upgrades between RELEASE
versions (and snapshots of the various security branches) are supported using the <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">freebsd-update</span>(8)</span></a> 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 <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span
class="REFENTRYTITLE">freebsd-update</span>(8)</span></a> utility requires that the host
being upgraded have Internet connectivity.</p>

<p>An older form of binary upgrade is supported through the <tt
class="COMMAND">Upgrade</tt> option from the main <a
href="http://www.FreeBSD.org/cgi/man.cgi?query=sysinstall&sektion=8&manpath=FreeBSD+7.0-RELEASE">
<span class="CITEREFENTRY"><span class="REFENTRYTITLE">sysinstall</span>(8)</span></a>
menu on CDROM distribution media. This type of binary upgrade may be useful on non-i386,
non-amd64 machines or on systems with no Internet connectivity.</p>

<p>Source-based upgrades (those based on recompiling the FreeBSD base system from source
code) from previous versions are supported, according to the instructions in <tt
class="FILENAME">/usr/src/UPDATING</tt>.</p>

<div class="IMPORTANT">
<blockquote class="IMPORTANT">
<p><b>Important:</b> Upgrading FreeBSD should, of course, only be attempted after backing
up <span class="emphasis"><i class="EMPHASIS">all</i></span> data and configuration
files.</p>
</blockquote>
</div>
</div>
</div>

<hr />
<p align="center"><small>This file, and other release-related documents, can be
downloaded from <a
href="http://www.FreeBSD.org/snapshots/">http://www.FreeBSD.org/snapshots/</a>.</small></p>

<p align="center"><small>For questions about FreeBSD, read the <a
href="http://www.FreeBSD.org/docs.html">documentation</a> before contacting &#60;<a
href="mailto:questions@FreeBSD.org">questions@FreeBSD.org</a>&#62;.</small></p>

<p align="center"><small>All users of FreeBSD 7-STABLE should subscribe to the &#60;<a
href="mailto:current@FreeBSD.org">current@FreeBSD.org</a>&#62; mailing list.</small></p>

<p align="center"><small>For questions about this documentation, e-mail &#60;<a
href="mailto:doc@FreeBSD.org">doc@FreeBSD.org</a>&#62;.</small></p>
++++


