freebsd kernel with SKQ
Go to file
Matthew Dillon 98733bd871 The symlink implementation could improperly return a NULL vp along with
a 0 error code.  The problem occured with NFSv2 mounts and also with
    any NFSv3 mount returning an EEXIST error (which is translated to 0
    prior to return).  The reply to the rpc only contains the file handle
    for the no-error case under NFSv3.  The error case under NFSv3 and
    all cases under NFSv2 do *not* return the file handle.  The fix is
    to do a secondary lookup to obtain the file handle and thus be able
    to generate a return vnode for the situations where the rpc reply
    does not contain the required information.

    The bug was originally introduced when VOP_SYMLINK semantics were
    changed for -CURRENT.  The NFS symlink implementation was not properly
    modified to go along with the change despite the fact that three
    people reviewed the code.  It took four attempts to get the current
    fix correct with five people.  Is NFS obfuscated?  Ha!

Reviewed by:	Alfred Perlstein <bright@wintelcom.net>
Testing and Discussion: "Viren R.Shah" <viren@rstcorp.com>, Eivind Eklund <eivind@FreeBSD.ORG>, Ian Dowse <iedowse@maths.tcd.ie>
1999-11-30 06:56:15 +00:00
bin Include strerror(errno) in error messages after failed system calls. 1999-11-29 19:11:01 +00:00
contrib Hardwire HAVE_INET6_STRUCTS rather than probe at compile time. -current 1999-11-30 04:24:01 +00:00
crypto Add the PAM SSH RSA key authentication module. For example, you can add, 1999-11-29 07:09:44 +00:00
etc Call rpc.umntall only if nfs_client_enable, hang occurse otherwise 1999-11-30 03:34:01 +00:00
games copyright/sccsid/rcsid cleanup. 1999-11-30 03:50:02 +00:00
gnu remove cc1obj from the original SUBDIR list since it's made optional 1999-11-28 12:30:20 +00:00
include style fixes, remove extra braces. 1999-11-29 19:12:50 +00:00
kerberos5 Bring in SRA for telnet. 1999-10-07 18:59:55 +00:00
kerberosIV Bring in SRA for telnet. 1999-10-07 18:59:55 +00:00
lib Turn libbind back on, it should be ok now. 1999-11-30 06:13:10 +00:00
libexec Reactivate named-xfer 1999-11-30 06:23:04 +00:00
release Make the following changes to PicoBSD kernel configurations: 1999-11-28 21:33:44 +00:00
sbin Allow character devices too 1999-11-30 03:48:04 +00:00
secure Dont build telenet if we are going for kerberised telnet; this just 1999-10-12 19:48:05 +00:00
share Fix typo. 1999-11-30 06:47:54 +00:00
sys The symlink implementation could improperly return a NULL vp along with 1999-11-30 06:56:15 +00:00
tools Bring ``ac'' into reality. This great tools now works correctly (for 1999-11-04 08:45:02 +00:00
usr.bin Reactivate bind and add dnskeygen. 1999-11-30 06:26:57 +00:00
usr.sbin Reactivate bind (named and tools) 1999-11-30 06:22:22 +00:00
COPYRIGHT Update to add the July 22, 1999 addendum. 1999-09-05 21:33:47 +00:00
Makefile Remove a comment about setting objformat to elf by default. We've 1999-09-18 08:27:55 +00:00
Makefile.inc0 $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
Makefile.inc1 Place netgraph entry into alphabetical position 1999-11-25 20:05:07 +00:00
Makefile.upgrade $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
README $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
UPDATING Add poul's md information, in abbreviated form, to the UPDATING file. 1999-11-26 20:38:36 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel and the contents of /etc.  Please see the top of the Makefile
in this directory for more information on the standard build targets
and compile-time flags.

Building a kernel with config(8) is a somewhat more involved process,
documentation for which can be found at:
   http://www.freebsd.org/handbook/kernelconfig.html
And in the config(8) man page.

The sample kernel configuration files reside in the sys/i386/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file LINT contains entries for all possible devices, not
just those commonly used, and is meant more as a general reference
than an actual kernel configuration file (a kernel built from it
wouldn't even run).


Source Roadmap:
---------------
bin		System/User commands.

contrib		Packages contributed by 3rd parties.

crypto		Export controlled stuff (see crypto/README).

etc		Template files for /etc

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberosIV	Kerberos package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

sbin		System commands.

secure		DES and DES-related utilities - NOT FOR EXPORT!

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/handbook/synching.html