Commit Graph

922 Commits

Author SHA1 Message Date
jmmv
2a3e5eeb7c Apply the NFS exports list rototill patch:
- Remove all NFS related stuff from file system specific code.
- Drop the vfs_checkexp hook and generalize it in the new nfs_check_export
  function, thus removing redundancy from all file systems.
- Move all NFS export-related stuff from kern/vfs_subr.c to the new
  file sys/nfs/nfs_export.c.  The former was becoming large and its code
  is always compiled, regardless of the build options.  Using the latter,
  the code is only compiled in when NFSSERVER is enabled.  While doing this,
  also make some functions in nfs_subs.c conditional to NFSSERVER.
- Add a new command in nfssvc(2), called NFSSVC_SETEXPORTSLIST, that takes a
  path and a set of export entries.  At the moment it can only clear the
  exports list or append entries, one by one, but it is done in a way that
  allows setting the whole set of entries atomically in the future (see the
  comment in mountd_set_exports_list or in doc/TODO).
- Change mountd(8) to use the nfssvc(2) system call instead of mount(2) so
  that it becomes file system agnostic.  In fact, all this whole thing was
  done to remove a 'XXX' block from this utility!
- Change the mount*, newfs and fsck* userland utilities to not deal with NFS
  exports initialization; done internally by the kernel when initializing
  the NFS support for each file system.
- Implement an interface for VFS (called VFS hooks) so that several kernel
  subsystems can run arbitrary code upon receipt of specific VFS events.
  At the moment, this only provides support for unmount and is used to
  destroy NFS exports lists from the file systems being unmounted, though it
  has room for extension.

Thanks go to yamt@, chs@, thorpej@, wrstuden@ and others for their comments
and advice in the development of this patch.
2005-09-23 12:10:31 +00:00
christos
5c902c0f21 Document that mkdir("/", x) returns EISDIR. According to POSIX this is not
an allowed error, but we return EIO and EDQUOT also which are not in POSIX
either.
2005-09-17 06:08:03 +00:00
christos
5b84b3983f compat core reorg. 2005-09-13 01:44:08 +00:00
wiz
d317fce6ec Remove unnecessary parentheses. Add comma in enumeration. 2005-09-10 22:27:39 +00:00
yamt
545c75e39d d_namlen is now 16-bit. 2005-09-05 21:58:38 +00:00
yamt
f5a548d35d sync with kernel. 2005-09-05 21:57:35 +00:00
jmmv
379e595c13 Document that binding local sockets now honors the user's umask, why this
was done and that this behavior is not supposed to be portable.  Filling
under the security considerations section because code not following the
guidelines given here can be "less secure".
2005-08-30 15:05:04 +00:00
christos
3303764533 64 bit inode changes 2005-08-19 02:04:54 +00:00
jmmv
13f8011cf8 Fix typo. 2005-08-14 07:28:29 +00:00
pooka
304eed6ad2 document the flags O_ALT_IO and O_NOCTTY 2005-08-11 10:35:24 +00:00
jmmv
6625b5f32f Lowercase after semicolon. 2005-08-05 13:21:13 +00:00
christos
86741d79ab - Fix the remaining indr_references so that they define lint symbols.
- Add an internal symbol for strerror_r (thanks klaus for noticing)
- Remove internal __strerror
2005-07-30 15:21:20 +00:00
christos
10ca8c1c36 We don't need to define fork anymore (pthread_atfork.c) or setlogin
(setlogin.c). Lint pass 2 works now.
2005-07-16 17:12:12 +00:00
thorpej
65412a2710 Implement expansion of special "magic" strings in symlinks into
system-specific values.  Submitted by Chris Demetriou in Nov 1995 (!)
in PR kern/1781, modified only slighly by me.

This is enabled on a per-mount basis with the MNT_MAGICLINKS mount
flag.  It can be enabled at mountroot() time by building the kernel
with the ROOTFS_MAGICLINKS option.

The following magic strings are supported by the implementation:

	@machine	value of MACHINE for the system
	@machine_arch	value of MACHINE_ARCH for the system
	@hostname	the system host name, as set with sethostname()
	@domainname	the system domain name, as set with setdomainname()
	@kernel_ident	the kernel config file name
	@osrelease	the releaes number of the OS
	@ostype		the name of the OS (always "NetBSD" for NetBSD)

Example usage:

	mkdir /arch/i386/bin
	mkdir /arch/sparc/bin
	ln -s /arch/@machine_arch/bin /bin
2005-06-23 00:30:28 +00:00
peter
6c8b6ba99c - Correct the fields in the stat structure. From PR/18255.
- Document the st_birthtime field.

Reviewed by wiz.
2005-06-14 12:10:02 +00:00
lukem
88c3eadbfa Add missing __RCSID() 2005-06-12 05:21:25 +00:00
christos
661bee744c unconst argument to swapctl(). 2005-06-12 02:57:58 +00:00
christos
385ca9a533 Remove the bogus const. 2005-05-29 21:12:27 +00:00
perry
478944b35b Change HISTORY. It traces execve only back to 4.2BSD, and it is a
touch older than that. (Surprisingly, though, it doesn't appear to
have been in v6.)
2005-05-07 17:29:19 +00:00
perry
d11d9afc47 cross reference script(7) 2005-05-07 02:32:35 +00:00
drochner
179747d76c getmntinfo() if a compatibility function, so there is no point in hiding
references to the compatibility getfsstat()
The real problem behind PR lib/29919 was a stale weak_alias, so back out
the workaround.
2005-04-12 21:36:46 +00:00
christos
67d11513a6 PR/29919: Evaldo Gardenali: getmntinfo() calling deprecated function getfsstat()
Fixed by defining an _getfsstat() internal function and calling that instead.
2005-04-07 16:24:18 +00:00
christos
1880024ade mention that SIG_IGN on SIGCHLD does not produce zombies. 2005-03-30 17:09:28 +00:00
kleink
b9a719ae1e Add restrict qualifiers to remaining <signal.h> function arguments. 2005-03-22 20:25:31 +00:00
kleink
363c26d4ba Interpose cancellation points in pollts() and pselect(), bringing us
to libc.so.12.127 and libpthread.so.0.6.
2005-03-18 11:23:44 +00:00
kleink
79b311d547 Crank the copyright year. 2005-03-10 19:53:22 +00:00
wiz
892987d654 End sentence with a dot. Remove trailing whitespace. 2005-03-10 16:51:42 +00:00
kleink
7dfdae2368 s/nil pointer/null pointer/ 2005-03-10 00:31:38 +00:00
kleink
6fe0a614b5 Add pollts() prototype to <poll.h>, and update manual page synopsis for
pollts() header use.
2005-03-10 00:29:37 +00:00
kleink
7ef4223e7d nil pointer -> null pointer 2005-03-09 22:28:52 +00:00
wiz
be7db22fff Bump date for previous. 2005-03-07 13:21:24 +00:00
kleink
1c7e2b47c4 Provide select() and pselect() prototypes in <sys/select.h>, per
1003.1-2001, and leave the select() prototype in <unistd.h> for
compatibility.  To allow for transition, reorganization of this is
deferred until netbsd-3 gets branched.
2005-03-05 19:48:38 +00:00
kleink
25bfafbaf1 Normalize the declarations of the FD_* "functions". 2005-03-03 20:49:47 +00:00
wiz
598792bd15 Bump date for pselect. 2005-02-28 10:42:19 +00:00
wiz
7564ea71d1 Bump date for pollts. 2005-02-28 10:42:10 +00:00
matt
79c744210f Build syscalls stubs for pselect and pollts. Update man pages. 2005-02-26 18:04:19 +00:00
matt
ab963ad04b Alphabetize main list of sources. 2005-02-25 21:51:10 +00:00
kleink
fd5cb0acea A little libc namespace housekeeping exercise:
* Make vfprintf_unlocked() an internal function, c.f. __svfscanf_unlocked().
* Add internal names for arc4random(), endnetpath(), fhstatvfs(),
  fstatvfs(), mkstemp(), shquote(), statvfs(), taddr2uaddr(), uaddr2taddr(),
  uuid_create_nil(), uuid_is_nil(), and wcwidth().
* Include namespace.h where supposed to.
2005-02-09 21:35:46 +00:00
jwise
1161efa5da Comment back in cross-references to other man pages, was looking at a non-recent
DESTDIR.  Other half of last change was correct.

Pointed out by wizd.
2005-01-30 18:13:04 +00:00
jwise
449bc64125 <sys/types.h> must be included before <sys/uuid.h>.
Also, while here, remove `SEE ALSO' section which referenced only man pages
which we do not have.
2005-01-30 03:20:17 +00:00
wrstuden
e384a44e9d Extend fsync_range(2) to support the FDISKSYNC flag, which requests
that the sync be propogated out through the disk drive caches.
2005-01-25 23:55:20 +00:00
kleink
774c973096 Note ENOATTR; from FreeBSD. 2005-01-20 13:23:57 +00:00
christos
8ef68a6575 document PT_DUMPCORE. 2005-01-09 17:41:19 +00:00
jmmv
3b31a140fa Fix a typo and add a missing blank line. 2005-01-06 20:31:12 +00:00
ginsbach
9d30c15dda Add EPERM to fchmod() failure list. 2005-01-06 16:30:52 +00:00
jmmv
8f037de0f8 Remove a trailing dot to match all other items in the same list. 2005-01-02 19:39:43 +00:00
wiz
f5c79d74cd Sort sections and SEE ALSO. Remove superfluous comma. 2005-01-02 18:28:48 +00:00
thorpej
4cc9b402ea Remove VOP_*() references. 2005-01-02 16:48:18 +00:00
thorpej
c165c2b31d System calls and support routines for file system extended attributes. Libc
version is bumped to 12.125.

From FreeBSD.
2005-01-02 16:43:26 +00:00
snj
316a956c56 Bump date for last. 2004-12-12 05:56:45 +00:00