aboutsummaryrefslogtreecommitdiff
path: root/nscd
AgeCommit message (Collapse)Author
2004-12-162004-12-16 Roland McGrath <roland@redhat.com>Roland McGrath
* nscd/Makefile ($(objpfx)nscd): Don't depend on $(selinux-LIBS), which is usually a -lselinux that make will resolve wrongly.
2004-11-22(__nscd_getai): Avoid memory and file descriptor leaks.Ulrich Drepper
2004-11-10Update.cvs/fedora-glibc-20041110T0839Ulrich Drepper
2004-11-10 Jakub Jelinek <jakub@redhat.com> * Makefile (tests): Add tst-exit3. * tst-exit3.c: New test.
2004-11-10(libc_locked_map_ptr): Add new first parameter, used as class for definition.Ulrich Drepper
* nscd/nscd-client.h (libc_locked_map_ptr): Add new first parameter, used as class for definition. * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change. (pw_map_free): Ensure no crash after memory is freed. * nscd/nscd_getgr.c: Likewise. Make map externally visible. * nscd/nscd_gethst.c: Likewise. * nscd/nscd_getai.c: Use map from nscd_gethost.c. * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
2004-10-15Update.Ulrich Drepper
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.
2004-10-15(nscd_init): Non-persistent database files are created with the ↵Ulrich Drepper
_PATH_NSCD_XYZ_DB_TMP path.
2004-10-14Update.Ulrich Drepper
* nscd/Makefile: When using compilers without -fpie support, also link with -lselinux if necessary. Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
2004-10-14Update.Ulrich Drepper
2004-10-14 Ulrich Drepper <drepper@redhat.com> * nscd/connections.c (nscd_init): Remove file if not persistent and not shared. Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>. * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle defined __NR_setresuid32 && !defined __NR_setresuid. * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle defined __NR_setresgid32 && !defined __NR_setresgid. * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit, __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro. * sysdeps/generic/errno-loc.c: Don't undef #errno if RTLD_PRIVATE_ERRNO. * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO, add attribute_hidden. * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded) chain with iteration over all namespaces' _ns_loaded chains. * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address): Likewise. * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
2004-10-05Update.Ulrich Drepper
2004-10-05 Ulrich Drepper <drepper@redhat.com> * grp/initgroups.c: Remove duplicate group IDs. * grp/compat-initgroups.c: Likewise. * nscd/initgrcache.c: Likewise.
2004-10-05Update.Ulrich Drepper
2004-10-05 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L for _SC_CPUTIME or _SC_THREAD_CPUTIME. * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus -fpie if building PIE. (CFLAGS-*.c): Use it. * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro. ($(objpfx)nscd): Add $(relro-LDFLAGS). * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h. (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if !HP_TIMING_AVAIL. 2004-10-05 Ulrich Drepper <drepper@redhat.com> * nscd/Makefile (distribute): Remove TODO. * nscd/TODO: Removed.
2004-10-04Update.cvs/fedora-glibc-20041005T0745Ulrich Drepper
* nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is defined and __ASSUME_NETLINK_SUPPORT is zero. * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add -DNEED_NETLINK.
2004-10-04Update.Ulrich Drepper
2004-10-04 Ulrich Drepper <drepper@redhat.com> * malloc/mtrace.pl: Avoid calling location unless it is needed for output. Patch by Edward Bishop <binutils@gmail.com>. * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
2004-10-04Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/ia64/sysconf.c: New file. * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c. * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual testing code to... * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here. New file. * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for _SC_CPUTIME and _SC_THREAD_CPUTIME.
2004-10-04Update.Ulrich Drepper
* nscd/connections.c (start_threads): Use sysconf in case _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero. * nscd/nscd.c: Remove getaddrinfo stub definition.
2004-10-04Update.Ulrich Drepper
* nscd/Makefile (nscd-modules): Add gai. * nscd/gai.c: New file.
2004-10-03Update.Ulrich Drepper
2004-10-03 Juerg Billeter <j@bitron.ch> * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd can't be used.
2004-10-03Update.Ulrich Drepper
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.
2004-10-03Update.Ulrich Drepper
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-10-03Update.Ulrich Drepper
2004-10-03 Ulrich Drepper <drepper@redhat.com> * nscd/connections.c: Implement alternative loop for main thread which uses epoll. * sysdeps/unix/sysv/linux/Makefile [subdir=nscd] (CFLAGS-connections.c): Add -DHAVE_EPOLL. * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables, don't replace old content.
2004-10-03Update,Ulrich Drepper
* nscd/connections.c: Rewrite handling of incoming connections. All are handled by one thread which then hands of the descriptors for the real work to the worker threads. * nscd/Makefile: Link nscd with librt. * nscd/selinux.c: Pretty printing. * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to output. Let syslog do the formatting if debug_level == 0.
2004-10-02Update.Ulrich Drepper
2004-10-02 Ulrich Drepper <drepper@redhat.com> * nscd/nscd_helper.c (get_mapping): No need to check timestamp if nscd_certainly_running is nonzero.
2004-10-01(__nscd_getgrouplist): Add assert.Ulrich Drepper
2004-10-01Update.cvs/fedora-glibc-20041001T2134Ulrich Drepper
* nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the group the caller provided unless there is a real problem.
2004-09-30Update.Ulrich Drepper
* nscd/nscd.c (termination_handler): Reset timestamp so that client immediately stop using the database. (__nscd_drop_map_ref): Change second parameter to be a reference to * nscd/nscd.h: Add declaration of addinitgroups and
2004-09-30Update.Ulrich Drepper
2004-09-30 Ulrich Drepper <drepper@redhat.com> * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last parameter. (__nscd_drop_map_ref): Change second parameter to be a referenc to a variable. Update variable when cycle count changed. * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too. * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref. Reinitialize all variables and avoid memory leak in case of retries. * nscd/nscd_getgr_r.c: Likewise. * nscd/nscd_gethst_r.c: Likewise. * nscd/nscd_getpw_r.c: Likewise. * nscd/nscd_initgroups.c: Likewise. * nscd/nscd.h: Add declaretion of addinitgroups and readdinitgroups.
2004-09-30(__nscd_get_map_ref): Drop volatile from last parameter. ↵Ulrich Drepper
(__nscd_drop_map_ref): Change second parameter to be a referenc to a variable. Update variable when cycle count changed.
2004-09-30(CFLAGS-nscd_initgroups.c): Set to -fpie. (CFLAGS-initgrcache.c): Likewise.Andreas Jaeger
2004-09-30Add declaretion of addinitgroups and readdinitgroups.Ulrich Drepper
2004-09-30Update.Ulrich Drepper
2004-09-29 Ulrich Drepper <drepper@redhat.com> * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for testing result of __nscd_get_map_ref.
2004-09-30Update.Ulrich Drepper
* grp/initgroups.c: Move compat_call implementation... * grp/compat-initgroups.c: ...to here. New file. * grp/Makefile (distribute): Add compat-initgroups.c. (CFLAGS-initgroups.c): Add -DUSE_NSCD=1. * mscd/initgrcache.c: New file. * nscd/nscd_initgroups.c: New file. * nscd/Makefile (routines): Add nscd_initgroups. (nscd-modules): Add initgrcache. * nscd/cache.c (prune_cache): Add support for INITGROUPS entries. * nscd/connections.c: Handle INITGROUPS requests. * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header. Add initgrdata element to struct datahead. Fix typo in comment. * nscd/nscd_proto.h: Declare __nscd_getgrouplist. Fix parameter type in __nscd_getgrgrid_r. * nscd/selinux.c (perms): Add INITGROUPS entry. * nscd/nscd_getai.c: No need to include <sys/mman.h>. * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without assigned addresses. * sunrpc/pmap_clnt.c (__get_myaddress): Likewise. * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise. * sunrpc/clnt_udp.c (is_network_up): Likewise.
2004-09-29Update.Ulrich Drepper
* nscd/nscd.c: Define getaddrinfo hidden so that it is never found outside.
2004-09-29Update.cvs/fedora-glibc-20040929T0821Ulrich Drepper
* nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test of failing __nscd_get_map_ref. Fix a few typos.
2004-09-20Update.Ulrich Drepper
2004-09-20 Ulrich Drepper <drepper@redhat.com> * nscd/nscd.c (options): Mark S option as hidden. (parse_opt): When S option is used, print warning message. * nscd/grpcache.c (adgrptbyX): Don't handle secure mode. * nscd/hstcache.c (addhstbyX): Don't handle secure mode. * nscd/aicache.c (addhstaiX): Don't handle secure mode. * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
2004-09-20Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call callback to set IDs in all other threads as well. * sysdeps/unix/sysv/linux/seteuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise. * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise. * sysdeps/unix/sysv/linux/setuid.c: New file. * sysdeps/unix/sysv/linux/setgid.c: New file. * sysdeps/unix/sysv/linux/setreuid.c: New file. * sysdeps/unix/sysv/linux/setregid.c: New file. * sysdeps/unix/sysv/linux/setresuid.c: New file. * sysdeps/unix/sysv/linux/setresgid.c: New file. * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS. * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version. * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid and setresuid. * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid. * nscd/grpcache.c: Likewise. * nscd/hstcache.c: Likewise. * nscd/pwdcache.c: Likewise.
2004-09-17Update.Ulrich Drepper
2004-09-17 Jakub Jelinek <jakub@redhat.com> * nscd/nscd.c (parse_opt): Write arg string instead of (void *) key to the socket.
2004-09-17Update.Ulrich Drepper
2004-09-16 Ulrich Drepper <drepper@redhat.com> * configure.in: Add test for required SELinux features. * config.make.in: Add have-selinux entry. * config.h.in: Add HAVE_SELINUX entry. * nscd/Makefile (nscd-modules): Add selinux. (CFLAGS-selinux.c): Add -fpie. Define selinux-LIBS and use in link line. * nscd/connections.c (handle_request): Check access SELinux permissions before processing request. * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread. * nscd/nscd_stat.c: Transmit and print AVC statistics. * nscd/selinux.c: New file. * nscd/selinux.h: New file. 2004-09-16 Jakub Jelinek <jakub@redhat.com> * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap instead of munmap. * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie. 2004-09-16 Thorsten Kukuk <kukuk@suse.de> * sysdeps/posix/getaddrinfo.c (gaih_inet): Check __nss_not_use_nscd_hosts variable if nscd should be used or not. 2004-09-16 Ulrich Drepper <drepper@redhat.com> * nscd/nscd_proto.h: Define NSS_NSCD_RETRY. Add __nscd_getai prototype. * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY. * nscd/nscd-client.h: Remove __nscd_getai prototype. * nscd/nscd_getai.c: Include nscd_proto.h. * elf/ldd.bash.in: Add support for SELinux environments. Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
2004-09-16iAdd __nscd_getai prototype.Ulrich Drepper
2004-09-15Update.Ulrich Drepper
* nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also get ttl and canonical name. Use these two values. * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns. * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters. If nonnull fill with TTL and pointer to canonical name respectively. (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r. (_nss_dns_gethostbyname2_r): Just wrapper around _nss_dns_gethostbyname3_r. (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r. Take two new parameters which as passed to getanswer_r.
2004-09-15Update.Ulrich Drepper
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-13Update.Ulrich Drepper
2004-09-13 Thorsten Kukuk <kukuk@suse.de> * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services. * nscd/nscd.init: Fix path to socket.
2004-09-13UPdate.Ulrich Drepper
* nscd/nscd_helper.c (get_mapping): Correctly check cmsg length. Avoid file descriptor leak in case of size mismatch.
2004-09-13Update.Ulrich Drepper
* nscd/mem.c (gc): Add casts to avoid warnings.
2004-09-13Update.Ulrich Drepper
* nscd/nscd-client.h: Fix database structure layout for biarch.
2004-09-12Update.Ulrich Drepper
2004-09-12 Ulrich Drepper <drepper@redhat.com> * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk. * nscd/grpcache.c (cache_addgr): Likewise. * nscd/hstcache.c (cache_addhst): Likewise.
2004-09-12(cache_addhst): Sync also negative results to disk.Ulrich Drepper
2004-09-11Update.Ulrich Drepper
* nscd/connections.c (nscd_run): Call setup_thread only for enabled databases.
2004-09-10Update.Ulrich Drepper
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.
2004-09-10Update.Ulrich Drepper
2004-09-10 Ulrich Drepper <drepper@redhat.com> * nscd/nscd_stat.c: Improve output by also printing .shared and .persistent. * nscd/connections.c: Allow cache sharing to be really disabled.
2004-09-09 (CFLAGS-nscd_setup_thread.c): Set to -fpie.Andreas Jaeger
2004-09-08Update.Ulrich Drepper
* nscd/nscd-client.h: Add a few #includes.