about summary refs log tree commit diff
path: root/nscd
Commit message (Collapse)AuthorAgeFilesLines
* * nscd/selinux.c (nscd_request_avc_has_perm): When compiled withUlrich Drepper2007-11-061-0/+8
| | | | | old headers, don't call avc_has_perm if we don't have the permission information.
* * time/tzfile.c (__tzfile_read): Fix check for version 0 data files.Ulrich Drepper2007-11-061-1/+1
| | | | Patch by Szymon Siwek <sls@poczta.wp.pl>.
* * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup onlyUlrich Drepper2007-11-066-106/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when the lookup call failed. * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock. Add prune_cond and wakeup_time. (CACHE_PRUNE_INTERNAL): Define. Update declarations of prune_cache and setup_thread. * nscd/connections.c (dbs): Update initializers. (CACHE_PRUNE_INTERNAL): Moved to nscd.h. (nscd_init): Default number of threads is now 4. (invalidate_cache): Take lock before calling prune_cache. (handle_request): If SELinux forbids the request, say so. (readylist_cond): Use static initializer. (nscd_run_prune): New function. Used only by pruning threads. (nscd_run_worder): Renamed from nscd_run. Remove support for pruning here. (fd_ready): Update nscd_run reference. (start_threads): No need to initialize readylist_cond. Start pruning threads separately. * nscd/nscd_setup_thread.c: Change return value type to int and always return 0. * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type to int and return nonzero value if we can use the TID address hack. * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for the database is later than the new entry's timeout, update the wakeup time and wake the cleanup thread. (prune_cache): Return seconds the next entry in the database is still valid. Remove locking for pruning here. * nscd/nscd.conf: Document default number of threads.
* * nscd/Makefile (nscd-modules): Replace gethstbynm2_r withUlrich Drepper2007-10-305-24/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gethstbynm3_r. * nscd/gethstbynm2_r.c: Remove. * nscd/gethstbynm3_r.c: New file. * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of __gethostbyaddr_r. * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function. Define __gethostbyaddr_r compatibility wrapper. * nscd/hstcache.c (cache_addhst): Add ttl parameter. Use it when determining timeout of entry. (lookup): Take new parameter and pass it to __gethostbyname3_r and __gethostbyaddr2_r. (addhstbyX): Pass reference to variable for TTL to lookup and cache_addhst. * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2, __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2, and __nss_next2. Remove __nss_services_lookup. * nss/XXX-lookup.c: Name function now *_lookup2. Add new parameter. Add compat wrapper. * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and __nss_next2. * nss/getXXent_r.c: Likewise. * nss/getnssent_r.c: Likewise. * nss/nsswitch.c (__nss_lookup): Add new parameter. If first function does not exist in module, try the optional second name. (__nss_next2): New function. (__nss_next): Now wrapper around __nss_next2. * nss/nsswitch.h: Adjust __nss_lookup prototype. Declare __nss_next2. Adjust definition of db_lookup_function type. * nss/service-lookup.c: Define NO_COMPAT. * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r. * inet/ether_hton.c: Use __nss_next2 instead of __nss_next. * inet/ether_ntoh.c: Likewise. * sunrpc/netname.c: Likewise. * sunrpc/publickey.c: Likewise. * inet/getnetgrent.c: Likewise. Adjust calls to __nss_lookup. * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2. * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise. * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise. * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise. * nscd/aicache.c (addhstaiX): Fix default TTL handling. * inet/getnetgrent.c (setup): Encrypt static pointer.
* (prune_cache): Move test for modified file outside of locking.Ulrich Drepper2007-10-261-16/+22
|
* * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successfulUlrich Drepper2007-10-151-10/+8
| | | | read from nscd.
* * include/time.h: Declare __tzset_parse_tz and __tzset_compute.Ulrich Drepper2007-10-141-20/+20
| | | | | | | | | | | | | | | | | | | * time/tzset.c (tzset_internal): Break TZ string parsing out into __tzset_parse_tz and updating of daylight, timezone, tzname into update_vars. (__tz_compute): Renamed from tz_compute. Take additional parameters. (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now happens in __tz_compute. * time/tzfile.c (__tzfile_read): Also read TZ string. (find_transition): Fold into __tzfile_compute. (__tzfile_compute): For times beyond the last transition try to use the TZ string. * timezone/tst-timezone.c: Information in daylight and tzname does change for Asia/Tokyo timezone with more concrete information. Remove the test. * include/stdio.h: Add libc_hidden_proto for ftello. * libio/ftello.c: Add libc_hidden_def.
* [BZ #3195]Ulrich Drepper2007-10-136-11/+11
| | | | | | | | | * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found no entry. * nscd/nscd_getgr.c (nscd_getgr_r): Likewise. * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
* * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simplerUlrich Drepper2007-10-131-43/+59
| | | | | read mechanism when there are no group members and avoid no-op read syscall in this case.
* [BZ #3242]Ulrich Drepper2007-10-131-35/+68
| | | | | | | | | 2007-10-13 Ulrich Drepper <drepper@redhat.com> [BZ #3242] * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter. (__readall): If reading failed due to EAGAIN error wait a bit and possibly try again. (__readvall): Likewise.
* [BZ #3924]Ulrich Drepper2007-10-072-6/+25
| | | | | | * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few more little bugs in creating the stack frame when pltexit has to be called.
* * nscd/connections.c (verify_persistent_db): Recognize circular lists.Ulrich Drepper2007-10-061-1/+6
|
* * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.Ulrich Drepper2007-10-061-1/+6
|
* [BZ #5112]Ulrich Drepper2007-10-051-7/+8
| | | | | * nscd/connections.c (restart): Don't resync if database is disabled. Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
* * nscd/connections.c (send_ro_fd): Also transfer file size.Ulrich Drepper2007-08-292-15/+31
| | | | | * nscd/nscd_helper.c (get_mapping): If nscd also transfers the file size don't call fstat.
* * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just goUlrich Drepper2007-08-291-30/+29
| | | | | ahead and map the file. This should always be correct and we can catch problems later.
* [BZ #4946]Ulrich Drepper2007-08-221-1/+1
| | | | | | * nscd/connections.c (handle_request): Using sendfile always requires that mmap is used for the database. Patch by Petr Baudis <pasky@suse.cz>.
* [BZ #4905]Ulrich Drepper2007-08-221-13/+19
| | | | | | * nscd/hstcache.c (cache_addhst): When reloading an entry which suddenly has two or more addresses, ignore it and remove the old entry.
* [BZ #4814]Ulrich Drepper2007-08-225-4/+20
| | | | | | | | | * resolv/res_hconf.c: Prepare for compiling outside libc. * nscd/res_hconf.c: New file. * nscd/Makefile (nscd-modules): Add res_hconf. Add rules to build the new file. * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define. * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
* * nscd/hstcache.c (cache_addhst): Minimal optimization.Ulrich Drepper2007-08-221-1/+1
|
* * nscd/servicescache.c: Include kernel-features.h.Ulrich Drepper2007-08-132-0/+3
| | | | | | | | | | | | | * nscd/gai.c: Likewise. * sysdeps/unix/sysv/linux/statfs64.c: Likewise. * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise. * sysdeps/unix/sysv/linux/fxstatat.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise. * sysdeps/unix/sysv/linux/xstatconv.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise. * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
* * nscd/connections.c: Use O_CLOEXEC is possible. Use mkostempUlrich Drepper2007-08-111-6/+21
| | | | | | | | | | | | | | | | | | | | | | | | | instead of mkstemp. * misc/Makefile (routines): Add mkostemp and mkostemp64. * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7. * misc/mkostemp.c: New file. * misc/mkostemp64.c: New file. * stdlib/stdlib.h: Declare the new functions. * sysdeps/posix/tempname.c: Add new parameter which is added to the flags for open. Remove __GT_BIGFILE handling. * stdio-common/tempname.c: Likewise. * include/stdio.h: Adjust __gen_tempname prototype. Renumber __GT_* constants. * libio/oldtmpfile.c: Adjust for __gen_tempname interface change. * misc/mkdtemp.c: Likewise. * misc/mkstemp.c: Likewise. * misc/mkstemp64.c: Likewise. * misc/mktemp.c: Likewise. * stdio-common/tempnam.c: Likewise. * stdio-common/tmpfile.c: Likewise. * stdio-common/tmpfile64.c: Likewise. * stdio-common/tmpnam.c: Likewise. * stdio-common/tmpnam_r.c: Likewise.
* * nscd/selinux.c (preserve_capabilities): Initialize new_capsUlrich Drepper2007-07-281-1/+1
| | | | | | | | | | to avoid warning. * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid warning. * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid warning. * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len to avoid warnings.
* * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC forUlrich Drepper2007-07-211-1/+5
| | | | descriptor received from nscd.
* * elf/ldconfig.c: Allow GPLv2 or any later version.Roland McGrath2007-07-1622-44/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * elf/readlib.c: Likewise. * elf/chroot_canon.c: Likewise. * elf/cache.c: Likewise. * nscd/mem.c: Likewise. * nscd/getpwuid_r.c: Likewise. * nscd/grpcache.c: Likewise. * nscd/aicache.c: Likewise. * nscd/getsrvbynm_r.c: Likewise. * nscd/nscd.c: Likewise. * nscd/servicescache.c: Likewise. * nscd/getsrvbypt_r.c: Likewise. * nscd/initgrcache.c: Likewise. * nscd/gethstbyad_r.c: Likewise. * nscd/gethstbynm2_r.c: Likewise. * nscd/getgrnam_r.c: Likewise. * nscd/nscd_setup_thread.c: Likewise. * nscd/getpwnam_r.c: Likewise. * nscd/gai.c: Likewise. * nscd/connections.c: Likewise. * nscd/dbg_log.c: Likewise. * nscd/cache.c: Likewise. * nscd/hstcache.c: Likewise. * nscd/nscd_conf.c: Likewise. * nscd/getgrgid_r.c: Likewise. * nscd/pwdcache.c: Likewise. * catgets/gencat.c: Likewise. * locale/programs/linereader.h: Likewise. * locale/programs/locarchive.c: Likewise. * locale/programs/ld-paper.c: Likewise. * locale/programs/locfile-kw.h: Likewise. * locale/programs/ld-address.c: Likewise. * locale/programs/xmalloc.c: Likewise. * locale/programs/ld-time.c: Likewise. * locale/programs/localedef.c: Likewise. * locale/programs/simple-hash.c: Likewise. * locale/programs/xstrdup.c: Likewise. * locale/programs/ld-numeric.c: Likewise. * locale/programs/locfile-kw.gperf: Likewise. * locale/programs/ld-collate.c: Likewise. * locale/programs/charmap-kw.gperf: Likewise. * locale/programs/charmap.h: Likewise. * locale/programs/charmap-kw.h: Likewise. * locale/programs/config.h: Likewise. * locale/programs/locfile.c: Likewise. * locale/programs/ld-ctype.c: Likewise. * locale/programs/charmap.c: Likewise. * locale/programs/ld-messages.c: Likewise. * locale/programs/repertoire.h: Likewise. * locale/programs/locale.c: Likewise. * locale/programs/ld-name.c: Likewise. * locale/programs/linereader.c: Likewise. * locale/programs/locfile.h: Likewise. * locale/programs/3level.h: Likewise. * locale/programs/ld-monetary.c: Likewise. * locale/programs/ld-measurement.c: Likewise. * locale/programs/charmap-dir.c: Likewise. * locale/programs/ld-identification.c: Likewise. * locale/programs/localedef.h: Likewise. * locale/programs/charmap-dir.h: Likewise. * locale/programs/repertoire.c: Likewise. * locale/programs/simple-hash.h: Likewise. * locale/programs/ld-telephone.c: Likewise. * locale/programs/locale-spec.c: Likewise. * locale/programs/locfile-token.h: Likewise. * posix/getconf.c: Likewise. * iconv/dummy-repertoire.c: Likewise. * iconv/iconv_charmap.c: Likewise. * iconv/iconvconfig.c: Likewise. * iconv/iconv_prog.c: Likewise. * malloc/memusagestat.c: Likewise. * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
* * sysdeps/unix/sysv/linux/internaltypes.h: IntroduceUlrich Drepper2007-05-291-2/+2
| | | | | | | | | | | | | | | | COND_NWAITERS_SHIFT. * pthread_cond_destroy.c: Use COND_NWAITERS_SHIFT instead of COND_CLOCK_BITS. * pthread_cond_init.c: Likewise. * pthread_cond_timedwait.c: Likewise. * pthread_cond_wait.c: Likewise. * pthread_condattr_getclock.c: Likewise. * pthread_condattr_setclock.c: Likewise. * sysdeps/unix/sysv/linux/lowlevelcond.sym: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
* * nscd/nscd_helper.c (get_mapping): Handle short replies insteadUlrich Drepper2007-05-291-3/+4
| | | | | | | of crashing. When this is the case or if the reply is malformed, don't try to close the new file descriptor since it does not exist. Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
* * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cacheUlrich Drepper2007-05-211-17/+5
| | | | the entry.
* * scripts/check-local-headers.sh: Filter out sys/capability.h. cvs/fedora-glibc-20070331T1609Ulrich Drepper2007-03-262-8/+12
| | | | | | | | | | 2007-03-22 Jakub Jelinek <jakub@redhat.com> * config.h.in (HAVE_LIBCAP): Add. * nscd/selinux.h: Include sys/capability.h rather than non-existent sys/capabilities.h. * nscd/selinux.c (preserve_capabilities): Use cap_free instead of free_caps. Cast away const from 4th cap_set_flag argument.
* * nscd/gai.c: Include alloca.h.Ulrich Drepper2007-03-181-0/+3
| | | | (__libc_use_alloca): Define.
* * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.Ulrich Drepper2007-02-213-4/+5
| | | | | | | * nscd/servicescache.c (cache_addserv): Likewise. * nscd/grpcache.c (cache_addgr): In case a record changed on refresh, adjust key_copy.
* [BZ #4074]Ulrich Drepper2007-02-211-0/+1
| | | | | * nscd/pwdcache.c (cache_addpw): In case a record changed on refresh, adjust key_copy.
* * nscd/nscd.c (parse_opt): One more conversion to use send insteadUlrich Drepper2007-02-161-16/+20
| | | | of writev.
* * nscd/nscd_helper.c (open_socket): Don't send padding bytes fromUlrich Drepper2007-02-161-2/+3
| | | | reqdata.
* * nscd/nscd_helper.c (open_socket): Minor size optimization.Ulrich Drepper2007-02-021-8/+8
|
* * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of Jakub Jelinek2007-02-021-2/+2
| | | | | | | | gettimeofday. 2007-02-02 Jakub Jelinek <jakub@redhat.com> * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of gettimeofday.
* * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before cvs/fedora-glibc-20070202T0923Ulrich Drepper2007-02-011-1/+0
| | | | | | | | | | | | | | returning. (PTR_DEMANGLE): Real definition now that it's not the same as PRT_MANGLE anymore. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. * string/strerror_l.c: New file. * string/Makefile (routines): Add strerror_l. * string/string.h: Declare strerror_l. * string/Versions: Export strerror_l for GLIBC_2.6. * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
* * nscd/nscd_helper.c (open_socket): Now takes request type and keyUlrich Drepper2007-01-311-52/+72
| | | | | | | as parameter. Construct request record. Try sending request before the first poll use, it usually succeeds. Adjust all callers. * nscd/nscd-client.h: Define MAXKEYLEN.
* Define MAXKEYLEN.Ulrich Drepper2007-01-311-0/+3
|
* Do recend check before realigning on strict alignment arches, as otherwise ↵Jakub Jelinek2007-01-311-4/+4
| | | | it was comparing a stack address + offset with a mmap address.
* * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier Jakub Jelinek2007-01-318-245/+368
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from return value. * nscd/nscd_helper.c: Include string.h. (__nscd_cache_search): Remove const qualifier from return value. On strict alignment architectures check hash entry and data head alignment. * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because mmapped data during GC cycle contains garbage. If __nscd_drop_map_ref fails, decrement mapped->counter when returning error or if retrying with NO_MAPPING, only __nscd_unmap if counter dropped to 0. * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise. * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. * nscd/nscd_getai.c (__nscd_getai): Likewise. * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. 2007-01-31 Jakub Jelinek <jakub@redhat.com> * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier from return value. * nscd/nscd_helper.c: Include string.h. (__nscd_cache_search): Remove const qualifier from return value. On strict alignment architectures check hash entry and data head alignment. * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because mmapped data during GC cycle contains garbage. If __nscd_drop_map_ref fails, decrement mapped->counter when returning error or if retrying with NO_MAPPING, only __nscd_unmap if counter dropped to 0. * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise. * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. * nscd/nscd_getai.c (__nscd_getai): Likewise. * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
* * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.Jakub Jelinek2007-01-171-2/+2
| | | | * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
* * nscd/connections.c (servinfo): Renamed to reqinfo. Change allUlrich Drepper2007-01-161-12/+7
| | | | | users. (handle_request): Remove unnecessary tests.
* (cache_add): Record the failure to add to the cache.Ulrich Drepper2007-01-161-1/+4
|
* * nscd/connections.c (handle_request): Add a __builtin_expect.Ulrich Drepper2007-01-151-1/+1
|
* * nscd/connections.c (serv2db): Change type into structure whichUlrich Drepper2007-01-151-26/+29
| | | | | | also says whether this is a request for data. Renamed to servinfo. All users changed. (handle_request): Much simpler test whether we should search the cache.
* * nscd/connections.c (handle_request): Fix thinko in selinux testUlrich Drepper2007-01-151-1/+0
| | | | invocation.
* * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): CorrectUlrich Drepper2007-01-1418-137/+999
| | | | computation of keylen.
* * nscd/nscd_gethst_r.c: Minor cleanups.Ulrich Drepper2007-01-131-8/+4
|
* * nscd/connections.c (handle_request): Check selinux permissionsUlrich Drepper2007-01-131-3/+4
| | | | for all non-admin commands.