Update.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 1999-02-20  Ulrich Drepper  <drepper@cygnus.com>
2
3         * elf/dynamic-link.h (elf_get_dynamic_info): Take new argument with
4         load address.  Relocate d_ptr in DT_DTRTAB, DT_SYMTAB, DT_RELA, DT_REL,
5         DT_JMPREL, DT_PLTGOT, and DT_VERSYM l_info entry.
6         (_ELF_DYNAMIC_DO_RELOC): Take extra argument which specifies whether
7         rel and rela relocations can both happen and skip one test if this
8         is not possible.
9         (ELF_DYNAMIC_DO_RELA, ELF_DYNAMIC_DO_REL): Call _ELF_DYNAMIC_DO_RELOC
10         appropriately.
11         * elf/dl-addr.c (_dl_addr): DT_SYMTAB and DT_STRTAB entries are
12         already relocated.
13         * elf/dl-deps.c (_dl_map_object_deps): DT_STRTAB entry is already
14         relocated.
15         * elf/dl-load.c (_dl_init_paths): DT_STRTAB entry is already relocated.
16         (_dl_map_object_from_fd): Call elf_get_dynamic_info with new argument.
17         (_dl_map_object): DT_STRTAB entry is already relocated.
18         * elf/dl-lookup.c (do_lookup): DT_STRTAB and DT_SYMTAB entries are
19         already relocated.
20         * elf/dl-reloc.c (_dl_relocate_object): DT_STRTAB entry is already
21         relocated.
22         * elf/dl-runtime.c (fixup): DT_SYMTAB, DT_STRTAB, DT_JMPREL, and
23         DT_VERSYM entries are already relocated.
24         (profile_fixup): Likewise.
25         * elf/dl-version.c: Rename VERSTAG macro into VERSYMIDX.  Replace
26         all users.
27         (match_symbol): DT_STRTAB entry is already relocated.
28         (_dl_check_map_versions): Likewise.  Also fo DT_VERSYM.
29         * elf/do-rel.h (elf_dynamic_do_rel): reladdr is now assumed to be
30         relocated already.  DT_SYMTAB and DT_VERSYM entries are also relocated.
31         * elf/rtld.c (_dl_start): Pass extra argument to elf_get_dynamic_info.
32         (find_needed): DT_STRTAB entry is already relocated.
33         (dl_main): Pass extra argument to elf_get_dynamic_info.
34         DT_STRTAB entry is already relocated.
35         * sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): DT_JMPREL and
36         DT_PLTGOT entries are already relocated.
37         (elf_machine_rela): Likewise for DT_SYMTAB.
38         * sysdeps/arm/dl-machine.h (elf_machine_rel): DT_STRTAB is already
39         relocated.
40         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
41         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
42         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
43         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise.
44         * sysdeps/powerpc/dl-machine.c (__process_machine_rela): Likewise.
45         * sysdeps/mips/dl-machine.h (elf_machine_got_rel): Likewise.
46         (elf_machine_got_rel): Likewise for DT_SYMTAB and DT_STRTAB.
47
48         * grp/initgroups.c (initgroups): If function in current module was
49         successful don't stop but continue to process to get all the groups.
50
51         * elf/dl-load.c (_dl_map_object_from_fd): Use global
52         _dl_pf_to_proot array to convert p_flags value.
53         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
54
55         * elf/dynamic-link.h (elf_get_dynamic_info): Use memset instead of
56         loop to clear `info'.
57
58         * sysdeps/i386/i486/bits/string.h: If fill byte is constant let gcc
59         do the work and don't use inline assembler.
60
61 1999-02-19  Ulrich Drepper  <drepper@cygnus.com>
62
63         * elf/ldsodefs.h (_dl_signal_error): Mark as __noreturn__.
64         * elf/dl-load.c (lose): Make it a function at the toplevel, mark as
65         noreturn, and prevent it from being inlined.
66         Define LOSE appropriately.
67         (_dl_map_object_from_fd): Compare all bytes in e_ident at once.
68         Optimize decoding of p_flags for certain platforms.
69
70 1999-02-19  Philip Blundell  <pb@nexus.co.uk>
71
72         * Makeconfig (link-libc): When doing a static link, make sure that
73         libgcc.a is included both before and after libc.a.
74
75 1999-02-18  Thorsten Kukuk  <kukuk@suse.de>
76
77         * nis/nss_compat/compat-spwd.c: Fix handling of default values for
78         sp_warn, sp_inact, sp_expire and sp_flag.
79
80 1999-02-18  Ulrich Drepper  <drepper@cygnus.com>
81
82         * elf/link.h (link_map): Add l_dev and l_ino.
83         * elf/dl-load.c (_dl_map_object_from_fd): Test dev/ino of newly
84         loaded shared object with all laoded objects.  Initialize l_ino
85         and l_dev in case it's new.
86         * elf/rtld.c (dl_main): Explain situation is l_dev/l_ino with main
87         object.
88         * elf/Makefile: Compile and run new test.
89         * elf/multiload.c: New file.
90
91         * nss/nsswitch.h (service_user): Change name field from const char *
92         to char[0].
93         (name_database_entry): Likewise.
94         * nss/nsswitch.c (nss_parse_service_list): Adjust memory allocation
95         for change of `service_user'.
96         (nss_getline): Adjust memory allocation for change of
97         `name_database_entry'.
98
99         * catgets/catgets.c: Correctly handle NLSPATH from environment
100         [PR libc/980].
101
102         * io/Makefile (routines): Add lock64.
103         * io/Versions: Add lockf64 for GLIBC_2.1.1.
104         * sysdeps/generic/lockf64.c: New file.
105
106 1999-02-16  Ulrich Drepper  <drepper@cygnus.com>
107
108         * string/bits/string2.h: Only use strncmp optimization if count
109         argument is constant.
110
111 1999-02-16  Roland McGrath  <roland@baalperazim.frob.com>
112
113         * sysdeps/mach/hurd/revoke.c: New file.
114
115 1999-02-16  Ulrich Drepper  <drepper@cygnus.com>
116
117         * wctype/wctype.h (_ISwbit): Cast result of shift operations to
118         int to avoid warning about `ISO C restricts enumerator values to
119         range of `int''.
120
121 1999-02-16  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
122
123         * elf/dlfcn.h: Fix typo.
124         * sysdeps/generic/bits/dlfcn.h: Likewise.
125         * sysdeps/mips/bits/dlfcn.h: Likewise.
126
127 1999-02-16  Ulrich Drepper  <drepper@cygnus.com>
128
129         * sysdeps/i386/i486/bits/string.h (memcmp): Correctly set flags
130         for the case N == 0.
131
132         * db2/Makefile (distribute): Add LICENSE.
133
134 1999-02-03  Jeff Bailey  <jbailey@nisa.net>
135
136         * sysdeps/unix/make_errlist.c: Add i18n and copyright to
137         generated files.
138
139         * sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c: Fix typo.
140
141 1999-02-16  Ulrich Drepper  <drepper@cygnus.com>
142
143         * time/mktime.c: Use ISO C form for function definitions and
144         remove unnecessary prototypes.
145
146         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix typo in last change.
147
148         * time/time.h: Avoid unneccesary #ifdef.
149
150 1999-02-15  Geoff Keating  <geoffk@ozemail.com.au>
151
152         * stdio-common/_itoa.c (_itoa): Correct parameters to
153         udiv_qrnnd_preinv.
154
155 1999-02-14  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
156
157         * misc/sys/cdefs.h: Undefine __PMT since it might be defined
158         before (e.g. in glob.h).
159         Closes PR libc/959.
160
161 1999-02-16  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
162
163         * sysdeps/mips/fpu_control.h: Fix typo.
164         Patch by Sylvain Pion <Sylvain.Pion@sophia.inria.fr>.
165         Remove __setfpucw.
166
167 1999-02-10  Roland McGrath  <roland@baalperazim.frob.com>
168
169         * sysdeps/mach/hurd/pipe.c (__pipe): Don't call __socket_shutdown on
170         the "unused" ends of the sockets.  Let pipes be bidirectional.
171
172 1999-02-15  Ulrich Drepper  <drepper@cygnus.com>
173
174         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Correct test for
175         invalid ai_flags.
176
177 1999-02-15  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
178
179         * manual/llio.texi (Waiting for I/O): Correct meaning.  Patch by
180         Jochen Voss <voss@mathematik.uni-kl.de> [PR libc/969].
181
182         * manual/setjmp.texi (Non-Local Exits and Signals): Fix
183         typo.  Patch by Jochen Voss <voss@mathematik.uni-kl.de> [PR libc/970].
184
185 1999-02-15  Ulrich Drepper  <drepper@cygnus.com>
186
187         * string/Versions: Add __strverscmp to GLIBC_2.1.1.
188
189 1999-02-13  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
190
191         * misc/syslog.c (vsyslog): Remember errno for %m format.  Fix
192         check for priority mask.
193
194 1999-02-14  Ulrich Drepper  <drepper@cygnus.com>
195
196         * resolv/netdb.h (AI_NUMERICHOST): Change to 4.
197         Reported by Craig Metz <cmetz@inner.net> .
198
199 1999-02-14  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
200
201         * stdio-common/Makefile (tests): tllformat added.
202
203         * stdio-common/tllformat.c: New program, based on tiformat.c with
204         examples from Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
205
206 1999-02-14  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
207
208         * posix/test-vfork.c: Fix exit status test.
209
210 1999-02-14  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
211
212         * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Add some
213         missing cases.  Reported by Craig Metz <cmetz@inner.net> [PR libc/964].
214
215 1999-02-14  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
216
217         * sysdeps/m68k/fpu/s_modf.c: Optimized by using __m81_test instead
218         of separare explicit comparisons.
219
220 1999-02-11  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
221
222         * sysdeps/wordsize-64/inttypes.h: Always define ldiv_t if not yet
223         defined.
224
225         * sysdeps/wordsize-32/inttypes.h: Always define lldiv_t if not yet
226         defined.
227
228 1999-02-09  Ulrich Drepper  <drepper@cygnus.com>
229
230         * po/el.po: Update from translation team.
231
232 1999-02-09  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
233
234         * intl/locale.alias: Fix slovenian entry [PR libc/948].
235
236 1999-02-09  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
237
238         * elf/sprof.c: assert.h isn't used anymore, remove inclusion.
239         * inet/ruserpass.c: Likewise.
240         * locale/programs/stringtrans.c: Likewise.
241         * locale/programs/localedef.c: Likewise.
242         * nscd/grpcache.c: Likewise.
243         * nss/nss_files/files-XXX.c: Likewise.
244         * stdlib/canonicalize.c: Likewise.
245         * sysdeps/posix/sigwait.c: Likewise.
246
247 1999-02-09  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
248
249         * sunrpc/pmap_rmt.c (clnt_broadcast): We need 32 bit comparison
250         even on 64 bit platforms.
251
252         * sunrpc/clnt_tcp.c (clnttcp_call): Likewise.
253         Patch by Loic Prylli <Loic.Prylli@ens-lyon.fr>.
254
255 1999-02-09  Ulrich Drepper  <drepper@cygnus.com>
256
257         * intl/dcgettext.c: Include locale.h is available.
258
259 1999-02-08  Ulrich Drepper  <drepper@cygnus.com>
260
261         * po/nl.po: Update from translation team.
262
263         * sysdeps/libm-i387/s_asinhf.S: Correct computing absolute value.
264
265         * Makefile: Allow calling goals for po subdir.
266
267         * sysdeps/unix/sysv/linux/alpha/bits/signum.h: Add missing RT
268         signal definitions.
269
270         * po/el.po: New file.
271
272 1999-02-07  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
273
274         * elf/dl-load.c (_dl_map_object_from_fd): Replace magic constant
275         when processing DT_SYMBOLIC objects.
276
277 1999-02-07  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
278
279         * elf/dl-load.c (_dl_map_object_from_fd): When looking for the
280         program headers without PT_PHDR only require that they are
281         contained within one of the loaded segments.  Don't use assert,
282         since that would be a bug in the object, not the dynamic linker.
283
284 1999-02-08  Richard Henderson  <rth@cygnus.com>
285
286         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Save and
287         restore all call-clobbered fp regs.
288
289 1999-02-08  Ulrich Drepper  <drepper@cygnus.com>
290
291         * po/cs.po: New file.
292
293         * resolv/res_hconf.c (_res_hconf_init): Don't use ENV_HOSTCONF for
294         SUID binaries.
295
296 1999-02-07  Ulrich Drepper  <drepper@cygnus.com>
297
298         * signal/signal.h: Don't declare __libc_allocate_rtsig.
299         * include/signal.h: Declare __libc_allocate_rtsig here.
300
301         * elf/dl-lookup.c: Increment _dl_num_relocations in the four entry
302         point functions, not do_lookup since the later can be called more
303         than once.
304
305 1999-02-03  Jakub Jelinek  <jj@ultra.linux.cz>
306
307         * sysdeps/generic/segfault.c: Add ADVANCE_STACK_FRAME
308         macro, so that architectures which need to add some special
309         offset to stack pointer can share this file.
310
311         * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h: New file.
312         * sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: New file.
313         * sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: New file.
314         * sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: New file.
315
316         * sysdeps/unix/sysv/linux/sparc/sparc32/bits/mman.h: Remove.
317         * sysdeps/unix/sysv/linux/sparc/sparc64/bits/mman.h: Remove.
318         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: New file - common
319         between sparc32 and sparc64.
320
321         * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Remove.
322         * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Remove.
323         * sysdeps/unix/sysv/linux/sparc/vfork.S: New file - common
324         between sparc32 and sparc64.
325
326         * sysdeps/unix/sysv/linux/sparc/sparc32/fork.S: Remove.
327         * sysdeps/unix/sysv/linux/sparc/sparc64/fork.S: Remove.
328         * sysdeps/unix/sysv/linux/sparc/fork.S: New file - common
329         between sparc32 and sparc64.
330
331         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.S: Remove.
332         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.S: Remove.
333         * sysdeps/unix/sysv/linux/sparc/sysdep.S: New file - common
334         between sparc32 and sparc64.
335
336 1999-02-07  Ulrich Drepper  <drepper@cygnus.com>
337
338         * Versions.def: New version GLIBC_2.1.1 for libc.
339         * stdlib/Versions: Add _Exit, imaxdiv, and imaxdiv to GLIBC_2.1.1.
340         * stdlib/labs.c: Moved to...
341         * sysdeps/generic/labs.c: ...here.
342         * stdlib/llabs.c: Moved to...
343         * sysdeps/generic/llabs.c: ...here.
344         * stdlib/stdlib.h: Allow definition of ldiv_t and lldiv_t in other
345         header.  Declare _Exit.
346         * sysdeps/generic/_exit.c: Add alias _Exit.
347         * sysdeps/mach/hurd/_exit.c: Likewise.
348         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
349         * sysdeps/standalone/i960/nindy960/_exit.c: Likewise.
350         * sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise.
351         * sysdeps/unix/_exit.c: Likewise.
352         * sysdeps/wordsize-32/inttypes.h: Define imaxdiv_t and declare
353         imaxdiv and imaxabs.  Declare lldiv_t if necessary.
354         * sysdeps/wordsize-64/inttypes.h: Likewise.
355         * sysdeps/wordsize-32/llabs.c: New file.
356         * sysdeps/wordsize-32/lldiv.c: New file.
357         * sysdeps/wordsize-64/labs.c: New file.
358         * sysdeps/wordsize-64/ldiv.c: New file.
359         * manual/arith.texi: Document imaxabs, imaxdiv_t, and imaxdiv.
360         * manual/startup.texi: Document _Exit.
361
362 1999-02-07  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
363
364         * nscd/cache.c: Include <arpa/inet.h> for inet_ntop.
365
366 1999-02-06  Ulrich Drepper  <drepper@cygnus.com>
367
368         * Versions.def: Add versions for ld.so.
369         * csu/Versions: Remove __libc_stack_end here.
370         * elf/Versions: Split libc definitions in libc and ld.so definitions.
371         * elf/Makefile (ld-map): Change to ld.so.map.
372         * scripts/versions.awk: Recognize dot in library names.
373
374         * ctype/ctype.h: Remove definitions of __tolower and __toupper.
375         Don't use __tolower and __toupper in inline functions.
376         Add optimizing macros for tolower and toupper.
377         * ctype/ctype-extn.c (_tolower): Don't use __tolower.
378         (_toupper): Don't use __toupper.
379         * ctype/ctype.c (tolower): Don't use __tolower.
380         (toupper): Don't use toupper.
381
382         * nscd/cache.c (prune_cache): Correct printing of debugging messages.
383
384         * resolv/Versions (libresolv): Export __ns_name_unpack and
385         __ns_name_ntop.
386         * resolv/res_comp.c: Rename ns_name_unpack to __ns_name_unpack and
387         make it global.  Change all users.  Similar for ns_name_ntop.
388         * resolv/nss_dns/dns-host.c: Don't use dn_expand when extracting in
389         user-provided buffer.  Use __ns_name_unpack and __ns_name_ntop
390         directly to detect too small buffer.
391         * resolv/nss_dns/dns-network.c: Likewise.
392
393         * stdio-common/Makefile (tests): Add scanf12.
394         * stdio-common/scanf12.c: New file.
395         * stdio-common/scanf12.input: New file.
396         * stdio-common/vfscanf.c (__vfscanf): Handle +/- at beginning of
397         floating-point correctly if the number is invalid.
398
399         * stdio-common/vfscanf.c: Don't use non-reentrant multibyte conversion
400         functions.
401         * stdio-common/printf_fp.c: Likewise.
402         * stdio-common/printf_fphex.c: Likewise.
403         * stdio-common/vfprintf.c: Likewise.
404
405
406 See ChangeLog.9 for earlier changes.