[PATCH] caching daemon release and nsswitch patches
Michael Bushkov
bushman at rsu.ru
Sat Aug 27 14:13:29 GMT 2005
Hi! I'm working on nsswitch improvement (during the Google Summer of Code
program. And, as the deadline is close, I'd like to make some kind of
release. Actually there would be 2 releases, this is the first.
This release includes 3 patches. They could be found in the Perforce
repository:
http://perforce.freebsd.org/fileDownLoad.cgi?FSPC=//depot/projects/soc2005/nsswitch%5fcached/patches/include.diff&REV=1
http://perforce.freebsd.org/fileDownLoad.cgi?FSPC=//depot/projects/soc2005/nsswitch%5fcached/patches/libc.diff&REV=1
http://perforce.freebsd.org/fileDownLoad.cgi?FSPC=//depot/projects/soc2005/nsswitch%5fcached/patches/usr.sbin.diff&REV=1
or on my mirror:
http://www.rsu.ru/~bushman/cached/downloads/patchset1/include.diff
http://www.rsu.ru/~bushman/cached/downloads/patchset1/libc.diff
http://www.rsu.ru/~bushman/cached/downloads/patchset1/usr.sbin.diff
Some words on how to use and what it gives:
include.diff and libc.diff should be applied like that:
from usr/src: patch -p0 < include.diff,
from usr/src/lib: patch -p0 < libc.diff
Features, which would be added by these patches:
- services-related functions (getserv*) will use nsswitch
- rpc-related functions (getrpc*) will use nsswitch
- protocols-related functions (getproto*) will use nsswitch
- "services", "rpc" and "protocols" sources would be available in
nsswitch.conf file
One of my major tasks was to add caching ability to the nsswitch. So,
these patches also would do it for the following nsswitch sources:
- passwd
- group
- services
- rpc
- protocols
To make caching work, you'll require the caching daemon. It is in the
usr.sbin patch (should be applied from usr/src: patch -p0 <
usr.sbin.diff). The caching daemon will be in /usr/sbin folder, its
configuration and startup files will be in /etc folder. cached(8) and
cached.conf(5) man pages would be availabe. To enable caching, just add
"cache" source to the appropriate nsswitch.conf line (the "cache" source
should be the first source for the database and it can't be used with the
"compat" source).
Please try the patches and send me your feedback. I also hope that there
are no reasons not to merge changes, which were made to libc (they are in
include.diff and libc.diff) into the CURRENT.
As for the caching daemon (usr.sbin.diff patch) - I also think that it
could be merged into the CURRENT.
In the second release (will happen in 1-2 days - it needs additional
testing) i'll add caching support for other nsswitch databases (the most
important is the host database support, I believe).
With best regards,
Michael Bushkov
Rostov State University
More information about the freebsd-hackers
mailing list