freebsd-nq/include
Bill Paul 94c53e1fb5 NIS cleanups and fixes, the next generation.
getnetgrent.c:

- Catch one bogon that snuck by: in _listmatch(), check for '\0'
  rather than '\n'; strings returned from yp_match() are terminated
  with a nul, not a newline.

getpwent.c:

- Rip out all of the +inclusion/-exclusion stuff from before and
  replace it with something a little less grotty. The main problem
  with the old mechanism was that it wasted many cycles processing
  NIS entries even after it already knew they were to be exlcuded
  (or not included, depending on your pointof view). The highlights
  of these changes include:

  o Uses an in-memory hash database table to keep track of all the
    -@netgroup, -user, and -@group exclusions.

  o Tries harder to duplicate the behavior normally obtained when using
    NIS inclusions/exclusions on a flat /etc/passwd file (meaning things
    come out in much the same order).

  o Uses seperate methods for handling getpwent() and getpwnam()/getpwuid()
    operations instead of trying to do everything with one general
    function, which didn't work as well as I thought it would.

  o Uses both getnetgrent() and innetgr() to try to save time where
    possible.

  o Use only one special token in the local password database
    (_PW_KEYYPBYNUM) instead of seperate tokens to mark + and -
    entries (and stop using the counter tokens too). If this new
    token doesn't exist, the code will make due with the standard
    _PW_KEYBYNUM token in order to support older databases that
    won't have the new token in them.

  All this is an attempt to make this stuff work better in environments
  with large NIS passwd databases.
1996-04-16 00:22:41 +00:00
..
arpa Fix a bunch of spelling errors in the comment fields 1996-01-30 23:33:04 +00:00
protocols Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
rpc Remove unnecessary typedef. All inclusions of <rpc/auth.h> in the source 1996-01-31 08:02:11 +00:00
rpcsvc Add structure and procedure definitions for NIS v1. (This information 1996-02-26 02:22:53 +00:00
_ctype.h Slightly simplify inlined functions 1996-03-25 13:46:21 +00:00
a.out.h Woops, include machine/exec.h, too. 1994-09-24 21:49:20 +00:00
ar.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
assert.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
bitstring.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
ctype.h Slightly simplify inlined functions 1996-03-25 13:46:21 +00:00
db.h Fix conflicts and merge into mainline (this may get cvs admined out and redone properly by Peter later) 1996-02-27 19:42:44 +00:00
dirent.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
disktab.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
err.h Add err_set_file() and err_set_exit() functions to make it possible for 1995-04-13 18:04:11 +00:00
f2c.h Install f2c.h for FORTRAN support. 1994-10-26 18:35:40 +00:00
fnmatch.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
fstab.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
fts.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
glob.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
grp.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
histedit.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
kvm.h Comment out declaration of kvm_uread until it can be fixed correctly. 1995-03-20 16:35:11 +00:00
limits.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
link.h Fix a bunch of spelling errors in the comment fields 1996-01-30 23:33:04 +00:00
locale.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
Makefile Don't install netns, it doesn't exist any more. 1996-02-14 15:17:53 +00:00
malloc.h By Bruce and Joerg suggestions and by looking into June version 1994-11-17 11:04:49 +00:00
math.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
memory.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
mpool.h Fix conflicts and merge into mainline (this may get cvs admined out and redone properly by Peter later) 1996-02-27 19:42:44 +00:00
ndbm.h Don't reference ndbm(3) manpage. Everything is covered by db(3). 1996-03-03 09:04:40 +00:00
netdb.h Fix a bunch of spelling errors in the comment fields 1996-01-30 23:33:04 +00:00
nl_types.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
nlist.h Document some of the fields used by the new shlib code. 1994-12-23 22:32:48 +00:00
paths.h Due conflict to some obsoleted applications (dump/restore) rename 1995-09-23 15:14:25 +00:00
pthread.h Submitted by: john birrel 1996-01-22 00:24:56 +00:00
pwd.h NIS cleanups and fixes, the next generation. 1996-04-16 00:22:41 +00:00
ranlib.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
regex.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
regexp.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
resolv.h Fix a bunch of spelling errors in the comment fields 1996-01-30 23:33:04 +00:00
rune.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
runetype.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
setjmp.h Delete vax' (and i386' and `hp300' etc.) namespace pollution. 1994-10-30 00:21:30 +00:00
sgtty.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
signal.h Fix standards conformance bugs in <signal.h>: 1995-06-28 02:14:13 +00:00
stab.h Made them idempotent. 1994-08-21 04:03:58 +00:00
stddef.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
stdio.h Fix incorrect parameter types for ftell and fgets. 1996-03-24 15:51:45 +00:00
stdlib.h Don't declare rune_t, putenv() or setenv() if _POSIX_SOURCE is declared. 1995-04-15 23:48:16 +00:00
strhash.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
string.h Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
strings.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
struct.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
sysexits.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
tar.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
time.h Reviewed by: julian and (hsu?) 1996-01-22 00:02:33 +00:00
timers.h Submitted by: john birrel 1996-01-22 00:24:56 +00:00
ttyent.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
unistd.h Add prototype for rfork(). 1996-02-23 19:45:46 +00:00
utime.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
utmp.h BSD 4.4 Lite Include Sources 1994-05-24 09:57:34 +00:00
vis.h Fix a bunch of spelling errors in the comment fields 1996-01-30 23:33:04 +00:00