* elf/link.h (struct link_map): New field l_phdr_allocated.
* elf/dl-load.c (_dl_map_object_from_fd): Don't depend on having
the program header being part of any loaded segment. If it is not
allocate memory and set l_phdr_allocated flag.
* elf/dl-close.c (_dl_close): Free l_phdr if necessary.
* Versions.def (ld.so): Add GLIBC_2.1.1.
* elf/Makefile (routines): Add dl-origin.
(tests): Add origtest. Add dependencies for the program.
* elf/Versions (ld.so) [GLIBC_2.1.1]: Add _dl_origin_path,
_dl_platformlen, _dl_dst_count and _dl_dst_substitute.
* elf/dl-deps.c (expand_dst): New macro. Expand DSTs in filename.
(_dl_map_object_deps): Use expand_dst to expand DSTs in DT_NEEDED,
DT_AUXILIARY, and DT_FILTER filenames.
* elf/dl-load.c (expand_dynamic_string_token): Explode into
two functions and three macros.
(_dl_dst_count, _dl_dst_substitute): New functions.
* elf/dl-dst.h: New file.
* elf/dl-open.c (_dl_open): Take extra parameter with address of
caller. Pass address in args structure.
(dl_open_worker): Recognize and expand DSTs in filename.
* elf/ldsodefs.h (_dl_open): Adapt prototype.
* elf/dlopen.c (dlopen_doit): Pass caller address to _dl_open.
(__dlopen_check): Pass caller address to dlopen_doit in args.
* elf/dlopendoit.c: Likewise.
* iconv/gconv_dl.c: Adapt call of _dl_open.
* nss/nsswitch.c: Likewise.
* elf/origtest.c: New file.
* sysdeps/generic/dl-origin.h: Moved to...
* sysdeps/generic/dl-origin.c: ...here.
* sysdeps/unix/sysv/linux/dl-origin.h: Moved to...
* sysdeps/unix/sysv/linux/dl-origin.c: ...here.
1999-05-05 Thorsten Kukuk <kukuk@suse.de>
* nis/nis_file.c (readColdStartFile): Allocate memory only after
the file is opened successfully.
* nis/nis_table.c: Fix some memory leaks.
* elf/Makefile (trusted-dirs.st): Use gen-trusted-dirs.awk.
* elf/gen-trusted-dirs.awk: New file.
* elf/dl-load.c (systems_dirs): Moved into file scope. Initialize
from SYSTEM_DIRS macro.
(system_dirs_len): New variable. Contains lengths of system_dirs
strings.
(fillin_rpath): Rewrite for systems_dirs being a simple string.
Improve string comparisons. Change parameter trusted to be a flag.
Change all callers.
(_dt_init_paths): Improve using new format for system_dirs.
1999-05-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sunrpc/Makefile: Generate dependencies for all flavors of
librpcsvc objects.
(rpcgen-cmd): Pass -Y flag here and remove it from the macro
invocations.
1999-05-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* elf/dlopenold.c: Move #if down after includes to get
dependencies right.
1999-05-01 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/generic/bzero.c: Undefine __bzero.
* sysdeps/posix/getaddrinfo.c (gaih_inet_serv): Change fourth
parameter to struct gaih_servtuple *. Adapt appropriately.
(gaih_inet): Use alloca to allocate room for gaih_inet_serv calls.
This fixes a memory leak.
Reported by Mikolaj J. Habryn <dichro-glibcbug@rcpt.to>.
1999-05-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sys/procfs.h: Remove greg_t, gregset_t,
and fpregset_t definition. They are defined in ucontext.h.
1999-04-14 Scott Bambrough <scottb@netwinder.org>
* sysdeps/unix/sysv/linux/arm/net/ethernet.h: struct ether_addr
and struct ether_header must be packed on the ARM. The default
alignment constraints add padding to the end of the structures.
1999-04-14 Scott Bambrough <scottb@netwinder.org>
* inet/arpa/tftp.h: struct tftphdr must be packed on the ARM. The
default alignment constraints add padding to the end of the
structure and between members.
1999-05-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/glob.c (glob_in_dir): It's no error if opendir
fails on a file.
Reported by Sergei Ivanov <svivanov@pdmi.ras.ru> [PR libc/1032].
1999-05-02 H.J. Lu <hjl@gnu.org>
* timezone/zic.c (dolink): Remove the symlink destination first.
* catgets/open_catalog.c (__open_catalog): Set catalog->status
to "nonexisting" if failed to open the file.
1999-05-01 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/i486/bits/string.h: Don't use and define __memset_gg.
Prevent warnings from multiplication with 0x01010101 by another cast.
1999-04-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* string/bits/string2.h (memset): Revert to previous version if
unaligned writes are not available.
1999-04-30 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/i486/bits/string.h (__memset_gc): Help generating
better code in presence of the asm.
1999-04-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdlib/fmtmsg.c (keywords): Increase array size for faster
indexing.
* locale/localeinfo.h (_nl_category_names): Increase array element
size for faster indexing.
* locale/setlocale.c (_nl_category_names): Adjusted.
1999-04-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* iconv/gconv_conf.c (add_alias): Remove wrong cast.
* string/tester.c (test_strchrnul): New function.
(test_memset): Test one more special case.
* sysdeps/i386/strchrnul.S: Fix bugs which lead to wrong results in
* hurd/hurdinit.c (_hurd_new_proc_init): Don't do initial SIGTRAP if
EXEC_SIGTRAP was set in the incoming exec flags--that indicates the
exec server simulated a SIGTRAP before we even started up, so gdb is
already happy.
* hurd/hurdinit.c (_hurd_new_proc_init): Don't do initial SIGTRAP if
EXEC_SIGTRAP was set in the incoming exec flags--that indicates the
exec server simulated a SIGTRAP before we even started up, so gdb is
already happy.
1999-04-30 09:02 -0400 Zack Weinberg <zack@rabi.columbia.edu>
* string/bits/string2.h (memset): Avoid arithmetic overflow at
compile time, which produces obnoxious warnings. If GCCv2 is
in use, map __bzero to __builtin_memset to enable that
optimization.