Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
/* Copyright (C) 1996 Free Software Foundation, Inc.
|
|
|
|
|
This file is part of the GNU C Library.
|
|
|
|
|
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
|
|
|
|
|
|
|
|
|
The GNU C Library is free software; you can redistribute it and/or
|
|
|
|
|
modify it under the terms of the GNU Library General Public License as
|
|
|
|
|
published by the Free Software Foundation; either version 2 of the
|
|
|
|
|
License, or (at your option) any later version.
|
|
|
|
|
|
|
|
|
|
The GNU C Library is distributed in the hope that it will be useful,
|
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
|
Library General Public License for more details.
|
|
|
|
|
|
|
|
|
|
You should have received a copy of the GNU Library General Public
|
|
|
|
|
License along with the GNU C Library; see the file COPYING.LIB. If
|
|
|
|
|
not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
|
|
|
Boston, MA 02111-1307, USA. */
|
|
|
|
|
|
|
|
|
|
#include <libc-lock.h>
|
|
|
|
|
|
|
|
|
|
#include "nsswitch.h"
|
|
|
|
|
|
|
|
|
|
/*******************************************************************\
|
|
|
|
|
|* Here we assume several symbols to be defined: *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* LOOKUP_TYPE - the return type of the function *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* SETFUNC_NAME - name of the non-reentrant setXXXent function *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* GETFUNC_NAME - name of the non-reentrant getXXXent function *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* ENDFUNC_NAME - name of the non-reentrant endXXXent function *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* DATABASE_NAME - name of the database the function accesses *|
|
|
|
|
|
|* (e.g., host, services, ...) *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* Optionally the following vars can be defined: *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* STAYOPEN - variable declaration for setXXXent function *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* STAYOPEN_VAR - variable name for setXXXent function *|
|
|
|
|
|
|* *|
|
|
|
|
|
|* NEED_H_ERRNO - an extra parameter will be passed to point to *|
|
|
|
|
|
|* the global `h_errno' variable. *|
|
|
|
|
|
|* *|
|
|
|
|
|
\*******************************************************************/
|
|
|
|
|
|
|
|
|
|
/* To make the real sources a bit prettier. */
|
|
|
|
|
#define REENTRANT_GETNAME APPEND_R (GETFUNC_NAME)
|
|
|
|
|
#define APPEND_R(name) APPEND_R1 (name)
|
|
|
|
|
#define APPEND_R1(name) name##_r
|
Update.
Thu Aug 8 01:41:43 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile: Undo change of Tue Aug 6 14:27:11 1996.
* elf/dl-support: Add definition of `_dl_sysdep_read_whole_file'.
Thu Aug 8 01:15:59 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu_control.h (_FPU_DEFAULT, _FPU_IEEE): Set
to 0x137f to allow long double operations.
Sun Aug 4 13:12:05 1996 Richard Henderson <rth@tamu.edu>
Bug Fixes:
* nss/nsswitch.c (_res): Remove redundant variable definition.
The real one is in resolve/res_init.c, and having both prevents
using -fno-common when building the shared library.
* sunrpc/rpc_prot.c (_null_auth): Same. Original is in rpc_common.c.
* sysdeps/unix/sysv/linux/alpha/brk.S: When PIC, define __curbrk as
a .bss object not a COMMON symbol.
* sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S: Must load
$gp before referencing __sigsetjmp symbol. Retain LITUSE for same.
Optimizations:
* sysdeps/alpha/strlen.S: Rearrange first-word setup and thense the
main loop for better dual-issue on EV5. Rearrange binary search to
pipeline better and trim one instruction.
Cosmetic Changes:
* time/localtime.c (localtime_r): Move lock declaration back next to
the comment where it was before the 960724 change.
* INSTALL, manual/maint.texi: alpha-gnu-linux -> alpha-ANYTHING-linux.
The second word is supposed to be the hardware manufacturer.
* sysdeps/alpha/_mcount.S: Retain LITUSE for __mcount.
* sysdeps/alpha/setjmp.S: Retain LITUSE for __sigsetjmp_aux.
* sysdeps/alpha/divrem.h: More local labels, retain LITUSE for _mcount.
* sysdeps/alpha/alphaev5/add_n.S, sysdeps/alpha/alphaev5/lshift.S,
sysdeps/alpha/alphaev5/rshift.S, sysdeps/alpha/alphaev5/sub_n.S:
Same cleanups as with EV4 GMP stuff.
Tue Jul 25 03:30:56 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/unix/sysv/linux/Makefile [misc] (sysdep_routines): Add clone.
* sysdeps/unix/sysv/linux/alpha/clone.S: New file.
* sysdeps/unix/sysv/linux/i386/clone.S: New file.
Sun Aug 4 00:12:41 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/gnu/types.h: Declare __fd_mask as
`unsigned long'.
* misc/sys/select.h: Declare fd_mask as alias of __fd_mask.
Sat Aug 3 16:20:02 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Add entry for
Mikasa.
* socket/sys/socket.h (send, __send, sendto): Declare buffer
pointer as __const.
* string/tester.c (main): Test stpncpy.
* sysdeps/generic/stpncpy.c (__stpncpy): Fix so it works without
segfault when called with an N that is not a multiple of four and
src[N-1]=='\0'.
* misc/syslog.c (LogType): New variable.
(openlog): If connect() with SOCK_DGRAM fails with EPROTOTYPE,
try again with SOCK_STREAM (the Linux syslogd uses a socket of the
latter type).
(vsyslog): When LogType==SOCK_STREAM, also send ASCII NUL
terminator as a record-delimiter. If __send(LogFile) fails,
call closelog() so logfile gets re-opened next time.
Wed Aug 7 15:15:14 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-open (_dl_open): Add cast to avoid warning.
* manual/memory.texi: Improve some examples to give readers better
advice: Use `stpcpy' instead of `strcat' if possible.
* manual/string.texi: Document `strtok_r' and `strtok'.
* sunrpc/Makefile: Move `+gccwarn' definition before inclusion
of Makeconfig.
[$(cross-compiling)=no]: Change test before making librpcsvc
to this from $(cross-compile).
Reported by Andreas Schwab.
Tue Aug 6 14:27:11 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile (routines): Move dl-sysdep to here...
(rtld-routines): ...from here. This should make static linking
work again.
* locale/setlocale.c: Add local variable `lock' and add code to
`setlocale' to avoid simultaneous changing of global data.
* catgets/catgets.c (catopen): Use `__strdup' instead of `strdup'.
* catgets/open_catalog (__open_catalog): Use `__stpcpy', `__open',
`__fstat', `__read', `__mmap', `__munmap' and `__close' instead
of unprotected names.
1996-08-08 07:50:59 +08:00
|
|
|
|
#define INTERNAL(name) INTERNAL1 (name)
|
|
|
|
|
#define INTERNAL1(name) __##name
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
|
|
|
|
|
#define SETFUNC_NAME_STRING STRINGIZE (SETFUNC_NAME)
|
1996-07-12 07:42:52 +08:00
|
|
|
|
#define GETFUNC_NAME_STRING STRINGIZE (REENTRANT_GETNAME)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
#define ENDFUNC_NAME_STRING STRINGIZE (ENDFUNC_NAME)
|
|
|
|
|
#define DATABASE_NAME_STRING STRINGIZE (DATABASE_NAME)
|
|
|
|
|
#define STRINGIZE(name) STRINGIZE1 (name)
|
|
|
|
|
#define STRINGIZE1(name) #name
|
|
|
|
|
|
|
|
|
|
#define DB_LOOKUP_FCT CONCAT3_1 (__nss_, DATABASE_NAME, _lookup)
|
|
|
|
|
#define CONCAT3_1(Pre, Name, Post) CONCAT3_2 (Pre, Name, Post)
|
|
|
|
|
#define CONCAT3_2(Pre, Name, Post) Pre##Name##Post
|
|
|
|
|
|
|
|
|
|
/* Sometimes we need to store error codes in the `h_errno' variable. */
|
|
|
|
|
#ifdef NEED_H_ERRNO
|
|
|
|
|
# define H_ERRNO_PARM , int *h_errnop
|
|
|
|
|
# define H_ERRNO_VAR , &h_errno
|
|
|
|
|
#else
|
|
|
|
|
# define H_ERRNO_PARM
|
|
|
|
|
# define H_ERRNO_VAR
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/* Some databases take the `stayopen' flag. */
|
|
|
|
|
#ifndef STAYOPEN
|
|
|
|
|
#define STAYOPEN void
|
|
|
|
|
#define STAYOPEN_VAR
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/* Prototype for the setXXXent functions we use here. */
|
|
|
|
|
typedef int (*set_function) (STAYOPEN);
|
|
|
|
|
|
|
|
|
|
/* Prototype for the endXXXent functions we use here. */
|
|
|
|
|
typedef int (*end_function) (void);
|
|
|
|
|
|
|
|
|
|
/* Prototype for the setXXXent functions we use here. */
|
|
|
|
|
typedef int (*get_function) (LOOKUP_TYPE *, char *, int H_ERRNO_PARM);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* This handle for the NSS data base is shared between all
|
|
|
|
|
set/get/endXXXent functions. */
|
|
|
|
|
static service_user *nip;
|
|
|
|
|
/* Remember the first service_entry, it's always the same. */
|
|
|
|
|
static service_user *startp;
|
|
|
|
|
|
|
|
|
|
/* Protect above variable against multiple uses at the same time. */
|
1996-07-26 08:34:28 +08:00
|
|
|
|
__libc_lock_define_initialized (static, lock)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
|
|
|
|
|
/* The lookup function for the first entry of this service. */
|
|
|
|
|
extern int DB_LOOKUP_FCT (service_user **nip, const char *name, void **fctp);
|
|
|
|
|
|
1996-07-09 19:09:08 +08:00
|
|
|
|
/* Set up NIP to run through the services. If ALL is zero, use NIP's
|
|
|
|
|
current location if it's not nil. Return nonzero if there are no
|
|
|
|
|
services (left). */
|
|
|
|
|
static enum nss_status
|
1996-07-12 07:42:52 +08:00
|
|
|
|
setup (void **fctp, const char *func_name, int all)
|
1996-07-09 19:09:08 +08:00
|
|
|
|
{
|
|
|
|
|
int no_more;
|
|
|
|
|
if (startp == NULL)
|
|
|
|
|
{
|
1996-07-12 07:42:52 +08:00
|
|
|
|
no_more = DB_LOOKUP_FCT (&nip, func_name, fctp);
|
1996-07-09 19:09:08 +08:00
|
|
|
|
startp = no_more ? (service_user *) -1 : nip;
|
|
|
|
|
}
|
|
|
|
|
else if (startp == (service_user *) -1)
|
|
|
|
|
/* No services at all. */
|
|
|
|
|
return 1;
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (all || !nip)
|
|
|
|
|
/* Reset to the beginning of the service list. */
|
|
|
|
|
nip = startp;
|
|
|
|
|
/* Look up the first function. */
|
1996-07-12 07:42:52 +08:00
|
|
|
|
no_more = __nss_lookup (&nip, func_name, fctp);
|
1996-07-09 19:09:08 +08:00
|
|
|
|
}
|
|
|
|
|
return no_more;
|
|
|
|
|
}
|
|
|
|
|
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
void
|
Fri Jun 28 02:41:08 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* nss/Makefile (databases): New variable.
(routines, libnss_files-routines): Use it.
(subdir-dirs): Compute from $(services).
* sysdeps/unix/sysv/linux/syscalls.list (create_module, delete_module,
init_module, klogctl): Use EXTRA in the "caller" column so these get
added to unix-extra-syscalls and thus compiled in misc.
* string/Makefile (routines): Add strndup.
* string/strndup.c: New file.
* string/string.h: Declare strndup.
(strndupa): New macro.
* string/string.h: Declare __strdup.
* string/strdup.c: Deansideclized. Define __ name and weak alias.
* string/string.h: Don't define memccpy as macro for [__OPTIMIZE__].
Thu Jun 27 23:43:22 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): The Alpha's
address-of operation and plt format conspire to require all
dynamic relocs to be resolved to actual symbols not plt entries.
Thu Jun 27 02:49:28 1996 Ulrich Drepper <drepper@cygnus.com>
* catgets/gencat.c: Add casts to avoid signed<->unsigned warnings.
* grp/initgroups.c (initgroups): De-ansi-fy.
Move declaration of NGROUPS and GROUPS outside #if so that
the code compiles for NGROUPS_MAX != 0.
* inet/Makefile (headers): Add netinet/ether.h and netinet/if_ether.h.
(routines): Add ether_aton, ether_aton_r, ether_hton, ether_line,
ether_ntoa, ether_ntoa_r, and ether_ntoh.
* inet/ether_aton.c, inet/ether_aton_r.c, inet/ether_hton.c,
inet/ether_line.c, inet/ether_ntoa.c, inet/ether_ntoa_r.c,
inet/ether_ntoh.c: New files. Implementation of functions to
handle Ethernet address to host mapping.
* inet/netinet/ether.h: New file. Declare ether_* functions.
* netinet/ether.h: Wrapper around inet/netinet/ether.h for glibc
compilation.
* nss/ethers-lookup.c: New file. Lookup function for ethers database.
* nss/Makefile (routines): Add ethers-lookup.
(libnss_files-routines): Add files-ethers.
* nss/getXXent_r.c: Don't define set*ent and end*ent function
with _r suffix.
* nss/nss_files/files-XXX.c (internal_endent): Don't reset
KEEP_STREAM every time called.
(_nss_files_end): Reset KEEP_STREAM here instead.
(internal_getent): If STREAM == NULL try to open instead of
signalling error.
Use cast to prevent warning.
Terminate read line in case the buffer is too small.
* nss/nss_files/files-ethers.c: New file. Implementation of
Ethernet adress<->hostname lookup through files interface.
* stdlib/mbstowcs.c: Define based on mbsrtowcs().
* stdlib/mbtowc.c: Define based on mbrtowc().
* stdlib/wcstombs.c: Define based on wcsrtombs().
* stdlib/wctomb.c: Define based on wcrtomb().
* sunrpc/xdr.c (xdr_u_int): Avoid bogus call to
unexpected_sizes_in_xdr_u_int.
* sysdeps/generic/netinet/if_ether.h: New file. Generic declaration
of `struct ether_addr'.
* sysdeps/unix/sysv/linux/netinet/if_ether.h: New file. Linux specific
declaration of `struct ether_addr'.
* wcsmbs/mbrtowc.c: Handle case where argument PS is NULL.
* wcsmbs/mbsrtowcs.c: Ditto.
* wcsmbs/wcrtomb.c: Ditto.
* wcsmbs/wcsrtombs.c: Ditto.
* wcsmbs/mbsinit.c: Prepare for PS being NULL.
1996-06-28 16:56:59 +08:00
|
|
|
|
SETFUNC_NAME (STAYOPEN)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
{
|
|
|
|
|
set_function fct;
|
|
|
|
|
int no_more;
|
|
|
|
|
|
|
|
|
|
#ifdef NEED__RES
|
|
|
|
|
if ((_res.options & RES_INIT) == 0 && res_init () == -1)
|
|
|
|
|
{
|
1996-10-02 09:40:17 +08:00
|
|
|
|
__set_h_errno (NETDB_INTERNAL);
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
return NULL;
|
|
|
|
|
}
|
|
|
|
|
#endif /* need _res */
|
|
|
|
|
|
|
|
|
|
__libc_lock_lock (lock);
|
|
|
|
|
|
|
|
|
|
/* Cycle through all the services and run their setXXent functions. */
|
1996-07-12 07:42:52 +08:00
|
|
|
|
no_more = setup ((void **) &fct, SETFUNC_NAME_STRING, 1);
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
while (! no_more)
|
|
|
|
|
{
|
|
|
|
|
/* Ignore status, we force check in __NSS_NEXT. */
|
|
|
|
|
(void) (*fct) (STAYOPEN_VAR);
|
|
|
|
|
|
|
|
|
|
no_more = __nss_next (&nip, SETFUNC_NAME_STRING, (void **) &fct, 0, 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
__libc_lock_unlock (lock);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void
|
Fri Jun 28 02:41:08 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* nss/Makefile (databases): New variable.
(routines, libnss_files-routines): Use it.
(subdir-dirs): Compute from $(services).
* sysdeps/unix/sysv/linux/syscalls.list (create_module, delete_module,
init_module, klogctl): Use EXTRA in the "caller" column so these get
added to unix-extra-syscalls and thus compiled in misc.
* string/Makefile (routines): Add strndup.
* string/strndup.c: New file.
* string/string.h: Declare strndup.
(strndupa): New macro.
* string/string.h: Declare __strdup.
* string/strdup.c: Deansideclized. Define __ name and weak alias.
* string/string.h: Don't define memccpy as macro for [__OPTIMIZE__].
Thu Jun 27 23:43:22 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): The Alpha's
address-of operation and plt format conspire to require all
dynamic relocs to be resolved to actual symbols not plt entries.
Thu Jun 27 02:49:28 1996 Ulrich Drepper <drepper@cygnus.com>
* catgets/gencat.c: Add casts to avoid signed<->unsigned warnings.
* grp/initgroups.c (initgroups): De-ansi-fy.
Move declaration of NGROUPS and GROUPS outside #if so that
the code compiles for NGROUPS_MAX != 0.
* inet/Makefile (headers): Add netinet/ether.h and netinet/if_ether.h.
(routines): Add ether_aton, ether_aton_r, ether_hton, ether_line,
ether_ntoa, ether_ntoa_r, and ether_ntoh.
* inet/ether_aton.c, inet/ether_aton_r.c, inet/ether_hton.c,
inet/ether_line.c, inet/ether_ntoa.c, inet/ether_ntoa_r.c,
inet/ether_ntoh.c: New files. Implementation of functions to
handle Ethernet address to host mapping.
* inet/netinet/ether.h: New file. Declare ether_* functions.
* netinet/ether.h: Wrapper around inet/netinet/ether.h for glibc
compilation.
* nss/ethers-lookup.c: New file. Lookup function for ethers database.
* nss/Makefile (routines): Add ethers-lookup.
(libnss_files-routines): Add files-ethers.
* nss/getXXent_r.c: Don't define set*ent and end*ent function
with _r suffix.
* nss/nss_files/files-XXX.c (internal_endent): Don't reset
KEEP_STREAM every time called.
(_nss_files_end): Reset KEEP_STREAM here instead.
(internal_getent): If STREAM == NULL try to open instead of
signalling error.
Use cast to prevent warning.
Terminate read line in case the buffer is too small.
* nss/nss_files/files-ethers.c: New file. Implementation of
Ethernet adress<->hostname lookup through files interface.
* stdlib/mbstowcs.c: Define based on mbsrtowcs().
* stdlib/mbtowc.c: Define based on mbrtowc().
* stdlib/wcstombs.c: Define based on wcsrtombs().
* stdlib/wctomb.c: Define based on wcrtomb().
* sunrpc/xdr.c (xdr_u_int): Avoid bogus call to
unexpected_sizes_in_xdr_u_int.
* sysdeps/generic/netinet/if_ether.h: New file. Generic declaration
of `struct ether_addr'.
* sysdeps/unix/sysv/linux/netinet/if_ether.h: New file. Linux specific
declaration of `struct ether_addr'.
* wcsmbs/mbrtowc.c: Handle case where argument PS is NULL.
* wcsmbs/mbsrtowcs.c: Ditto.
* wcsmbs/wcrtomb.c: Ditto.
* wcsmbs/wcsrtombs.c: Ditto.
* wcsmbs/mbsinit.c: Prepare for PS being NULL.
1996-06-28 16:56:59 +08:00
|
|
|
|
ENDFUNC_NAME (void)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
{
|
|
|
|
|
end_function fct;
|
|
|
|
|
int no_more;
|
|
|
|
|
|
|
|
|
|
#ifdef NEED__RES
|
|
|
|
|
if ((_res.options & RES_INIT) == 0 && res_init () == -1)
|
|
|
|
|
{
|
1996-10-02 09:40:17 +08:00
|
|
|
|
__set_h_errno (NETDB_INTERNAL);
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
return NULL;
|
|
|
|
|
}
|
|
|
|
|
#endif /* need _res */
|
|
|
|
|
|
|
|
|
|
__libc_lock_lock (lock);
|
|
|
|
|
|
|
|
|
|
/* Cycle through all the services and run their endXXent functions. */
|
1996-07-12 07:42:52 +08:00
|
|
|
|
no_more = setup ((void **) &fct, ENDFUNC_NAME_STRING, 1);
|
1996-07-09 19:09:08 +08:00
|
|
|
|
while (! no_more)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
{
|
|
|
|
|
/* Ignore status, we force check in __NSS_NEXT. */
|
|
|
|
|
(void) (*fct) ();
|
|
|
|
|
|
|
|
|
|
no_more = __nss_next (&nip, ENDFUNC_NAME_STRING, (void **) &fct, 0, 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
__libc_lock_unlock (lock);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LOOKUP_TYPE *
|
Update.
Thu Aug 8 01:41:43 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile: Undo change of Tue Aug 6 14:27:11 1996.
* elf/dl-support: Add definition of `_dl_sysdep_read_whole_file'.
Thu Aug 8 01:15:59 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu_control.h (_FPU_DEFAULT, _FPU_IEEE): Set
to 0x137f to allow long double operations.
Sun Aug 4 13:12:05 1996 Richard Henderson <rth@tamu.edu>
Bug Fixes:
* nss/nsswitch.c (_res): Remove redundant variable definition.
The real one is in resolve/res_init.c, and having both prevents
using -fno-common when building the shared library.
* sunrpc/rpc_prot.c (_null_auth): Same. Original is in rpc_common.c.
* sysdeps/unix/sysv/linux/alpha/brk.S: When PIC, define __curbrk as
a .bss object not a COMMON symbol.
* sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S: Must load
$gp before referencing __sigsetjmp symbol. Retain LITUSE for same.
Optimizations:
* sysdeps/alpha/strlen.S: Rearrange first-word setup and thense the
main loop for better dual-issue on EV5. Rearrange binary search to
pipeline better and trim one instruction.
Cosmetic Changes:
* time/localtime.c (localtime_r): Move lock declaration back next to
the comment where it was before the 960724 change.
* INSTALL, manual/maint.texi: alpha-gnu-linux -> alpha-ANYTHING-linux.
The second word is supposed to be the hardware manufacturer.
* sysdeps/alpha/_mcount.S: Retain LITUSE for __mcount.
* sysdeps/alpha/setjmp.S: Retain LITUSE for __sigsetjmp_aux.
* sysdeps/alpha/divrem.h: More local labels, retain LITUSE for _mcount.
* sysdeps/alpha/alphaev5/add_n.S, sysdeps/alpha/alphaev5/lshift.S,
sysdeps/alpha/alphaev5/rshift.S, sysdeps/alpha/alphaev5/sub_n.S:
Same cleanups as with EV4 GMP stuff.
Tue Jul 25 03:30:56 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/unix/sysv/linux/Makefile [misc] (sysdep_routines): Add clone.
* sysdeps/unix/sysv/linux/alpha/clone.S: New file.
* sysdeps/unix/sysv/linux/i386/clone.S: New file.
Sun Aug 4 00:12:41 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/gnu/types.h: Declare __fd_mask as
`unsigned long'.
* misc/sys/select.h: Declare fd_mask as alias of __fd_mask.
Sat Aug 3 16:20:02 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Add entry for
Mikasa.
* socket/sys/socket.h (send, __send, sendto): Declare buffer
pointer as __const.
* string/tester.c (main): Test stpncpy.
* sysdeps/generic/stpncpy.c (__stpncpy): Fix so it works without
segfault when called with an N that is not a multiple of four and
src[N-1]=='\0'.
* misc/syslog.c (LogType): New variable.
(openlog): If connect() with SOCK_DGRAM fails with EPROTOTYPE,
try again with SOCK_STREAM (the Linux syslogd uses a socket of the
latter type).
(vsyslog): When LogType==SOCK_STREAM, also send ASCII NUL
terminator as a record-delimiter. If __send(LogFile) fails,
call closelog() so logfile gets re-opened next time.
Wed Aug 7 15:15:14 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-open (_dl_open): Add cast to avoid warning.
* manual/memory.texi: Improve some examples to give readers better
advice: Use `stpcpy' instead of `strcat' if possible.
* manual/string.texi: Document `strtok_r' and `strtok'.
* sunrpc/Makefile: Move `+gccwarn' definition before inclusion
of Makeconfig.
[$(cross-compiling)=no]: Change test before making librpcsvc
to this from $(cross-compile).
Reported by Andreas Schwab.
Tue Aug 6 14:27:11 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile (routines): Move dl-sysdep to here...
(rtld-routines): ...from here. This should make static linking
work again.
* locale/setlocale.c: Add local variable `lock' and add code to
`setlocale' to avoid simultaneous changing of global data.
* catgets/catgets.c (catopen): Use `__strdup' instead of `strdup'.
* catgets/open_catalog (__open_catalog): Use `__stpcpy', `__open',
`__fstat', `__read', `__mmap', `__munmap' and `__close' instead
of unprotected names.
1996-08-08 07:50:59 +08:00
|
|
|
|
INTERNAL (REENTRANT_GETNAME) (LOOKUP_TYPE *result, char *buffer, int buflen
|
|
|
|
|
H_ERRNO_PARM)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
{
|
|
|
|
|
get_function fct;
|
|
|
|
|
int no_more;
|
1996-07-09 19:09:08 +08:00
|
|
|
|
enum nss_status status;
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
|
|
|
|
|
#ifdef NEED__RES
|
|
|
|
|
if ((_res.options & RES_INIT) == 0 && res_init () == -1)
|
|
|
|
|
{
|
1996-10-02 09:40:17 +08:00
|
|
|
|
__set_h_errno (NETDB_INTERNAL);
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
return NULL;
|
|
|
|
|
}
|
|
|
|
|
#endif /* need _res */
|
|
|
|
|
|
1996-07-09 19:09:08 +08:00
|
|
|
|
/* Initialize status to return if no more functions are found. */
|
|
|
|
|
status = NSS_STATUS_NOTFOUND;
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
|
1996-07-09 19:09:08 +08:00
|
|
|
|
__libc_lock_lock (lock);
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
|
1996-07-09 19:09:08 +08:00
|
|
|
|
/* Run through available functions, starting with the same function last
|
|
|
|
|
run. We will repeat each function as long as it succeeds, and then go
|
|
|
|
|
on to the next service action. */
|
1996-07-12 07:42:52 +08:00
|
|
|
|
no_more = setup ((void **) &fct, GETFUNC_NAME_STRING, 0);
|
1996-07-09 19:09:08 +08:00
|
|
|
|
while (! no_more)
|
Tue Jun 25 02:59:11 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
* malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
* malloc/malloc-size.c: New file.
* malloc/malloc-walk.c: New file.
* malloc/malloc-find.c (malloc_find_object_address): Return null if
PTR is outside the heap.
* elf/dl-load.c (_dl_map_object): If the requested name matches the
soname of a loaded object, use that object.
Mon Jun 24 19:57:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makefile (subdirs): Add nss.
* inet/Makefile (routines): Add getrpcent, getrpcbyname,
getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
* inet/getrpcbynumber_r.c: New file.
* inet/getrpcbynumber.c: New file.
* inet/getrpcbyname.c: New file.
* inet/getrpcbyname_r.c: New file.
* inet/getrpcent_r.c: New file.
* inet/getrpcent.c: New file.
* nss/rpc-lookup.c: New file.
* nss/nss_files/files-rpc.c: New file.
* nss/Makefile (routines): Add rpc-lookup.
(libnss_files-routines): Add files-rpc.
* sunrpc/Makefile (routines): Remove getrpcent.
* sunrpc/getrpcent.c: File removed.
* nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
non-null on entry.
* Makeconfig (rpath-link): Add $(nssobjdir).
(nssobjdir): New variable.
* Makerules: Move shared library building before objects rules, so
versions are known before extra-lib.mk gets included.
* extra-lib.mk (lib-noranlib): Depend on the shared object too.
* pwd/getpwuid.c: Rewritten using nss.
* pwd/getpwnam.c: Likewise.
* pwd/getpwent.c: Likewise.
* grp/getgrnam.c: Likewise.
* grp/getgrgid.c: Likewise.
* grp/getgrent.c: Likewise.
* pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
* pwd/getpwent_r.c: New file.
* pwd/getpwnam_r.c: New file.
* pwd/getpwuid_r.c: New file.
* grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
* grp/getgrnam_r.c: New file.
* grp/getgrgid_r.c: New file.
* grp/getgrent_r.c: New file.
* grp/Makefile (routines): Remove grpopen, grpread.
* pwd/Makefile (routines): Remove pwdopen, pwdread.
* grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
* pwd/fgetpwent.c: Rewritten using files-parse.c.
* grp/fgetgrent.c: Likewise.
* nss/Makefile (routines): Add grp-lookup and pwd-lookup.
* nss/pwd-lookup.c, nss/grp-lookup.c: New files.
* nss/nss_files/files-grp.c: New file.
* nss/nss_files/files-pwd.c: New file.
* nss/Makefile (subdir-dirs): New variable; use it in vpath.
* nss/nss_files/files-parse.c: New file.
* nss/nss_files/files-XXX.c: New file.
* nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
nss/nss_files/files-service.c, nss/nss_files/files-network.c:
Rewritten using them.
* nss/Makefile (libnss_files-routines): Remove files-host.
Add files-hosts, files-grp, files-pwd.
* nss/nss_dns/dns-network.c: Don't include <pthread.h>.
Mon Jun 24 22:39:12 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
A .plt entry now loads the .rela.plt offset directly rather
than making us calculate it.
Sun Jun 23 15:24:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile ($(installed-localtime-file) rule): Do
$(make-target-directory) first.
* resolv.h: Fix wrapper for resolv/resolv.h.
* configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
Compile dummy file and pass -nostdlib -nostartfiles so as not to
require installed libraries.
* shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
libnss_dns=1.
Sun Jun 23 19:42:05 1996 Ulrich Drepper <drepper@cygnus.com>
* resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
* inet/herrno.c: New file.
* resolv/res_init.c: Remove res_hconf calls.
* nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
nss/service-lookup.c: New files. Implementation of name
service switch, following the approach in Solaris.
Interface specification and general structure inspired by Peter
Eriksson <pen@lysator.liu.se>.
* nss/nss_files/files-host.c, nss/nss_files/files-network.c,
nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
Implementation of libnss_files.so module for file based databases
in NSS service.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
if libnss_dns.so module for DNS name lookup in NSS service.
* inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
Changed to serve as interface to NSS.
* inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files. Implement
interfaces to NSS, including reentrant functions.
* resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
resolv/sethostent.c: Removed: Obsoleted by NSS.
* resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
gethnamaddr.c. These private functions are now used in more
than one file.
* resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
Sat Jun 22 16:49:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rpm/Makefile ($(config)): Make sure the word list in the for
loop is syntactically non-empty.
1996-06-25 16:56:57 +08:00
|
|
|
|
{
|
|
|
|
|
status = (*fct) (result, buffer, buflen H_ERRNO_VAR);
|
|
|
|
|
|
|
|
|
|
no_more = __nss_next (&nip, GETFUNC_NAME_STRING, (void **) &fct,
|
|
|
|
|
status, 0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
__libc_lock_unlock (lock);
|
|
|
|
|
|
|
|
|
|
return status == NSS_STATUS_SUCCESS ? result : NULL;
|
|
|
|
|
}
|
Update.
Thu Aug 8 01:41:43 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile: Undo change of Tue Aug 6 14:27:11 1996.
* elf/dl-support: Add definition of `_dl_sysdep_read_whole_file'.
Thu Aug 8 01:15:59 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu_control.h (_FPU_DEFAULT, _FPU_IEEE): Set
to 0x137f to allow long double operations.
Sun Aug 4 13:12:05 1996 Richard Henderson <rth@tamu.edu>
Bug Fixes:
* nss/nsswitch.c (_res): Remove redundant variable definition.
The real one is in resolve/res_init.c, and having both prevents
using -fno-common when building the shared library.
* sunrpc/rpc_prot.c (_null_auth): Same. Original is in rpc_common.c.
* sysdeps/unix/sysv/linux/alpha/brk.S: When PIC, define __curbrk as
a .bss object not a COMMON symbol.
* sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S: Must load
$gp before referencing __sigsetjmp symbol. Retain LITUSE for same.
Optimizations:
* sysdeps/alpha/strlen.S: Rearrange first-word setup and thense the
main loop for better dual-issue on EV5. Rearrange binary search to
pipeline better and trim one instruction.
Cosmetic Changes:
* time/localtime.c (localtime_r): Move lock declaration back next to
the comment where it was before the 960724 change.
* INSTALL, manual/maint.texi: alpha-gnu-linux -> alpha-ANYTHING-linux.
The second word is supposed to be the hardware manufacturer.
* sysdeps/alpha/_mcount.S: Retain LITUSE for __mcount.
* sysdeps/alpha/setjmp.S: Retain LITUSE for __sigsetjmp_aux.
* sysdeps/alpha/divrem.h: More local labels, retain LITUSE for _mcount.
* sysdeps/alpha/alphaev5/add_n.S, sysdeps/alpha/alphaev5/lshift.S,
sysdeps/alpha/alphaev5/rshift.S, sysdeps/alpha/alphaev5/sub_n.S:
Same cleanups as with EV4 GMP stuff.
Tue Jul 25 03:30:56 1996 Richard Henderson <rth@tamu.edu>
* sysdeps/unix/sysv/linux/Makefile [misc] (sysdep_routines): Add clone.
* sysdeps/unix/sysv/linux/alpha/clone.S: New file.
* sysdeps/unix/sysv/linux/i386/clone.S: New file.
Sun Aug 4 00:12:41 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/gnu/types.h: Declare __fd_mask as
`unsigned long'.
* misc/sys/select.h: Declare fd_mask as alias of __fd_mask.
Sat Aug 3 16:20:02 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Add entry for
Mikasa.
* socket/sys/socket.h (send, __send, sendto): Declare buffer
pointer as __const.
* string/tester.c (main): Test stpncpy.
* sysdeps/generic/stpncpy.c (__stpncpy): Fix so it works without
segfault when called with an N that is not a multiple of four and
src[N-1]=='\0'.
* misc/syslog.c (LogType): New variable.
(openlog): If connect() with SOCK_DGRAM fails with EPROTOTYPE,
try again with SOCK_STREAM (the Linux syslogd uses a socket of the
latter type).
(vsyslog): When LogType==SOCK_STREAM, also send ASCII NUL
terminator as a record-delimiter. If __send(LogFile) fails,
call closelog() so logfile gets re-opened next time.
Wed Aug 7 15:15:14 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-open (_dl_open): Add cast to avoid warning.
* manual/memory.texi: Improve some examples to give readers better
advice: Use `stpcpy' instead of `strcat' if possible.
* manual/string.texi: Document `strtok_r' and `strtok'.
* sunrpc/Makefile: Move `+gccwarn' definition before inclusion
of Makeconfig.
[$(cross-compiling)=no]: Change test before making librpcsvc
to this from $(cross-compile).
Reported by Andreas Schwab.
Tue Aug 6 14:27:11 1996 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile (routines): Move dl-sysdep to here...
(rtld-routines): ...from here. This should make static linking
work again.
* locale/setlocale.c: Add local variable `lock' and add code to
`setlocale' to avoid simultaneous changing of global data.
* catgets/catgets.c (catopen): Use `__strdup' instead of `strdup'.
* catgets/open_catalog (__open_catalog): Use `__stpcpy', `__open',
`__fstat', `__read', `__mmap', `__munmap' and `__close' instead
of unprotected names.
1996-08-08 07:50:59 +08:00
|
|
|
|
#define do_weak_alias(n1, n2) weak_alias (n1, n2)
|
|
|
|
|
do_weak_alias (INTERNAL (REENTRANT_GETNAME), REENTRANT_GETNAME)
|