Age | Commit message (Collapse) | Author |
|
|
|
|
|
2004-10-15 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
(_PATH_NSCD_GROUP_DB): Likewise.
(_PATH_NSCD_HOSTS_DB): Likewise.
(_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
* nscd/connections.c (nscd_init): Non-persistent database files
are created with the _PATH_NSCD_XYZ_DB_TMP path.
* nscd/nscd.init: Create /var/db/nscd if necessary.
|
|
Dynamically create new threads if necessary.
* nscd/connections.c (fd_ready): If no thread available for processing
the request, create a new one unless the limit is reached.
(start_threads): Check errors from pthread_create.
* nscd/nscd.h: Declare max_nthreads.
* nscd/nscd_conf.c: Parse max-nthreads entry.
* nscd/nscd.conf: Add max-threads entry.
* nscd/nscd_stat.c: Print current and maximum number of threads.
|
|
Implement paranoia mode.
* nscd/connections.c (nscd_init): Mark database and socket descriptors
as close on exec.
(restart): New function.
(restart_p): New function.
(nscd_run): Add missing descrement of nready in case readylist is
empty.
(main_loop_poll): Call restart_p and restart.
(main_loop_epoll): Likewise.
(begin_drop_privileges): Save original UID and GID.
* nscd/nscd.c: Define new variables paranoia, restart_time,
restart_interval, oldcwd, old_gid, old_uid.
(main): Disable paranoia mode if we are not forking.
(check_pid): When re-execing, the PID file contains the same PID as
the current process. Do not fail in this case.
* nscd/nscd.conf: Add paranoia and restart-interval entries.
* nscd/nscd.h: Define RESTART_INTERVAL. Declare new variables.
* nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
* nscd/nscd_stat.c: Print paranoia and restart-internal values.
|
|
|
|
2004-09-15 Ulrich Drepper <drepper@redhat.com>
* nscd/Makefile (rountines): Add nscd_getai.
(nscd-modules): Add aicache.
* nscd/aicache.c: New file.
* nscd/nscd_getai.c: New file.
* nscd/cache.c (prune_cache): Handle GETAI request type.
* nscd/connections.c: Add GETAI support in request handling.
* nscd/nscd-client.h (request_type): Add GETAI.
Define ai_response_header and struct nscd_ai_result types.
(struct datahead): Add aidata field.
Declare __nscd_getai.
* nscd/nscd.c: Add getaddrinfo definition to catch problems.
* nscd/nscd.h: Declare addhstai and readdhstai.
* sysdeps/posix/getaddrinfo.c: Add support for using cached results.
* nscd/nscd-client.h (struct datahead): Use uint8_t instead of bool.
|
|
2004-09-10 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.c (pagesize_m1): New variable.
(main): Initialize it.
* nscd/nscd.h: Declare pagesize_m1.
* nscd/hstcache.c: Pass correctly aligned address to msync.
* nscd/grpcache.c: Likewise.
* nscd/pwdcache.c: Likewise.
|
|
Jakub Jelinek <jakub@redhat.com>
* nscd/Makefile (nscd-modules): Add nscd_setup_thread.
* nscd/connections.c (nscd_run): Call setup_thread for maintenance
threads.
* nscd/nscd-client.h (struct database_pers_head): Add
nscd_certainly_running field.
* nscd/nscd.h: Declare setup_thread.
* nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
nscd_certainly_running is nonzero.
2004-09-08 Ulrich Drepper <drepper@redhat.com>
|
|
* nscd/connections.c: Implement r/o sharing of nscd's cache with client
processes via shared memory.
* nscd/nscd-client.h: Likewise.
* nscd/nscd.h: Likewise.
* nscd/nscd_conf.c: Likewise.
* nscd/nscd_getgr_r.c: Likewise.
* nscd/nscd_getpw_r.c: Likewise.
* nscd/nscd_gethst_r.c: Likewise.
* nscd/nscd.conf: Add new config parameters.
* nscd/Makefile (aux): Add nscd_helper.
* nscd/nscd_helper.c: New file.
* nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
* nscd/hstcache.c: Simplify a lot. We cache only the request itself,
no derived information.
* connections.c (nscd_init): Fix bug in testing size of the persistent.
* nis/Makefile (aux): Add nis_hash.
* nis/nis_hash.c: New file. Split out from nis_util.c.
* nis/nis_util.c: Move __nis_hash code in separate file.
* csu/tst-atomic.c: Improve atomic_increment_val test which would
not have found a ppc bug.
|
|
2004-08-26 Ulrich Drepper <drepper@redhat.com>
* nscd/cache.c: Major rewrite. The data is now optionally kept in
a mmaped memory region which is automatically mirrored on disk.
This implements persistent data storage. The Memory handled
needed to be completely revamped, it now uses a garbage collection
mechanism instead of malloc.
* nscd/connections.c: Likewise.
* nscd/nscd.c: Likewise.
* nscd/nscd.h: Likewise.
* nscd/nscd_conf.c: Likewise.
* nscd/nscd_stat.c: Likewise.
* nscd/grpcache.c: Likewise.
* nscd/hstcache.c:: Likewise.
* nscd/pwdcache.c:: Likewise.
* nscd/Makefile: Add rules to build mem.c.
* nscd/mem.c: New file.
* nscd/nscd.conf: Describe new configuration options.
|
|
2003-05-03 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.c (main): Parse config file right after parsing
parameters. Then, if get_stats is true, call receive_print_stats.
Drop parameter from nscd_init call.
(get_stats): New variable.
(parse_opt): Set get_stats, don't call receive_print_stats here.
* nscd/nscd.h: Declare dbs, stat_user, and stat_uid. Adjust nscd_init
prototype.
* nscd/connections.c (stat_user, stat_uid): New variables.
(dbs): Make global.
(nscd_init): Don't read configuration file here. Drop parameter.
(handle_request): Cleanup handling of non-database lookup requests.
* nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
Get UID of the specified user. Use xstrdup instead of strdup.
* nscd/nscd_stat.c (receive_print_stats): Check UID. If not zero,
check stat_user.
* nscd/Makefile (nscd-modules): Add xstrdup.
* nscd/nscd.conf: Document stat-user entry.
2003-05-03 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
if not defined.
|
|
* nscd/connections.c (client_queued): New variable.
(nscd_run): Revamp the loop. Don't call poll except for cleanup
threads. Keep track of the number of delays caused because of busy
worker threads.
* nscd/nscd.h: Declare client_queued.
* nscd/nscd_stat.c: Transmit and print client_queued information.
|
|
* nscd/cache.c (cache_search): Keep track of how many chain links
we searched and update table statistics.
(cache_add): Keep track of how many values are in the table.
(prune_cache): Likewise. Keep track of locking success.
Print messages about removed entries in separate pass.
* nscd/connections.c (handle_request): Don't print debug message here.
The caller will do it. Keep track of locking success.
(nscd_run): Print debug message. Also print PID of the client process.
* nscd/nscd.c (start_time): New variable.
(main): Remember start time.
* nscd/nscd.h: Declare start_time.
(struct database): Add more members for new statistics.
* nscd/nscd_stat.c: Add support for sending, receiving, and printing
of new statistics.
|
|
* nscd/nscd.h: Update decl.
* nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
* nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
* elf/dl-close.c (_dl_close): Likewise.
* sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
* io/fts.c (fts_build): Likewise.
* elf/cache.c (add_to_cache): Likewise.
* locale/programs/locarchive.c (show_archive_content): Likewise.
* posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
* include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
happy.
(__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
|
|
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
|
|
|
|
2000-11-20 Jakub Jelinek <jakub@redhat.com>
* iconvdata/bug-iconv2.c (main): Use %zd in format string.
* io/test-lfs.c (do_test): Cast statbuf.st_size to long long.
* malloc/tst-valloc.c (main): Cast valloc return value to long.
* malloc/tst-obstack.c (verbose_malloc): Use %zd in format string.
* math/test-fpucw.c (main): Use %lx in format string, cast
control words to long.
* stdio-common/tst-fmemopen.c (main): Use %td in format strings.
* stdlib/tst-strtol.c (tests): Avoid (bogus?) decimal constant is so
large that it is unsigned warning.
* sysdeps/unix/sysv/linux/sparc/bits/types.h (__ssize_t): Changing
it to long on sparc64.
2000-11-20 Andreas Jaeger <aj@suse.de>
* nscd/nscd.h (termination_handler): Add noreturn attribute.
(receiv_print_stats): Likewise.
* elf/ldconfig.c (path_hwcap): Cast -1 for proper comparison.
|
|
* iconv/iconv_prog.c (main): Handle input file name "-" correctly.
Recognize option -s, -c, and -l.
2000-04-20 Thorsten Kukuk <kukuk@suse.de>
* nscd/nscd.c: Start new session for nscd, drop privilegs
to configured user if requested and no -S parameter are used.
* nscd/nscd.conf: Add new option "server-user".
* nscd/nscd_conf.c: Add support for new "server-user" option.
* nscd/nscd.h: Add declaration for server_user variable.
Based on patch by Chris Wing <wingc@engin.umich.edu>
2000-04-29 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/sysv/linux/i386/sigaction.c: Add comment explaining
that changing the __restore and __restore_rt signal return code
will break GDB.
2000-04-29 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/sysv/linux/i386/sys/ucontext.h: Do not include
<sys/user.h>.
2000-04-29 Mark Kettenis <kettenis@gnu.org>
* conform/data/ucontext.h-data: Allow ss_* instead of SS_*.
2000-04-29 Ulrich Drepper <drepper@redhat.com>
|
|
1999-06-11 Thorsten Kukuk <kukuk@suse.de>
* nscd/nscd.c: Add -S options for separate caching of data for
every user. So one user couldn't see the data another user
has gotten with his credentials.
* nscd/nscd.h: Add new prototypes.
* nscd/cache.c: Compare owner of cache entry if in secure mode.
* nscd/connections.c: Check on shutdown if caller really was root.
In secure mode get uid of caller.
* nscd/grpcache.c: Add support for new secure group mode.
* nscd/hstcache.c: Add support for new secure hosts mode.
* nscd/pwdcache.c: Add support for new secure passwd mode.
|
|
* nscd/nscd.h: Move defns needed by clients to "nscd-client.h",
and #include that.
* nscd/Makefile (distribute): Add nscd-client.h
|
|
1998-10-18 Ulrich Drepper <drepper@cygnus.com>
* resolv/nss_dns/dns-host.c: Add missing errnop parameter to the
NSS functions.
* resolv/nss_dns/dns-network.c: Likewise.
* grp/Makefile: Don't search for linuxhtreads in add-ons, use
have-thread-library to determine whether threads are available.
* pwd/Makefile: Remove wrong comment.
* inet/Makefile: Define CFLAGS-gethstbyad_r.c, CFLAGS-gethstbynm_r.c,
and CFLAGS-gethstbynm2_r.c to -DUSE_NSCD=1.
* locale/C-messages.c: Define default strings for YESTR and NOSTR.
* nss/Versions: Add __nss_hosts_lookup.
* nss/getXXbyYY.c: Remove unneeded assignment.
* nss/getXXbyYY_r.c: Include nscd/nscd_proto.h only if needed.
Almost complete rewrite of the NSCD to make it smaller, faster,
add more functionnality and make it easier to extend.
* nscd/Makfile (routines): Add nscd_gethst_r.
(nscd-modules): Add hstcache, gethstbyad_r, gethstbynm2_r, and cache.
* nscd/cache.c: New file.
* nscd/gethstbyad_r.c: New file.
* nscd/gethstbynm2_r.c: New file.
* nscd/hstcache.c: New file.
* nscd/nscd_gethst_r.c: New file.
* nscd/connections.c: Rewritten. Don't start new thread for every
new connection. Use a fixed set of threads which handle all
connections and also the cache cleanup.
* nscd/grpcache.c: Rewritten to use generic cache handling functions
in cache.c.
* nscd/nscd.c: Recognize new parameter nthreads. Adjust initialization
for rewrite. Remove handle_requests function.
* nscd/nscd.h (NSCD_VERSION): Bump to 2.
Define new data structure for the new unified cache and the host
database entries.
* nscd/nscd_conf.c: Rewrite parsing partly to allow adding of more
databases easily. Recognize check-files and threads definitions.
* nscd/nscd.conf: Add definition of enable-cache and check-files to
passwd and group definitions. Add new set of definitions for hosts.
* nscd/nscd_getgr_r.c: Rewrite for new protocol.
* nscd/nscd_getpw_r.c: Likewise.
* nscd/nscd_proto.h: Add prototype for host database functions.
* nscd/nscd_stat.c: Rewrite to simplify printing of information
for many databases.
* nscd/dbg_log.c: Remove unnecessary variable initializations.
Global variable debug_flag is renamed to dbg_level.
* nscd/dbg_log.h: Declare set_logfile.
|
|
1998-01-31 Phil Blundell <philb@gnu.org>
* configure.in: Add --without-cvs option to suppress automatic
checkin of regenerated files.
* config.make: Likewise.
* Makefile: Respect with-cvs setting.
* Makerules: Likewise.
* configure.in: Allow the standalone ARM port to be configured.
1998-01-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* grp/getgrgid_r.c: Define USE_NSCD.
* grp/getgrnam_r.c: Likewise.
* pwd/getpwuid_r.c: Likewise.
* pwd/getpwnam_r.c: Likewise.
* sysdeps/unix/inet/Subdirs: Add nscd subdir.
* nss/getXXbyYY_r.c: Try at first nscd.
* nscd/Makefile: New, for the Name Switch Cache Daemon (nscd).
* nscd/connections.c: New file.
* nscd/dbg_log.c: New file.
* nscd/dbg_log.h: New file.
* nscd/grpcache.c: New file.
* nscd/nscd.c: New file.
* nscd/nscd.h: New file.
* nscd/nscd_conf.c: New file.
* nscd/nscd_stat.c: New file.
* nscd/pwdcache.c: New file.
* nscd/nscd_getgr_r.c: New, client code, linked into libc.
* nscd/nscd_getpw_r.c: Likewise.
* nscd/nscd_proto.h: New, prototypes for client functions.
* nscd/nscd.conf: New, example for a configuration file.
* nscd/nscd.init: New, example for a startup script.
* nscd/getgrgid_r.c: Old grp/getgrgid_r version, used from nscd to
avoid deadlocks.
* nscd/getgrnam_r.c: Likewise.
* nscd/getpwnam_r.c: Likewise.
* nscd/getpwuid_r.c: Likewise.
* nis/nis_cache.c: New file.
* nis/nis_cache2.h: New file.
* nis/nis_cache2_xdr.c: New file.
|