aboutsummaryrefslogtreecommitdiff
path: root/nss/Makefile
AgeCommit message (Collapse)Author
2016-01-04Update copyright dates with scripts/update-copyrights.Joseph Myers
2015-10-02Harden putpwent, putgrent, putspent, putspent against injection [BZ #18724]Florian Weimer
This prevents injection of ':' and '\n' into output functions which use the NSS files database syntax. Critical fields (user/group names and file system paths) are checked strictly. For backwards compatibility, the GECOS field is rewritten instead. The getent program is adjusted to use the put*ent functions in libc, instead of local copies. This changes the behavior of getent if user names start with '-' or '+'.
2015-09-22Test in commit e07aabba73ea62e7dfa0512507c92efb851fbdbe is for bug 17079Florian Weimer
2015-09-22Add test case for bug 18287Florian Weimer
2015-04-29CVE-2014-8121: Do not close NSS files database during iteration [BZ #18007]Florian Weimer
Robin Hack discovered Samba would enter an infinite loop processing certain quota-related requests. We eventually tracked this down to a glibc issue. Running a (simplified) test case under strace shows that /etc/passwd is continuously opened and closed: … open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 lseek(3, 0, SEEK_CUR) = 0 read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2717 lseek(3, 2717, SEEK_SET) = 2717 close(3) = 0 open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 lseek(3, 0, SEEK_CUR) = 0 lseek(3, 0, SEEK_SET) = 0 read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2717 lseek(3, 2717, SEEK_SET) = 2717 close(3) = 0 open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 lseek(3, 0, SEEK_CUR) = 0 … The lookup function implementation in nss/nss_files/files-XXX.c:DB_LOOKUP has code to prevent that. It is supposed skip closing the input file if it was already open. /* Reset file pointer to beginning or open file. */ \ status = internal_setent (keep_stream); \ \ if (status == NSS_STATUS_SUCCESS) \ { \ /* Tell getent function that we have repositioned the file pointer. */ \ last_use = getby; \ \ while ((status = internal_getent (result, buffer, buflen, errnop \ H_ERRNO_ARG EXTRA_ARGS_VALUE)) \ == NSS_STATUS_SUCCESS) \ { break_if_match } \ \ if (! keep_stream) \ internal_endent (); \ } \ keep_stream is initialized from the stayopen flag in internal_setent. internal_setent is called from the set*ent implementation as: status = internal_setent (stayopen); However, for non-host database, this flag is always 0, per the STAYOPEN magic in nss/getXXent_r.c. Thus, the fix is this: - status = internal_setent (stayopen); + status = internal_setent (1); This is not a behavioral change even for the hosts database (where the application can specify the stayopen flag) because with a call to sethostent(0), the file handle is still not closed in the implementation of gethostent.
2015-02-06Exclude rpcent functions and NSS backends for rpc, key when excluding sunrpc.Roland McGrath
2015-01-02Update copyright dates with scripts/update-copyrights.Joseph Myers
2014-11-24Remove NOT_IN_libcSiddhesh Poyarekar
Replace with !IS_IN (libc). This completes the transition from the IS_IN/NOT_IN macros to the IN_MODULE macro set. The generated code is unchanged on x86_64. * stdlib/isomac.c (fmt): Replace NOT_IN_libc with IN_MODULE. (get_null_defines): Adjust. * sunrpc/Makefile: Adjust comment. * Makerules (CPPFLAGS-nonlib): Remove NOT_IN_libc. * elf/Makefile (CPPFLAGS-sotruss-lib): Likewise. (CFLAGS-interp.c): Likewise. (CFLAGS-ldconfig.c): Likewise. (CPPFLAGS-.os): Likewise. * elf/rtld-Rules (rtld-CPPFLAGS): Likewise. * extra-lib.mk (CPPFLAGS-$(lib)): Likewise. * extra-modules.mk (extra-modules.mk): Likewise. * iconv/Makefile (CPPFLAGS-iconvprogs): Likewise. * locale/Makefile (CPPFLAGS-locale_programs): Likewise. * malloc/Makefile (CPPFLAGS-memusagestat): Likewise. * nscd/Makefile (CPPFLAGS-nscd): Likewise. * nss/Makefile (CPPFLAGS-nss_test1): Likewise. * stdlib/Makefile (CFLAGS-tst-putenvmod.c): Likewise. * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise. * sysdeps/unix/sysv/linux/Makefile (CPPFLAGS-lddlibc4): Likewise. * iconvdata/Makefile (CPPFLAGS): Likewise. (cpp-srcs-left): Add libof for all iconvdata routines. * bits/stdio-lock.h: Replace NOT_IN_libc with IS_IN. * include/assert.h: Likewise. * include/ctype.h: Likewise. * include/errno.h: Likewise. * include/libc-symbols.h: Likewise. * include/math.h: Likewise. * include/netdb.h: Likewise. * include/resolv.h: Likewise. * include/stdio.h: Likewise. * include/stdlib.h: Likewise. * include/string.h: Likewise. * include/sys/stat.h: Likewise. * include/wctype.h: Likewise. * intl/l10nflist.c: Likewise. * libidn/idn-stub.c: Likewise. * libio/libioP.h: Likewise. * nptl/libc_multiple_threads.c: Likewise. * nptl/pthreadP.h: Likewise. * posix/regex_internal.h: Likewise. * resolv/res_hconf.c: Likewise. * sysdeps/arm/armv7/multiarch/memcpy.S: Likewise. * sysdeps/arm/memmove.S: Likewise. * sysdeps/arm/sysdep.h: Likewise. * sysdeps/generic/_itoa.h: Likewise. * sysdeps/generic/symbol-hacks.h: Likewise. * sysdeps/gnu/errlist.awk: Likewise. * sysdeps/gnu/errlist.c: Likewise. * sysdeps/i386/i586/memcpy.S: Likewise. * sysdeps/i386/i586/memset.S: Likewise. * sysdeps/i386/i686/memcpy.S: Likewise. * sysdeps/i386/i686/memmove.S: Likewise. * sysdeps/i386/i686/mempcpy.S: Likewise. * sysdeps/i386/i686/memset.S: Likewise. * sysdeps/i386/i686/multiarch/bcopy.S: Likewise. * sysdeps/i386/i686/multiarch/bzero.S: Likewise. * sysdeps/i386/i686/multiarch/memchr-sse2-bsf.S: Likewise. * sysdeps/i386/i686/multiarch/memchr-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/memchr.S: Likewise. * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Likewise. * sysdeps/i386/i686/multiarch/memcmp-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/memcmp.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy_chk.S: Likewise. * sysdeps/i386/i686/multiarch/memmove.S: Likewise. * sysdeps/i386/i686/multiarch/memmove_chk.S: Likewise. * sysdeps/i386/i686/multiarch/mempcpy.S: Likewise. * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Likewise. * sysdeps/i386/i686/multiarch/memrchr-c.c: Likewise. * sysdeps/i386/i686/multiarch/memrchr-sse2-bsf.S: Likewise. * sysdeps/i386/i686/multiarch/memrchr-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/memrchr.S: Likewise. * sysdeps/i386/i686/multiarch/memset-sse2-rep.S: Likewise. * sysdeps/i386/i686/multiarch/memset-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/memset.S: Likewise. * sysdeps/i386/i686/multiarch/memset_chk.S: Likewise. * sysdeps/i386/i686/multiarch/rawmemchr.S: Likewise. * sysdeps/i386/i686/multiarch/strcat-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strcat-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/strcat.S: Likewise. * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: Likewise. * sysdeps/i386/i686/multiarch/strchr-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strchr.S: Likewise. * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Likewise. * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/strcmp.S: Likewise. * sysdeps/i386/i686/multiarch/strcpy-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/strcpy.S: Likewise. * sysdeps/i386/i686/multiarch/strcspn.S: Likewise. * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: Likewise. * sysdeps/i386/i686/multiarch/strlen-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strlen.S: Likewise. * sysdeps/i386/i686/multiarch/strnlen.S: Likewise. * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: Likewise. * sysdeps/i386/i686/multiarch/strrchr-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strrchr.S: Likewise. * sysdeps/i386/i686/multiarch/strspn.S: Likewise. * sysdeps/i386/i686/multiarch/wcschr-c.c: Likewise. * sysdeps/i386/i686/multiarch/wcschr-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/wcschr.S: Likewise. * sysdeps/i386/i686/multiarch/wcscmp-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/wcscmp.S: Likewise. * sysdeps/i386/i686/multiarch/wcscpy-c.c: Likewise. * sysdeps/i386/i686/multiarch/wcscpy-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/wcscpy.S: Likewise. * sysdeps/i386/i686/multiarch/wcslen-c.c: Likewise. * sysdeps/i386/i686/multiarch/wcslen-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/wcslen.S: Likewise. * sysdeps/i386/i686/multiarch/wcsrchr-c.c: Likewise. * sysdeps/i386/i686/multiarch/wcsrchr-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/wcsrchr.S: Likewise. * sysdeps/i386/i686/multiarch/wmemcmp-c.c: Likewise. * sysdeps/i386/i686/multiarch/wmemcmp.S: Likewise. * sysdeps/ia64/fpu/libm-symbols.h: Likewise. * sysdeps/nptl/bits/libc-lock.h: Likewise. * sysdeps/nptl/bits/libc-lockP.h: Likewise. * sysdeps/nptl/bits/stdio-lock.h: Likewise. * sysdeps/posix/closedir.c: Likewise. * sysdeps/posix/opendir.c: Likewise. * sysdeps/posix/readdir.c: Likewise. * sysdeps/posix/rewinddir.c: Likewise. * sysdeps/powerpc/novmx-sigjmp.c: Likewise. * sysdeps/powerpc/powerpc32/__longjmp.S: Likewise. * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memmove.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memset-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/memset.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strchr.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strlen-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c: Likewise. * sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c: Likewise. * sysdeps/powerpc/powerpc32/power6/memset.S: Likewise. * sysdeps/powerpc/powerpc32/setjmp.S: Likewise. * sysdeps/powerpc/powerpc64/__longjmp.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/bzero.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memchr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memcmp-ppc64.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memcmp.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memcpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memmove.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/mempcpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memrchr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/memset.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/stpcpy-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/stpcpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/stpncpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcat.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strchr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strchrnul.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcmp-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcmp.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcpy-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strcspn.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strlen.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncase.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncase_l.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncat.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncmp.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncpy-ppc64.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strncpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strnlen.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strpbrk.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strrchr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strspn-ppc64.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/strspn.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/wcschr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/wcscpy.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c: Likewise. * sysdeps/powerpc/powerpc64/multiarch/wordcopy.c: Likewise. * sysdeps/powerpc/powerpc64/setjmp.S: Likewise. * sysdeps/s390/s390-32/multiarch/ifunc-resolve.c: Likewise. * sysdeps/s390/s390-32/multiarch/memcmp.S: Likewise. * sysdeps/s390/s390-32/multiarch/memcpy.S: Likewise. * sysdeps/s390/s390-32/multiarch/memset.S: Likewise. * sysdeps/s390/s390-64/multiarch/ifunc-resolve.c: Likewise. * sysdeps/s390/s390-64/multiarch/memcmp.S: Likewise. * sysdeps/s390/s390-64/multiarch/memcpy.S: Likewise. * sysdeps/s390/s390-64/multiarch/memset.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-niagara1.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-niagara4.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memset-niagara1.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memset-niagara4.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise. * sysdeps/unix/alpha/sysdep.S: Likewise. * sysdeps/unix/alpha/sysdep.h: Likewise. * sysdeps/unix/make-syscalls.sh: Likewise. * sysdeps/unix/sysv/linux/aarch64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/aarch64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/alpha/vfork.S: Likewise. * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/getpid.c: Likewise. * sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/lowlevellock-futex.h: Likewise. * sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h: Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/microblaze/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/microblaze/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/mips/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/not-cancel.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/s390/longjmp_chk.c: Likewise. * sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/vfork.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/vfork.S: Likewise. * sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/sh/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise. * sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/tile/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/tile/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/tile/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/tile/waitpid.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. * sysdeps/wordsize-32/symbol-hacks.h: Likewise. * sysdeps/x86_64/memcpy.S: Likewise. * sysdeps/x86_64/memmove.c: Likewise. * sysdeps/x86_64/memset.S: Likewise. * sysdeps/x86_64/multiarch/init-arch.h: Likewise. * sysdeps/x86_64/multiarch/memcmp-sse4.S: Likewise. * sysdeps/x86_64/multiarch/memcmp-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/memcmp.S: Likewise. * sysdeps/x86_64/multiarch/memcpy-avx-unaligned.S: Likewise. * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise. * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/memcpy.S: Likewise. * sysdeps/x86_64/multiarch/memcpy_chk.S: Likewise. * sysdeps/x86_64/multiarch/memmove.c: Likewise. * sysdeps/x86_64/multiarch/mempcpy.S: Likewise. * sysdeps/x86_64/multiarch/mempcpy_chk.S: Likewise. * sysdeps/x86_64/multiarch/memset-avx2.S: Likewise. * sysdeps/x86_64/multiarch/memset.S: Likewise. * sysdeps/x86_64/multiarch/memset_chk.S: Likewise. * sysdeps/x86_64/multiarch/strcat-sse2-unaligned.S: Likewise. * sysdeps/x86_64/multiarch/strcat-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/strcat.S: Likewise. * sysdeps/x86_64/multiarch/strchr-sse2-no-bsf.S: Likewise. * sysdeps/x86_64/multiarch/strchr.S: Likewise. * sysdeps/x86_64/multiarch/strcmp-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/strcmp.S: Likewise. * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: Likewise. * sysdeps/x86_64/multiarch/strcpy-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/strcpy.S: Likewise. * sysdeps/x86_64/multiarch/strcspn.S: Likewise. * sysdeps/x86_64/multiarch/strspn.S: Likewise. * sysdeps/x86_64/multiarch/wcscpy-c.c: Likewise. * sysdeps/x86_64/multiarch/wcscpy-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/wcscpy.S: Likewise. * sysdeps/x86_64/multiarch/wmemcmp-c.c: Likewise. * sysdeps/x86_64/multiarch/wmemcmp.S: Likewise. * sysdeps/x86_64/strcmp.S: Likewise.
2014-11-19Add new macro IN_MODULE to identify module in which source is builtSiddhesh Poyarekar
The current scheme to identify which module a translation unit is built in depends on defining multiple macros IS_IN_* and also defining NOT_IN_libc if we're building a non-libc module. In addition, there is an IN_LIB macro that does effectively the same thing, but for different modules (notably the systemtap probes). This macro scheme unifies both ideas to use just one macro IN_MODULE and assign it a value depending on the module it is being built into. If the module is not defined, it defaults to MODULE_libc. Patches that follow will replace uses of IS_IN_* variables with the IS_IN() macro. libc-symbols.h has been converted already to give an example of how such a transition will look. Verified that there are no relevant binary changes. One source change that will crop up repeatedly is that of nscd_stat, since it uses the build timestamp as a constant in its logic. * Makeconfig (in-module): Get value of libof set for the translation unit. (CPPFLAGS): Use $(in-module). * Makerules: Don't suffix routine names for nonlib. * include/libc-modules.h: New file. * include/libc-symbols.h: Include libc-modules.h (IS_IN): New macro to replace IS_IN_* macros. * elf/Makefile: Set libof-* for each routine. * elf/rtld-Rules: Likewise. * extra-modules.mk: Likewise. * iconv/Makefile: Likewise. * iconvdata/Makefile: Likewise. * locale/Makefile: Likewise. * malloc/Makefile: Likewise. * nss/Makefile: Likewise. * sysdeps/gnu/Makefile: Likewise. * sysdeps/ieee754/ldbl-opt/Makefile: Likewise. * sysdeps/unix/sysv/linux/Makefile: Likewise. * sysdeps/s390/s390-64/Makefile: Likewise. * nscd/Makefile: Set libof-* for each routine. Set CFLAGS and CPPFLAGS for nscd instead of nonlib.
2014-02-26Consistently include Makeconfig after defining subdir.Joseph Myers
In <https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html> I noted it was necessary to add includes of Makeconfig early in various subdirectory makefiles for the tests-special variable settings added by that patch to be conditional on configuration information. No-one commented on the general question there of whether Makeconfig should always be included immediately after the definition of subdir. This patch implements that early inclusion of Makeconfig in each directory (which is a lot easier than consistent placement of includes of Rules). Includes are added if needed, or moved up if already present. Subdirectory "all:" targets are removed, since Makeconfig provides one. There is potential for further cleanups I haven't done. Rules and Makerules have code such as ifneq "$(findstring env,$(origin headers))" "" headers := endif to override to empty any value of various variables that came from the environment. I think there is a case for Makeconfig setting all the subdirectory variables (other than subdir) to empty to ensure no outside value is going to take effect if a subdirectory fails to define a variable. (A list of such variables, possibly out of date and incomplete, is in manual/maint.texi.) Rules and Makerules would give errors if Makeconfig hadn't already been included, instead of including it themselves. The special code to override values coming from the environment would then be obsolete and could be removed. Tested x86_64, including that installed binaries are identical before and after the patch. * argp/Makefile: Include Makeconfig immediately after defining subdir. * assert/Makefile: Likewise. * benchtests/Makefile: Likewise. * catgets/Makefile: Likewise. * conform/Makefile: Likewise. * crypt/Makefile: Likewise. * csu/Makefile: Likewise. (all): Remove target. * ctype/Makefile: Include Makeconfig immediately after defining subdir. * debug/Makefile: Likewise. * dirent/Makefile: Likewise. * dlfcn/Makefile: Likewise. * gmon/Makefile: Likewise. * gnulib/Makefile: Likewise. * grp/Makefile: Likewise. * gshadow/Makefile: Likewise. * hesiod/Makefile: Likewise. * hurd/Makefile: Likewise. (all): Remove target. * iconvdata/Makefile: Include Makeconfig immediately after defining subdir. * inet/Makefile: Likewise. * intl/Makefile: Likewise. * io/Makefile: Likewise. * libio/Makefile: Likewise. (all): Remove target. * locale/Makefile: Include Makeconfig immediately after defining subdir. * login/Makefile: Likewise. * mach/Makefile: Likewise. (all): Remove target. * malloc/Makefile: Include Makeconfig immediately after defining subdir. (all): Remove target. * manual/Makefile: Include Makeconfig immediately after defining subdir. * math/Makefile: Likewise. * misc/Makefile: Likewise. * nis/Makefile: Likewise. * nss/Makefile: Likewise. * po/Makefile: Likewise. (all): Remove target. * posix/Makefile: Include Makeconfig immediately after defining subdir. * pwd/Makefile: Likewise. * resolv/Makefile: Likewise. * resource/Makefile: Likewise. * rt/Makefile: Likewise. * setjmp/Makefile: Likewise. * shadow/Makefile: Likewise. * signal/Makefile: Likewise. * socket/Makefile: Likewise. * soft-fp/Makefile: Likewise. * stdio-common/Makefile: Likewise. * stdlib/Makefile: Likewise. * streams/Makefile: Likewise. * string/Makefile: Likewise. * sunrpc/Makefile: Likewise. (all): Remove target. * sysvipc/Makefile: Include Makeconfig immediately after defining subdir. * termios/Makefile: Likewise. * time/Makefile: Likewise. * timezone/Makefile: Likewise. (all): Remove target. * wcsmbs/Makefile: Include Makeconfig immediately after defining subdir. * wctype/Makefile: Likewise. libidn/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir. localedata/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir. (all): Remove target. nptl/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir. nptl_db/ChangeLog: * Makefile: Include Makeconfig immediately after defining subdir.
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae
2013-05-31Link extra-libs consistently with libc and ld.so.Joseph Myers
2013-05-21Fix parsing of numeric hosts in gethostbyname_rAndreas Schwab
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2012-09-28Quiet make warning under --disable-shared.Roland McGrath
2012-04-062012-04-06 Paul Pluzhnikov <ppluzhnikov@google.com>Paul Pluzhnikov
[BZ #13895] * nss/nsswitch.c (nss_load_library, __nss_lookup_function): Avoid extra indirection. * nss/Makefile (tests-static, tests): Add tst-nss-static. * nss/tst-nss-static.c: New.
2012-03-232012-03-23 Daniel Jacobowitz <dmj@google.com>Paul Pluzhnikov
Paul Pluzhnikov <ppluzhnikov@google.com> [BZ #6528] * grp/Makefile (otherlibs): Don't set it. * inet/Makefile (otherlibs): Likewise. * login/Makefile (otherlibs): Likewise. * nscd/Makefile (otherlibs): Likewise. * posix/Makefile (otherlibs): Likewise. * pwd/Makefile (otherlibs): Likewise. * rt/Makefile (otherlibs): Likewise. * sunrpc/Makefile (otherlibs): Likewise. * nss/Makefile (otherlibs): Likewise. Add libnss_files to routines and static-only-routines. ($(objpfx)getent): Remove rule. * resolv/Makefile: Add libnss_dns and libresolv to routines and static-only-routines.
2012-03-07Remove distribute variable from MakefilesUlrich Drepper
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert
2011-07-11Generalize framework to register monitoring of files in nscdUlrich Drepper
nscd can clear caches when certain files change. The list of files was hardcoded so far and worked for nss_files and nss_dns and those modules which need no monitoring. nss_db, for instance, has its own set of files to monitor. Now the NSS modules themselves can request that certain files are monitored.
2011-06-15Install db-MakefileUlrich Drepper
2011-06-15Add initgroups lookups to nss_dbUlrich Drepper
2011-06-15Reenable nss_db with a completely new implementationUlrich Drepper
No longer is Berkeley db used. Instead a simple hash function is used. The database files are not updated once they are created and therefore no complicated database is needed.
2011-06-15Rewrite makedb to avoid using db libraryUlrich Drepper
2011-04-19Define initgroups callback for nss_files.Ulrich Drepper
2011-04-16Obsolete RPC implementation in libc.Ulrich Drepper
2010-08-11Add self-contained test for NSS.Ulrich Drepper
While at it fix interaction between __nss_configure_lookup and nscd. Otherwise the test fails if nscd is runnung.
2009-04-23[BZ #9955]Ulrich Drepper
2009-04-23 Ulrich Drepper <drepper@redhat.com> [BZ #9955] * gshadow/Makefile: New file. * gshadow/Versions: New file. * gshadow/fgetsgent.c: New file. * gshadow/fgetsgent_r.c: New file. * gshadow/getsgent.c: New file. * gshadow/getsgent_r.c: New file. * gshadow/getsgnam.c: New file. * gshadow/getsgnam_r.c: New file. * gshadow/gshadow.h: New file. * gshadow/putsgent.c: New file. * gshadow/sgetsgent.c: New file. * gshadow/sgetsgent_r.c: New file. * gshadow/tst-gshadow.c: New file. * include/gshadow.h: New file. * Makeconfig (all-subdirs): Add gshadow. * Makefile (installed-headers): Add gshadow/gshadow.h. * nss/Makefile (databases): Add sgrp. * nss/Versions: Add gshadow functions as private exports. * nss/nsswitch.conf: Add gshadow entry. * nss/sgrp-lookup.c: New file. * nss/nss_files/files-parse.c: Add STRING_LIST macro. Rewrite parse_list to handle STRING_LIST and TRAILING_LIST_PARSER. * nss/nss_files/files-sgrp.c: New file. * sysdeps/generic/paths.h: Add _PATH_GSHADOW. * sysdeps/unix/sysv/linux/paths.h: Likewise.
2007-08-10* nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC ifUlrich Drepper
possible. * nss/nss_files/files-alias.c (internal_setent): Likewise. * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec. * nss/nss_files/files-have_o_cloexec.c: New file.
2002-09-29Update.Ulrich Drepper
* nss/bug-erange.c (main): Don't fail if /etc/resolv.conf doesn't exist. 2002-09-29 Ulrich Drepper <drepper@redhat.com> * nss/Makefile: Move bug-erage from tests to xtests. 2002-09-29 Jakub Jelinek <jakub@redhat.com>
2002-09-12* nss/bug-erange.c: New file.Roland McGrath
* nss/Makefile (tests): Add it.
2001-07-06Update to LGPL v2.1.Andreas Jaeger
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.
2001-03-18Update.Ulrich Drepper
2001-03-18 Ulrich Drepper <drepper@redhat.com> * Makerules (build-shlib): Remove unnecessary slashes introduced in last change. * configure.in: Test for -Bgroup option of linker. * config.make.in: Define have-Bgroup. * conform/data/unistd.h-data: Require gethostname. * posix/unistd.h: Make gethostname prototype available for __USE_XOPEN2K. * crypt/Makefile: When generating DSO link with libc_nonshared.a. * debug/Makefile: Likewise. * dlfcn/Makefile: Likewise. * hesiod/Makefile: Likewise. * iconvdata/extra-module.mk: Likewise. * locale/Makefile: Likewise. * login/Makefile: Likewise. * math/Makefile: Likewise. * nis/Makefile: Likewise. * nss/Makefile: Likewise. * resolv/Makefile: Likewise. * rt/Makefile: Likewise. * posix/unistd.h (gethostname): Change type of second parameter back to size_t as per upcoming XPG6.
2001-01-21Update.Ulrich Drepper
2000-12-09 H.J. Lu <hjl@gnu.org> * nss/Makefile (routines): Add digits_dots. * nss/Versions (libc): Add __nss_hostname_digits_dots to GLIBC_2.2.2. * nss/digits_dots.c (__nss_hostname_digits_dots): Turn template into a function. * nss/nsswitch.h (__nss_hostname_digits_dots): New internal NSS function. * nss/getXXbyYY.c (H_ERRNO_VAR_P): New definition. (TYPE_VAR_P): Likewise. (FLAGS_VAR): Likewise. (AF_VAR_P): Likewise. (INTERNAL (REENTRANT_NAME)): Call __nss_hostname_digits_dots () instead of including digits_dots.c. * nss/getXXbyYY_r.c (H_ERRNO_VAR_P): New definition. (TYPE_VAR_P): Likewise. (FLAGS_VAR): Likewise. (AF_VAR_P): Likewise. (INTERNAL (REENTRANT_NAME)): Call __nss_hostname_digits_dots () instead of including digits_dots.c.
2000-12-08Update.Ulrich Drepper
2000-12-05 H.J. Lu <hjl@gnu.org> * nss/Makefile (routines): Add getnssent and getnssent_r. * nss/nsswitch.h (__nss_setent): New internal NSS function. (__nss_endent): Likewise. (__nss_getent_r): Likewise. (__nss_getent): Likewise. * nss/getnssent_r.c: New file. * nss/getnssent.c: New file. * nss/getXXent.c (H_ERRNO_VAR): Updated. (GETFUNC_NAME): Updated to call __nss_getent (). * nss/getXXent_r.c (H_ERRNO_VAR_P): New. (STAYOPEN_TMPVAR): Updated. (STAYOPEN_VAR): Updated. (SETFUNC_NAME): Updated to call __nss_setent (). (ENDFUNC_NAME): Updated to call __nss_endent (). (INTERNAL (REENTRANT_GETNAME)): Updated to call __nss_getent_r ().
2000-08-14Update.Ulrich Drepper
* nss/Makefile: Remove rules to build and distribute nss_db. * sysdeps/generic/alphasort64.c: Remove unnecessary versioning. * sysdeps/generic/scandir64.c: Likewise. * sysdeps/generic/versionsort64.c: Likewise. 2000-08-13 Ulrich Drepper <drepper@redhat.com>
2000-04-23Update.Ulrich Drepper
2000-04-23 Ulrich Drepper <drepper@redhat.com> * nss/Makefile (libnss_db-dbs): Remove stry backslash. Patch by Zack Weinberg <zack@wolery.cumb.org>.
2000-04-22Update.Ulrich Drepper
2000-04-22 Ulrich Drepper <drepper@redhat.com> * assert/assert-perr.c: Include <stdlib.h> for abort prototype. * libio/ftello.c: Likewise. * libio/ftello64.c: Likewise. * libio/ioftell.c: Likewise. * sysdeps/generic/memrchr.c: Likewise. * sysdeps/posix/libc_fatal.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * misc/fstab.c: Include <string.h> for strcmp prototype. * sysdeps/generic/ldsodefs.h: Likewise. * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. Patch by Kurt Roeckx <Q@ping.be>. * nss/Makefile (libnss_db-dbs): Renamed from libnss_db-routines. Remove db-open. Change all uses. (libnss_db-routines): Define as $(libnss_db-dbs) db-open. 2000-04-21 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/alpha/msgctl.c (__syscall_msgctl): Declare. * sysdeps/unix/sysv/linux/alpha/semctl.c (__syscall_semctl): Declare. * sysdeps/unix/sysv/linux/alpha/shmctl.c (__syscall_shmctl): Declare. * sysdeps/unix/sysv/linux/alpha/getrusage.S: Surround uses of $f28 with .set noat/at to shut up warnings. * sysdeps/unix/sysv/linux/alpha/syscalls.list (__fstatfs64): Add alias. * sysdeps/unix/sysv/linux/alpha/ioperm.c (init_iosys): Allow compilation if __NR_pciconfig_iobase is not defined. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__fstatfs64): Add alias.
2000-04-05($(objpfx)makedb): Move $(libdl) after db-open.o.Ulrich Drepper
2000-01-27Update.Ulrich Drepper
2000-01-26 Andreas Jaeger <aj@suse.de> * Make-dist (+sysdep-tscrs): Add libm-test-ulps. 2000-01-26 Ulrich Drepper <drepper@cygnus.com> * locale/Makefile (distribute): Remove nonexisting files. * sysdeps/powerpc/Dist: Move FPU specific files to... * sysdeps/powerpc/fpu/Dist: ...here. New file. * nss/Makefile: Distribute files for new libdb interface. * math/Makefile (distribute): Add README.libm-test. Patch by Andreas Jaeger.
2000-01-08Update.Ulrich Drepper
2000-01-07 Andreas Jaeger <aj@suse.de> Add support for Berkeley db 3.0.x and merge db support: * nss/nss_db/dummy-db.h (struct db30): New. (struct dbc30): New. Added DB30* flags. * nss/makedb.c: Move all database routines to db-open.c. (main): Adjust to interface changes. Load database early to initialize version dependend variables. * nss/db-open.c: Merge database routines from makedb.c. Define version dependend constansts as variables. (load_db): Check also for db 3. (internal_setent): Call dbopen. (db_cursor): New function from makedb; handles db 3 now. (dbopen): New function from makedb; handles db 3. * nss/nss_db/db-XXX.c: Use db_notfound since the value is different in different DB versions. * nss/nss_db/nss_db.h: Add version dependend constants as variables, add exportet interfaces from db-open.c. * nss/Makefile ($(objpfx)makedb): Link against db-open. 2000-01-07 Ulrich Drepper <drepper@cygnus.com> * misc/error.c: Don't use `defined _LIBC', only `_LIBC'. Reported by Jim Meyering. * time/strftime.c: Pretty printing. 2000-01-07 Andreas Jaeger <aj@suse.de> * manual/socket.texi (Host Names): Fix example. Reported by Marco Budde <budde@telos.de>.
2000-01-03Update.Ulrich Drepper
2000-01-03 Andreas Jaeger <aj@suse.de> * include/resolv.h: Remove declarations for __ns_name_ntop and __ns_name_unpack since those are available in resolv/arpa/nameser.h. 2000-01-03 Andreas Jaeger <aj@suse.de> * time/tst-strptime.c (test_tm): Add tests for all fields of struct tm. 2000-01-03 Ulrich Drepper <drepper@cygnus.com> * string/bits/string2.h (__strsep_g): Don't handle empty __S special. 2000-01-03 Andreas Jaeger <aj@suse.de> * string/tester.c (test_strsep): Add one more test. 2000-01-03 Philip Blundell <philb@gnu.org> * string/tester.c (test_mempcpy): New function. (main): Call it. (test_memcpy): Test unaligned cases too. * sysdeps/arm/bits/string.h (_HAVE_STRING_ARCH_mempcpy): Define. * sysdeps/arm/fpu/bits/mathdef.h: New file. * nss/Makefile: Add rules to build makedb.
2000-01-02Update.Ulrich Drepper
* nss/nss_db/db-XXX.c: Move internal_setent and internal_endent functions from here... * nss/db-alias.c: ...and here... * nss/db-netgrp.c: ...and here... * nss/nss_db/db-open.c: ...to here. New file. * nss/nss_db/dummy-db.h: New file. * nss/nss_db/nss_db.h: New file. * nss/Depend: Depend in dlfcn, not db2. * nss/Makefile (libnss_db-routines): Add db-open. (distribute): Add nss_db.h dummy-db.h. (libnss_db.so): Replace libdb dependency by $(libdl). Based on a patch by Zack Weinberg.
1998-11-28Update.Ulrich Drepper
1998-11-27 Philip Blundell <pb@nexus.co.uk> Fixes to allow compilation with static NSS: * nss/Makefile: Make explicit the dependency of getent on libnss_files.a. [build_static_nss]: Define $(otherlibs) appropriately. * nss/Depend: Add a dependency on `resolv'. 1998-11-27 Andreas Jaeger <aj@arthur.rhein-neckar.de> Partial support for MIPS ISO C 9x exception handling: * sysdeps/mips/fclrexcpt.c: New file. * sysdeps/mips/ftestexcept.c: New file. * sysdeps/mips/fgetexcptflg.c: New file. * sysdeps/mips/fesetround.c: New file. * sysdeps/mips/fegetround.c: New file. * sysdeps/mips/fegetenv.c: New file. * sysdeps/mips/fesetenv.c: New file. * sysdeps/mips/feupdateenv.c: Likewise. * sysdeps/mips/bits/fenv.h: New file. 1998-11-28 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/mips/bits/signum.h: Remove inclusion of <asm/signal.h> and add needed symbols from <asm/signal.h>; bring in sync with linux specific version. Patches by Ralf Baechle <ralf@uni-koblenz.de> for mips-linux: * sysdeps/unix/mips/sysdep.S: Define _errno as weak_alias, rewrite errno declaration. * sysdeps/unix/sysv/linux/mips/ustat.c: Use INLINE_SYSCALL instead of calling __syscall_*. * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Update entries. * sysdeps/unix/sysv/linux/mips/sys/syscall.h: Add missing SYS_* constants, correct values according to Linux 2.1.130. * sysdeps/unix/sysv/linux/mips/pwrite.c: New file. * sysdeps/unix/sysv/linux/mips/pwrite64.c: New file. * sysdeps/unix/sysv/linux/mips/pread.c: New file. * sysdeps/unix/sysv/linux/mips/pread64.c: New file. * sysdeps/mips/Makefile (sysdep_routines): Use += instead of a :=. * sysdeps/unix/sysv/linux/mips/bits/ipc.h: Remove ipc_kludge. * sysdeps/unix/sysv/linux/mips/xstatconv.c: New file. * sysdeps/unix/sysv/linux/mips/xstat.c: Removed. * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/mips/kernel_termios.h: Add copyright message, change name of include protection, remove inclusion of <bits/termios.h>. * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (old_kernel_sigaction): Define. (struct kernel_sigaction): Rename sa_handler to k_sa_handler. * sysdeps/unix/sysv/linux/mips/bits/time.h: Removed, we can use the general linux version. * sysdeps/unix/sysv/linux/mips/bits/stat.h (_STAT_VER_KERNEL): Added. * sysdeps/unix/sysv/linux/mips/bits/socket.h: Update file. 1998-09-03 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/bits/endian.h (__FLOAT_WORD_ORDER): Define to big endian. * math/math_private.h: Use __FLOAT_WORD_ORDER rather than BYTE_ORDER. * string/endian.h: If __FLOAT_WORD_ORDER wasn't defined by <bits/endian.h>, make it the same as __BYTE_ORDER. 1998-11-26 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * Makeconfig ($(common-objpfx)sysd-dirs): Use automatic variables if possible. ($(common-objpfx)sysd-sorted): Likewise. 1998-11-27 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/libm-ieee754/e_log.c (__ieee754_log): Add declaration of local variables t1,t2 only if needed. * sysdeps/libm-ieee754/s_truncf.c (__truncf): Likewise. * sysdeps/libm-ieee754/s_trunc.c (__trunc): Likewise. * sysdeps/mips/mul_1.S (Loop): Add closing comment to avoid warning. 1998-11-27 Andreas Jaeger <aj@arthur.rhein-neckar.de> * math/math.h: Add brace to correct #if expression. 1998-11-26 Philip Blundell <philb@gnu.org> Undo change of 1998-11-12: * sysdeps/unix/sysv/linux/netlink/netlink.h: Deleted. * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Remove netlink/netlink.h. * sysdeps/unix/sysv/linux/Dist: Likewise. 1998-11-22 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nis_print.c (nis_print_entry): Changes to match Solaris output. 1998-11-26 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/generic/pselect.c (__pselect): Change interface, set/restore sigmask. * misc/sys/select.h: Change declaration according to Stevens' Unix Network Programming. * include/sys/select.h (__pselect): Likewise. Reported by <bwelling@anomaly.munge.com> [PR libc/872]. * include/fpu_control.h: New file, contains __setfpucw declaration. * sysdeps/generic/fpu_control.h: Remove __setfpucw declaration, it's an internal symbol. * sysdeps/alpha/fpu/fpu_control.h: Likewise. * sysdeps/arm/fpu/fpu_control.h: Likewise. * sysdeps/i386/fpu_control.h: Likewise. * sysdeps/m68k/fpu_control.h: Likewise. * sysdeps/powerpc/fpu_control.h: Likewise. * sysdeps/sparc/sparc32/fpu/fpu_control.h: Likewise. * sysdeps/sparc/sparc64/fpu/fpu_control.h: Likewise.
1998-11-23Update.cvs/libc-as-981124Ulrich Drepper
1998-11-23 Ulrich Drepper <drepper@cygnus.com> * Makeconfig: Don't read sysd-sorted unless sysd-dirs is read. Patch by Zack Weinberg. * math/bits/mathcalls.h: Adjust comments. Remove gamma_r prototype. * sysdeps/i386/fpu/bits/mathinline.h: Make log2 only available if __USE_ISOC9X is defined. Provide rint optimization. 1998-11-21 H.J. Lu <hjl@gnu.org> * libio/Versions (_IO_popen, _IO_proc_open, _IO_proc_close, popen, pclose): Add to GLIBC_2.1. * libio/Makefile (routines): Add oldiopopen and oldpclose. (shared-only-routines): Likewise. * libio/pclose.c (pclose): Make it default for GLIBC_2.1. * libio/iopopen.c (_IO_proc_open, _IO_popen, popen, _IO_proc_close): Likewise. * libio/iolibio.h (_IO_new_popen, _IO_old_popen, __new_pclose, __old_pclose): New prototypes. * libio/libioP.h (_IO_new_file_jumps): Removed. (_IO_old_proc_jumps): Added. (_IO_new_proc_open, _IO_old_proc_open): New prototypes. * libio/oldiopopen.c: New file. * libio/oldpclose.c: New file. 1998-11-22 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nss/Makefile: Build and install getent. * nss/getent.c: New, get entries from administrative database.
1998-06-23Update.Ulrich Drepper
1998-06-23 Ulrich Drepper <drepper@cygnus.com> * config.make.in: Remove LDAP support. * nss/Makefile: Likewise.
1998-06-11Update.Ulrich Drepper
1998-06-03 03:09 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/unix/sysv/linux/pread.c: Detect missing syscall, like poll(). * sysdeps/unix/sysv/linux/pread64.c: Likewise. * sysdeps/unix/sysv/linux/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/pwrite64.c: Likewise. 1998-06-03 03:09 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Makefile: Use -G0 on the startup file; this makes it easier to undump emacs. * sysdeps/powerpc/bits/endian.h: Use more informative error message for when the endianness can't be determined. 1998-06-04 13:19 Geoff Keating <geoffk@ozemail.com.au> * nss/Makefile: Add files publickey database support. * nss/libnss_files.map: Export the required functions. * nss/nss_files/files-key.c: Implement it. * sunrpc/rpc/auth_des.h: Correct typos in comments.
1998-05-15Update.Ulrich Drepper
1998-05-15 14:36 Ulrich Drepper <drepper@cygnus.com> * posix/wordexp-test.c: Avoid duplicate messages. * sysdeps/generic/setenv.c: Use __tfind and __tsearch, not tfind and tsearch. Correctly interpret values returned by those functions. (unsetenv): Store pointer to string, not pointer to string pointer. * time/tzfile.c (__tzfile_compute): Take new arguments. Store DST information and offset in them. * time/tzset.c (__tz_convert): Pass extra parameters to __tzfile_compute. Compute equivalent values for use of tz_rules. 1998-05-15 00:49:11 Zack Weinberg <zack@rabi.phys.columbia.edu> * iconvdata/Makefile (gen-8bit-table): Use move-if-change and stamp files to avoid unnecessary recompilation. (gen-8bit-gap-table): Likewise. (move-if-change): New variable. (all generated .h rules): Change to be .stmp rules. (%.h): New rule; depend on %.stmp; no commands. (distribute): Add gen-8bit.sh, gen-8bit-gap.sh, gen-8bit-gap-1.sh. 1998-05-15 01:09 Zack Weinberg <zack@rabi.phys.columbia.edu> * Makerules (libc-map): Deleted. (load-map-file): Set to the appropriate compiler switch, not just the file name. If libfoo-map is not set, look for a libfoo.map in the current directory and $(..). (map-file): New variable, contains just the mapfile name. (build-shlib): Adjust for new value of load-map-file. (libc.so): Correct dependencies. * extra-lib.mk: Correct shlib dependencies since libfoo-map may not be set anymore. * elf/Makefile: Set ld-map to $(..)libc.map, not $(libc-map). Delete libdl-map. Tweak ld.so link rule to work with changed variable settings in Makerules. * iconvdata/Makefile: Tweak build-module to work with changed variable settings in Makerules. * db/Makefile: Delete libdb-map. * hesiod/Makefile: Delete libnss_hesiod-map. * linuxthreads/Makefile: Delete libpthread-map. * locale/Makefile: Delete libBrokenLocale-map. * login/Makefile: Delete libutil-map. * math/Makefile: Delete libm-map. * md5-crypt/Makefile: Delete libcrypt-map. * nis/Makefile: Delete libnsl-map, libnss_nis-map, libnss_nisplus-map, and libnss_compat-map. * nss/Makefile: Delete libnss_files-map, libnss_db-map, and libnss_ldap-map. * resolv/Makefile: Delete libresolv-map and libnss_dns-map. * rt/Makefile: Delete librt-map. 1998-05-15 01:06 Zack Weinberg <zack@rabi.phys.columbia.edu> * configure.in: Instead of substituting `yes' or `no' for whether --no-whole-archive is available, set @no_whole_archive@ to the appropriate gcc switch or the empty string. Likewise for -fno-exceptions. * config.make.in: Replace have-no-whole-archive with no-whole-archive and have-no-exceptions with no-exceptions. * Makerules: Delete stanzas setting no-whole-archive and no-exceptions. * sunrpc/Makefile: Use move-if-change to update generated .h and .c files. 1998-05-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * wcsmbs/wcsmbsload.c (extract_charset_name): Use strcspn instead of strchr loop. 1998-05-15 Andreas Jaeger <aj@arthur.rhein-neckar.de> * time/tzfile.c (__tzfile_read): Remove unused variable info. (__tzfile_compute): Likewise. 1998-05-15 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/bits/socket.h (AF_SNA,PF_SNA): Add new defines from Linux 2.1.102.
1998-04-07Update.Ulrich Drepper
1998-04-04 Andreas Jaeger <aj@arthur.rhein-neckar.de> * resolv/Makefile: Include ../Makeconfig - needed for building static NSS module. 1998-04-04 Andreas Jaeger <aj@arthur.rhein-neckar.de> * hesiod/Makefile (libnss_hesiod-inhibit-o): Remove condition for static-nss since we don't want hesiod in the static NSS. * nss/Makefile: Build only nss_files as static. * nss/function.def: Remove support for service db. 1998-04-04 09:44 H.J. Lu <hjl@gnu.org> * Makeconfig (CPPFLAGS-.oS): Add -DPIC. 1998-04-04 18:29 Tim Waugh <tim@cyberelk.demon.co.uk> * posix/wordexp-test.c: Make IFS per test-case.
1998-01-30Update.Ulrich Drepper
1998-01-30 19:58 Ulrich Drepper <drepper@cygnus.com> * include/cpio.h: Move to ... * posix/cpio.h: ...here. * locale/programs/ld-collate.c: Fix typo. * signal/signal.h: Declare _sys_siglist with NSIG+1 elements. * stdio-common/tiformat.c: Add checks for %#.0o and friends. * login/utmp_file.c (pututline_file): Don't always report success if similar entry is found. Patch by Mark M. Kettenis. 1998-01-30 16:06 Philip Blundell <pb@nexus.co.uk> * manual/Makefile: Don't try to install the info files if makeinfo is not available. 1998-01-30 12:05 Philip Blundell <pb@nexus.co.uk> * sysdeps/unix/sysv/linux/bits/ioctls.h: Include a copy of the kernel's network ioctls, rather than using <linux/sockios.h> to get them. This way we are sure of maintaining compatibility if the kernel interface should change. 1998-01-30 15:52 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/Dist: Add netrose/rose.h. 1998-01-25 19:54 Philip Blundell <Philip.Blundell@pobox.com> * sysdeps/unix/sysv/linux/netrose/rose.h: New file. * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Install it. 1998-01-27 22:29 Zack Weinberg <zack@rabi.phys.columbia.edu> Implement System V pseudoterminal handling. * login/Makefile (routines): Add getpt, grantpt, unlockpt, ptsname. (libutil-routines): Remove pty. Add openpty, forkpty. (distribute): New internal header pty-internal.h. (others): Add the helper program, pt_chown. (install-others): Install it, in $(libexecdir), mode 4755. * login/pty-internal.h: New file. * login/openpty.c: New file. * login/forkpty.c: New file. * login/programs/pt_chown.c: New file. * libc.map: Add getpt, grantpt, unlockpt, ptsname, ptsname_r. * stdlib/stdlib.h: Prototype them. * config.make.in: Define $(libexecdir). * Makeconfig: Define $(inst_libexecdir). * sysdeps/generic/pty.c: Removed. * sysdeps/unix/sysv/linux/pty.c: Removed. * sysdeps/generic/getpt.c: Stub out. * sysdeps/generic/grantpt.c: Likewise. * sysdeps/generic/ptsname.c: Likewise. * sysdeps/generic/unlockpt.c: Likewise. * sysdeps/unix/grantpt.c: New file. * sysdeps/unix/bsd/getpt.c: New file. * sysdeps/unix/bsd/unlockpt.c: New file. * sysdeps/unix/sysv/linux/getpt.c: New file. * sysdeps/unix/sysv/linux/ptsname.c: New file. * sysdeps/unix/sysv/linux/unlockpt.c: New file. 1998-01-29 23:56 Ulrich Drepper <drepper@cygnus.com> * localedata/locales/ru_RU: Fix YESEXPR. Patch by lav@yars.free.net. 1998-01-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nss/Makefile (tests): Add rule for test-netdb.c. * nss/test-netdb.c: New file. 1998-01-29 02:38 Ulrich Drepper <drepper@cygnus.com> * elf/dl-open.c (_dl_open): Make sure the variable `reloc' is really kept as a variable. Patch by Richard Henderson, reported by Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>. * elf/rtld.c (dl_main): Call _dl_init_paths before handling preloading. * elf/genrtldtbl.awk: Mark machine dependent directory of generated entries as not existing. 1998-01-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * stdio-common/vfprintf.c (process_arg): Fix printing of octal zero in alternate form with precision of zero, which must produce "0". Add braces to avoid ambiguous `else'. 1998-01-26 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nss_compat/compat-grp.c: Fix memory leak and trailing null problem with strncpy. * nis/nss_compat/compat-pwd.c: Likewise. * nis/nss_compat/comapt-spwd.c: Likewise. 1998-01-28 Andreas Jaeger <aj@arthur.rhein-neckar.de> * assert/assert.h (assert_perror): Correct test for errnum. Patch by uch@nop.or.jp. [PR libc/437] 1997-12-20 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * locales/pl_PL: Fix int_curr_symbol. 1998-01-26 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nis/nis_cache.c: Include <unistd.h> for declaration of close. 1998-01-06 Andreas Jaeger <aj@arthur.rhein-neckar.de> * stdio-common/test-popen.c: Include <errno.h>. * sysdeps/unix/sysv/linux/if_index.c: Include <unistd.h> for close. * inet/getnetgrent_r.c: Include <errno.h>. * db2/db/db_conv.c: Include <string.h> for memcpy. * gmon/bb_exit_func.c: Include <string.h> instead of <strings.h> so that memcpy is declared. * iconv/iconv_open.c: Include <stdlib.h> for alloca. * misc/init-misc.c: Remove unneeded inclusion of <errno.h>. 1998-01-26 Andreas Jaeger <aj@arthur.rhein-neckar.de> * pwd/fgetpwent_r.c (__fgetpwent_r): Correctly handle buffer overflow while reading line with fgets. * grp/fgetgrent_r.c (__fgetgrent_r): Likewise. 1998-01-27 00:46 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/types.h (__ipc_pid_t): Change to unsigned short, not short. Reported by Andreas Jaeger. 1998-01-06 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/mips/syscalls.list: Correct typo (ccept->accept). * sysdeps/generic/inttypes.h: Fix spelling. 1998-01-04 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/arm/Dist: Add bits/mman.h. * sysdeps/unix/sysv/linux/alpha/Dist: Add net/route.h. 1998-01-27 00:30 Ulrich Drepper <drepper@cygnus.com> * stdio-common/printf.h (struct print_info): Add new bitfield is_char. * stdio-common/printf-parse.h (parse_one_spec): Fill in is_char field for hh modifier. * stdio-common/vfprint.c: Use is_char field and do not depend in is_short having the value 2. Bug reported by Andreas Jaeger. 1998-01-05 Andreas Jaeger <aj@arthur.rhein-neckar.de> * libio/freopen.c (freopen): Call _IO_old_freopen only if defined PIC && DO_VERSIONING. 1998-01-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Rules: Add rules for $(common-objpfx)dummy$o.