aboutsummaryrefslogtreecommitdiff
path: root/nscd
AgeCommit message (Collapse)Author
2011-07-01nscd cleanupsUlrich Drepper
Cleanup and optimize last patch. Add timeout fixes also to the services cache.
2011-07-01Handle nscd negtimeout==0Thorsten Kukuk
2011-06-29Avoid write to invalid file descriptor in nscdUlrich Drepper
When readding entries to the group and services cache and the lookup is unsuccesful, we tried to write the notfound record. Just don't do it in this case.
2011-06-27Fix handling of RES_USE_INET6 big in nscdUlrich Drepper
This fixes BZ #12350 also for nscd.
2011-06-10Quash some new warnings from GCC 4.6.Roland McGrath
2011-05-31Don't free non-malloced memory and fix memory leakUlrich Drepper
2011-05-22Add a few more alloca size checksUlrich Drepper
2011-05-13Add support for generated PIE link rulesAndreas Schwab
2011-04-22Remove doubled words.Jim Meyering
2011-04-17Fix a comment.Justin P. Mattock
2011-02-05Schedule nscd cache pruning more accurately fromr re-added values.Ulrich Drepper
2011-01-17Update copyright year.Ulrich Drepper
2011-01-15Signal temporary host lookup errors in nscd as such to the requester.Ulrich Drepper
2010-04-09Fix crash on reloading of gai data in nscd.Ulrich Drepper
2010-04-08Print reload count in nscd statistics.Ulrich Drepper
2010-03-15Update copyright year.Ulrich Drepper
2009-11-22Try harder to re-exec nscd in paranoia mode.Ulrich Drepper
2009-10-29Fix a few asserts and IO calls in nscd.Anders Johansson
The nscd/*cache.c files contain assert()s, writeall() and sendfileall() calls that invalidly use together &dataset->resp and total where either dataset or dataset->head.recsize should be used instead one of the components. In the writeall() and sendfileall() cases, it is unlikely to matter in practice, but the assertions can fail sometimes without a proper reason.
2009-10-29Print timestamp in nscd debug messages.Ulrich Drepper
2009-07-17Revert "Fix lock handling in memory hander of nscd."Ulrich Drepper
This reverts commit 137028b4d7e50f71906c1656c27079eac5a1d085. Conflicts: ChangeLog
2009-07-16Fix lock handling in memory hander of nscd.Petr Baudis
The commit 20e498bd removes the pthread_mutex_rdlock() calls, but not the corresponding pthread_mutex_unlock() calls. Also, the database lock is never unlocked in one branch of the mempool_alloc() if. I think unreproducible random assert(dh->usable) crashes in prune_cache() were caused by this. But an easy way to make nscd threads hang with the broken locking was.
2009-07-16Use correct release semantic in list update.Andreas Schwab
nscd uses lockfree lists and we need to ensure the correct release semantics is used when adding to the list.
2009-06-16Consolidate PIE linking Makefile rules.H.J. Lu
2009-05-18Fix forced loop termination in nscd database lookup.Jakub Jelinek
There are two issues with the forced loop exit in the nscd lookup: 1. the estimate of the entry size isn't pessimistic enough for all databases, resulting potentially is too early exits 2. the combination of 64-bit process and 32-bit nscd would lead to rejecting valid records in the database.
2009-05-16Move BLOCK_ALIGN* macros back.Ulrich Drepper
The move to nscd-client.h was only needed for some interim version of the patch. The final version doesn't need it. Undo the change.
2009-05-16Fix exit condition.Ulrich Drepper
The patch to bound the search in the nscd caches used a wrong exit condition. Fixed now.
2009-05-15Further robustify nscd database lookup.Ulrich Drepper
We can compute an absolute maximum for the number of elements which can fit into the currently mapped database. Stop after that many iterations.
2009-05-15Robustify libc-side nscd database reader.Jakub Jelinek
The nscd database mapped in processes can change at any time. We have to be more vigilant when it comes to using that memory. Test the data entries are valid in their entire size, don't read data again from memory once we verified it, and make sure the trailing pointer is not going off the deep end.
2009-05-15Don't try to cleanup libselinux and libaudit.Jakub Jelinek
Because we are not shutting down the other threads first another thread might work on a query before the process shuts down. In this case the now uninitialized libselinux and libaudit might be used. Just don't free the resources. It's not necessary anyway because the process is about to terminate.
2009-04-26* nscd/connections.c (send_ro_fd): Define temporary variable to avoidUlrich Drepper
warning. * elf/sprof.c: Likewise.
2009-04-26* sysdeps/unix/sysv/linux/dl-osinfo.h (dl_fatal): Remove inlineUlrich Drepper
from definition. * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Don't define label if it is not used. * elf/dl-profile.c (_dl_start_profile): Define real-type variant of gmon_hist_hdr and gmon_hdr structures and use them. * elf/dl-load.c (open_verify): Add temporary variable to avoid warning. * nscd/nscd_helper.c (get_mapping): Avoid casts to avoid warnings. * sunrpc/clnt_raw.c (clntraw_private_s): Use union in definition to avoid cast. * inet/rexec.c (rexec_af): Make sa2 a union to avoid warnings. * inet/rcmd.c (rcmd_af): Make from a union of the various needed types to avoid warnings. (iruserok_af): Use ss_family instead of casts. * gmon/gmon.c (write_hist): Define real-type variant of gmon_hist_hdr structure and use it. (write_gmon): Likewise for gmon_hdr. * sysdeps/unix/sysv/linux/readv.c: Avoid declaration of replacement function if we are not going to define it. * sysdeps/unix/sysv/linux/writev.c: Likewise. * inet/inet6_option.c (optin_alloc): Add temporary variable to avoid warning. * libio/strfile.h (struct _IO_streambuf): Use correct type and name of VTable element. * libio/iovsprintf.c: Avoid casts to avoid warnings. * libio/iovsscanf.c: Likewise. * libio/vasprintf.c: Likewise. * libio/vsnprintf.c: Likewise. * stdio-common/isoc99_vsscanf.c: Likewise. * stdlib/strfmon_l.c: Likewise. * debug/vasprintf_chk.c: Likewise. * debug/vsnprintf_chk.c: Likewise. * debug/vsprintf_chk.c: Likewise.
2009-03-16* nscd/connections.c (restart): Try to preserve the process nameUlrich Drepper
by reading the /proc/self/exe symlink and using the return name. Patch by Jeff Bastian <jbastian@redhat.com>.
2009-02-13[BZ #5381]Ulrich Drepper
2009-02-13 Ulrich Drepper <drepper@redhat.com> [BZ #5381] * nscd/nscd.h: Remove definitions and declarations for mem_in_flight. Change mempool_alloc prototype. * nscd/mem.c (gc): Don't handle mem_in_flight. (mempool_alloc): Third parameter now only indicates whether this is the first call (to allocate data) or not. If it is, get db rdlock. Release it on error. Don't handle mem_in_flight. * nscd/aicache.c (addhstaiX): Mark he parameter as const. Adjust third parameter of mempool_alloc calls. Nothing to do here in case mempool_alloc fails. Avoid local variable shadowing parameter. No need to get db rdlock before calling cache_add. * nscd/cache.c (cache_add): Adjust call to mempool_alloc. There is no mem_in_flight array anymore. * nscd/connections.c: Remove definition and handling of mem_in_flight. * nscd/grpcache.c (cache_addgr): Adjust third parameter of mempool_alloc calls. Mark he parameter as const. Nothing to do here in case mempool_alloc fails. No need to get db rdlock before calling cache_add. * nscd/hstcache.c (cache_addhst): Likewise. * nscd/initgrcache.c (addinitgroupsX): Likewise. * nscd/servicescache.c (cache_addserv): Likewise. * nscd/pwdcache.c (cache_addpw): Likewise. Remove some debugging code.
2009-02-06* debug/xtrace.sh: Unify translatable messages.Ulrich Drepper
* elf/ldd.bash.in: Likewise. * elf/sprof.c: Likewise. * locale/programs/locale.c: Likewise. * malloc/memusage.sh: Likewise. * nss/getent.c: Likewise. 2009-02-06 Joseph Myers <joseph@codesourcery.com> * debug/pcprofiledump.c (print_version, argp_program_version_hook): New function. * elf/ldconfig.c (more_help): New function. (argp): Use it. * elf/sln.c (usage): New function. (main): Support --help and --version. * malloc/memusagestat.c (print_version): New function. (argp_program_version_hook): New variable. * nscd/nscd.c (more_help): New function. (argp): Use it. * posix/getconf.c (main): Send --version output to stdout. Support --help. * sunrpc/rpc_main.c (usage, options_usage): Take STREAM and STATUS arguments. All callers changed. (print_version): New function. (parseargs): Support --help and --version. * sunrpc/rpcinfo.c (usage): Take STREAM argument. All callers changed. (print_version): New function. (main): Use getopt_long. Support --help and --version. * sysdeps/unix/sysv/linux/lddlibc4.c (main): Support --help and --version. 2009-02-06 Ulrich Drepper <drepper@redhat.com>
2009-01-29[BZ #9750]Ulrich Drepper
* nscd/mem.c (gc): Use alloca_count to get the real stack usage. * include/alloca.h (alloca_account): Define. * sysdeps/x86_64/stackinfo.h (stackinfo_get_sp): Define. (stackinfo_sub_sp): Define.
2009-01-28* nscd/connections.c (nscd_init): If database file access beUlrich Drepper
opened check whether this is due to permission problems and bail in that case.
2009-01-28[BZ #9741]Ulrich Drepper
2009-01-28 Ulrich Drepper <drepper@redhat.com> [BZ #9741] * nscd/mem.c (gc): Fix assignment of he_data in case malloc is used. Reported by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>.
2009-01-112009-01-10 Roland McGrath <roland@redhat.com>Roland McGrath
* nscd/nscd.c (parse_opt): Use argp_error for bad -i argument.
2009-01-02* posix/getconf.c: Update copyright year.Ulrich Drepper
* nss/getent.c: Likewise. * iconv/iconvconfig.c: Likewise. * iconv/iconv_prog.c: Likewise. * elf/ldconfig.c: Likewise. * catgets/gencat.c: Likewise. * csu/version.c: Likewise. * elf/ldd.bash.in: Likewise. * elf/sprof.c (print_version): Likewise. * locale/programs/locale.c: Likewise. * locale/programs/localedef.c: Likewise. * nscd/nscd.c (print_version): Likewise. * debug/xtrace.sh: Likewise. * malloc/memusage.sh: Likewise. * malloc/mtrace.pl: Likewise. * debug/catchsegv.sh: Likewise.
2008-12-29* nscd/nscd_gethst_r.c (nscd_gethst_r): Don't use nscd ifUlrich Drepper
LOCALDOMAIN is defined. * nscd/nscd_getai.c (__nscd_getai): Likewise.
2008-12-09[BZ #7067]Ulrich Drepper
2008-12-03 Petr Baudis <pasky@suse.cz> [BZ #7067] * nscd/connections.c (invalidate_cache): Use prune_run_lock instead of prune_lock. (nscd_run_prune): Before calling prune_cache, take prune_run_lock. * nscd/nscd.h (database_dyn): Add prune_run_cache.
2008-12-03* socket/sys/socket.h: Declare accept4.Ulrich Drepper
* socket/accept4.c: New file. * sysdeps/unix/sysv/linux/accept4.c: New file. * sysdeps/unix/sysv/linux/i386/accept4.S: New file. * socket/Makefile (routines): Add accept4. * socket/Versions: Export accept4 with version GLIBC_2.10. * socket/paccept.c: Removed. * sysdeps/unix/sysv/linux/paccept.c: Removed. * sysdeps/unix/sysv/linux/i386/paccept.S: Removed. * Versions.def: Define GLIBC_2.10 for libc. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_ACCEPT4. * nscd/connections.c: Use accept4. * sysdeps/unix/sysv/linux/i386/socket.S: Fix comment.
2008-10-17* elf/Makefile: Add rules to build and run tst-tls17.cvs/fedora-glibc-20081019T1815Ulrich Drepper
* elf/tst-tls17.c: New test. * elf/tst-tlsmod17a.c: New file. * elf/tst-tlsmod17b.c: Likewise.
2008-09-30* nscd/connections.c: Disable use of paccept for now.Ulrich Drepper
2008-08-03(main_loop_poll): Pass a buffer which is guaranteed to be large enough to ↵Ulrich Drepper
read inotify event. Ignore EAGAIN error. Better error message. Add branch predicition. (main_loop_epoll): Likewise.
2008-07-30* nscd/connections.c (nscd_init): Type if preprocessor directive.Ulrich Drepper
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PACCEPT): Define.
2008-07-26* Makeconfig: Define pie-ccflag and PIE-ccflag variables.Ulrich Drepper
* elf/Makefile: Use pie-ccflag variable. * nscd/Makefile: Likewise. * sysdeps/sparc/Makefile: Set $(pie-ccflag) to -fPIE.
2008-07-25* nscd/connections.c (nscd_init): Clean up fcntl call.Ulrich Drepper
2008-07-25* nscd/nscd_helper.c (open_socket): Use SOCK_CLOEXEC andUlrich Drepper
SOCK_NONBLOCK if possible.
2008-07-25* sysdeps/unix/sysv/linux/kernel-features.h: DefineUlrich Drepper
__ASSUME_PACCEPT, __ASSUME_IN_NONBLOCK, and __ASSUME_PACCEPT if appropriate. * nscd/connections.c: Avoid fcntl calls to set close-on-exec flag and non-blocking mode by using socket, paccept, and inotify_init1.