98eb138801c7bcd3a3e8ed5cb1a6ab97f90de82f
[platform/upstream/linaro-glibc.git] / ChangeLog
1 Tue Sep 17 10:51:58 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
2
3         * malloc/memalign.c (memalign): Only acquire __libc_malloc_lock
4         for actual modifications to global state.  
5
6 Fri Sep 13 01:21:36 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
7
8         * sysdeps/mach/Makefile (includes): Add -I$(common-objpfx)mach/.
9         * sysdeps/mach/hurd/Makefile (includes): Add
10         -I$(common-objpfx)hurd/.  Reported by Marcus Daniels.
11
12         * sysdeps/generic/schedbits.h (struct sched_param): Renamed from
13         struct sched_params.
14         * sysdeps/stub/sched_setp.c (__sched_setparam): struct
15         sched_params -> struct sched_param.
16         * sysdeps/stub/sched_getp.c (__sched_getparam): Likewise.
17         * sysdeps/stub/sched_sets.c (__sched_setscheduler): Likewise.
18
19 Thu Sep 12 23:58:25 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
20
21         * sysdeps/mach/libc-lock.h (__libc_cleanup_region_start): Fix
22         syntax error.
23         
24         * stdio-common/Makefile: Put lockfile in routines
25         unconditionally. 
26                 
27         * stdio-common/vfprintf.c (__flockfile, __funlockfile): Declare
28         this always, not just if _LIBC_REENTRANT.
29         (__funlockfile): Don't use weak_extern for this one;
30         __libc_cleanup_region_end might be defined and the use of
31         __funlockfile can't be protected the way the use of __flockfile
32         can be. 
33         
34 Fri Sep 13 04:33:08 1996  Ulrich Drepper  <drepper@cygnus.com>
35
36         * sched.h: New file.  helper to access posix/sched.h.
37         * posix/sched.h: Change `sched_params' to `sched_param' to follow
38         POSIX.4.
39
40 Thu Sep 12 20:12:40 1996  Ulrich Drepper  <drepper@cygnus.com>
41
42         * db/makedb.c (usage): Print bug report address separately to
43         ease translators task.
44         * catgets/gencat.c (usage): Likewise.
45         * locale/locale.c (usage): Likewise.
46         * locale/localedef.c (usage): Likewise.
47
48 1996-09-12  Paul Eggert  <eggert@twinsun.com>
49
50         * time/strftime.c (my_localtime_r): Define if ! HAVE_LOCALTIME_R,
51         and #define localtime_r to it.  If _LIBC, use __localtime_r instead.
52         (my_gmtime_r): Similar, except it's not needed if ! HAVE_TM_GMTOFF.
53
54 Thu Sep 12 14:03:29 1996  Ulrich Drepper  <drepper@cygnus.com>
55
56         * crypt/Makefile: Include Makeconfig and add crypt object dir to
57         rpath-link so that running the check finds the new library.
58         * crypt/cert.c: provide correct prototypes to prevent warnings.
59         Reported by Andreas Jaeger.
60
61         * sysdeps/mach/hurd/Makefile (rpath-link): Don't use += because
62         old and new value must be glued using `:'.
63         Reported by Marcus Daniels.
64
65 Thu Sep 12 12:33:52 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
66
67         * sysdeps/mach/hurd/dl-cache.c: Delete second copy of file
68         accidentally added on.
69
70         * sysdeps/stub/intr-msg.h: New file.
71
72         * stdio-common/vfprintf.c: Include <libc-lock.h>.
73         * stdio-common/vfscanf.c: Include <libc-lock.h>.
74
75         * sysdeps/mach/libc-lock.h (__libc_cleanup_region_start): New
76         macro.
77         (__libc_cleanup_region_end): New macro.
78
79 Thu Sep 12 03:35:27 1996  Ulrich Drepper  <drepper@cygnus.com>
80
81         * sysdeps/unix/sysv/linux/i386/Dist: Remove init-first.h.
82         * sysdeps/unix/sysv/linux/m68k/Dist: Likewise.
83         * sysdeps/unix/sysv/linux/Dist: Add init-first.h.
84
85 1996-09-11  Paul Eggert  <eggert@twinsun.com>
86
87         * strftime.c (strftime):
88         Handle E and O modifiers, required for POSIX.2 and XPG4.
89         Don't use sprintf to format numbers; this way, we can handle time_t
90         correctly regardless of whether it's signed.
91         Don't dump core if format ends in %.
92         In default %c format, use %e instead of %d, for POSIX.2 compatibility.
93         For %z:
94                 Use tm_gmtoff if available.
95                 Output nothing if tm_isdst is negative.
96                 Output correct value even if arg is 1969-12-31 23:59:59 UTC.
97                 Don't assume that UTC offset is less than 24 hours;
98                 Posix requires support for 24 hours, and there's no point
99                 limiting it at all.
100         (HAVE_TM_GMTOFF, TYPE_SIGNED, INT_STRLEN_BOUND): New macros.
101         (CHAR_BIT): Define if <limits.h> doesn't.
102         (tm_diff): New function.
103         (fmt, <stdio.h>): Remove; no longer used.
104
105 Thu Sep 12 02:21:44 1996  Ulrich Drepper  <drepper@cygnus.com>
106
107         * db/Makefile: Add extra-libs-others variable so that shared
108         library is built in `others' pass.
109         * elf/Makefile: Likewise.
110         * math/Makefile: Likewise.
111         * resolv/Makefile: Likewise.
112
113         * Makefile (generated): Add version.info.h.
114
115         * time/checktab.awk: New file.  From ADO 96k.
116         * time/iso3166.tab: Likewise.
117         * time/tzselect.ksh: Likewise.
118         * time/zone.tab: Likewise.
119
120         * stdio-common/vfprintf.c: Correct cleanup registration.  We
121         cannot use a macro
122
123 1996-09-11  Paul Eggert  <eggert@twinsun.com>
124
125         * time/time.h (tm_gmtoff, tm_zone): Prefix with `__' unless
126         __USE_BSD; this is required for ANSI C compatibility.
127         * manual/time.texi: Replace GMT by UTC, daylight savings by
128         daylight saving, timezone by time zone.
129         Rewrite description of %V to match ISO 8601.
130         Fix TZ Posix string example for US Eastern time.
131         Explain tzname[1] when DST isn't used.
132         Explain tzname when multiple abbreviations used (e.g. EST/EWT/EDT).
133         Explain that timezone's sign is opposite from tm_gmtoff, and that
134         timezone lacks DST adjustment whereas tm_gmtoff has it.
135         Deprecate tzname and timezone.
136
137 Tue Sep 10 14:46:16 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
138
139         Implement Roland McGrath's idea of how to put an .interp into
140         shared libraries.
141         * interp.c: New file.
142         * Makerules (interp-obj): New object, linked into every shared
143         library.
144         (common-generated): Add interp.so.
145         (CFLAGS-interp.c): Pass name of interpreter.
146
147 Tue Sep 10 21:09:35 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
148
149         * db/Makefile: Fix typo.
150
151 Tue Sep 10 19:29:53 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
152
153         * nss/db-Makefile ($(VAR_DB)/passwd.db): Look for multiple
154         occurences of the same uid, and only generate a mapping for the
155         first one.
156
157 Tue Sep 10 03:14:59 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
158
159         * sysdeps/unix/sysv/linux/system.c: New file, to override
160         sysdeps/unix/system.c.
161
162 Tue Sep 10 15:05:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
163
164         * Makefile (before-compile): Add version-info.h, needed to build
165         version.d.
166
167 Tue Sep 10 14:14:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
168
169         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Remove check for
170         EWOULDBLOCK, never true on Linux.
171         (__errno_location): New function.
172         [_LIBC_REENTRANT]: Set errno using __errno_location function.
173         * sysdeps/unix/sysv/linux/m68k/sysdep.h [PIC]: Add second
174         syscall_error handler for reentrant libc.
175
176 Tue Sep 10 13:27:49 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
177
178         * elf/Makefile (extra-objs): Add eval.so to get dependencies.
179
180 Wed Sep 11 04:40:57 1996  Ulrich Drepper  <drepper@cygnus.com>
181
182         * time/tzset.c (__tzname_cur_max): Use type `size_t' to avoid
183         warning.
184         * time/tzfile.c (compute_tzname_max): Likewise.
185
186 Wed Sep 11 02:57:31 1996  Ulrich Drepper  <drepper@cygnus.com>
187
188         * configure.in: Quote $add_ons argument in loop to generated
189         prefices.
190
191 Tue Sep 10 20:43:45 1996  Ulrich Drepper  <drepper@cygnus.com>
192
193         * db/makedb.c: Include <locale.h>.  Reported by Fila Kolodny.
194
195 Tue Sep 10 14:42:39 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
196
197         * elf/dl-cache.c: Rename to ...
198         * sysdeps/generic/dl-cache.c:  ... here.
199         * sysdeps/mach/hurd/dl-cache.c: New file.
200         
201         * mach/Makefile (distribute): Add `errsystems.awk'.
202         * hurd/Makefile (distribute): Add `Notes' and `intr-msg.h'.
203         * hurd/hurdintr.awk: Delete file.  (Not used in ages.)
204         * hurd/intr-rpc.awk: Likewise.
205         * hurd/invoke-trans.c: Likewise.
206         * sysdeps/mach/hurd/i386/longjmp-ctx.c: Likewise.
207         * sysdeps/mach/hurd/alpha/longjmp-ctx.c: Likewise.
208         * sysdeps/mach/hurd/mips/longjmp-ctx.c: Likewise.
209         * sysdeps/mach/hurd/i386/init-fault.c: Likewise.
210         * sysdeps/mach/hurd/mips/init-fault.c: Likewise.
211         * sysdeps/stub/init-fault.c: Likewise.
212         * sysdeps/stub/longjmp-ctx.c: Likewise.
213         
214 Tue Sep 10 13:49:08 1996  Ulrich Drepper  <drepper@cygnus.com>
215
216         * inet/herrno.c: Initialize `h_errno' so that we can provide
217         alias.
218
219         * Makefile (version-info.h): Fix typo in shell script.
220
221         * sysdeps/i386/i586/strlen.S: Optimize startup code a bit.
222         * sysdeps/i386/i586/strchr.S: Likewise.
223
224 Mon Sep  9 20:31:27 1996  Ulrich Drepper  <drepper@cygnus.com>
225
226         * version.c (banner): Report to bug-glibc@prep not @gnu.
227         Reported by Andreas Jaeger.
228
229         * libio/stdio.h [!__USE_REENTRANT]: Don't define getc as
230         _IO_getc_unlocked.
231         [__USE_REENTRANT]: Don't define
232
233 Mon Sep  9 15:59:32 1996  Ulrich Drepper  <drepper@cygnus.com>
234
235         * sysdeps/i386/strrchr.c: Fix bug where NUL byte is not recognized
236         when it is the third byte in the string.  Reported by
237         NIIBE Yutaka.
238         * string/tester.c: Add tests for above bug to strlen, strchr, and
239         strrchr tests.
240
241 Fri Sep  6 21:23:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
242
243         * sysdeps/m68k/fpu/e_acos.c: Deansideclized.  Include
244         "math_private.h" to get prototype.
245         * sysdeps/m68k/fpu/e_fmod.c: Likewise.
246         * sysdeps/m68k/fpu/k_cos.c: Likewise.
247         * sysdeps/m68k/fpu/k_sin.c: Likewise.
248         * sysdeps/m68k/fpu/k_tan.c: Likewise.
249
250         * sysdeps/m68k/fpu/k_sin.c: Remove uneeded indirection of
251         __m81_u.
252         * sysdeps/m68k/fpu/k_tan.c: Likewise.
253
254 Sun Sep  1 18:01:35 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
255
256         * sysdeps/m68k/fpu/__math.h: Check for __NO_M81_MATH_INLINES
257         instead of __NO_MATH_INLINES.
258         (__M81_MATH_INLINES): Renamed from __MATH_INLINES.
259         * sysdeps/m68k/fpu/e_acos.c: Define __NO_M81_MATH_INLINES.
260         * sysdeps/m68k/fpu/e_fmod.c: Likewise.
261         * sysdeps/m68k/fpu/k_cos.c: Likewise.
262         * sysdeps/m68k/fpu/k_sin.c: Likewise.
263         * sysdeps/m68k/fpu/k_tan.c: Likewise.
264         * sysdeps/m68k/fpu/s_atan.c: Likewise.
265         * sysdeps/m68k/fpu/s_frexp.c: Likewise.
266         * sysdeps/m68k/fpu/s_ilogb.c: Likewise.
267         * sysdeps/m68k/fpu/s_isinf.c: Likewise.
268         * sysdeps/m68k/fpu/s_ldexp.c: Likewise.
269         * sysdeps/m68k/fpu/s_modf.c: Likewise.
270         * sysdeps/m68k/fpu/k_cos.c: Use inline version of __cos.
271         * sysdeps/m68k/fpu/k_sin.c: Likewise.
272         * sysdeps/m68k/fpu/k_tan.c: Likewise.
273
274 Mon Sep  9 12:55:14 1996  Ulrich Drepper  <drepper@cygnus.com>
275
276         * nss/nss_files/files-parse.c (INT_FIELD_MAYBE_NULL): Check for
277         available character before converting number and return with
278         error if none is available.
279
280 Fri Sep  6 22:09:08 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
281
282         * sysdeps/unix/sysv/linux/init-first.h: New file, generic
283         implementation for architectures where parameters are passed on
284         stack.
285         * sysdeps/unix/sysv/linux/m68k/init-first.h: Removed.
286         * sysdeps/unix/sysv/linux/i386/init-first.h: Removed.
287
288 Fri Sep  6 22:05:32 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
289
290         * configure.in: Remove unneeded sysnames frobbing.
291
292 Mon Sep  9 05:29:09 1996  Ulrich Drepper  <drepper@cygnus.com>
293
294         * time/zic.c: Update from ADO 96l.
295         * time/africa: Update from ADO 96k.
296         * time/antarctica: Likewise.
297         * time/asia: Likewise.
298         * time/australia: Likewise.
299         * time/europe: Likewise.
300         * time/northamerica: Likewise.
301         * time/southamerica: Likewise.
302
303 Mon Sep  9 05:03:47 1996  NIIBE Yutaka  <gniibe@mri.co.jp>
304
305         * sysdeps/unix/sysv/linux/i386/init-first.h: Work around buggy
306         gcc <= 2.7.2.1 which optimizes away address operations on weak
307         objects.
308
309         * nss/nss_files/files-parse.c (INT_FIELD_MAYBE_NULL): New macro.
310         Like INT_FIELD but also accept non-existing field.
311         * shadow/sgetspent_r.c (LINE_PARSER): Use INT_FIELD_MAYBE_NULL
312         for last four fields.
313         * shadow/putspent.c (putspent): Print `:' after numeric value.
314
315 Mon Sep  9 02:42:48 1996  Richard Henderson  <rth@tamu.edu>
316
317         * libio/stdio.h (BUFSIZ): Define using _IO_BUFSIZ.
318
319 Sun Sep  8 16:43:56 1996  Ulrich Drepper  <drepper@cygnus.com>
320
321         * Make-dist: Filter out $(add-ons) from $(subdirs).
322         Don't distribute TAGS files.
323         ($(tardir).tar): Remove dist.tar when all is done.
324         * manual/Makefile (distribute): Add libc.info*.
325         * libio/Makefile (distribute): Add Banner.
326         * inet/Makefile (headers): Add netinet/tcp.h.
327
328         * resolv/Makefile (libresolv-routines): Add getnetnamadr.
329
330         * crypt-README: Removed.
331         * gnu-stabs.h: Removed.
332
333         * sysdeps/alpha/copysign.S: Renamed to...
334         * sysdeps/alpha/s_copysign.S: ...this.
335         * sysdeps/alpha/fabs.S: Renamed to...
336         * sysdeps/alpha/s_fabs.S: ...this.
337
338         * sysdeps/m68k/isinfl.c: Renamed to...
339         * sysdeps/m68k/s_isinfl.c: ...this.
340         * sysdeps/m68k/isnanl.c: Renamed to...
341         * sysdeps/m68k/s_isnanl.c: ...this.
342
343         * sysdeps/sparc/sqrt.c: Renamed to...
344         * sysdeps/sparc/e_sqrt.c: ...this.  Function name now is
345         __ieee754_sqrt.
346
347         * sysdeps/generic/get_str.c: Removed.
348
349         * sysdeps/ieee754/cbrt.c: Removed.
350         * sysdeps/ieee754/drem.c: Removed.
351         * sysdeps/ieee754/logb.c: Removed.
352         * sysdeps/ieee754/sqrt.c: Removed.
353
354         * sysdeps/stub/cbrt.c: Removed.
355         * sysdeps/stub/cos.c: Removed.
356         * sysdeps/stub/drem.c: Removed.
357         * sysdeps/stub/isinf.c: Removed.
358         * sysdeps/stub/isinfl.c: Removed.
359         * sysdeps/stub/isnanl.c: Removed.
360         * sysdeps/stub/logb.c: Removed.
361         * sysdeps/stub/sin.c: Removed.
362         * sysdeps/stub/sqrt.c: Removed.
363
364         * sysdeps/tahoe/log10.c: Removed.
365
366         * sysdeps/vax/index.s: Removed.
367         * sysdeps/vax/rindex.s: Removed.
368         * sysdeps/vax/bcmp.s: Removed.
369         * sysdeps/vax/log10.c: Removed.
370         * sysdeps/vax/infnan.c: Removed.
371         * sysdeps/vax/Dist: Add fl.h.
372
373         * sysdeps/unix/sysv/linux/alpha/Dist: Add llseek.S.
374
375         * inet/rcmd.c (rcmd): Make messages more uniform.
376
377 Sun Sep  8 14:15:42 1996  Ulrich Drepper  <drepper@cygnus.com>
378
379         * po/de.po: Update.
380         * po/es.po: Update.
381         * po/ko.po: Update.
382         * po/pl.po: New file.
383         * po/nl.po: New file.
384
385 Sat Sep  7 18:41:17 1996  Richard Henderson  <rth@tamu.edu>
386
387         * Makeconfig (+link): Filter out start, pre & postinit from the
388         generic depenancies as well.
389         * Rules: Add start, pre & postinit to the dependancies of
390         $(others) and $(tests).
391
392         * configure.in: elf_dirs missing "sysdeps" component.
393
394 Sun Sep  8 02:36:02 1996  Ulrich Drepper  <drepper@cygnus.com>
395
396         * locale/SYS_libc.c (_libc_intl_domainname): Change value to "libc".
397         This is consistent with all other GNU packages.  We shouldn't
398         take care for a possible clash.  Nobody will name the domain
399         of a package libc if it is not the libc itself.
400         * MakeTAGS ($P/SYS_libc.pot): Rename to $P/libc.pot.
401         * po/Makefile (domainname): Change to libc.
402         (distribute): Now ship libc.pot.
403         * catgets/gencat.c (usage): Use `PACKAGE' for package name in
404         version information banner.
405         Change bug report address to bug-glibc@prep not @gnu.
406         * db/makedb.c (PACKAGE): New macro.  Set to _libc_intl_domain.
407         (main): Use `PACKAGE' for package name in version information
408         banner.
409         Change bug report address to bug-glibc@prep not @gnu.
410         * locale/programs/locale.c (main): Use `PACKAGE' for package name
411         in version information banner.
412         Change bug report address to bug-glibc@prep not @gnu.
413         * locale/programs/localedef.c (main): Likewise.
414
415         * version.h (VERSION): Bump to 1.94.
416
417         * locale/Makefile (distribute): Add locale.c and localedef.c.
418
419 Sat Sep  7 14:00:33 1996  David Mosberger-Tang  <davidm@azstarnet.com>
420
421         * catgets/catgets.c (catopen): Allocate sizeof(*result) bytes
422         instead of sizeof(nl_catd) (which is just a pointer!).
423
424 Sat Sep  7 19:39:19 1996  Ulrich Drepper  <drepper@cygnus.com>
425
426         * Makefile ($(objpfx)version-info.h): Generate from Banner files.
427         * version.c (banner): Add contents of version-info.h to string.
428
429         * Makerules: If $($(subdir)-version) is available name versioned
430         shared library according to this value instead of glibc's version.
431
432         * libio/Banner: New file.
433
434         * elf/eval.c (funcall): Write error message in case function is
435         not found.
436         (eval): Recognize `_' in names.
437
438 Sat Sep  7 05:15:45 1996  Ulrich Drepper  <drepper@cygnus.com>
439
440         * libio/iofdopen: Initialize _lock field only if _IO_MTSAFE_IO.
441         * libio/iofopen: Likewise.
442         * libio/iofopncook.c: Likewise.
443         * libio/iopopen.c: Likewise.
444         * libio/iovsprintf.c: Likewise.
445         * libio/iovsscanf.c: Likewise.
446         * libio/memstream.c: Likewise.
447         * libio/vasprintf.c: Likewise.
448         * libio/vdprintf.c: Likewise.
449         * libio/vsnprintf.c: Likewise.
450
451 Sat Sep  7 03:55:47 1996  Ulrich Drepper  <drepper@cygnus.com>
452
453         * Makeconfig (soversions.mk): Also use shlib-versions files
454         in add-on directories.
455         * config.make.in (config-defines): Remove.  Not used anymore.
456         (defines): New variable.  Initiliazed by @DEFINES@.
457         * configure.in: Add AC_SUBST(DEFINES).
458
459         * libio/Makefile (routines): When compiling reentrant libc add
460         clearerr_u, feof_u, ferror_u, fputc_u, getc_u, getchar_u,
461         iofflush_u, putc_u, putchar_u, ioflockfile.
462         (CPPFLAGS): Add -D_IO_MTSAFE_IO for reentrant libc.
463
464         * sysdeps/stub/libc-lock.h: Add stubs for __libc_cleanup_region_start
465         and __libc_cleanup_region_end.
466
467         * sysdeps/unix/i386/sysdep.S [_LIBC_REENTRANT]: Set errno
468         using __errno_location function.
469         * sysdeps/unix/sysv/linux/i386/sysdep.S [_LIBC_REENTRANT]: Set errno
470         using __errno_location function.
471         (__errno_location): New function.
472         * sysdeps/unix/sysv/linux/i386/sysdep.h [PIC]: Add second
473         syscall_error handler for reentrant libc.
474
475         * sysdeps/unix/opendir.c: Remove unneeded `;'.
476
477         * libio.h [_IO_MTSAFE_IO]: Include <pthread.h>.
478         [!_IO_MTSAFE_IO]: Define _IO_flockfile and _IO_funlockfile
479         as empty macros.
480         * libioP.h: Include <libc-lock.h>.
481         * libio/stdio.h: Add prototypes for *_locked and *_unlocked
482         functions.
483
484         * libio/clearerr.c: Use _IO_ protected versions of flockfile
485         and funlockfile to be namespace clean.
486
487         * libio/genops.c: Use __libc_lock_* macros for handling lock.
488
489         * libio/iofdopen: Add initialization of _lock in _IO_FILE.
490         * libio/iofopen: Likewise.
491         * libio/iofopncook.c: Likewise.
492         * libio/iopopen.c: Likewise.
493         * libio/iovsprintf.c: Likewise.
494         * libio/iovsscanf.c: Likewise.
495         * libio/memstream.c: Likewise.
496         * libio/vasprintf.c: Likewise.
497         * libio/vdprintf.c: Likewise.
498         * libio/vsnprintf.c: Likewise.
499
500         * libio/fgetc.c: Use __libc_cleanup_region_* macros instead
501         of flockfile etc.
502         * libio/fputc.c: Likewise.
503         * libio/freopen.c: Likewise.
504         * libio/fseek.c: Likewise.
505         * libio/getc.c: Likewise.
506         * libio/getchar.c: Likewise.
507         * libio/iofclose.c: Likewise.
508         * libio/iofflush.c: Likewise.
509         * libio/iofgetpos.c: Likewise.
510         * libio/iofgets.c: Likewise.
511         * libio/iofputs.c: Likewise.
512         * libio/iofread.c: Likewise.
513         * libio/iofsetpos.c: Likewise.
514         * libio/ioftell.c: Likewise.
515         * libio/iofwrite.c: Likewise.
516         * libio/iogetdelim.c: Likewise.
517         * libio/iogets.c: Likewise.
518         * libio/ioputs.c: Likewise.
519         * libio/iosetbuffer.c: Likewise.
520         * libio/iosetvbuf.c: Likewise.
521         * libio/ioungetc.c: Likewise.
522         * libio/putc.c: Likewise.
523         * libio/putchar.c: Likewise.
524         * libio/rewind.c: Likewise.
525         * stdio-common/vfprintf.c: Likewise.
526         * stdio-common/vfscanf.c: Likewise.
527
528         * libio/clearerr_u.c: Correct alias name.
529         * libio/ferror_u.c: Likewise.
530         * libio/fileno.c: Likewise.
531         * libio/fputc_u.c: Likewise.
532         * libio/getc.c: Likewise.
533         * libio/getc_u.c: Likewise.
534         * libio/getchar.c: Likewise.
535         * libio/getchar_u.c: Likewise.
536         * libio/putc.c: Likewise.
537         * libio/putchar.c: Likewise.
538
539         * libio/feof_u.c: Undefine macro with name of function before
540         definition of function itself.
541
542         * libio/ioflockfile.c: New file.  Implementation of flockfile and
543         funlockfile.
544
545         * libio/putchar_u.c: Fix typo.  Use stdout instead of fp.
546
547         * malloc/malloc.h: Don't include <libc-lock.h> and don't declare
548         _malloc_loc.
549
550         * malloc/free.c: Include <libc-lock.h>.
551         * malloc/realloc.c: Likewise.
552         * malloc/malloc-find.c: Likewise.
553         * malloc/malloc-size.c: Likewise.
554         * malloc/malloc-walk.c: Likewise.
555         * malloc/memalign.c: Likewise.
556         * malloc/malloc.c: Likewise.
557
558         * sysdeps/i386/dl-machine.h: Correct clearing of _dl_starting_up.
559
560 Fri Sep  6 19:38:49 1996  Ulrich Drepper  <drepper@cygnus.com>
561
562         * sysdeps/stub/libc-lock.h: Define __libc_lock_critical_start
563         and __libc_lock_critical_end as empty macros.
564
565         * malloc/malloc.h: Don't include <libc-lock.h> and don't declare
566         __libc_malloc_lock.
567         * malloc/free.c: Include <libc-lock.h>.
568         * malloc/malloc-find.c: Likewise.
569         * malloc/malloc-size.c: Likewise.
570         * malloc/malloc-walk.c: Likewise.
571         * malloc/malloc.c: Likewise.
572         * malloc/memalign.c: Likewise.
573         * malloc/realloc.c: Likewise.
574
575         * Makefile: Undo change from Mon Sep  2 22:15:14 1996.  No more
576         extra_solibs pass.
577         * Rules: Likewise.
578         * extra-lib.mk: Likewise.
579         * manual/Makefile: Likewise.
580
581         * db/Makefile (makedb): Choose dependecies based on build-shared.
582         Patch by Andres Schwab.
583
584         * sysdeps/posix/sysconf.c: Don't use PTHREAD_DESTRUCTOR_ITERATIONS
585         but _POSIX_THREAD_DESTRUCTOR_ITERATIONS.
586
587         * sysdeps/unix/sysv/linux/errnos.h: New file.
588         * sysdeps/unix/sysv/linux/schedbits.h: New file.
589         * sysdeps/unix/sysv/linux/waitflags.h: New file.
590
591         * sysdeps/unix/sysv/linux/gnu/types.h: Add definition of `key_t'.
592
593 Fri Sep  6 08:26:31 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
594
595         * rpm/template: Fix typo in %build section.
596
597 Fri Sep  6 03:31:07 1996  Ulrich Drepper  <drepper@cygnus.com>
598
599         * sysdeps/unix/sysv/linux/errnos.h: Don't define errno macro when
600         building libc without thread support.
601         * resolv/netdb.h: Likewise for h_errno macro.
602
603 Thu Sep  5 23:01:48 1996  Ulrich Drepper  <drepper@cygnus.com>
604
605         * libc-symbols.h: Add new macro weak_const_function.  It's like
606         weak_function, but the function is additionally marked as const.
607         * features.h: Only include <sys/cdefs.h> if !__ASSEMBLER__.
608
609 Thu Sep  5 22:55:49 1996  Richard Henderson  <rth@tamu.edu>
610
611         * inet/herrno.c (__h_errno_location): New function.
612         (h_errno): Make strong_alias __h_errno so that we can access
613         the variable even if `h_errno' is a macro.
614         * resolv/netdb.h: Define macro h_errno to access thread specific
615         version of h_errno variable.  Declare alias __h_errno for h_errno.
616         * resolv/res_query (h_errno): Remove definition.
617         * sysdeps/unix/sysv/linux/errnos.h [!__ASSEMBLER__ && __USE_REENTRANT]:
618         Add macro `errno' to get thread specific variable.
619         * sysdeps/unix/alpha/sysdep.S [_LIBC_REENTRANT]: Set errno using
620         __errno_location function.
621         (__errno_location): New function.
622
623 Thu Sep  5 21:08:44 1996  Ulrich Drepper  <drepper@cygnus.com>
624
625         * posix/gnu/types.h: Remove definition of key_t.
626         * sysdeps/generic/gnu/types.h: Move it to here.
627         * sysdeps/unix/sysv/linux/gnu/types.h: Add Linux specific
628         definition of key_t.
629
630         * sysdeps/unix/sysv/linux/waitflags.h: New file.  Linux specific
631         definitions.
632         * sysdeps/unix/sysv/linux/schedbits.h: New file.  Include
633         clone prototypes and associated flags.
634
635 Thu Sep  5 13:18:25 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
636
637         * sysdeps/mach/hurd/i386/init-first.c (__libc_argc, __libc_argv):
638         New variables.
639         (init1): Initialize them.
640         * hurd/hurdinit.c (_hurd_setproc): Now that happens to be
641         available, pass __libc_argv in call to __proc_set_arg_locations.
642
643         * gmon/gmon.c (write_hist): Call __profile_frequency instead of
644         hertz.
645         (hertz): Delete function.
646         * gmon/Makefile (routines): Add `prof-freq'.
647         * sysdeps/generic/prof-freq.c: New file.
648         * sysdeps/mach/hurd/prof-freq.c: New (stubby) file.
649         * sysdeps/mach/hurd/profil.c (profile_tick): New variable.
650         (update_waiter): Store frequency in profile_tick.
651         (__profile_frequency): New function.
652
653         * sysdeps/mach/hurd/sendto.c (sendto): Use prototype definition
654         syntax.
655
656         * Rules (generated): Restore reference to $(generated).
657
658         * mach/Machrules (mig.uh, mig.__h): Don't include $(user-MIGFLAGS)
659         here.
660
661         * malloc/free.c (free): __lib_malloc_lock -> __libc_malloc_lock.
662
663         * malloc/free.c: Provide extern decl of __libc_malloc_lock.
664         * malloc/realloc.c: Likewise.
665         * malloc/malloc-find.c: Likewise.
666         * malloc/malloc-size.c: Likewise.
667         * malloc/malloc-walk.c: Likewise.
668         * malloc/memalign.c: Likewise.
669
670 Thu Sep  5 08:58:47 1996  Richard Henderson  <rth@tamu.edu>
671
672         * sysdeps/alpha/elf/start.S: Make _start global again.
673
674 Thu Sep  5 03:20:42 1996  Ulrich Drepper  <drepper@cygnus.com>
675
676         Change configuration and Makefiles to allow add-ons to have a
677         sysdeps/ directory hierachy.
678         * configure.in: Test for sysdeps/ directory in add-ons.  Before
679         all test and searches in these hierachies, too.
680         * Makeconfig (full-config-subdirs): Define based on $(config-sysdirs).
681         Extend with $(..) if not absolute path.
682         Use $(full-config-subdirs) where $(config-sysdirs) was used.
683         * Makefile ($(objpfx)sysd-dirs): Use config-sysdirs.
684         * MakeTAGS: Use $(full-config-subdirs).
685         * Makerules: Change comment to libc.so link script.
686         (sysdirs): Define based on $(full-config-subdirs).
687         (sysd-Makefile): Define using config-sysdirs.
688         (sysd-rules): Likewise.
689         * sysdeps/unix/Makefile (sysd-syscalls): Define based on +sysdep-dirs.
690         * sysdeps/unix/make-syscalls.sh: Remove basedir argument.
691
692 Wed Sep  4 01:32:21 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
693
694         * sysdeps/m68k/fpu/k_cos.c: Rewritten for better accuracy.
695         * sysdeps/m68k/fpu/k_sin.c: Likewise.
696         * sysdeps/m68k/fpu/k_tan.c: Likewise.
697
698 Thu Sep  5 01:06:09 1996  Richard Henderson  <rth@tamu.edu>
699
700         * malloc/free.c (free): Protect by using __libc_malloc_lock.
701         * malloc/malloc-find.c (malloc_find_object_address): Likewise.
702         * malloc/malloc-size.c (malloc_usable_size): Likewise.
703         * malloc/malloc-walk.c (malloc_walk): Likewise.
704         * malloc/memalign.c (memalign): Likewise.
705         * malloc/realloc.c (realloc): Likewise.
706         * malloc/malloc.c: Define __libc_malloc_lock.
707         (_malloc_internal): Don't use `malloc'.  Instead look for
708         `__malloc_hook' or call `_malloc_internal'.
709         (malloc): Protect by using `__libc_malloc_lock'.
710         * malloc/malloc.h: Declare `__libc_malloc_lock'.
711
712 Mon Sep  2 22:42:59 1996  Richard Henderson  <rth@tamu.edu>
713
714         * sysdeps/alpha/elf/start.S: Use weak_alias for __start
715         instead of the hard definition.
716
717         * sysdeps/alpha/dl-machine.h (RTLD_START): Add type info for
718         _start and _dl_start_user.
719
720         * sysdeps/unix/sysv/linux/alpha/init-first.h (SYSDEP_CALL_INIT):
721         Make _dl_starting_up weak.  Add type info for NAME.
722
723 Mon Sep  2 22:15:14 1996  Richard Henderson  <rth@tamu.edu>
724
725         * Makefile (all): Add extra_solibs pass.
726         (+subdir_targets): Same.
727         * Rules (extra_solibs): New phony empty target for subdirs without
728         extra libs.
729         * extra-lib.mk: Build lib*.so* in extra_solibs not lib-noranlib.
730         * manual/Makefile: Add dummy extra_solibs target.
731
732 Sun Sep  1 15:41:22 1996  Richard Henderson  <rth@tamu.edu>
733
734         * Makeconfig (+link): Add $(link-extra-libs).
735         (link-extra-libs): New variable which expands to the full paths of
736         the other libraries needed by a program, as controled by LDLIBS-$(@F).
737         * db/Makefile: Use LDLIBS-makedb to link libdb not a dependency, as
738         the later attempts to install the library before linking it.
739
740         * sysdeps/unix/alpha/sysdep.S: Align errno.
741
742         * sysdeps/unix/sysv/linux/alpha/ioperm.c (struct platform): Add
743         hae_shift entry.
744         (io): Move bus_memory_base and sparse_bus_memory_base into struct.
745         (_hae_shift): New function.
746         * sysdeps/unix/sysv/linux/alpha/sys/io.h: New file.  Prototypes
747         for the bus query functions.
748
749 Sat Aug 31 18:14:54 1996  Richard Henderson  <rth@tamu.edu>
750
751         * elf/dl-close.c (_dl_close): In static executables, map->l_prev
752         can be NULL when unloading a library.
753
754         * elf/dl-open.c (_dl_open): Pass __environ instead of __libc_envp
755         to the library .init function.
756
757         * sysdeps/alpha/dl-machine.h (elf_machine_rela):  Since we omitted
758         part of the COPY reloc processing earlier, omit the rest now --
759         we'll get into less trouble later when some fool does use a COPY.
760
761         * sysdeps/unix/sysv/linux/init-first.c (init): Accept argc et al as
762         parameters.  Move all argc and __libc_multiple_libcs calculation out
763         to init-first.h.  Use __environ not __libc_envp.
764         * sysdeps/unix/sysv/linux/alpha/init-first.h: Rewrite.
765         * sysdeps/unix/sysv/linux/i386/init-first.h: Rewrite.
766
767 Thu Aug 29 20:26:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
768
769         * sysdeps/posix/profil.c (profil): Don't clobber saved timer and
770         signal settings when profiling was already turned on.
771
772         * csu/gmon-start.c (__gmon_start__) [HAVE_INITFINI]: Protect from
773         being called twice.
774
775 Wed Sep  4 01:31:50 1996  Ulrich Drepper  <drepper@cygnus.com>
776
777         * sysdeps/unix/sysv/linux/i386/mmap.S: Test for
778         0 < return value < -4096 and not < 0 to decide about failure.
779         Reported by Andreas Jaeger.
780
781 Tue Sep  3 19:04:05 1996  Ulrich Drepper  <drepper@cygnus.com>
782
783         * stdio-common/vfscanf.c (__vfscanf): Don't count EOF char
784         in %c format.
785
786 Sat Aug 31 18:10:51 1996  Ulrich Drepper  <drepper@cygnus.com>
787
788         * wcsmbs/wchar.h: Define prototypes for wcstoq and wcstouq only
789         #ifdef __USE_GNU.
790
791 Sat Aug 31 12:34:29 1996  Ulrich Drepper  <drepper@cygnus.com>
792
793         * version.c: Add missing newline character in banner.
794
795         * sysdeps/unix/sysv/linux/alpha/Dist: Correct typo.
796         * sysdeps/unix/sysv/linux/i386/Dist: Likewise.
797
798 Sat Aug 31 03:07:39 1996  Ulrich Drepper  <drepper@cygnus.com>
799
800         * intl/l10nflist.c (_nl_normalize_codeset): We convert to lower
801         case, so don't prepend uppercase `ISO' for only numeric arg.
802
803 Wed Sep  4 16:16:13 1996  Ulrich Drepper  <drepper@cygnus.com>
804
805         * sysdeps/mach/hurd/send.c (__send): De-ANSI-fy.
806         * sysdeps/mach/hurd/sendto.c (sendto): Likewise.
807
808 Tue Sep  3 11:16:07 1996  Thomas Bushnell/ n/BSG  <thomas@gnu.ai.mit.edu>
809
810         * shadow/lckpwdf.c (__ulckpwdf): Don't take address of LOCK in
811         call to __libc_lock_lock.
812
813         * sysdeps/mach/hurd/send.c (__send): Declare BUF const.
814         * sysdeps/mach/hurd/sendto.c (sendto): Likewise.
815
816         * sysdeps/stub/ustat.c: Include <sys/ustat.h>.
817
818         * misc/syslog.c (vsyslog): Fix typo (`mow_tm' -> `now_tm').
819
820 Fri Aug 30 19:55:27 1996  Ulrich Drepper  <drepper@cygnus.com>
821
822         * libio/genops.c: Make _cleanup an alias of _IO_cleanup.
823         Reported by Erik Troan.
824
825 Fri Aug 30 15:40:04 1996  Ulrich Drepper  <drepper@cygnus.com>
826
827         * sysdeps/unix/sysv/linux/Dist: Add sys/procfs.h and
828         sys/sysmacros.h.  Reported by Curtiss <1CMC3466@IBM.MTSAC.EDU>.
829
830 Fri Aug 30 13:53:32 1996  Andreas Jaeger  <aj@arthur.pfalz.de>
831
832         * sysdeps/unix/mman/syscalls.list: `mmap' has 6 arguments, not 5.
833
834 Fri Aug 30 13:01:10 1996  NIIBE Yutaka  <gniibe@mri.co.jp>
835
836         * sysdeps/i386/fpu/__math.h (tan): Pop 1.0 in ST to get
837         real result.
838
839 Fri Aug 30 03:33:33 1996  Ulrich Drepper  <drepper@cygnus.com>
840
841         * sysdeps/libm-ieee754/s_cbrtl.c: New file.  `long double'
842         implementation.
843
844 Fri Aug 30 13:39:21 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
845
846         * Makerules (BUILD_CFLAGS): Use @(common-objpfx) for config.h, not
847         $(..).  Some rules (like sysdeps/posix/Makefile for mk-stdiolim)
848         do `cd' commands.
849         (sed-remove-objpfx): Don't substitute for $(objpfx) anymore;
850         $(common-objpfx) is good enough.
851         * Rules (common-generated): Provide default (empty) value.
852         (dummy.o, dummy.c, empty.o, empty.c): Put these in
853         $(common-generated), not $(generated), and without $(..).
854         (subdir_echo-distinfo): Treat $(common-generated) just like
855         $(generated).
856         (generated): Depend on the (suitably mutated) $(common-generated)
857         files too.
858         * Makerules (common-clean): Remove common-generated files too.
859         * sysdeps/mach/hurd/Makefile (generated): Don't put errnos.d and
860         stamp-errnos here.
861         (common-generated): Do put errnos.d and stamp-errnos here.
862         (rpath-link): Don't use +=; $(rpath-link) is a colon separated list.
863
864         * sysdeps/mach/hurd/Makefile (before-compile): Add auth; also add
865         auth to following rule to get it built.
866
867 Fri Aug 30 01:26:44 1996  Ulrich Drepper  <drepper@cygnus.com>
868
869         * sysdeps/unix/sysv/linux/i386/Dist: Add clone.S.
870         * sysdeps/unix/sysv/linux/m68k/Dist: Likewise.
871         * sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
872
873         * version.c: Add comment about where to report bugs to.
874         * catgets/gencat.c (usage): Likewise.
875         * db/makedb.c (usage): Likewise.
876         * locale/programs/locale.c (usage): Likewise.
877         * locale/programs/localedef.c (usage): Likewise.
878
879         * manual/socket.texi: A little bit better wording.
880
881 Thu Aug 29 18:03:06 1996  Ulrich Drepper  <drepper@cygnus.com>
882
883         * Makerules: Make sure directory exists before generating stamp file.
884         (BUILD_CFLAGS): Always refer to using $(..).
885         * manual/Makefile: Make sure directory exists before generating
886         stamp file.
887         (make-target-directory): Add macro definition.
888         * sysdeps/generic/Makefile: Make sure directory exists before
889         generating stamp file.
890
891         * Makefile (distribute): Add autolock.sh.  Reported by Fila Kolodny.
892
893 Tue Aug 27 10:06:22 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
894
895         When compiling in separate directory put objects into
896         subdirectories matching the source layout.
897         * Makeconfig (objpfx) [ifdef objdir]: Append $(subdir).
898         When looking for configparms try in $(common-objpfx).
899         Use $(common-objpfx)SUBDIR to find objects from other subdirectory
900         builds.
901         * Makerules: Add $(objpfx) to vpath list.
902         (make-dummy-dep): Use $(common-objpfx) to avoid creating dummy.d
903         more than once.  All uses in dependency lists changed.
904         (+make-deps): Make target directory.
905         (sed-remove-objpfx): Substitute $(common-objpfx).
906         (do-ar, build-extra-lib, $(common-objpfx)stub-$(subdir)): Use
907         $(objpfx) instead of $(objdir) for cd command.
908         (O%-lib): Always find libc relative to $(..).
909         (subdir-stamps): Collect stamp files from subdirs.
910         (common-mostlyclean): Remove stub file in $(common-objpfx).
911         * MakeTAGS ($P/siglist.pot): Find siglist.c in stdio-common.
912         * Rules (dep-dummy-lib): Use $(common-objpfx) to avoid creating to
913         more than once.
914         ($(objpfx)dummy.c, $(objpfx)empty.c): Change target name to use
915         $(common-objpfx).  All uses in dependency lists changed.
916         (generated): Prepend $(..) to names.
917         * bare/Makefile ($(objpfx)lib$(config-vendor).a): Remove $(objpfx)
918         from $@.
919         * nss/Makefile ($(objpfx)libnss_dns.so, $(objpfx)libnss_db.so):
920         Use $(common-objpfx) instead of $(..) in dependencies.
921         * sysdeps/mach/Makefile (mach-objpfx): Unconditionally use
922         $(common-objpfx) instead of $(..) and (objpfx).
923         * sysdeps/mach/hurd/Makefile (hurd-objpfx): Likewise.
924         (rpath-link): Likewise.
925         (rpcuserlibs): Likewise.
926         * sysdeps/unix/Makefile [$(subdir) = stdio-common]: Check for
927         errlist.c in $(objpfx), not $(common-objpfx).
928         ($(common-objpfx)s-proto.d): Special rule not covered by pattern
929         rule.
930         * sysdeps/unix/make-syscalls.sh: Make syscall rules depending on
931         s-proto.d in $(common-objpfx), not $(objpfx).
932
933 Thu Aug 29 17:45:49 1996  Ulrich Drepper  <drepper@cygnus.com>
934
935         * nss/nsswitch.c (nss_dlerror_run): Free returned error
936         string.
937
938 Thu Aug 29 15:53:33 1996  Ulrich Drepper  <drepper@cygnus.com>
939
940         * sysdeps/libm-ieee754/e_acoshl.c: New file. `long double'
941         implementation.
942         * sysdeps/libm-ieee754/e_atanhl.c: Likewise.
943         * sysdeps/libm-ieee754/e_remainderl.c: Likewise.
944         * sysdeps/libm-ieee754/e_scalbl.c: Likewise.
945         * sysdeps/libm-ieee754/s_asinhl.c: Likewise.
946         * sysdeps/libm-ieee754/s_cosl.c: Likewise.
947         * sysdeps/libm-ieee754/s_sinl.c: Likewise.
948         * sysdeps/libm-ieee754/s_tanhl.c: Likewise.
949         * sysdeps/libm-ieee754/s_tanl.c: Likewise.
950
951 Thu Aug 29 12:00:30 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
952         
953         * sysdeps/mach/hurd/setitimer.c (setitimer_locked): Correct
954         spelling error of _hurd_itimerval.
955
956         * mach/Makefile (MIGFLAGS-mach/mach4): Define variable.
957         * mach/Machrules (mig.uh, mig.__h): Include $(user-MIGFLAGS) and
958         $(MIGFLAGS-$*) here too, as well as in the code-generating MiG calls. 
959         
960         * hurd/hurdinline.c: Include "hurd.h" for function definitions too. 
961         
962         * stdio/fseek.c (fseek): Don't assume we know the file position;
963         other handles may have changed it.  So set STREAM.__offset to -1
964         before calling __stdio_check_offset to make sure we have a correct
965         value.
966
967 Thu Aug 29 00:28:08 1996  Ulrich Drepper  <drepper@cygnus.com>
968
969         * stdio-common/printf_fp.c (__printf_fp): Use default value '.' if
970         `decimal' char is 0.
971
972         * C-numeric.c (not_available): New constant.
973         (_nl_C_LC_NUMERIC): Use `not_available' for grouping value.
974
975         * nss/nsswitch.conf: Example configuration file.
976         * nss/db-Makefile: Example Makefile for generation of databases
977         for nss_db.
978         * nss/Makefile (distribute): Add nsswitch.conf and db-Makefile.
979
980 1996-08-28  Paul Eggert  <eggert@twinsun.com>
981
982         * C-messages.c (_nl_C_LC_MESSAGES): Set yesexpr to "^[yY]" and
983         noexpr to "^[nN]"; this conforms to POSIX.2.
984
985         * C-time.c (_nl_C_LC_TIME): Change %d to %e in d_t_format, to
986         conform to POSIX.2.
987
988 1996-08-28  Paul Eggert  <eggert@twinsun.com>
989
990         * C-monetary.c (not_available): New constant.
991         (_nl_C_LC_MONETARY): Set mon_decimal_point to "", and set
992         mon_grouping, int_frac_digits, frac_digits, p_cs_precedes,
993         p_sep_by_space, n_cs_precedes, n_sep_by_space, p_sign_posn, and
994         n_sign_posn to CHAR_MAX, as required by the POSIX Standard.
995
996 Wed Aug 28 23:12:28 1996  Ulrich Drepper  <drepper@cygnus.com>
997
998         * nss/nss_db/db-XXX.c: Correct function names.  They must be
999         `_nss_db_*' instead of `_nss_files_*'.
1000         (lookup): `parse_line' returns 1 if succesful.
1001         * nss/nss_files/files-service.c (servbyname): Key for database
1002         must also contain protocol names.
1003         (servbypt): Likewise.
1004         Test must also check for protocol.  Add `proto' argument.
1005
1006 Tue Aug 27 09:56:13 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1007
1008         * MakeTAGS ($P/subdirs.pot): Prefix all file names, not only the
1009         first one.
1010
1011 Tue Aug 27 17:45:21 1996  Ulrich Drepper  <drepper@cygnus.com>
1012
1013         * Makerules: Add some test for correct version of GNU Make.
1014
1015         * io/fcntl.h: Undo change from Mon Aug 26 22:22:17 1996.
1016         * sysdeps/unix/sysv/linux/fcntlbits.h: Place macros here instead.
1017
1018         * sysdeps/generic/dl-sysdep.c: Initialize break address to
1019         avoid overwriting last page (OK, Roland).
1020
1021 Tue Aug 27 16:20:37 1996  Ulrich Drepper  <drepper@cygnus.com>
1022
1023         * resolv/resolv.h: Update from BIND-4.9.5-T3A.
1024         * resolv/arpa/nameser.h: Likewise.
1025         * resolv/res_init.c: Likewise.
1026         * resolv/res_debug.c: Likewise.
1027         * resolv/res_mkquery.c: Likewise.
1028
1029 Tue Aug 27 15:47:04 1996  Ulrich Drepper  <drepper@cygnus.com>
1030
1031         * elf/dl-error.c (catch): Define errstring element not as const.
1032         (_dl_catch_error): ERRSTRING argument is not const pointer.
1033         Initialize *ERRSTRING and *OBJNAME separately.
1034         * elf/link.h: Change prototype for `_dl_catch_error'.
1035
1036         * elf/dl-load.c (_dl_map_object): Use separate variable for
1037         copied NAME to avoid `const' warning.
1038
1039         * elf/dlerror.c: Make `last_errstring' variable not const pointer.
1040
1041         * elf/rtld.c: Implement reading of /etc/ld.so.preload.  This
1042         provides preloading even for SUID binaries.
1043         Add some more casts to avoid signed<->unsigned warnings.
1044
1045 Tue Aug 27 15:40:28 1996  NIIBE Yutaka  <gniibe@mri.co.jp>
1046
1047         * posix/sys/types.h: Define loff_t.
1048         * sysdeps/unix/sysv/linux/gnu/types.h: Define __loff_t.
1049
1050 Mon Aug 26 22:22:17 1996  Ulrich Drepper  <drepper@cygnus.com>
1051
1052         * io/fcntl.h: Add definition for BSD F* macros.
1053
1054         * misc/init-misc.c (__init_misc): Make static.
1055         * misc/Makefile: Pass -fkeep-inline-functions flag for init-misc.c.
1056
1057         * configure.in: Add test for -fno-exception option of gcc.
1058         * config.make.in: Add definition of have-no-exceptions.
1059         * Makerules: Define no-exceptions based on have-no-exceptions.
1060         * csu/Makefile: When translating initfini.c pass $(no-exceptions).
1061         This is necessary for gcc >= ss-960816.
1062
1063 Mon Aug 26 17:16:48 1996  Richard Henderson  <rth@tamu.edu>
1064
1065         * sysdeps/alpha/dl-machine.h: Clear startup flag.
1066
1067 Fri Aug 16 21:17:50 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1068
1069         * Makerules (o-iterator-doit): Simplify reference to autolock
1070         script.
1071
1072 Sat Aug 24 15:27:41 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1073
1074         * sysdeps/mach/hurd/getcwd.c
1075         (_hurd_canonicalize_directory_name_internal): After resizing the
1076         buffer move the current contents to the end.  Correctly relocate
1077         file name pointer to upper half of the buffer.
1078
1079 Mon Aug 26 15:49:59 1996  Ulrich Drepper  <drepper@cygnus.com>
1080
1081         * rtld.c (dl_main): Remove code to call ld.so initializer.  This
1082         was introduced for compatibility with Linux ld.so and would not
1083         be used anymore.  Now we don't have any good values to use as the
1084         parameters to the initializer so simply remove it.
1085
1086 Sun Aug 25 18:25:52 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1087
1088         * gmon/gmon.c (ERR): Don't write the terminating NUL.
1089
1090         * sysdeps/posix/profil.c (profil): Disable the profiling timer at
1091         first.
1092         (profil_count): Use 64 bit arithmethic to avoid overflow.
1093
1094         * sysdeps/generic/machine-gmon.h (MCOUNT): Fix argument order.
1095
1096 Mon Aug 26 16:31:33 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
1097
1098         * sysdeps/mach/hurd/setitimer.c (setitimer_locked): Tolerate NEW
1099         being null; in that case don't touch the timer at all (but do
1100         return something in OLD if necessary).
1101
1102 Mon Aug 26 13:35:16 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
1103
1104         * sysdeps/mach/hurd/i386/init-first.c (__libc_multiple_libcs): New
1105         variable.
1106         * sysdeps/i386/init-first.c: Likewise.
1107         * sysdeps/stub/init-first.c: Likewise.
1108
1109 Mon Aug 26 02:01:37 1996  Ulrich Drepper  <drepper@cygnus.com>
1110
1111         * elf/dl-open.c (_dl_open): Call library initializer with
1112         correct command line arguments and environment information.
1113         * elf/rtld.c (dl_main): Provide arguments to initializer of
1114         ld.so itself.
1115
1116 Sun Aug 25 19:15:46 1996  Ulrich Drepper  <drepper@cygnus.com>
1117
1118         * shadow/Makefile (routines): Add lckpwdf.
1119         * shadow/lckpwdf.c: New file.
1120
1121         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Force
1122         argument `cw' to be placed in memory.  Patch by Torbjorn Granlund.
1123
1124 Sun Aug 25 12:53:37 1996  Ulrich Drepper  <drepper@cygnus.com>
1125
1126         * configure.in: Add definition for `__eh_pc' and `__throw' in
1127         test for --no-whole-archive.  The compiler generates dependencies
1128         for this but none of the standard librares and startup files
1129         are used.  Necessary for gcc >= ss-960816.
1130
1131 Sun Aug 25 01:31:33 1996  Ulrich Drepper  <drepper@cygnus.com>
1132
1133         * elf/dl-error.c (_dl_signal_error): If error is catched, malloc
1134         return string since string might be on stack.
1135         * elf/dl-lookup.c (_dl_lookup_symbol): Undo change of
1136         Wed Aug 21 10:14:59 1996.
1137         * elf/dlerror.c (dlerror): Free error string after printing.
1138         (_dlerror_run): If error string was not printed since last error
1139         free string.
1140         * rtld.c (dl_main): Free error string in case of error.
1141
1142 Sat Aug 24 03:16:47 1996  Ulrich Drepper  <drepper@cygnus.com>
1143
1144         * misc/syslog.c (vsyslog): Don't use `localtime' or `gmtime' since
1145         this changes the global state for `localtime' and `gmtime'.  Use
1146         `__localtime_r'/`__gmtime_r' instead.
1147         * resolv/res_debug.c (__p_secstodate): Likewise.
1148         * sysdeps/generic/ftime.c: Likewise.
1149         * sysdeps/posix/gettimeofday.c: Likewise.
1150         Reported by Paul Eggert.
1151
1152         * time/gmtime.c: De-ANSI-fy.
1153         * time/strftime.c: Don't call non-reentrant functions which change
1154         state.
1155
1156 Wed Aug 21 10:14:59 1996  Richard Henderson  <rth@tamu.edu>
1157
1158         * elf/dl-lookup.c (_dl_lookup_symbol): Malloc the error string rather
1159         than putting it on the stack.
1160
1161 Wed Aug 21 10:12:42 1996  Richard Henderson  <rth@tamu.edu>
1162
1163         * elf/rtld.c (dl_main): When looking up symbols in response to --list,
1164         don't find .plt entries.
1165
1166 Mon Aug 19 23:18:12 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1167
1168         * sysdeps/m68k/dl-machine.h (RTLD_START): Optimize clearing
1169         _dl_starting_up.
1170
1171 Tue Aug 20 17:42:10 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1172
1173         * stdio/linewrap.c (line_wrap_stream): Initialize D->seek.
1174
1175 Sat Aug 17 12:19:37 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1176
1177         * login/pututline_r.c (__pututline_r): Fix handling of case where
1178         getutid_r() fails with ESRCH.  Reported by Miquel van Smoorenburg.
1179
1180 Wed Aug 14 14:10:54 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1181
1182         * sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Change entry
1183         for "Jensen" so _bus_base() returns 0 on that platform.  Use
1184         _bus_base_sparse() to determine base address of sparse memory.
1185
1186         * sysdeps/unix/sysv/linux/sys/io.h: Enclose #include <asm/io.h>
1187         and declarations in __BEGIN_DECLS/__END_DECLS.
1188
1189 Sun Aug 18 13:37:09 1996  Ulrich Drepper  <drepper@cygnus.com>
1190
1191         * err.h: New file.  Wrapper around misc/err.h.
1192
1193         Correct solution of multiple initialization problem by
1194         Roland McGrath.
1195         * csu/initfini.c: Remove global variable __libc_is_static.
1196         * elf/rtld.c: Introduce new global variable _dl_starting_up.
1197         It's nonzero during the startup.
1198         * elf/dl-open.c (_dl_open): When _dl_start function is not
1199         available (i.e., if in static libc) set `__libc_multiple_libcs'
1200         to nonzero value.
1201         * sysdeps/unix/sysv/linux/init-first.c (__libc_multiple_libc):
1202         New global variable.
1203         (init): Undo change of Fri Aug  2 03:12:40 1996.
1204         Initialize `__libc_multiple_libcs' to nonzero only if this is
1205         a shared lib called from a statically linked program and don't
1206         call `personality' and `setfpucw' in this case either.
1207         * sysdeps/generic/sbrk.c: Undo change of Fri Aug  2 03:12:40 1996.
1208         Don't call brk(0) until `__libc_multiple_libcs' is nonzero.
1209         * sysdeps/i386/dl-machine.h (RTLD_START): Clear _dl_starting_up
1210         before jumping to user code.
1211         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
1212
1213 Fri Aug 16 04:59:01 1996  Ulrich Drepper  <drepper@cygnus.com>
1214
1215         * sysdeps/unix/sysv/linux/init-first.c: Remove hack from
1216         Thu Aug  8 12:40:20 1996.
1217         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = csu]: Use
1218         -fkeep-inline-functions flag instead.
1219
1220 Fri Aug 16 16:11:25 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>
1221
1222         * nss/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Treat
1223         EPFNOSUPPORT and EAFNOSUPPORT as implying NSS_STATUS_UNAVAIL just
1224         like ECONNREFUSED already does.
1225         (_nss_dns_gethostbyaddr_r): Likewise.
1226         * nss/nss_dns/dns-network.c (_nss_dns_getnetbyname_r): Likewise.
1227         (_nss_dns_getnetbyaddr_r): Likewise.
1228
1229         * sysdeps/mach/hurd/socket.c (socket): For message transmission
1230         and RPC errors that indicate that the socket server is not really
1231         present and able to do its job, turn the error into EPFNOSUPPORT.
1232
1233 Fri Aug 16 01:24:33 1996  Ulrich Drepper  <drepper@cygnus.com>
1234
1235         * inet/ruserpass.c (userpass): Allocate buffer for .netrc file
1236         name dynamically.  Reported by Alan Cox.
1237         Uncomment warnings and mark as translatable.
1238
1239         * time/strftime (strftime): Add implementation for %s and %z
1240         format.  Change behaviour for unknown format character: now
1241         simply print it.  This matches the behaviour of printf.
1242         Reported by Jim Meyering.
1243         * manual/time.texi: Document all formats and flags of strftime.
1244
1245 Thu Aug 15 18:02:51 1996  Ulrich Drepper  <drepper@cygnus.com>
1246
1247         * elf/rtld.c (dl_main): Loaded object has type lt_executable,
1248         not lt_library.
1249
1250         * misc/sys/select.h: Define fd_set using typedef, not #define.
1251         Proposed by David Mosberger-Tang.
1252
1253 Thu Aug 15 12:48:21 1996  Ulrich Drepper  <drepper@cygnus.com>
1254
1255         * po/header.pot: Use real description line.
1256
1257 Thu Aug 15 04:42:44 1996  Ulrich Drepper  <drepper@cygnus.com>
1258
1259         * elf/rtld.c (dl_main): When started with --verify prevent
1260         any warning.  Just exit with an error.
1261         * elf/ldd.sh.in: Don't run given object directly.  This fails for
1262         libraries.  Instead use $RTLD again.
1263
1264 Thu Aug 15 02:08:59 1996  Ulrich Drepper  <drepper@cygnus.com>
1265
1266         * manual/nss.texi: New file.  Document NSS.
1267         * manual/nsswitch.texi: New file.  Example configuration.
1268
1269         * manual/string.texi: Document stpncpy, strdupa, and strndupa.
1270         * manual/example/strdupa.c: New file.  Example for strdupa.
1271
1272 Wed Aug 14 21:36:16 1996  Ulrich Drepper  <drepper@cygnus.com>
1273
1274         * stdlib/strtod.c (STRTOD): Correct assertion about size of
1275         wint_t and wchar_t.  Reported by David Mosberger-Tang.
1276
1277 Mon Aug 12 22:40:16 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1278
1279         * elf/dl-lookup.c (_dl_lookup_symbol): Remove fifth parameter
1280         RELOC_ADDR and make NOPLT a set of flags.  All callers
1281         changed.  Delete condition that checks for resolving to the
1282         location being filled in.  Add condition to skip the
1283         executable's symbols if requested.
1284         * elf/link.h: Change declaration of _dl_lookup_symbol
1285         accordingly.
1286         (DL_LOOKUP_NOEXEC, DL_LOOKUP_NOPLT): New definitions.
1287         * elf/dl-reloc.c (RESOLVE): Remove second parameter and rename
1288         NOPLT to FLAGS.
1289         * elf/dl-runtime.c (RESOLVE): Likewise.
1290         * elf/rtld.c (RESOLVE): Likewise.
1291         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Pass
1292         DL_LOOKUP_NOEXEC as second argument to the RESOLVE macro if
1293         processing a copy reloc, DL_LOOKUP_NOPLT for a jump slot
1294         reloc, zero otherwise.
1295         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
1296         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
1297         * sysdeps/mips/dl-machine.h (elf_machine_rel): Likewise.
1298
1299 Wed Aug 14 17:57:08 1996  Ulrich Drepper  <drepper@cygnus.com>
1300
1301         * MakeTAGS: Clean up use of --omit-header and -n for xgettext.
1302         * po/header.pot: Add empty line at end.
1303
1304 Sun Aug 11 13:45:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1305
1306         * MakeTAGS (all-pot): Remove $P/errlist.pot, all error messages
1307         are now in $P/stdio-common.pot.
1308         (XGETTEXTFLAGS-errlist.pot): Variable removed.
1309
1310 Mon Aug 12 19:25:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1311
1312         * Makerules (do-ar, o-iterator-doit): Compute path to autolock
1313         script at run time, not configure time.
1314         * config.make.in, configure.in: Undo previous change.
1315
1316 Wed Aug 14 13:20:02 1996  Ulrich Drepper  <drepper@cygnus.com>
1317
1318         * sysdeps/unix/sysv/linux/i386/close.S: Push return value of thread
1319         on stack as argument for `_exit'.  Reported by Andreas Schwab.
1320
1321 Mon Aug 12 19:36:25 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1322
1323         * sysdeps/unix/sysv/linux/m68k/clone.S: New file.
1324
1325 Wed Aug 14 04:22:35 1996  Richard Henderson  <rth@tamu.edu>
1326
1327         * elf/dl-load.c (_dl_map_object): Save name in malloced memory.
1328         (_dl_map_object_from_fd): Free name on error.
1329
1330 Wed Aug 14 13:00:09 1996  Ulrich Drepper  <drepper@cygnus.com>
1331
1332         * string/strdup.c: Use result of memcpy to avoid reloading.
1333
1334 Tue Aug 13 00:55:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1335
1336         * shadow/sgetspent_r.c (__sgetspent_r): Copy string to buffer, not
1337         the other way round.
1338
1339 Tue Aug 13 20:51:21 1996  Ulrich Drepper  <drepper@cygnus.com>
1340
1341         * stdlib/canonicalize.c (canonicalize): Add cast to prevent
1342         warning.
1343
1344         * Makerules (o-iterator-doit): Use autolock.sh when running ranlib.
1345
1346 Tue Aug 13 18:26:45 1996  Ulrich Drepper  <drepper@cygnus.com>
1347
1348         * nss/nsswitch.c (__nss_configure_lookup): Use fact that list is
1349         sorted.
1350
1351         Update from bind-4.9.5-T1A.
1352         * resolv/Makefile (libresolv-routines): Add base64, inet_net_ntop,
1353         inet_net_pton, inet_net.
1354
1355         * resolv/gethnamaddr.c: Include <sys/types.h>.
1356         * resolv/getnetnamadr.c: Likewise.
1357         * resolv/herror.c: Likewise.
1358         * resolv/inet_addr.c: Likewise.
1359         * resolv/nsap_addr.c: Likewise.
1360         * resolv/res_comp.c: Likewise.
1361         * resolv/res_data.c: Likewise.
1362         * resolv/res_init.c: Likewise.
1363         * resolv/res_mkquery.c: Likewise.
1364         * resolv/res_query.c: Likewise.
1365         * resolv/res_send.c: Likewise.
1366
1367         * resolv/gethnamaddr.c [! SPRINTF_CHAR] (SPRINTF): Cast return
1368         value of sprintf.
1369         * resolv/inet_ntop.c: Likewise.
1370
1371         * resolv/gethnamaddr.c [BSD]: Include <stdlib.h>.
1372         Remove prototype of gethostbyname_ipv4.
1373
1374         * resolv/inet_ntop.c, resolv/inet_pton.c: Use ISO C `mem*'
1375         functions instead of BSD `b*' functions.
1376
1377         * resolv/nsap_addr.c: Add copyright message.
1378
1379         * resolv/res_comp.c: Remove comment explaining label format.
1380         (res_mailok): Correct check.
1381
1382         * resolv/res_debug: Include missing headers.
1383         (__fp_nquery): Handle `unused', `ad', and `cd' bits.
1384         (__p_fqnname): New function to print FQDN from compressed name.
1385         (__p_rr): Use __p_fqnname.  Correct printing of ".  Handle T_TXT
1386         correctly.  Add handling of T_KEY and T_SIG.
1387         Handle class and type names by using name arrays instead of
1388         explicit `switch'es.
1389         (__sym_ston, __sym_ntos, __sym_ntop): New functions to use arrays.
1390         (__dn_count_labels, __p_secstodate): New functions.
1391
1392         * resolv/resolv.h (__RES): Update version number.
1393         (res_sym): New type.
1394         Add #defines for new functions.
1395         Declare sym_ntos, sym_ntop, b64_ntop, b64_pton, __p_fqnname,
1396         __p_secstodate, dn_count_labels.
1397
1398         * resolv/arpa/nameser.h (__BIND): Update version number.
1399         Add KEYFLAG_* and ALGORITHM_* symbols.
1400         (HEADER): Add `ad' and `cd' flags.
1401
1402         * inet/ient.h: Add prototypes for inet_neta, inet_net_ntop,
1403         and inet_net_pton.
1404
1405         * manual/maint.texi: Document that we use bind-4.9.5.
1406         * INSTALL: Ditto.
1407
1408 Mon Aug 12 19:03:22 1996  Thomas Bushnell n/BSG  <thomas@psilocin.gnu.ai.mit.edu>
1409
1410         * sysdeps/generic/gnu/types.h: Declare __fd_mask as `unsigned long'.
1411
1412         * mach/Makefile (mach/mach_host.uh): Depend on
1413         $(objpfx)/mach-syscalls.mk.
1414         ($(objpfx)mach-shortcuts.h): Depend on $(objpfx)mach/mach_host.h.
1415         (This fixes a make loop; thanks to Marcus Daniels
1416         <marcus@sysc.pdx.edu> for the patch.)
1417
1418 Mon Aug 12 16:41:52 1996  Thomas Bushnell n/BSG  <thomas@gnu.ai.mit.edu>
1419
1420         * io/getwd.c (getwd) [! PATH_MAX]: Don't assume that the user's
1421         buffer is any longer than the amount necessary to hold the
1422         filename; the Hurd getcwd uses the *entire* contents of the
1423         buffer, however long it is specified to be.
1424
1425 Mon Aug 12 04:33:09 1996  Ulrich Drepper  <drepper@cygnus.com>
1426
1427         * nss/nsswitch.c (__nss_database_lookup): Always release locks
1428         before returning.  Reported by Miles Bader.
1429
1430 Mon Aug 12 03:31:58 1996  Ulrich Drepper  <drepper@cygnus.com>
1431
1432         * nss/nsswitch.c (__nss_configure_lookup):  New function.
1433         Allows to specify services.
1434         * nss/XXX-lookup.h: Rename database variable and make global.
1435         * nss/databases.def: New file.  Real names of all databases.
1436
1437         * nss/nss.h: New file.  Contains declaration useful for users
1438         and service developers.
1439         * nss/nsswitch.h: Move some declarations to nss/nss.h.
1440         * nss.h: New file.  Wrapper around nss/nss.h.
1441
1442         * nss/Makefile (headers): Add nss.h.
1443         (distributes): Add databases.def.
1444
1445 Sun Aug 11 16:19:42 1996  Ulrich Drepper  <drepper@cygnus.com>
1446
1447         Help the poor people with fast machines by making sure only
1448         one `ar' commands works on the library.
1449         * autolock.sh: New file.  Written by Tom Tromey.
1450         * Makerules (do-ar): Call autolock.sh shell script instead of
1451         directly using `ar'.
1452         * config.make.in: Make configuration variable AUTOLOCK which
1453         gets initialized by configure.
1454         * configure.in: Define variable AUTOLOCK to point to autolock.sh
1455         script and mark it to substitute.
1456
1457         * string/Makefile: Add -fno-builtin for tst-strlen.c, too.
1458
1459         * sysdeps/generic/sbrk.c (__sbrk):  Get kernel brk address
1460         always only if in static libc or if statically linked program
1461         uses libc.so.
1462
1463         * sysdeps/generic/sbrk.c (__sbrk):  Get kernel brk address
1464         always only if in static libc or if statically linked program
1465         uses libc.so.
1466
1467 Sun Aug 11 01:12:38 1996  Richard Henderson  <rth@tamu.edu>
1468
1469         * sysdeps/alpha/dl-machine.h (elf_alpha_fix_plt): Optimize LD_BIND_NOW
1470         startup by moving Icache flush from here ...
1471         (ELF_MACHINE_RUNTIME_TRAMPOLINE): ... to here.
1472         (ELF_MACHINE_USER_ADDRESS_MASK): Delete; it is unused.
1473
1474         * sysdeps/alpha/divrem.h: Update comment to reflect the actual
1475         calling conventions.  The code is already correct.
1476
1477 Sun Aug 11 01:06:42 1996  Richard Henderson  <rth@tamu.edu>
1478
1479         * string/Makefile: Compile tester with -fno-builtin as we want to
1480         test our implementations, not gcc's.
1481
1482 Sat Aug 10 13:17:27 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1483
1484         * shadow.h: New file.
1485
1486         * sysdeps/unix/sysv/linux/netinet/in.h: Move
1487         __BEGIN_DECLS/__END_DECLS up so ntohl() et al are bracketed as
1488         well.
1489
1490         * socket/sys/socket.h [__cplusplus]: Use old-style __SOCKADDR_ARG.
1491         g++ 2.7.2 (and earlier) has no transparent unions support.
1492
1493 Fri Aug  9 18:50:06 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1494
1495         * sysdeps/unix/sysv/linux/alpha/ioperm.c (_bus_base_sparse): New
1496         function to determine the base address of sparse bus memory.
1497         (APECS_*): Rename to CIA_*.
1498         (APECS_SPARSE_MEM, CIA_SPARSE_MEM): New macros.
1499         (platform): Add sparse_bus_memory_base member and initialize.
1500         (sparse_bus_memory_base): New variable.
1501
1502 Tue Aug  6 10:23:18 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1503
1504         * sysdeps/posix/ttyname_r.c (ttyname_r),
1505         sysdeps/posix/ttyname.c (ttyname): Return -1/NULL if
1506         !__isatty(fd) (POSIX.1 says so.)
1507
1508         * sysdeps/unix/getlogin.c (getlogin): Fix to check fd 0 only.
1509         This is not a gross hack, after all---for compatibility,
1510         getlogin() really should check fd 0 only and not try to base its
1511         operation on the controlling tty.
1512
1513 Wed Jul 17 10:54:20 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1514
1515         * sysdeps/unix/getlogin.c (getlogin): Add static variable NAME,
1516         change utmp_data from static to auto.
1517
1518 Sun Aug 11 02:56:08 1996  Ulrich Drepper  <drepper@cygnus.com>
1519
1520         * posix/unistd.h [__USE_MISC]: Add prototype for `nice'.
1521         Reported by David Mosberger-Tang.
1522
1523 Sat Aug 10 02:05:28 1996  Richard Henderson  <richard@twiddle.tamu.edu>
1524
1525         * sysdeps/libm-ieee754/s_isnan.c [NO_LONG_DOUBLE]: Add strong
1526         alias to `__isnanl'.
1527
1528 Fri Aug  9 17:38:58 1996  Ulrich Drepper  <drepper@cygnus.com>
1529
1530         * sysdeps/unix/sysv/linux/sys/timex.h: Include <sys/time.h> to
1531         get `struct timeval'.
1532         * sysdeps/unix/sysv/linux/sys/acct.h: Get time_t from <time.h>.
1533         * sysdeps/unix/sysv/linux/sys/module.h: Get size_t from <stddef.h>.
1534         * sysdeps/unix/sysv/linux/sys/io.h: Get definition of __P.
1535         * sysdeps/unix/sysv/linux/sys/klog.h: Likewise.
1536         * gmon/sys/gmon.h: Include <sys/types.h> to get u_long.
1537         * sysdeps/unix/sysv/linux/direntry.h: Complete types in
1538         <linux/dirent.h>.
1539         * io/fts.h: Include <sys/types.h> to get dev_t.
1540         Reported by Matthias Urlichs.
1541
1542         * sysdeps/posix/tempname.c [USE_IN_LIBIO]: Don't clear
1543         _IO_file_flags.  It's the same as _flags.
1544         Reported by Miquel van Smoorenburg <miquels@Q.cistron.nl>.
1545
1546 Wed Aug  7 19:38:47 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1547
1548         * sysdeps/unix/sysv/linux/m68k/resourcebits.h: Add RLIMIT_AS.
1549
1550 Thu Aug  8 16:17:38 1996  Ulrich Drepper  <drepper@cygnus.com>
1551
1552         * pwd/getpwent.c: Define BUFLEN from NSS_BUFLEN_PASSWD.
1553         * pwd/getpwent_r.c: Likewise.
1554         * pwd/getpwnam.c: Likewise.
1555         * pwd/getpwnam_r.c: Likewise.
1556         * pwd/getpwuid.c: Likewise.
1557         * pwd/getpwuid_r.c: Likewise.
1558
1559         * grp/getgrent.c: Define BUFLEN from NSS_BUFLEN_GROUP.
1560         * grp/getgrent_r.c: Likewise.
1561         * grp/getgrgid.c: Likewise.
1562         * grp/getgrgid_r.c: Likewise.
1563         * grp/getgrnam.c: Likewise.
1564
1565         * pwd/fgetpwent_r.c: New file.  Reentrant version of fgetpwent.
1566         * pwd/fgetpwent.c: Rewrite to use fgetpwent_r.
1567         * pwd/Makefile (routines): Add fgetpwent_r.
1568         * pwd/pwd.h: Add prototypes for __fgetpwent_r and fgetpwent_r.
1569
1570         * grp/fgetgrent_r.c: New file.  Reentrant version of fgetgrent.
1571         * grp/fgetgrent.c: Rewrite to use fgetgrent_r.
1572         * grp/Makefile (routines): Add fgetgrent_r.
1573         * grp/grp.h: Add prototypes for __fgetgrent_r and fgetgrent_r.
1574
1575         Implement shadow password lookup functions.  This is no complete
1576         shadow password suite.
1577         * shadow/Makefile: New file.
1578         * shadow/fgetspent.c: New file.
1579         * shadow/fgetspent_r.c: New file.
1580         * shadow/getspent.c: New file.
1581         * shadow/getspent_r.c: New file.
1582         * shadow/getspnam.c: New file.
1583         * shadow/getspnam_r.c: New file.
1584         * shadow/putspent.c: New file.
1585         * shadow/sgetspent.c: New file.
1586         * shadow/sgetspent_r.c: New file.
1587         * shadow/shadow.h: New file.
1588         * shadow/spwd-lookup.c: New file.
1589         * shadow/nss_files/files-spwd.c: New file.
1590
1591 Thu Aug  8 13:33:45 1996  Ulrich Drepper  <drepper@cygnus.com>
1592
1593         * sysdeps/unix/sysv/linux/ftime.c: New file.  Available system
1594         call is only a stub.
1595         Reported by Matthias Urlichs.
1596
1597         * Makeconfig [!default_cflags]: Change default value from `-g'
1598         to `-g -O'.
1599
1600         * configure.in: Recognize i686.
1601         * sysdeps/i386/i686/Implies: Default on i586 optimized code.
1602
1603 Thu Aug  8 12:40:20 1996  Matthias Urlichs  <smurf@smurf.noris.de>
1604
1605         * Makeconfig [$(build-omitfp) == yes]: Add to CFLAGS-.so
1606         value of CFLAGS-.o, not CFLAGS-o.
1607
1608         * sysdeps/unix/sysv/linux/init-first.c (init): Add volatile
1609         pointer to ourself.  Otherwise `gcc -O3' optimized init away.
1610
1611 Thu Aug  8 01:41:43 1996  Ulrich Drepper  <drepper@cygnus.com>
1612
1613         * elf/Makefile: Undo change of Tue Aug  6 14:27:11 1996.
1614         * elf/dl-support: Add definition of `_dl_sysdep_read_whole_file'.
1615
1616 Thu Aug  8 01:15:59 1996  Ulrich Drepper  <drepper@cygnus.com>
1617
1618         * sysdeps/i386/fpu_control.h (_FPU_DEFAULT, _FPU_IEEE): Set
1619         to 0x137f to allow long double operations.
1620
1621 Sun Aug  4 13:12:05 1996  Richard Henderson  <rth@tamu.edu>
1622
1623         Bug Fixes:
1624
1625         * nss/nsswitch.c (_res): Remove redundant variable definition.
1626         The real one is in resolve/res_init.c, and having both prevents
1627         using -fno-common when building the shared library.
1628         * sunrpc/rpc_prot.c (_null_auth): Same.  Original is in rpc_common.c.
1629
1630         * sysdeps/unix/sysv/linux/alpha/brk.S: When PIC, define __curbrk as
1631         a .bss object not a COMMON symbol.
1632
1633         * sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S: Must load
1634         $gp before referencing __sigsetjmp symbol.  Retain LITUSE for same.
1635
1636         Optimizations:
1637
1638         * sysdeps/alpha/strlen.S: Rearrange first-word setup and thense the
1639         main loop for better dual-issue on EV5.  Rearrange binary search to
1640         pipeline better and trim one instruction.
1641
1642         Cosmetic Changes:
1643
1644         * time/localtime.c (localtime_r): Move lock declaration back next to
1645         the comment where it was before the 960724 change.
1646
1647         * INSTALL, manual/maint.texi: alpha-gnu-linux -> alpha-ANYTHING-linux.
1648         The second word is supposed to be the hardware manufacturer.
1649
1650         * sysdeps/alpha/_mcount.S: Retain LITUSE for __mcount.
1651         * sysdeps/alpha/setjmp.S: Retain LITUSE for __sigsetjmp_aux.
1652
1653         * sysdeps/alpha/divrem.h: More local labels, retain LITUSE for _mcount.
1654
1655         * sysdeps/alpha/alphaev5/add_n.S, sysdeps/alpha/alphaev5/lshift.S,
1656         sysdeps/alpha/alphaev5/rshift.S, sysdeps/alpha/alphaev5/sub_n.S:
1657         Same cleanups as with EV4 GMP stuff.
1658
1659 Tue Jul 25 03:30:56 1996  Richard Henderson  <rth@tamu.edu>
1660
1661         * sysdeps/unix/sysv/linux/Makefile [misc] (sysdep_routines): Add clone.
1662         * sysdeps/unix/sysv/linux/alpha/clone.S: New file.
1663         * sysdeps/unix/sysv/linux/i386/clone.S: New file.
1664
1665 Sun Aug  4 00:12:41 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1666
1667         * sysdeps/unix/sysv/linux/gnu/types.h: Declare __fd_mask as
1668         `unsigned long'.
1669
1670         * misc/sys/select.h: Declare fd_mask as alias of __fd_mask.
1671
1672 Sat Aug  3 16:20:02 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1673
1674         * sysdeps/unix/sysv/linux/alpha/ioperm.c (platform): Add entry for
1675         Mikasa.
1676
1677         * socket/sys/socket.h (send, __send, sendto): Declare buffer
1678         pointer as __const.
1679
1680         * string/tester.c (main): Test stpncpy.
1681
1682         * sysdeps/generic/stpncpy.c (__stpncpy): Fix so it works without
1683         segfault when called with an N that is not a multiple of four and
1684         src[N-1]=='\0'.
1685
1686         * misc/syslog.c (LogType): New variable.
1687         (openlog): If connect() with SOCK_DGRAM fails with EPROTOTYPE,
1688         try again with SOCK_STREAM (the Linux syslogd uses a socket of the
1689         latter type).
1690         (vsyslog): When LogType==SOCK_STREAM, also send ASCII NUL
1691         terminator as a record-delimiter.  If __send(LogFile) fails,
1692         call closelog() so logfile gets re-opened next time.
1693
1694 Wed Aug  7 15:15:14 1996  Ulrich Drepper  <drepper@cygnus.com>
1695
1696         * elf/dl-open (_dl_open): Add cast to avoid warning.
1697
1698         * manual/memory.texi: Improve some examples to give readers better
1699         advice: Use `stpcpy' instead of `strcat' if possible.
1700         * manual/string.texi: Document `strtok_r' and `strtok'.
1701
1702         * sunrpc/Makefile: Move `+gccwarn' definition before inclusion
1703         of Makeconfig.
1704         [$(cross-compiling)=no]: Change test before making librpcsvc
1705         to this from $(cross-compile).
1706         Reported by Andreas Schwab.
1707
1708 Tue Aug  6 14:27:11 1996  Ulrich Drepper  <drepper@cygnus.com>
1709
1710         * elf/Makefile (routines): Move dl-sysdep to here...
1711         (rtld-routines): ...from here.  This should make static linking
1712         work again.
1713
1714         * locale/setlocale.c: Add local variable `lock' and add code to
1715         `setlocale' to avoid simultaneous changing of global data.
1716
1717         * catgets/catgets.c (catopen): Use `__strdup' instead of `strdup'.
1718         * catgets/open_catalog (__open_catalog): Use `__stpcpy', `__open',
1719         `__fstat', `__read', `__mmap', `__munmap' and `__close' instead
1720         of unprotected names.
1721
1722 Tue Aug  6 01:13:56 1996  Ulrich Drepper  <drepper@cygnus.com>
1723
1724         Clean name space according to ISO C, ISO C/Amd 1, and POSIX.1.
1725         This requires to rename several functions to use __ protected
1726         names.
1727         * dirent/dirent.h: Add prototypes of __opendir, __closedir,
1728         and __readdir.
1729         * sysdeps/mach/hurd/closedir.c: Prepend function name with __
1730         and make old name a weak alias.
1731         * sysdeps/mach/hurd/getrlimit.c: Likewise.
1732         * sysdeps/mach/hurd/opendir.c: Likewise.
1733         * sysdeps/mach/hurd/readdir.c: Likewise.
1734         * sysdeps/stub/closedir.c: Likewise.
1735         * sysdeps/stub/opendir.c: Likewise.
1736         * sysdeps/stub/readdir.c: Likewise.
1737         * sysdeps/unix/closedir.c: Likewise.
1738         * sysdeps/unix/opendir.c: Likewise.
1739         * sysdeps/unix/readdir.c: Likewise.
1740
1741         * sysdeps/unix/opendir.c: Call `__fcntl' instead `fcntl'.
1742
1743         * sysdeps/posix/getcwd.c: Call `__opendir', `__readdir',
1744         `__closedir' instead of unprotected names.
1745
1746         * libio/filedoalloc.c (_IO_file_doallocate): Call `__isatty'
1747         instead of `isatty' since later is not part of ISO C.
1748         * libio/fileops.c (_IO_file_fopen): Call `__open' instead of
1749         `open' since later is not part of ISO C.
1750
1751         * login/endutent.c (endutent): Call `__endutent_r', not
1752         `endutent_r'.
1753         * login/endutent_r.c: Rename defined function to `__endutent_r',
1754         make `endutent_r' weak alias.
1755         * login/getutent.c (getutent): Call `__getutent_r', not
1756         `getutent_r'.
1757         * login/getutid.c (getutid): Call `__getutid_r', not `getutid_r'.
1758         * login/getutid_r.c: Rename defined function to `__getutent_r',
1759         make `getutent_r' weak alias.
1760         * login/getutline.c (getutline): Call `__getutline_r', not
1761         `getutline_r'.
1762         * login/getutline_r.c: Rename defined function to `__getutline_r',
1763         make `getutline_r' weak alias.
1764         * login/pututline_r.c: Rename defined function to `__pututline_r',
1765         make `pututline_r' weak alias.
1766         * login/setutent.c (setutent): Call `__setutline_r', not
1767         `setutline_r'.
1768         * login/setutent_r.c: Rename defined function to `__setutline_r',
1769         make `setutline_r' weak alias.
1770         Rename `utmpname' to `__utmpname' and make former weak alias.
1771         (__utmpname): Call `__strdup', not `strdup'.
1772         * login/utmp.h: Add prototypes for name space clean reentrant
1773         versions.
1774         * sysdeps/unix/getlogin.c: Call `__ttyname_r', `__setutent_r',
1775         and `__endutent_r' instead of unprotected names.
1776
1777         * math/math.h: Add prototype for `__matherr'.
1778         * sysdeps/libm-ieee754/k_standard.c: Call `__matherr' instead
1779         of `matherr'.
1780
1781         * nss/getXXbyYY.c: Call __ protected reentrant function.
1782         * nss/getXXent.c: Likewise.
1783         * nss/getXXbyYY_r.c: Define `get*' function with __ protected
1784         name.  Make usual name a weak alias.
1785         * nss/getXXent_r.c: Likewise.
1786
1787         * posix/unistd.h: Add prototype for `__ttyname_r'.
1788         * sysdeps/posix/ttyname_r.c: Rename function to `__ttyname_r'
1789         and make `ttyname_r' a weak alias.
1790
1791         * resource/sys/resource.h: Add prototype for `__getrlimit'.
1792         * sysdeps/stub/getrlimit.c: Prepend function name with __
1793         and make old name a weak alias.
1794         * sysdeps/unix/syscalls.list: Rename system call to `__getrlimit'
1795         and make `getrlimit' weak alias.
1796
1797         * libc/stdio/stdio.h: Add prototype for `__vscanf'.
1798         * libc/stdio/vscanf.c: De-ANSI-fy.
1799         Rename function to `__vscanf' and make `vscanf' a weak alias.
1800         * stdio-common/scanf.c (scanf): Use _IO_vscanf/__vscanf instead
1801         of `vscanf'.
1802
1803         * stdio-common/reg-printf.c: De-ANSI-fy.
1804         Rename function to `__register_printf_function' and make
1805         `register_printf_function' weak alias.
1806
1807         * stdio-common/vfprintf.c: Call `__wcsrtombs' instead of
1808         `wcsrtombs'.
1809
1810         * stdlib/mbstowcs.c: Call `__mbsrtowcs' instead of `mbsrtowcs'.
1811         * stdlib/mbtowc.c: Call `__mbrtowc' instead of `mbrtowc'.
1812         * stdlib/wcstombs.c: Call `__wcsrtombs' instead of `wcsrtombs'.
1813         * stdlib/wctomb.c: Call `__wcrtomb' instead of `wcrtomb'.
1814         * wcsmbs/mbrtowc.c: Prepend function name with __ and make old
1815         name a weak alias.
1816         * wcsmbs/mbsrtowcs.c: Likewise.
1817         * wcsmbs/wcrtomb.c: Likewise.
1818         * wcsmbs/wcsrtombs.c: Likewise.
1819         * wcsmbs/wchar.h: Add prototypes for __ protected versions.
1820
1821         * sysdeps/posix/sigsetmask.c (__sigsetmask): Call `__sigprocmask'
1822         instead of `sigprocmask'.
1823
1824
1825         * grp/grp.h [__USE_REENTRANT]: Add prototypes for reentrant
1826         version getgrent_r, getgrgid_r, and getgrnam_r.
1827         * pwd/pwd.h [__USE_REENTRANT]: Add prototypes for reentrant
1828         version getpwent_r, getpwuid_r, getpwnam_r and __ protected
1829         names.
1830         * resolv/netdb.h: Complete rewrite.  No more BSD ugliness.
1831
1832
1833         * misc/error.c (private_strerror): Translate messages from table,
1834         too.
1835
1836         * io/fcntl.h: Pretty printing.
1837         * misc/fstab.h: Likewise.
1838         * misc/ttyent.h: Likewise.
1839         * resource/sys/resource.h: Likewise.
1840         * string/argz.h: Likewise.
1841         * string/envz.h: Likewise.
1842
1843         Add support for symbols from POSIX.1c (POSIX threads).
1844         * posix/getconf.c: Handle new sysconf symbols.
1845         * posix/posix1_lim.h: Define _POSIX_TTY_NAME_MAX and
1846         _POSIX_LOGIN_NAME_MAX with minimal maximal values.
1847         * sysdeps/generic/confname.h: Define new symbols.
1848         * sysdeps/posix/sysconf.c: Handle new symbols.
1849         * sysdeps/stub/sysconf.c: Ditto.
1850         * sysdeps/unix/sysv/linux/sysconf.c: Removed.  Generic version
1851         is ok now.
1852
1853         * sunrpc/rpc/xdr.h: Move definition of type `xdrproc_t' to
1854         have real prototype.
1855
1856         * sysdeps/generic/resourcebits.h: Add macro definition for
1857         RLIMIT_* values.  Some sources test using #ifdef whether specific
1858         limit is available.
1859         * sysdeps/unix/bsd/sun/sunos4/resourcebits.h: Ditto.
1860         * sysdeps/unix/sysv/linux/resourcebits.h: Removed.  We need
1861         separate files for the architectures.
1862         * sysdeps/unix/sysv/linux/alpha/resourcebits.h: New file.
1863         * sysdeps/unix/sysv/linux/i386/resourcebits.h: New file.
1864         * sysdeps/unix/sysv/linux/m68k/resourcebits.h: New file.
1865         * sysdeps/unix/sysv/linux/mips/resourcebits.h: New file.
1866
1867         * sysdeps/posix/getdtsz.c: Rewrite to use `__getrlimit' function
1868         and only default on `OPEN_MAX'.
1869         * sysdeps/unix/sysv/sysv4/getdtsz.c: Removed.  Default is already
1870         the POSIX version.
1871
1872         * time/Makefile (routines): Add ctime_r.
1873         * time/asctime.c: Add implementation of `asctime_r'.  Make
1874         `asctime' implementation based on reentrant version.
1875         * time/ctime_r.c: New file.
1876         * time/time.h [__USE_REENTRANT]: Add definition of `asctime_r'
1877         and `ctime_r'.
1878
1879 Sat Aug  3 18:41:36 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1880
1881         * locale/C-ctype.c (_nl_C_LC_CTYPE_toupper): Fix EOF entry.
1882         (_nl_C_LC_CTYPE): Fix ordering.
1883         * locale/categories.def (LC_CTYPE): Add missing ctype-class32; fix
1884         typo.
1885
1886 Sat Aug  3 12:31:06 1996  Richard Henderson  <rth@tamu.edu>
1887
1888         * csu/initfini.c: Discover the maximum alignment generated by the
1889         compiler when emitting a function.
1890         (_init): Make sure the end of the crti fragment is aligned.
1891         (_fini): Likewise.
1892
1893 Fri Aug  2 03:12:40 1996  Ulrich Drepper  <drepper@cygnus.com>
1894
1895         * initfini.c: (__libc_is_static): New variable.  Will be
1896         initialized in init-first.c.  Some actions in the libc work
1897         different when libc is static or dynamic.
1898
1899         * sysdeps/unix/sysv/linux/init-first.c (init): Use
1900         `__libc_is_static' variable to determine whether call to
1901         `personality' and `setfpucw' is necessary.  When done set variable
1902         to +-1 depending on library type.
1903
1904         * locale/setlocale.c (setlocale): Use global variable
1905         `__libc_enable_secure' instead of calling `get{,e}{g,u}id()' to
1906         determine whether it's a SET[UG]ID program.
1907
1908 Fri Aug  2 14:40:22 1996  Roland McGrath  <roland@fast.cs.utah.edu>
1909
1910         * Version 1.93 test release.
1911
1912         * manual/Makefile: Use -include for chapters-incl too.
1913
1914         * Makeconfig (+link): Add back start.o, mistakenly removed in last
1915         change.
1916
1917 Fri Aug  2 01:04:02 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1918
1919         * nss/Makefile (generated): Add db-*.c.
1920
1921         * sysdeps/i386/sysdep.h: Get generic/sysdep.h explicitly instead of
1922         using #include_next.
1923
1924         * configure.in (--enable-add-ons): Quote m4 macro args.
1925
1926         * elf/rtld.c (dl_main): For --verify, fail if no dynamic section.
1927
1928 Thu Aug  1 14:40:03 1996  Roland McGrath  <roland@fast.cs.utah.edu>
1929
1930         * sunrpc/Makefile [$(cross-compile)=no]: Test before making librpcsvc.
1931
1932         * Makerules (build-shlib): Add -B$(csu-objpfx) to find crt[in].o there.
1933
1934         * Makeconfig (+preinit, +postinit): Prepend $(csu-objpfx) here.
1935         (+link): Not here.
1936
1937         * stdio-common/_itoa.h (_itoa_word): Declare unused to suppress
1938         warning when inline function is elided.
1939         * sysdeps/i386/dl-machine.h (elf_machine_matches_host): Likewise.
1940         (elf_machine_runtime_setup): Likewise.
1941         * elf/dynamic-link.h (elf_get_dynamic_info): Likewise.
1942         * sysdeps/i386/dl-machine.h (elf_machine_got): Likewise.
1943         (elf_machine_load_address): Likewise.
1944
1945         * catgets/gencat.c: Include <locale.h>.
1946
1947         * sysdeps/unix/mk-local_lim.c (param): Add SYMLOOP_MAX/MAXSYMLINKS.
1948
1949         * login/logwtmp.c (logwtmp): Call time, not __time.
1950
1951         * sysdeps/gnu/utmpbits.h (_HAVE_UT_PID): New macro.
1952         * login/login.c (login): Test [_HAVE_UT_PID] to use ut_pid member.
1953         * login/logwtmp.c (logwtmp): Likewise.
1954
1955         * sysdeps/generic/ioctl-types.h (sizeof): Define to 0 around #if
1956         comparing ioctl macro values.
1957
1958         * sysdeps/i386/sysdep.h: Do `#include_next <sysdep.h>'.
1959
1960         * manual/Makefile: Use -include for chapters to suppress warning.
1961
1962         * sysdeps/stub/socket.c: Fix type of TYPE arg.
1963         * sysdeps/stub/socketpair.c: Likewise.
1964
1965         * sysdeps/stub/_exit.c (_exit): Remove obsolete __NORETURN keyword.
1966
1967         * sysdeps/generic/sysdep.h: New file, broken out of ...
1968         * sysdeps/unix/sysdep.h: ... here.
1969         (C_LABEL): Moved out.
1970
1971         * Makeconfig (soversions.mk): Don't use newfangled ${x%%y} syntax;
1972         stick to sed.  Do `exit 0' at end because while returns nonzero.
1973
1974         * sysdeps/i386/sysdep.h: New file, broken out of ...
1975         * sysdeps/unix/i386/sysdep.h: ... here.  Generic asm macros moved out.
1976
1977         * sysdeps/stub/stdio_lim.h (L_ctermid, L_cuserid): Macros removed.
1978         They are defined unconditionally in libio/stdio.h.
1979
1980         * elf/dl-runtime.c: Include <stddef.h> for `NULL' defn.
1981         * elf/dl-cache.c: Likewise.
1982
1983 Mon Jul 29 19:20:05 1996  Ulrich Drepper  <drepper@cygnus.com>
1984
1985         * sysdeps/unix/sysv/linux/Makefile [$(subdir == misc]
1986         (sysdep_headers): Add sys/sysmacros.h.
1987         * sysdeps/unix/sysv/linux/sys/sysmacros.h: New file.
1988
1989 Wed Jul 31 14:21:36 1996  Ulrich Drepper  <drepper@cygnus.com>
1990
1991         * termios/termios.h [__OPTIMIZE__]: Remove "optimization" for
1992         tcgetattr.  We have weak aliases now.
1993         * stdlib/stdlib.h [__OPTIMIZE__ && __GNUC__ >= 2]: Remove
1994         "optimizations" for random functions.
1995
1996 Mon Jul 29 20:33:42 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1997
1998         * sysdeps/unix/sysv/linux/netinet/in.h (ntohl, ntohs, htonl,
1999         htons) [__BIG_ENDIAN]: #undef them before defining to avoid
2000         redefinition warning.
2001
2002 Mon Jul 29 20:28:27 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2003
2004         * time/time.h: Don't optimize tzset() to __tzset() which bypasses
2005         the __tzset_lock.
2006
2007 Tue Jul 30 15:14:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2008
2009         * sunrpc/rpc/pmap_clnt.h: Fix botched patch for multiple inclusion
2010         protection.
2011
2012 Tue Jul 30 02:48:28 1996  Ulrich Drepper  <drepper@cygnus.com>
2013
2014         * locale/loadlocale.c (_nl_load_locale): Change cast to `size_t'
2015         to be 64-bit clean.
2016         Reported by Richard Henderson <rth@tamu.edu>.
2017
2018 Tue Jul 30 15:04:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2019
2020         * locale/programs/ld-collate.c (collate_output): Fix typo reported by
2021         David Miller.
2022
2023 Tue Jul 30 13:23:13 1996  Ulrich Drepper  <drepper@cygnus.com>
2024
2025         * locale/setlocale.c (setlocale): Don't try to free C locale
2026         data.
2027         Reported by Matthias Urlichs.
2028
2029 Tue Jul 30 14:35:17 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2030
2031         * sysdeps/mach/hurd/dl-sysdep.c (__open): Use open_file.
2032         (open_file): New function, contents mostly from __open.
2033         (_dl_sysdep_read_whole_file): New function.
2034
2035 Sat Jul 27 11:23:59 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2036
2037         * sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Quote
2038         `..' dots in sed search string.
2039
2040 Mon Jul 29 01:27:07 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2041
2042         * sunrpc/rpc/rpc_msg.h: Fix botched patch for multiple inclusion
2043         protection.
2044
2045 Sun Jul 28 23:46:14 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2046
2047         * configure.in: Grok `--enable-add-ons=DIR1,DIR2,...', and configure
2048         in those directories.
2049         * config.make.in (add-ons): New varaible, set from @subdirs@.
2050         * Makefile (subdirs): Added $(add-ons) at the end.
2051
2052         * time/strftime.c (strftime: do_number): Initialize PRINTED to
2053         MAXDIGITS in case P is null and so sprintf is never actually called.
2054
2055 Mon Jul 29 02:46:23 1996  Ulrich Drepper  <drepper@cygnus.com>
2056
2057         Add support for the to-be-written internationalized regexp.
2058         This code must be able to use collation symbols and collation
2059         equivalent classes.
2060         * locale/C-collate.c (_nl_C_LC_COLLATE_symbol_hash,
2061         _nl_C_LC_COLLATE_symbol_strings, _nl_C_LC_COLLATE_symbol_classes):
2062         New global variables for collation classes.
2063         * locale/categories.def: Add new descriptions for collation symbols
2064         and collation classes.
2065         * locale/langinfo.h: Add constants for collation symbols and
2066         collation classes.
2067         * locale/lc-collate.c: Add new global variables for collation symbols
2068         and collation classes.
2069         (_nl_postload_collate): Initialize new variables.
2070         * locale/programs/ld-collate.c: Add code to emit tables for
2071         collation symbols and collation classes.
2072         * locale/programs/locales.h: Change prototype for `collate_output'.
2073         * locale/programs/locfile.c (write_all_categories): Call
2074         `collate_output' with new argument.
2075         * locale/localeinfo.h: Add declaration for new global vars.
2076         (union locale_data_value): New member wstr for `wchar_t' strings.
2077         * locale/programs/locale-spec.c: Handle `collate-classes'
2078         keyword and print information about available collation classes.
2079         * locale/strlen-hash.h: New file.  Simple hashing function which
2080         takes a string with known length.
2081         * locale/Makefile (distribute): Add strlen-hash.h.
2082         (locale-modules): New var.  Additional files for `locale' program.
2083
2084         * locale/C-ctype.c: Rewrite to avoid using string for giving values
2085         which are of type `u_int32_t'.
2086         Correct entry for EOF in toupper and tolower tables.
2087
2088         * locale/loadlocale.c (_nl_load_locale):  Add cast to prevent
2089         warning.
2090
2091         * locale/programs/ld-ctype.c (ctype_output): Add code to make
2092         sure that all tables in binary file are word-aligned.
2093
2094         * locale/programs/locfile.c (write_locale_data): Correct handling
2095         of LC_MESSAGES locale.  Create directory if necessary.
2096
2097         * locale/setlocale.c (setlocale): Add cast to avoid warning.
2098
2099         * string/string.h: Add prototype for `__strndup'.
2100
2101 Wed Jul 24 19:10:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2102
2103         * wcsmbs/mbrtowc.c: Remove unused variable.
2104
2105 Sun Jul 28 22:40:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2106
2107         * sysdeps/unix/sysv/linux/configure.in (LIBC_LINUX_VERSION): Update to
2108         2.0.10; some problems were reported with an earlier version, and this
2109         one is known to work.
2110
2111         * sysdeps/generic/dl-sysdep.c (__libc_enable_secure): New variable.
2112         * sysdeps/mach/hurd/dl-sysdep.c: Likewise.
2113
2114 Sat Jul 27 13:02:09 1996  Ulrich Drepper  <drepper@cygnus.com>
2115
2116         * elf/rtld.c (dl_main): Ignore arguments when environment variable
2117         LD_TRACE_LOADED_OBJECTS is set.
2118
2119 Sun Jul 28 19:42:51 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2120
2121         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Initialize
2122         __libc_enable_secure instead of _dl_secure.
2123         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Likewise.
2124         * elf/dl-load.c (_dl_map_object): Check __libc_enable_secure instead
2125         of _dl_secure.
2126         * elf/Makefile (routines): Add enbl-secure.
2127         (elide-routines.so): Here too.
2128         * sysdeps/generic/enbl-secure.c: New file.
2129         * posix/unistd.h [__USE_GNU]: Declare `__libc_enable_secure' flag.
2130         * elf/dl-support.c (_dl_secure): Variable removed.
2131         * elf/rtld.c: Likewise.  Replace all uses with __libc_enable_secure.
2132
2133 Sun Jul 28 19:26:40 1996  David S. Miller  <dm@neteng.engr.sgi.com>
2134
2135         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2136         Declare _dl_runtime_resolve with __attribute__ ((unused)) so the
2137         compiler doesn't elide it.
2138         (elf_machine_rel): Follow Jul 14 change in sysdeps/i386/dl-machine.h.
2139
2140 Sat Jul 27 02:58:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2141
2142         * elf/rtld.c (dl_main): Take new option --verify when run directly.
2143         In verify mode, exit with status zero iff the argument object's
2144         PT_INTERP matches argv[0].
2145         * elf/ldd.sh.in: Use ${RTLD} --verify and only run the program if it
2146         exits with zero status.  This makes `ldd' secure again.
2147
2148 Fri Jul 26 22:49:58 1996  Ulrich Drepper  <drepper@cygnus.com>
2149
2150         * elf/rtld.c (dl_main): Implement LD_TRACE_LOADED_OBJECTS
2151         environment variable handling.  This makes the dynamic linker
2152         only print loaded libraries and quit.
2153
2154         * elf/ldd.sh.in: Don't use `rtld --list' but instead
2155         LD_TRACE_LOADED_OBJECTS environment variable to print needed
2156         objects.
2157
2158 Sat Jul 27 02:03:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2159
2160         * db/makedb.c (main): Print version on stdout, not stderr.  Don't exit
2161         after printing version until after doing usage for --help.
2162         (long_options, main, usage): Rename -l/--lowercase option to
2163         -f/--fold-case (-f matches sort).
2164
2165 Sat Jul 27 04:32:31 1996  Ulrich Drepper  <drepper@cygnus.com>
2166
2167         * db/makedb.c: New file.  Implement program to create simple <db.h>
2168         database from textual input.  This will be used for nss_db.
2169
2170 Sat Jul 27 01:24:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2171
2172         * sunrpc/rpc/auth_unix.h: Fix misapplied patches in last changes.
2173         * sunrpc/rpc/pmap_clnt.h: Likewise.
2174         * sunrpc/rpc/auth.h: Likewise.
2175         * sunrpc/rpc/pmap_rmt.h: Likewise.
2176         * sunrpc/rpc/rpc_msg.h: Likewise.
2177
2178 Sat Jul 27 04:37:34 1996  Ulrich Drepper  <drepper@cygnus.com>
2179
2180         * string/string.h (strndupa): Change to use return value of
2181         `memcpy' for more performance.
2182         * string/strndup.c: Likewise.
2183
2184         * string/string.h (strdupa): Don't call __builtin_alloca in argument.
2185         This might lead to problems.
2186         (strndupa): Likewise.
2187
2188 Fri Jul 26 15:24:25 1996  Ulrich Drepper  <drepper@cygnus.com>
2189
2190         * sunrpc/rpc/auth.h: Add protection against multiple inclusion
2191         and change K&R prototypes to ANSI prototypes.
2192         * sunrpc/rpc/auth_unix.h: Ditto.
2193         * sunrpc/rpc/clnt.h: Ditto.
2194         * sunrpc/rpc/pmap_clnt.h: Ditto.
2195         * sunrpc/rpc/pmap_prot.h: Ditto.
2196         * sunrpc/rpc/pmap_rmt.h: Ditto.
2197         * sunrpc/rpc/rpc_msg.h: Ditto.
2198         * sunrpc/rpc/svc.h: Ditto.
2199         * sunrpc/rpc/svc_auth.h: Ditto.
2200         * sunrpc/rpc/xdr.h: Ditto.
2201
2202 Fri Jul 26 20:39:42 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2203
2204         * ctype/test_ctype.c: Test EOF too.
2205
2206 Fri Jul 26 18:06:58 1996  Ulrich Drepper  <drepper@cygnus.com>
2207
2208         * sunrpc/rpc/auth.h: Add __BEGIN_DECLS and __END_DECLS.
2209         * sunrpc/rpc/auth_unix.h: Likewise.
2210         * sunrpc/rpc/clnt.h: Likewise.
2211         * sunrpc/rpc/netdb.h: Likewise.
2212         * sunrpc/rpc/pmap_clnt.h: Likewise.
2213         * sunrpc/rpc/pmap_prot.h: Likewise.
2214         * sunrpc/rpc/rpc_msg.h: Likewise.
2215         * sunrpc/rpc/svc.h: Likewise.
2216         * sunrpc/rpc/svc_auth.h: Likewise.
2217         * sunrpc/rpc/xdr.h: Likewise.
2218
2219         * sunrpc/rpc/pmap_clnt.h: Move definition of type `resultproc_t'
2220         to here from...
2221         * sunrpc/pmap_rmt.c: ...here.
2222
2223 Fri Jul 26 16:10:43 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2224
2225         * login/pututline_r.c (pututline_r): Only call getutid_r if ID has a
2226         valid ut_id field.
2227         * login/getutid_r.c (getutid_r): Mark UTMP_DATA->loc_utmp invalid
2228         if a search fails.
2229
2230 Fri Jul 26 00:36:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2231
2232         * sysdeps/mips/dl-machine.h: New file, contributed by Kazumoto Kojima
2233         <kkojima@info.kanagawa-u.ac.jp>.
2234
2235 Fri Jul 26 04:41:28 1996  Ulrich Drepper  <drepper@cygnus.com>
2236
2237         * intl/libintl.h: Define optimizing macros if __OPTIMIZE__ is
2238         defined, not __OPTIMIZED.
2239         (_nl_msg_cat_cntr): Move declaration outside macro definition
2240         to prevent "nested extern" warning.
2241         (dcgettext): Rename local variable `result' to `__result'.
2242
2243 Thu Jul 25 22:46:30 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2244
2245         * locale/programs/localedef.c (__progname): Remove decl.
2246         (main): Use program_invocation_short_name instead of __progname.
2247         (usage): Use program_invocation_name instead of __progname.
2248
2249 Fri Jul 26 03:46:08 1996  Ulrich Drepper  <drepper@cygnus.com>
2250
2251         * catgets/gencat.c: Use "libc" instead of PACKAGE.
2252         * locale/localedef.c: Ditto.
2253         * locale/locale.c: Ditto.
2254
2255         * locale/findlocale.c (_nl_find_locale): Little optimization.
2256         Use new function `strndup'.
2257
2258         * locale/loadlocale.c: Little optimization.  Use constant value
2259         from `_nl_category_num_items' instead of byte-order dependend
2260         value from file.
2261
2262         * locale/programs/ld-time.c (time_add): Correct string constant.
2263
2264         * locale/programs/locale-spec.c: New file.
2265         * locale/programs/locale.c: Call `locale_special' function if
2266         no other field matches.
2267
2268         * locale/programs/localedef.c: No need to define `program_name'.
2269         Use global variable `__progname'.
2270
2271         * locale/programs/locfile.c (write_locale_data): Always write
2272         LC_MESSAGES data in LC_MESSAGES/SYS_LC_MESSAGES file.  This is
2273         necessary since message catalogs are also installed in the
2274         LC_MESSAGES/ directory.
2275
2276         * locale/programs/stringtrans.c (ADDC): Correctly use `encode_char'
2277         function instead of writing single bytes.
2278         (encode_char): Also handle little endian.
2279
2280         * locale/setlocale.c (new_composite_name): Little optimization.
2281         Use return value of `memcpy'.
2282
2283         * misc/ttyent.h: Pretty print prototypes, add missing parameter
2284         names, prepend parameter names with __  and use `__const' instead
2285         of `const'.
2286         * posix/unistd.h: Ditto.
2287         * stdlib/stdlib.h: Ditto.
2288         * string/string.h: Ditto.
2289
2290         * posix/getconf.c: De-ASNI-fy.  Recognize POSIX.2 constant names.
2291         Use `error' function instead of doing it by hand.
2292         * sysdeps/posix/sysconf.c: De-ANSI-fy.
2293         Handle _SC_COLL_WEIGHTS_MAX.
2294         * sysdeps/stub/sysconf.c: Handle _SC_CHARCLASS_NAME_MAX,
2295         _SC_COLL_WEIGHTS_MAX, _SC_EQUIV_CLASS_MAX, _SC_2_LOCALEDEF
2296         since these do depend on the platform.
2297         Add POSIX.4 symbols.
2298
2299         * posix/posix2_lim.h: Add missing definition of
2300         _POSIX2_COLL_WEIGHTS_MAX.
2301         Change _POSIX2_EQUIV_CLASS_MAX and _POSIX2_CHARCLASS_NAME_MAX
2302         to high values since we have no fixed limit.
2303
2304         * sysdeps/generic/confname.h: Add _SC_PAGE_SIZE as alias for
2305         _SC_PAGESIZE for buggy systems (= HP UX) out there.
2306
2307         * wcsmbs/Makefile (routines): Add mbsnrtowcs and wcsnrtombs.
2308         * wcsmbs/mbsnrtowcs.c: New file.  Non-standard implementation.
2309         * wcsmbs/wcsnrtombs.c: Ditto.
2310         * wcsmbs/wchar.h [__USE_GNU]: Add prototypes for mbsnrtowcs and
2311         wcsnrtombs.
2312
2313 Thu Jul 25 00:25:54  Richard Henderson  <rth@tamu.edu>
2314
2315         * nss/nss_db/db-XXX.c: Kill trailing ; from lock defn as a matter of
2316         course.
2317         * nss/getXXent_r.c: Likewise.
2318         * nss/nsswitch.c: Likewise.
2319         * nss/nss_files/files-XXX.c: Likewise.
2320         * sysdeps/mach/hurd/dirstream.h (struct __dirstream): Likewise.
2321         * sysdeps/unix/bsd/telldir.c (struct record): Likewise.
2322         * sysdeps/unix/dirstream.h (struct __dirstream): Likewise.
2323
2324 Thu Jul 25 00:53:06 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2325
2326         * sysdeps/unix/sysv/linux/configure.in (LIBC_LINUX_VERSION): New
2327         macro, now put the needed Linux version just once, here; update to
2328         needing linux-2.0.3 headers.
2329         (libc_cv_linuxVER): New macro derived from that.
2330         (kernel header check): Use those macros and some m4 magic to replace
2331         hard-coded `201' and `2.0.1' in several places.
2332
2333         * Makerules ($(libdir)/libc.so): Fix typos in generated comment.
2334
2335 Wed Jul 24 17:02:30 1996  Ulrich Drepper  <drepper@cygnus.com>
2336
2337         * time/localtime.c: Move lock variable declaration to end of
2338         variable declarations since if is a dummy macro the ; at the
2339         end terminates the variable section of the function.
2340
2341         * time/tzset.c: Undefine `tzset' before function declaration.
2342         Use `weak_function' macro instead of `weak_symbol'.
2343
2344 Wed Jul 24 18:57:33 1996  Ulrich Drepper  <drepper@cygnus.com>
2345
2346         * stdlib/strtouq.c: Additional weak alias is `strtoull', not
2347         `strotull'.
2348
2349 Wed Jul 24 18:26:23 1996  Ulrich Drepper  <drepper@cygnus.com>
2350
2351         * locale/C-ctype.c: Increment number of fields after change
2352         from Wed Jun 19 03:24:58 1996.
2353
2354 Tue Jul 23 18:13:37 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2355
2356         * sysdeps/mach/hurd/Makefile (rpcuserlibs): New variable.
2357         ($(common-objpfx)libc.so): Move deps into that, use it.
2358         [$(subdir) = elf] ($(objpfx)librtld.so): Depend on
2359         $(rpcuserlibs:.so=_pic.a).
2360         * elf/Makefile ($(objpfx)librtld.so): Just depend on libc_pic.a; don't
2361         use $(LDLIBS-c.so).
2362
2363 Thu Jul 18 21:41:25 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2364
2365         * sysdeps/generic/stpncpy.c: Fix semantics to make `stpncpy (d, s,
2366         n)' equivalent to `strncpy (d, s, n), d += strnlen (d, n)'.
2367
2368 Tue Jul 23 02:49:58 1996  Ulrich Drepper  <drepper@cygnus.com>
2369
2370         * locale/iso-4217.def: Add India to comment for symbol "INR ".
2371         Reported by Raja R Harinath  <harinath@cs.umn.edu>.
2372
2373 Sat Jul 20 14:03:45 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2374
2375         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Remove bogus
2376         #undef RESOLVE.
2377
2378 Sun Jul 21 06:48:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2379
2380         * time/tzset.c: Include <libc-lock.h>.
2381         (__tzset_lock): New lock variable.
2382         (tzset): New function (weak defn), no longer weak alias for __tzset.
2383         Call __tzset while holding __tzset_lock.
2384         * time/localtime.c: Include <libc-lock.h>.
2385         (__localtime_r): Hold __tzset_lock while doing the work.
2386
2387         * sysdeps/generic/setenv.c (__environ): Change conditional for #define
2388         from [!HAVE_GNU_LD] to [!_LIBC].
2389         [_LIBC]: Include <libc-lock.h> and define a lock.
2390         (LOCK, UNLOCK): New macros, no-ops for [! _LIBC].
2391         (setenv, unsetenv): Use them.
2392
2393 Sun Jul 21 01:44:39 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2394
2395         * locale/programs/locfile.c (write_locale_data): Deal with missing
2396         UIO_MAXIOV.
2397
2398         * sysdeps/mach/hurd/socket.c (socket): Make TYPE an int.
2399         * sysdeps/mach/hurd/socketpair.c (socketpair): Likewise.
2400
2401 Sat Jul 20 21:55:31 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2402
2403         Win32 hacks from <Rob_Tulloh@tivoli.com>.
2404         * posix/glob.c [WIN32]: Don't include <pwd.h>; don't use d_ino;
2405         use void * for my_realloc; include <malloc.h> for alloca.
2406         (glob) [WIN32]: Use "c:/users/default" for ~ if no HOME variable.
2407         * posix/fnmatch.h [WIN32]: Use prototypes even if [!__STDC__].
2408         * posix/glob.h: Likewise.
2409
2410 Sat Jul 20 13:28:52 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2411
2412         * sysdeps/mach/hurd/select.c (__select): Don't poll on the last
2413         call __io_select unless there's only a single descriptor, as each
2414         descriptor now has its own reply port.
2415         If there is only a single descriptor, just use its reply port for
2416         everything and don't bother creating the port set.
2417
2418         * sysdeps/mach/hurd/uname.c (uname): Deref UNAME to get nodename.
2419         <unistd.h>: New include.
2420
2421         * sysdeps/mach/libc-lock.h (__libc_lock_define): Backslashify
2422         continuation line.
2423
2424 Sat Jul 20 07:15:33 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2425
2426         * crypt/Makefile, crypt/nocrypt.c: Removed.  It is illegal to export
2427         from the USA any software that even makes it easy to drop in an
2428         encryption module of foreign origin.
2429         * Makerules (cryptobjdir): Variable removed.
2430         ($(libdir)/libc.so): Remove dep on libcrypt.so$(libcrypt.so-version).
2431         * Makefile (subdirs): Remove crypt.
2432
2433 Fri Jul 19 15:45:20 1996  Ulrich Drepper  <drepper@cygnus.com>
2434
2435         * locale/C-messages.c (_nl_C_LC_MESSAGES): Add missing Kleene
2436         operator to yesexpr and noexpr string.
2437
2438 Fri Jul 19 15:10:37 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2439
2440         * sunrpc/xdr_mem.c (xdrmem_putlong): Don't cast LP to int32 (the
2441         old code would have failed on a big-endian 64-bit architecture).
2442         * sunrpc/xdr_stdio.c (xdrstdio_putlong): Ditto.
2443
2444         * sunrpc/xdr.c (xdr_int): Handle XDR_FREE case.
2445         (xdr_u_long): Use switch instead of chain of if-statements.
2446         Remove gratitous parentheses around return expressions.
2447         (xdr_enum): Open code case where INT_MAX<LONG_MAX.
2448
2449         * sunrpc/svc.c (svc_getreqset): Increment SOCK by 32, not NFDBITS.
2450
2451         * sunrpc/portmap.c (reg_service): Declare ANS and PORT as long,
2452         not int.
2453
2454 Fri Jul 19 16:56:41 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2455
2456         * dlfcn.h, db.h: New wrapper headers.
2457
2458         * posix/glob.h [!_AMIGA && !VMS]: Check this instead of just [!_AMIGA]
2459         for `struct stat;' forward decl.
2460
2461 Fri Jul 19 22:25:19 1996  Ulrich Drepper  <drepper@cygnus.com>
2462
2463         * locale/iso-4217.def: Add some more standardized currency
2464         symbols.
2465
2466 Fri Jul 19 13:18:02 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2467
2468         * hurd/report-wait.c (describe_number): Use unsigned long int for J.
2469
2470 Thu Jul 18 12:33:57 1996  Roland McGrath  <roland@baalperazim.frob.com>
2471
2472         * Rules (dummy.o, empty.o): Targets removed.
2473         (dummy.c, empty.c): New targets replace them.
2474
2475 Thu Jul 18 11:42:39 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2476
2477         * crypt/Makefile (lib-noranlib): Depend on
2478         $(objpfx)libcrypt.so$(libcrypt.so-version).
2479         (subdir): Fix name.
2480
2481 Thu Jul 18 04:33:21 1996  Roland McGrath  <roland@baalperazim.frob.com>
2482
2483         * sysdeps/mach/hurd/errnos.awk: Move EWOULDBLOCK check before errno==0
2484         check.  mib's clueless hacking broke it.
2485
2486 Thu Jul 18 04:27:21 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2487
2488         * Makerules ($(libdir)/libc.so): Add missing / after $(cryptobjdir).
2489
2490 Wed Jul 17 10:54:20 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2491
2492         * misc/sys/ustat.h: New file.
2493         * misc/ustat.h: Ditto.
2494         * sysdeps/generic/ustatbits.h: Ditto.
2495         * sysdeps/stub/ustat.c: Ditto.
2496         * sysdeps/unix/sysv/linux/ustatbits.h: Ditto.
2497         * misc/Makefile (headers): Mention ustat.h, sys/ustat.h, and
2498         ustatbits.h.
2499         (routines): Mention ustat.
2500
2501         * sysdeps/unix/sysv/linux/alpha/start.S: Move to ...
2502         * sysdeps/alpha/elf/start.S: here.
2503
2504         * sysdeps/unix/sysv/linux/syscalls.list: Mention klogctl in
2505         alphabetically correct place.  Mention ustat.
2506
2507         * sysdeps/unix/alpha/sysdep.S: Make errno a bss symbol, not a
2508         common symbol (makes errno accessible from gdb).
2509
2510         * login/pututline_r.c (pututline_r): Test ut_id in repositioning
2511         test, not ut_type.
2512
2513         * login/logwtmp.c (logwtmp): Reimplemented.  Must ensure that a
2514         record always gets appended at end of file (wtmp is a log file,
2515         after all).  Set ut_type to DEAD_PROCESS if name is empty.
2516
2517         * login/getutid_r.c (getutid_r): Handle search for UT_TYPE in
2518         separate loop from search for UT_ID.  Fix code so it is in
2519         sync with Unix man page.
2520
2521         * login/getutline_r.c (getutline_r): Stop searching only if
2522         ut_line matches and type is either USER_PROCESS or LOGIN_PROCESS.
2523
2524 Tue Jul 16 15:06:18 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2525
2526         * sysdeps/unix/sysv/linux/netinet/in.h: Base on <linux/in.h> to
2527         avoid duplicate declarations.
2528
2529 Sun Jul 14 19:08:55 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2530
2531         * manual/maint.texi (Supported Configurations): Add alpha-gnu-linux
2532         and alpha-gnu-linuxecoff targets.
2533
2534 Fri Jul 12 16:58:44 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2535
2536         * sysdeps/unix/sysv/linux/netinet/in.h: Declare bindresvport().
2537
2538 Sat Jun 22 23:30:07 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2539
2540         * resolv/res_send.c (res_send): Declare FROMLEN as size_t instead
2541         of int.
2542
2543         * resolv/res_comp.c (res_hnok): Use empty statement in place
2544         of NULL (which generates a "useless expression" warning in
2545         gcc).
2546
2547 Wed Jul 17 23:56:35 1996  Roland McGrath  <roland@baalperazim.frob.com>
2548
2549         * sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Replace ../
2550         with $(..) in output.
2551
2552 Wed Jul 17 21:53:45 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2553
2554         * elf/Makefile (dl-routines): Add dl-cache.
2555         * elf/dl-cache.c: New file.
2556         * elf/dl-load.c (_dl_map_object): Check cache before default path.
2557
2558 Wed Jul 17 20:41:30 1996  Ulrich Drepper  <drepper@cygnus.com>
2559
2560         * stdio-common/vfscanf.c: Major change.  Now read character
2561         from stream only if needed.  Before it was read after the
2562         previous character was used.
2563         Bug reported by Martin Goik <goma0002@FH-Karlsruhe.DE>
2564
2565         * stdio-common/tstscanf.c: Change test program so that return
2566         value is != 0 if one test failed.
2567
2568 Wed Jul 17 17:08:48 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2569
2570         * sysdeps/m68k/Makefile (crypt): Variable removed.
2571         * sysdeps/sparc/Makefile: Likewise.
2572
2573         * version.h (VERSION): Update to 1.93.
2574
2575         * Makerules ($(libdir)/libc.so): Depend on
2576         $(common-objpfx)libcrypt.so$(libcrypt.so-version).
2577
2578         * crypt/nocrypt.c: New file.
2579         * Makefile (subdirs): Add crypt.
2580         * crypt/Makefile: New file.
2581
2582         * Makerules (soversions.mk): Move this target, include of it, and
2583         include of version.mk to ...
2584         * Makeconfig: ... here.
2585         (soversions.mk): Depend on Makeconfig instead of Makerules.
2586
2587         * shlib-versions (*-*-*): Set libcrypt=0.
2588
2589 Wed Jul 17 11:29:26 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2590
2591         * stdio/linewrap.c (lwupdate): Fix boundary condition where a
2592         word extends right up to rmargin.
2593
2594         * stdio/linewrap.c (lwupdate): When we've done a word wrap and
2595         output the wrap margin, set point_col to wmargin.
2596         Use negative point_col to deal with a wmargin of 0.
2597         (line_wrap_point): Return 0 for a negative point_col.
2598         (line_wrap_stream): Make wmargin ssize_t.
2599         * stdio/linewrap.h (struct line_wrap_data): Make wmargin &
2600         point_col ssize_t.
2601         (line_wrap_stream): Make wmargin ssize_t.
2602         (line_wrap_point): Return 0 for a negative point_col.
2603
2604 Wed Jul 17 02:43:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2605
2606         * shlib-versions (*-*-gnu*): Set libc=0.0
2607
2608 Tue Jul 16 01:52:42 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2609
2610         * sysdeps/m68k/dl-machine.h: Follow Jul 14 change in
2611         sysdeps/i386/dl-machine.h.
2612
2613 Tue Jul 16 00:18:19 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2614
2615         * stdio/linewrap.c (__line_wrap_update): Add hackery from flshfp
2616         to fiddle __put_limit in conjunction with __linebuf_active.
2617
2618 Tue Jul 16 00:14:07 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2619
2620         * sysdeps/unix/inet/syscalls.list (connect, send): Add underscores
2621         to the strong name, not the file name.
2622
2623 Tue Jul 16 16:43:58 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2624
2625         * csu/initfini.c: More magic.  Detect if .end is produced and put it
2626         in the output iff the compiler does.
2627
2628         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid sizeof dynamic auto array
2629         because that is broken on alpha.
2630
2631         * sysdeps/mach/hurd/mmap.c: Use same inheritance arg in second vm_map
2632         call as in first.
2633
2634         * Makerules (make-link): Install the new link with atomic mv -f in
2635         case ln itself requires the library being installed.
2636
2637 Tue Jul 16 00:31:31 1996  Richard Henderson  <rth@tamu.edu>
2638
2639         * sysdeps/alpha/dl-machine.h: Mirror Roland's changes to
2640         i386/dl-machine.h of 960713.
2641
2642         * sysdeps/generic/dl-sysdep.c:  Include <sys/mman.h>.
2643         (_dl_sysdep_read_whole_file): Fix result variable declaration.
2644
2645 Tue Jul 16 00:53:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2646
2647         * sysdeps/mach/hurd/uname.c: Call __gethostname to fill in the
2648         `nodename' member.
2649
2650 Mon Jul 15 17:23:53 1996  Ulrich Drepper  <drepper@cygnus.com>
2651
2652         * stdio-common/vfprintf.c (vfprintf): Call parse_one_spec
2653         with pointer to local variable instead of NULL.
2654
2655 1996-07-15  Paul Eggert  <eggert@twinsun.com>
2656
2657         * time/strftime.c (strftime): Don't pass empty macro argument to `add'.
2658
2659 Sat Jul 13 09:53:39 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2660
2661         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove names
2662         that are already added by other means.
2663
2664         * sysdeps/unix/sysv/linux/syscalls.list: Add more EXTRA's in the
2665         caller column to get those syscalls added automagically.
2666
2667 Mon Jul 15 12:24:54 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2668
2669         * login/logout.c (logout): Initialize DATA to a state that will
2670         make setutent_r happy.
2671
2672 Sun Jul 14 01:51:39 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2673
2674         * elf/rtld.c (dl_main) [ELF_MACHINE_DEBUG_SETUP]: Use this macro
2675         instead of setting the DT_DEBUG pointer.
2676
2677         * csu/initfini.c (_init, _fini): Generate .end directives after
2678         standalone prologues and filter them out from epilogues.
2679
2680         * Makeconfig (rtld-installed-name): Set to ld.so.1.
2681         * sysdeps/unix/sysv/linux/Makefile (rtld-installed-name): Variable
2682         removed.
2683
2684         * manual/Makefile (glibc-targets): Remove subdir_ from elts.
2685
2686         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): New fn.
2687
2688         * MakeTAGS (extract): Pass --add-comments=TRANS.
2689         * sysdeps/gnu/errlist.awk: Write comments into the output with the
2690         descriptive paragraphs from the manual preceded by TRANS.
2691
2692         * elf/rtld.c (RESOLVE): Use the dl's load address, not a constant zero!
2693         (_dl_start): Move RESOLVE defn inside this function and #include
2694         "dynamic-link.h" a second time there.
2695         [RTLD_START]: Move use of this after _dl_start function.
2696
2697         * elf/dl-reloc.c: Include "dynamic-link.h" at file scope.
2698
2699         * elf/rtld.c: Include <string.h>.
2700
2701         * elf/dynamic-link.h (ELF_DYNAMIC_DO_REL, ELF_DYNAMIC_DO_RELA,
2702         ELF_DYNAMIC_RELOCATE): No longer take RESOLVE argument.
2703         Conditionalize defns on [RESOLVE].
2704         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
2705         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
2706         Instead use RESOLVE macro with same args.
2707         (elf_machine_rel): Conditionalize defn on [RESOLVE].
2708         * elf/dl-reloc.c (RESOLVE): New macro, define before including
2709         "dynamic-link.h".  It replaces `resolve' local function.
2710         * elf/dl-runtime.c: Likewise.
2711         * elf/rtld.c: Likewise.
2712
2713         * elf/dl-deps.c (_dl_map_object_deps): Start TAILP at last preload.
2714
2715         * elf/dl-open.c (_dl_open): Force an indirect call for
2716         _dl_relocate_object so there is no chance a PLT fixup will be done
2717         and clobber _dl_global_scope before our call happens.
2718
2719         * sysdeps/i386/fpu/__math.h (tan): Correct output constraint from =u
2720         to =t; must operate on top of fp reg stack, not second from top.
2721         Correct input constraint to 0 from t; must be explicit when input and
2722         output are the same register.
2723         (floor): Use __volatile instead of volatile.
2724         (ceil): Likewise.
2725
2726         * manual/Makefile ($(objpfx)stamp%-$(subdir)): Separate rule from
2727         other targets.
2728
2729 Sat Jul 13 23:50:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2730
2731         * manual/Makefile (lib): New phony target.  Depend on stamp files.
2732         ($(objpfx)stamp%-$(subdir)): New rule to create them when necessary.
2733
2734 1996-07-13  Paul Eggert  <eggert@twinsun.com>
2735
2736         * time/strftime.c (strftime): Use space padding for %e, %k, %l,
2737         to match Emacs format-time-string specification.
2738         (DO_NUMBER_SPACEPAD): Renamed from DO_NUMBER_NOPAD.
2739
2740 Sat Jul 13 20:17:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2741
2742         * elf/dl-deps.c (_dl_map_object_deps): Take new args PRELOADS and
2743         NPRELOADS, vector of `struct link_map *'s; add them to the searchlist
2744         between MAP and its deps.
2745         * elf/link.h: Fix decl.
2746         * elf/rtld.c (dl_main): If not secure, parse LD_PRELOAD for
2747         colon-separated list of names, map those and pass vector of ptrs as
2748         PRELOADS list to _dl_map_object_deps.
2749         * elf/dl-runtime.c (_dl_object_relocation_scope): Pass new args to
2750         _dl_map_object_deps with empty preload list.
2751         * elf/dl-open.c (_dl_open): Likewise.
2752
2753         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_open_zero_fill): Function
2754         removed.
2755         (__mmap): Pass MACH_PORT_NULL for memobj port when (flags & MAP_ANON).
2756         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill):
2757         Conditionalize defn on [! MAP_ANON].
2758         * elf/dl-minimal.c (malloc): Conditionalize use of _dl_zerofd
2759         on [! MAP_ANON].
2760         * elf/rtld.c (dl_main): Likewise.
2761         * elf/dl-load.c (_dl_zerofd): Conditionalize defn on [! MAP_ANON].
2762         (_dl_map_object_from_fd): Conditionalize initialization of _dl_zerofd.
2763
2764         * elf/dl-fini.c (_dl_fini): Skip finalizer for executable itself.
2765
2766 Sat Jul 13 02:47:53 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2767
2768         * stdlib/random.c (__random): Declare as int32_t to be in sync
2769         with declaration.
2770
2771         * socket/Makefile (headers): Add socketbits.h.
2772
2773         * misc/mntent.c (endmntent): Allow for NULL stream.  SunOS does
2774         it that way.
2775
2776         * grp/initgroups.c (initgroups): Add groups that user is a member
2777         of, not the ones he is _not_ a member of.
2778
2779         * nss/nsswitch.c (known_compare): Make known_compare() a static
2780         instead of a local function.  The latter are difficult to debug
2781         and slow to execute on certain platforms.
2782
2783         * sysdeps/posix/ttyname_r.c (ttyname_r): Use sizeof (dev) - 1 in
2784         place of sizeof (dev).  The size of a literal string includes the
2785         NUL byte.
2786
2787         * sysdeps/unix/getlogin.c (getlogin): Initialize ut_fd with -1.
2788
2789 Thu Jul 11 16:59:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2790
2791         * misc/mntent.c (addmntent): Seek to end of file before writing
2792         entry.  Return 1 on error, not -1.
2793
2794 Tue Jul  9 19:08:05 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2795
2796         * sysdeps/unix/sysv/linux/syscalls.list: Mark bdflush as EXTRA
2797         syscall.
2798
2799 Fri Jul  5 18:44:55 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2800
2801         * sysdeps/unix/sysv/linux/alpha/ioperm.c (port_to_cpu_addr): Size
2802         shift amount for Jensen must be 5 not 4.
2803
2804 Sat Jul 13 20:04:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2805
2806         * socket/sys/socket.h (struct osockaddr): New type.
2807
2808 Sat Jul 13 03:50:53 1996  Ulrich Drepper  <drepper@cygnus.com>
2809
2810         * misc/Makefile (routines): Add qefgcvt and qefgcvt_r.
2811         * misc/efgcvt.c, misc/efgcvt_r.c: Change code so that the `double'
2812         and `long double' versions can be generated.
2813         * misc/qefgcvt.c, misc/qefgcvt_r.c: New files.  Define macros
2814         so that included efgcvt{,_r}.c file generate `long double'
2815         versions.
2816         * stdlib/stdlib.h: Add prototypes for q[efg]cvt() and q[ef]cvt_r()
2817         functions.
2818
2819         * manual/startup.texi: Document new getsubopt function.
2820         * manual/examples/subopt.c: New example program for documenting
2821         getsubopt function.
2822
2823 Fri Jul 12 23:58:37 1996  Ulrich Drepper  <drepper@cygnus.com>
2824
2825         * stdlib/Makefile (routines): Add getsubopt.
2826         * stdlib/stdlib.h: Add prototype for getsubopt.
2827         * stdlib/getsubopt.c: New file.  Implement getsubopt function
2828         to handle suboption parsing.
2829
2830 Thu Jul 11 20:09:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2831
2832         * inet/getnetent_r.c: Define NEED_H_ERRNO.
2833         * inet/getnetbynm_r.c: Likewise.
2834         * inet/getnetent.c: Likewise.
2835         * inet/getnetbyad_r.c: Likewise.
2836         * inet/getnetbyad.c: Likewise.
2837         * inet/getnetbynm.c: Likewise.
2838
2839         * sysdeps/generic/pselect.c: Include <sys/time.h>.
2840
2841         * misc/sys/select.h: Include <time.h> instead of <sys/time.h> for
2842         `struct timespec'.
2843
2844         * math/Makefile (calls): Add s_frexp, s_ldexp.
2845         (routines): Remove them and &f from here.
2846
2847         * sys/socket.h: New file, wrapper for socket/sys/socket.h.
2848
2849         * nss/nss_files/files-service.c (getservbyname): Take second arg PROTO
2850         and check it.
2851
2852         * nss/nss_files/files-XXX.c: Comment fix.
2853
2854 Fri Jul 12 01:28:35 1996  Ulrich Drepper  <drepper@cygnus.com>
2855
2856         * nss/getXXent_r.c (GETFUNC_NAME_STRING): Define with name
2857         of reentrant function.
2858         (setup): Pass additional argument with function name we are
2859         looking for.
2860         (SETFUNC_NAME, ENDFUNC_NAME, GETFUNC_NAME): Call setup with
2861         new argument {SET,END,GET}FUNC_NAME_STRING.
2862
2863         * nss/getXXent.c (GETFUNC_NAME): RESULT must be static because
2864         we return a pointer.
2865
2866 Thu Jul 11 18:20:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2867
2868         * nss/nss_files/files-parse.c: Add comment about things to #define.
2869
2870         * nss/nss_files/files-hosts.c (NEED_H_ERRNO): Define it.
2871
2872         * nss/nss_files/files-parse.c (STRING_FIELD): Don't flag NUL before
2873         terminator char as an error.
2874
2875         * nss/getXXbyYY_r.c (REENTRANT_NAME): Set *H_ERRNOP, not h_errno.
2876
2877 Thu Jul 11 03:21:10 1996  Ulrich Drepper  <drepper@cygnus.com>
2878
2879         * catgets/gencat.c (write_out): Move code to determine new
2880         best size out of inner loop.
2881
2882 Thu Jul 11 00:22:40 1996  Ulrich Drepper  <drepper@cygnus.com>
2883
2884         * sysdeps/libm-ieee754/s_frexpl.c: New file.  `long double'
2885         implementation of frexp() function.
2886         * sysdeps/libm-ieee754/s_ldexpl.c: New file.  `long double'
2887         implementation of ldexp() function.
2888
2889         * sysdeps/libm-i387/s_isnanl.c (isnanl): Mask explicit one
2890         out before or'ing.
2891
2892 Wed Jul 10 05:24:40 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2893
2894         * misc/mntent.c: Include <sys/types.h>.
2895         (endmntent): Return 1 one success, 0 on failure.
2896         (getmntent): Chop newline and ignore empty lines.
2897
2898 Mon Jul  8 21:18:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2899
2900         * sysdeps/m68k/dl-machine.h (RESOLVE): New macro, defined
2901         differently based on [RTLD_BOOTSTRAP].
2902         (elf_machine_rela): Use it instead of the fn ptr arg directly.
2903
2904 Tue Jul  9 09:37:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2905
2906         * posix/glob.h (__glob_opendir_hook, __glob_readdir_hook,
2907         __glob_closedir_hook): Remove decls.
2908
2909         * sysdeps/generic/machine-gmon.h: Declare mcount_internal.
2910
2911         * sysdeps/unix/inet/syscalls.list: Define __ names with weak aliases
2912         for send and connect syscalls.
2913
2914         * socket/sys/socket.h: New file, taken from non-sysdep parts of
2915         linux/sys/socket.h; break sysdeps parts out into socketbits.h.
2916         Declare __ names for send and connect.
2917         * sysdeps/generic/socketbits.h: New file.
2918         * sysdeps/unix/sysv/linux/socketbits.h: New file.
2919         * sysdeps/unix/sysv/linux/sys/socket.h: File removed.
2920         * sysdeps/generic/sys/socket.h: File removed.
2921
2922         * sysdeps/mach/hurd/connect.c: Define __ name and weak alias.
2923         * sysdeps/mach/hurd/send.c: Likewise.
2924
2925         * sysdeps/mach/libc-lock.h: New file.
2926         * sysdeps/unix/readdir.c: Do locking.
2927         * sysdeps/unix/seekdir.c: Likewise.
2928         * sysdeps/unix/rewinddir.c:  Likewise.
2929         * sysdeps/unix/closedir.c: Likewise.
2930         * sysdeps/unix/bsd/telldir.c: Likewise.
2931         * sysdeps/mach/hurd/seekdir.c: Likewise.
2932         * sysdeps/mach/hurd/readdir.c: Likewise.
2933         * sysdeps/mach/hurd/closedir.c: Likewise.
2934         * sysdeps/mach/hurd/opendir.c: Initialize the lock.
2935         * sysdeps/unix/opendir.c: Likewise.
2936         * sysdeps/mach/hurd/dirstream.h: Include <libc-lock.h>.
2937         (struct __dirstream): Add lock member using __libc_lock_define.
2938         * sysdeps/unix/dirstream.h: Likewise.
2939
2940         * sysdeps/stub/libc-lock.h (__libc_lock_fini): New macro.
2941
2942         * stdlib/mbstowcs.c: Pass address of pointer to mbsrtowcs.
2943
2944         * stdlib/wcstombs.c: Use wcsrtombs instead of mbsrtowcs.
2945
2946 Thu Jul  4 01:34:04 1996  Ulrich Drepper  <drepper@cygnus.com>
2947
2948         * locale/programs/stringtrans.c: Fix typo in copyright.
2949
2950         * stdio-common/printf-prs.c: Add casts to prevent
2951         signed<->unsigned warnings.
2952
2953         * stdio-common/printf-parse.h: Initialize state variable before
2954         calling mbrlen.
2955         * stdio-common/printf-prs.c: Don't initialize state variable here.
2956         * stdio-common/vfprintf.c: Don't initialize state variable.
2957         (vfprintf): While determining length of multibyte string don't
2958         try to be clever in determining characters to use for first
2959         call.
2960
2961         Add real implementation of multibyte<->wide char conversion
2962         functions.  The functions always convert between the fixed wide
2963         char format (ISO 10646 in UCS4) and the UTF8 representation of
2964         this character set.  Conversion between the currently used
2965         8bit character set and ISO 10646 will not take place.  This is
2966         what iconv() is for.
2967         * wcsmbs/wchar.h (mbstate_t): Define as structure to replace
2968         dummy definition.
2969         Add optimized version of `mbrlen' function.
2970         * wcsmbs/btowc.c (btowc): Restrict range of legal characters
2971         to 0...0x7f.
2972         * wcsmbs/wctob.c (wctob): Restrict range of legal characters
2973         to 0..0x7f.
2974         * wcsmbs/mbrlen.c: Make mbrlen a weak alias of __mbrlen.
2975         This is needed in the wchar.h header.
2976         * wcsmbs/mbrtowc.c: Replace dummy implementation.  Convert UTF8
2977         encoded character to UCS4.
2978         * wcsmbs/mbsinit.c: Replace dummy implementation.  Test COUNT
2979         element of `mbstate_t' for initial state.
2980         * wcsmbs/mbsrtowcs.c: Replace dummy implementation.  Convert UTF8
2981         encoded string to UCS4 string.
2982         * wcsmbs/wcrtomb.c: Replace dummy implementation.  Convert UCS4
2983         character to UTF8 encoded form.
2984         * wcsmbs/wcsrtombs.c: Replace dummy implementation.  Convert UCS4
2985         encoded string to UTF8 encoded form.
2986
2987 Tue Jul  9 06:19:29 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2988
2989         * sysdeps/unix/sysv/linux/configure.in: Use version number in cache
2990         variable name, so new a libc with new requirements won't fail to
2991         notice an insufficient Linux version.
2992
2993         * sysdeps/unix/sysv/linux/direntry.h: New file from David Mosberger.
2994
2995         * sysdeps/unix/sysv/linux/configure.in: Check for Linux 2.0.1 headers,
2996         instead of 2.0 headers.
2997
2998         * sysdeps/mach/hurd/Makefile (stamp-errnos): Uncomment CVS commit cmds.
2999
3000         * sysdeps/gnu/errlist.awk: Undo mib's bogus changes.  The
3001         sysdeps/mach/hurd/errnos.awk bug fix was the only correct change.
3002
3003         * sysdeps/generic/machine-gmon.h [NO_UNDERSCORES]: Declare _mcount
3004         before using it in lhs of weak_alias.
3005
3006         * nss/getXXent_r.c (setup): New function, broken out of SETFUNC_NAME.
3007         Call __nss_lookup when not setting STARTP.
3008         (SETFUNC_NAME, ENDFUNC_NAME, REENTRANT_GETNAME): Call it to set up for
3009         function-calling loop.
3010
3011 Tue Jul  9 00:14:52 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>
3012
3013         * sysdeps/mach/hurd/ioctls.h (MDMBUF, ECHO, TOSTOP, FLUSHO,
3014         PENDIN, NOFLSH): Undefine these at start if they are already
3015         defined to avoid collision with termbits.h.
3016         * sysdeps/generic/termbits.h (ECHO, TOSTOP, NOFLSH): Likewise.
3017         (MDMBUF, FLUSHO, PENDIN) [__USE_BSD]: Likewise.
3018
3019 Mon Jul  8 13:37:40 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3020
3021         * math/math.h (_Mfloat_, _Mlong_double_): New macros, defined iff not
3022         already defined to float, long double.  Use those macros for _Mdouble_
3023         defns when including mathcalls.h.
3024         * math/Makefile [$(long-double-fcts) != yes] (CPPFLAGS): Append
3025         -D_Mlong_double_=double.
3026
3027         Add more -lm functions to -lc because ldexp uses them.
3028         * math/Makefile (calls): Add s_finite, s_copysign, s_scalbn, s_modf.
3029         (routines): Remove s_modf, add s_frexpf, s_ldexpf; all but frexp and
3030         ldexp have both f and l code, and those have f though not l code.
3031
3032 Mon Jul  8 13:10:50 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>
3033
3034         * sysdeps/mach/hurd/errnos.awk: Skip entries where the
3035         error is 0.  The "placeholder" entries recently added to
3036         errno.texi convert to zero since `???/' is at the front of them.
3037         * sysdeps/gnu/errlist.awk (errnoh): Likewise.
3038
3039         * sysdeps/stub/setdomain.c (setdomainname): Declare NAME parm
3040         __const to conform with unistd.h.
3041
3042         * stdlib/stdlib.h (random): Declare return type to be int32_t.
3043
3044         * string/argz-delete.c (argz_delete): Use memmove instead of
3045         memcpy for possibly overlapping strings.
3046
3047 Mon Jul  8 02:14:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3048
3049         * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_alias): Use extern
3050         storage class.  GCC gives an error for non-extern data defns with the
3051         alias attribute.
3052
3053 Mon Jul  8 01:37:34 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
3054
3055         * string/argz-insert.c (__argz_insert): (__argz_insert): Use
3056         memmove instead of memcpy for possible overlapping strings.
3057
3058 Mon Jul  8 00:11:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3059
3060         * libc-symbols.h (weak_function): New macro.
3061         For GCC 2.7+ define as __attribute__ ((weak)).
3062         * elf/dl-minimal.c: Use weak_function as keyword in function defns
3063         instead of weak_symbol (NAME) after the defn.
3064         * stdlib/strtol.c: Likewise.
3065         * stdlib/strtod.c: Likewise.
3066         * sysdeps/mach/hurd/dl-sysdep.c: Likewise.
3067
3068         * sysdeps/alpha/dl-machine.h (elf_machine_rela) [RTLD_BOOTSTRAP]:
3069         If this is defined, don't declare _dl_rtld_map as weak, and
3070         don't check for MAP pointing to it.  RESOLVE is always null in this
3071         case, so test with #ifdef instead of if.
3072
3073         * libc-symbols.h (symbol_set_declare): Use weak_extern instead of
3074         weak_symbol.
3075         * csu/initfini.c (_init): Likewise.
3076         * locale/setlocale.c (DEFINE_CATEGORY): Likewise.
3077         * misc/efgcvt_r.c: Likewise.
3078         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
3079         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
3080
3081         * libc-symbols.h [ASSEMBLER] (weak_symbol): Macro removed.
3082         It was not used in any assembler code.
3083         (weak_symbol_asm): Renamed to weak_extern_asm.
3084         (weak_extern): New macro replaces weak_symbol for weak extern refs;
3085         define to weak_extern_asm for [!ASSEMBLER].
3086
3087 Sun Jul  7 18:42:06 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3088
3089         * libc-symbols.h [! ASSEMBLER] [HAVE_WEAK_SYMBOLS] (weak_symbol_asm,
3090         weak_alias_asm): New macros, renamed from weak_symbol/weak_alias;
3091         define those now as aliases.
3092         Change conditional to use __attribute__ syntax for GCC 2.7+, not 2.8+
3093         [GCC >= 2.7] [HAVE_WEAK_SYMBOLS] (weak_symbol): Do weak_symbol_asm
3094         after GCC weak attribute decl.
3095
3096         * sysdeps/gnu/errlist.awk (BEGIN): Initialize associative array ALIAS,
3097         map EWOULDBLOCK->EAGAIN, EDEADLOCK->EDEADLK.
3098         (element printer): Check for elt in ALIAS, instead of special case
3099         for EWOULDBLOCK.
3100
3101         * io/Makefile (headers): Add sys/vfs.h.
3102         * io/sys/vfs.h: New file.
3103
3104         * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Don't unlock the
3105         critical section lock before unlinking dying active resources.
3106         The unlock just before return is right (i.e. old code unlocked twice).
3107
3108 Sun Jun  2 22:28:43 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3109
3110         * stdio/linewrap.c (lwupdate): Update D->point_offs when done.
3111         Use memmove instead of memcpy where overlap is possible (not
3112         necessary using current implementation of memcpy, but...).
3113         (__line_wrap_update): Don't update D->point_offs (lwupdate does it).
3114
3115 Fri May 31 11:48:46 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3116
3117         * stdio/linewrap.c (lwupdate): New function, mostly was
3118         __line_wrap_update.  Use POINT_COL field instead of POINT.
3119         (__line_wrap_output): Use lwupdate.
3120         (__line_wrap_update): New function.
3121         (ensure_unwrapped, ensure_wrapped): New functions.
3122         (line_wrap_set_lmargin, line_wrap_set_rmargin,
3123         line_wrap_set_wmargin, line_wrap_point): Use __line_wrap_update.
3124
3125         * stdio/linewrap.h (struct line_wrap_data): Rename POINT field to
3126         POINT_COL. Add POINT_OFFS field.
3127         (__line_wrap_update): New decl.
3128         (line_wrap_set_lmargin, line_wrap_set_rmargin,
3129         line_wrap_set_wmargin, line_wrap_point): Use __line_wrap_update.
3130
3131 Fri Jul  5 17:34:47 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3132
3133         * login/logout.c (logout): Do nothing if getutline_r returns ESRCH.
3134
3135         * login/pututline_r.c (pututline_r): Since we assign RESULT from
3136         lseek now, check that it's >= 0, not == 0.
3137
3138 Wed Jul  3 13:28:04 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3139
3140         * login/login.c (login): Make a copy of *UT, fill in various
3141         fields that we supply (ut_line, ut_type, ut_pid), and use the copy
3142         in place of UT.
3143
3144         * login/getutline_r.c (getutline_r): When we return ESRCH, mark
3145         UTMP_DATA->ubuf invalid (by setting UTMP_DATA->loc_utmp to 0).
3146
3147 Fri Jul  5 12:22:51 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3148
3149         * hurd/hurdsig.c (_hurd_internal_post_signal): In case of handled
3150         signal during critical section doing interruptible RPC, if
3151         _hurdsig_abort_rpcs wants to change thread state, do thread_set_state
3152         before thread_resume.  If in critical section, pass 0 for SIGNO to
3153         _hurdsig_abort_rpcs so rpc is interrupted regardless of SA_RESTART.
3154
3155         * extra-lib.mk: Fix typo in $(extra-libs-others) conditional.
3156
3157         * sysdeps/unix/sysv/linux/sys/user.h: New file.
3158         * sysdeps/unix/sysv/linux/Dist: Add it.
3159         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add sys/user.h.
3160
3161         * nss/nss_files/files-parse.c (parse_list): Set EOL from LINE if it
3162         points within DATA->linebuffer; otherwise use all of DATA->linebuffer
3163         itself, no need to skip past a NUL.
3164
3165         * nss/nsswitch.h (known_function): Comment fix.
3166         * nss/nsswitch.c (nss_lookup_function): Rewritten using __tsearch
3167         directly.  Do the lookup and insertion with a single call, and fill in
3168         the tree node afterwards if new.
3169         (known_compare, nss_find_entry, nss_insert_entry): Functions removed.
3170
3171         * misc/sys/select.h: #define __need_timespec before <sys/time.h> incl.
3172         (struct timeval): Add bodiless decl for scope.
3173
3174         * time/time.h (struct timespec): Rename members from `ts_*' to `tv_*'.
3175         Move struct timespec defn outside [_TIME_H] so it can be got with
3176         #define __need_timespec.
3177
3178         * time/sys/time.h (TIMEVAL_TO_TIMESPEC): Use `tv_*' instead of `ts_*'
3179         for `struct timespec' member names.
3180         (TIMESPEC_TO_TIMEVAL): Likewise.
3181
3182         * nss/Makefile (extra-libs-others): New variable.
3183
3184         * extra-lib.mk: Don't test for $($(lib)-no-lib-dep).  Instead match
3185         $(lib) in $(extra-libs-others).
3186         * sunrpc/Makefile (extra-libs-others): New variable.
3187         (librpcsvc-no-lib-dep): Variable removed.
3188
3189         * elf/rtld.c: Define RTLD_BOOTSTRAP before #include "dynamic-link.h".
3190         * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove weak decl for
3191         _dl_rtld_map.
3192         (RESOLVE): New macro, defined differently based on [RTLD_BOOTSTRAP].
3193         (elf_machine_rel): Use it instead of testing fn ptr arg at runtime.
3194         (elf_machine_rel: case R_386_32) [! RTLD_BOOTSTRAP]: Declare
3195         _dl_rtld_map weak only here.
3196
3197         * posix/unistd.h [__USE_BSD]: Declare getdomainname, setdomainname.
3198
3199 Thu Jul  4 05:21:59 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3200
3201         * login/utmp.h: Fix typos.
3202
3203         * misc/syslog.c (vsyslog): Use __send instead of send and
3204         __connect instead of connect to avoid name-space collisions (e.g.,
3205         with psgetty).
3206
3207 Wed Jul  3 16:29:41 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3208
3209         * nss/getXXbyYY_r.c (REENTRANT_NAME): Cast FCT in __nss_next call.
3210
3211         * sysdeps/generic/sbrk.c: Always call __brk (0) to update __curbrk.
3212
3213         * malloc/malloc-size.c (malloc_usable_size): Renamed from
3214         malloc_object_allocation_size.
3215         * malloc/malloc.h: Fix decl.
3216
3217         * sys/select.h: New file, wrapper header.
3218
3219         * posix/sys/types.h [__USE_BSD]: Include <sys/select.h>; remove
3220         fd_set, associated macros, and select decl.
3221
3222         * sysdeps/posix/isfdtype.c: New file.
3223
3224 Tue Jul  2 23:45:14 1996  Ulrich Drepper  <drepper@cygnus.com>
3225
3226         The latest Japanese proposal for POSIX locales renames the
3227         CHARMAP keyword in locale definition files to CHARCONV.
3228         * locale/programs/ld-ctype.c, locale/programs/locales.h: Rename
3229         function ctype_is_charmap to ctype_is_charconv.
3230         * locale/programs/locfile-kw.gperf: Replace charmap keyword with
3231         charconv.
3232         * locale/programs/locfile-token.h: Add definition of token
3233         charconv.
3234         * locale/programs/locfile.c: Recognize charconv keyword.  Rename
3235         lables according to this.
3236
3237         * locale/weight.h (get_weight): Cast constants to prevent
3238         warnings.
3239
3240         * stdlib/strtod.c, stdlib/strtol.c, string/strcoll.c,
3241         string/strxfrm.c: Add some more casts to prevent signed<->unsigned
3242         warnings.
3243
3244         New stuff described in P1003.1g.
3245         * misc/Makefile (headers): Add sys/select.h.
3246         (routines): Add pselect.
3247         * misc/sys/select.h: New file.  Declare select functions and
3248         needed data types and macros.
3249         * sysdeps/generic/pselect.c: New file.  Add generic implementation
3250         of pselect() function which uses select().
3251
3252         * posix/getconf.c: Recognize new variables from P1003.1g.
3253         * posix/posix1_lim.h: Define _POSIX_FD_SETSIZE, _POSIX_QLIMIT,
3254         _POSIX_HIWAT, and _POSIX_UIO_MAXIOV.
3255         * posix/unistd.h: Add description of the P1003.1g variables.
3256         * sysdeps/generic/confname.h: Define _SC_* values for new
3257         variables.
3258         * sysdeps/posix/fpathconf.c (fpathconf): Add handling of
3259         _PC_SOCK_MAXBUF.
3260         * sysdeps/stub/fpathconf.c (fpathconf): Ditto.
3261         * sysdeps/posix/sysconf.c (sysconf): Add handling of new
3262         P1003.1g variables.
3263         * sysdeps/stub/sysconf.c (sysconf): Ditto.
3264         * sysdeps/unix/sysv/linux/posix_opt.h: Define _POSIX_POLL and
3265         _POSIX_SELECT since Linux has this.
3266
3267         * socket/Makefile (routines): Add isfdtype.
3268         * sysdeps/generic/sys/socket.h: Add prototype for isfdtype.
3269         * sysdeps/stub/isfdtype.c: New file.  Stub implementation of
3270         isfdtype.
3271
3272         * wcsmbs/wcrtomb.c (wcrtomb): Fix typo.
3273
3274 Wed Jul  3 11:26:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3275
3276         * elf/Makefile (LDFLAGS-dl.so): New variable.
3277         (libdl.so): Depend on eval.so.
3278         (distribute): Add eval.c.
3279         * elf/eval.c: New file.
3280
3281         * time/strftime.c (strftime: do_number): Adjust P and I after sprintf
3282         in case it wrote fewer than MAXDIGITS chars.
3283
3284         * stdio/fwrite.c (fwrite: fill_buffer): Separate flushing for last
3285         newline from flushing full buffer in loop, fix test so no fflush is
3286         done when last byte written exactly fills the buffer.
3287
3288         * nss/Makefile ($(services:%=$(objpfx)libnss_%.so)): Depend on libc.so.
3289
3290         * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): Variable removed.
3291         (libc.so): Instead, give this deps on lib{mach,hurd}user.so.
3292
3293         * elf/dl-debug.c (_dl_debug_initialize): Use LDBASE arg instead of
3294         extracting _dl_rtld_map.l_addr.
3295
3296         * sysdeps/i386/dl-machine.h (elf_machine_rel): Declare _dl_rtld_map as
3297         weak.
3298         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
3299
3300         * shlib-versions (*-*-*): Set libnss_db=1.
3301
3302 Tue Jul  2 10:44:37 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3303
3304         * elf/rtld.c (dl_main): Set _dl_rtld_map's DT_DEBUG location too.
3305
3306         * rpm/template (%build): Use @prefix@ instead of always /usr.
3307         Set up configparms only if @prefix@ is in fact /usr.
3308         * rpm/Makefile ($(config)): Substitute $(prefix) for @prefix@.
3309
3310         * elf/Makefile: Add missing endif.
3311
3312         * nss/nss_files/files-ethers.c (ntohost): Fix db key.
3313
3314         * nss/nss_files/files-network.c: Pass empty for new DB_LOOKUP args.
3315         (DATABASE): Define this instead of DATAFILE.
3316         * nss/nss_files/files-hosts.c: Likewise.
3317         (hostbyname): Use LOOKUP_NAME macro.
3318
3319         * nss/nss_db/db-XXX.c: New file.
3320         * nss/Makefile (services): Add db.
3321         (libnss_db-inhibit-o): New variable.
3322         (libnss_db-routines): New variable.
3323         (distribute): Append db-XXX.c.
3324         (libnss_db.so): Depend on libdb.so and libnss_files.so.
3325         ($(libnss_db-routines:%=$(objpfx)%.c)): New static pattern rule.
3326
3327         * nss/nss_files/files-XXX.c (DB_LOOKUP): Add KEYSIZE and KEYPATTERN
3328         args, ignored.
3329         (DATAFILE): New macro.
3330         * nss/nss_files/files-parse.c (GENERIC): If undefined, define to
3331         "files-XXX.c".
3332         * nss/nss_files/files-rpc.c: Include GENERIC instead of "files-XXX.c".
3333         Pass db key args to DB_LOOKUP.
3334         (DATAFILE): Macro removed.
3335         (DATABASE): New macro replaces it, lacks "/etc/" prefix.
3336         * nss/nss_files/files-service.c: Likewise.
3337         * nss/nss_files/files-pwd.c: Likewise.
3338         * nss/nss_files/files-proto.c: Likewise.
3339         * nss/nss_files/files-grp.c: Likewise.
3340         * nss/nss_files/files-ethers.c: Likewise.
3341
3342         * elf/linux-compat.c: File removed.
3343         * elf/Makefile (distribute): Remove linux-compat.c.
3344         (ld-linux.so.1): Remove target and associated variables.
3345
3346         * sunrpc/xdr.c: Remove malloc decl.
3347         * sunrpc/portmap.c: Likewise.
3348
3349         * sunrpc/svc_tcp.c (abort): Don't declare.  Instead define as macro
3350         casting abort to fn returning bool_t.
3351
3352         * nss/nss_files/files-parse.c [EXTERN_PARSER]: Do an extern decl of
3353         the parser function.
3354         [EXTERN_PARSER] (LINE_PARSER): Define to empty.
3355         * nss/nss_files/files-pwd.c (EXTERN_PARSER): Define it.
3356         * nss/nss_files/files-grp.c: Likewise.
3357
3358         * Makeconfig (BUILD_CC): If undefined, define to $(CC).
3359
3360         * sunrpc/rpc/types.h: Include stdlib.h instead of declaring malloc.
3361
3362         * Makeconfig (built-program-cmd): Use $(rtld-installed-name) in place
3363         of ld.so so lookups for that soname find it.
3364
3365         * nss/Makefile (libnss_dns.so): Depend on libresolv.so.
3366         (resobjdir, LDLIBS-nss_dns.so): Variables removed.
3367
3368         * pwd/fgetpwent.c: Don't include ../nss/nss_files/files-parse.c to
3369         define parse_line function.
3370         (parse_line): #define to _nss_files_parse_pwent and
3371         add extern decl for that.
3372
3373         * nss/nss_files/files-XXX.c (internal_getent): Return
3374         NSS_STATUS_TRYAGAIN for ERANGE error.
3375
3376         * sysdeps/i386/strtok.S (LreturnNULL): Save current state ptr instead
3377         of null, so next round returns null again instead of bombing.  Fix
3378         from drepper.
3379
3380         * nss/nss_files/files-parse.c (LINE_PARSER): Take new first arg EOLSET.
3381         Remove ; after `ENTDATA_DECL (data)'.
3382         Truncate line at strpbrk (line, EOLSET "\n").
3383         (ENTDATA_DECL): Put ; at end.
3384         (MIDLINE_COMMENTS): Macro removed.
3385         * nss/nss_files/files-ethers.c: Pass new argument.
3386         * nss/nss_files/files-hosts.c: Likewise.
3387         * nss/nss_files/files-network.c: Likewise.
3388         * nss/nss_files/files-parse.c: Likewise.
3389         * nss/nss_files/files-proto.c: Likewise.
3390         * nss/nss_files/files-rpc.c: Likewise.
3391         * nss/nss_files/files-service.c: Likewise.
3392         * grp/fgetgrent.c: Likewise.
3393         * pwd/fgetpwent.c: Likewise.
3394         * nss/nss_files/files-pwd.c: Get parse_line with extern decl, since
3395         fgetpwent.c already defines it.
3396         * nss/nss_files/files-grp.c: Likewise.
3397
3398         * elf/dl-load.c (_dl_map_object): Use any object with matching l_name
3399         as well as any matching with l_libname.  Fix DT_SONAME lookup to use
3400         string table properly.
3401
3402         * elf/rtld.c (dl_main): Set _dl_rtld_map.l_name from _dl_argv[0] when
3403         invoked directly, and l_libname from that if PT_INTERP missing.
3404         Set l_name from l_libname only if not set from argv.
3405
3406         * time/europe, time/northamerica: Updated from ADO 96i.
3407
3408 Mon Jul  1 15:44:34 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3409
3410         * stdio-common/tst-ungetc.c: Include unistd.h.
3411
3412         * inet/Makefile (routines): Change getnetbypt to getnetbyad.
3413
3414 Mon Jul  1 13:32:42 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3415
3416         * hurd/report-wait.c (describe_number): Make I unsigned long.
3417
3418         * login/login.c (login): Only Frob OLD->ut_type if getutline_r
3419         actually found any entry.
3420
3421         * login/pututline_r.c (pututline_r): If not located after any
3422         entry don't use UTMP_DATA->ubuf, and seek to the end before adding.
3423         Lock the file before stating.
3424
3425 Mon Jul  1 12:29:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3426
3427         * nss/Makefile (databases): Change host to hosts.
3428         * nss/host-lookup.c: Renamed to nss/hosts-lookup.c.
3429
3430         * nss/nsswitch.c (nss_parse_service_list): Use const for NAME.
3431
3432         * nss/nss_files/files-parse.c (parse_list): Correct alignment fixup.
3433
3434         * string/string.h (strndupa): Pass missing arg to strnlen.
3435
3436         * inet/getnetbypt_r.c: Renamed to ...
3437         * inet/getnetbyad_r.c: this; fixed function name.
3438         * inet/getnetbypt.c: Renamed to ...
3439         * inet/getnetbyad.c: this; fixed function name.
3440
3441 Sat Jun 29 01:08:35 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3442
3443         * grp/getgrgid_r.c (LOOKUP_TYPE): Define to struct group, not
3444         struct passwd.
3445
3446 Fri Jun 28 23:25:35 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3447
3448         * login/login.c (login): Initialize DATA so that setutent_r will
3449         actually do something.
3450
3451 Fri Jun 28 16:53:01 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3452
3453         * resolv/res_hconf.c (strndup): Remove function.
3454
3455         * nss/nsswitch.c (nss_lookup_function): Declare loadbase and ref
3456         using ElfW() instead of Elf32_*.
3457
3458         * sysdeps/unix/sysv/linux/alpha/init-first.h,
3459         sysdeps/unix/sysv/linux/m68k/init-first.h,
3460         sysdeps/unix/sysv/linux/i386/init-first.h: New files.
3461         * sysdeps/unix/sysv/linux/init-first.c: Use platform-dependent
3462         init-first.h to make abstract machine dependent parts of
3463         initialization.
3464
3465         * sysdeps/unix/alpha/sysdep.h: Undo PIC-optimization of syscall
3466         error handling.  It's safer that way.
3467
3468         * sysdeps/unix/alpha/sysdep.S: Make ldgp part of the prologue.
3469         Fix by Richard Henderson.
3470
3471         * sysdeps/alpha/dl-machine.h (elf_alpha_fix_plt): Fix
3472         typo/extraneous whitespace.
3473
3474         * sunrpc/xdr.c (xdr_int, xdr_u_int): Use <limits.h> to test
3475         determine what integer sizes we're dealing with.
3476
3477 Fri Jun 28 15:46:02 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
3478
3479         * hurd/hurdsig.c (_hurd_internal_post_signal): In pending signal
3480         check for signal zero, repair logical sense of test by
3481         parenthesizing correctly.
3482
3483         * hurd/hurdsig.c (_hurd_internal_post_signal): In
3484         check-for-pending signals code, release _hurd_siglock before
3485         jumping to deliver_pending.
3486
3487 Thu Jun 27 04:04:27 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3488
3489         * configure.in (config_machine): Make ELF the default even for
3490         Linux/Alpha unless a configuration of the form *-*-linux*ecoff
3491         is specified.
3492
3493 Fri Jun 28 07:27:10 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3494
3495         * nss/nss_files/files-hosts.c (ENTDATA): Define it.
3496         * nss/nss_files/files-parse.c (struct parser_data): Define entdata
3497         member only #ifdef ENTDATA.
3498         (ENTDATA_DECL): New macro.
3499         (LINE_PARSER): Use it for entdata decl.
3500         (parse_list): Find the space for LIST from DATA->linebuffer instead of
3501         from the input LINE, which might not be writable buffer space.
3502         (LINE_PARSER): Use `parser_stclass' in place of `static inline'.
3503         [ENTDATA] (parser_stclass): #define to `static inline'.
3504         [!ENDATA] (parser_stclass): #define to empty.
3505         [!ENTDATA] (parse_line): #define to _nss_files_parse_ENTNAME; the
3506         function is exported to -lnss_files users.
3507
3508         * string/strndup.c: Add missing arg.
3509
3510         * string/string.h (strndupa): Likewise.
3511         * string/strndup.c (strndup): Always terminate the string.
3512
3513 Thu Jun 27 14:22:31 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3514
3515         * stdio/Makefile (routines): Add vscanf.
3516         * stdio-common/Makefile (routines): Remove vscanf.
3517         * stdio-common/vscanf.c: Move to ...
3518         * stdio/vscanf.c: here.
3519
3520         * rpm/Makefile (headers, install-lib, install-lib.so,
3521         versioned, install-bin, install-sbin, install-data,
3522         install-others): Add $(-VARIABLE).
3523
3524 Fri Jun 28 02:41:08 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3525
3526         * nss/Makefile (databases): New variable.
3527         (routines, libnss_files-routines): Use it.
3528         (subdir-dirs): Compute from $(services).
3529
3530         * sysdeps/unix/sysv/linux/syscalls.list (create_module, delete_module,
3531         init_module, klogctl): Use EXTRA in the "caller" column so these get
3532         added to unix-extra-syscalls and thus compiled in misc.
3533
3534         * string/Makefile (routines): Add strndup.
3535         * string/strndup.c: New file.
3536         * string/string.h: Declare strndup.
3537         (strndupa): New macro.
3538
3539         * string/string.h: Declare __strdup.
3540         * string/strdup.c: Deansideclized.  Define __ name and weak alias.
3541
3542         * string/string.h: Don't define memccpy as macro for [__OPTIMIZE__].
3543
3544 Thu Jun 27 02:49:28 1996  Ulrich Drepper  <drepper@cygnus.com>
3545
3546         * catgets/gencat.c: Add casts to avoid signed<->unsigned warnings.
3547
3548         * grp/initgroups.c (initgroups): De-ansi-fy.
3549         Move declaration of NGROUPS and GROUPS outside #if so that
3550         the code compiles for NGROUPS_MAX != 0.
3551
3552         * inet/Makefile (headers): Add netinet/ether.h and netinet/if_ether.h.
3553         (routines): Add ether_aton, ether_aton_r, ether_hton, ether_line,
3554         ether_ntoa, ether_ntoa_r, and ether_ntoh.
3555         * inet/ether_aton.c, inet/ether_aton_r.c, inet/ether_hton.c,
3556         inet/ether_line.c, inet/ether_ntoa.c, inet/ether_ntoa_r.c,
3557         inet/ether_ntoh.c: New files.  Implementation of functions to
3558         handle Ethernet address to host mapping.
3559         * inet/netinet/ether.h: New file.  Declare ether_* functions.
3560         * netinet/ether.h: Wrapper around inet/netinet/ether.h for glibc
3561         compilation.
3562         * nss/ethers-lookup.c: New file.  Lookup function for ethers database.
3563         * nss/Makefile (routines): Add ethers-lookup.
3564         (libnss_files-routines): Add files-ethers.
3565
3566         * nss/getXXent_r.c: Don't define set*ent and end*ent function
3567         with _r suffix.
3568
3569         * nss/nss_files/files-XXX.c (internal_endent): Don't reset
3570         KEEP_STREAM every time called.
3571         (_nss_files_end): Reset KEEP_STREAM here instead.
3572         (internal_getent): If STREAM == NULL try to open instead of
3573         signalling error.
3574         Use cast to prevent warning.
3575         Terminate read line in case the buffer is too small.
3576
3577         * nss/nss_files/files-ethers.c: New file.  Implementation of
3578         Ethernet adress<->hostname lookup through files interface.
3579
3580         * stdlib/mbstowcs.c: Define based on mbsrtowcs().
3581         * stdlib/mbtowc.c: Define based on mbrtowc().
3582         * stdlib/wcstombs.c: Define based on wcsrtombs().
3583         * stdlib/wctomb.c: Define based on wcrtomb().
3584
3585         * sunrpc/xdr.c (xdr_u_int): Avoid bogus call to
3586         unexpected_sizes_in_xdr_u_int.
3587
3588         * sysdeps/generic/netinet/if_ether.h: New file.  Generic declaration
3589         of `struct ether_addr'.
3590         * sysdeps/unix/sysv/linux/netinet/if_ether.h: New file.  Linux specific
3591         declaration of `struct ether_addr'.
3592
3593         * wcsmbs/mbrtowc.c: Handle case where argument PS is NULL.
3594         * wcsmbs/mbsrtowcs.c: Ditto.
3595         * wcsmbs/wcrtomb.c: Ditto.
3596         * wcsmbs/wcsrtombs.c: Ditto.
3597
3598         * wcsmbs/mbsinit.c: Prepare for PS being NULL.
3599
3600 Wed Jun 26 13:19:35 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3601
3602         * hurd/get-host.c <fcntl.h>: New include.
3603         * hurd/set-host.c <fcntl.h>: New include.
3604         (_hurd_set_host_config): Include NEW in args to dir_link.
3605         Return NWROTE, not NREAD.
3606
3607         * sysdeps/mach/hurd/getcwd.c
3608         (_hurd_canonicalize_directory_name_internal): Don't deallocate
3609         DOTID & DOTDEVID until we're finished with them (we need to keep
3610         them at least until we've fetched the next level of id ports, so
3611         that mach will be able to use the same name if they're the same).
3612         Add inner_errlose: label, which deallocates DOTID & DOTDEVID and
3613         jumps to errlose, for those places where such cleanup is needed.
3614
3615 Wed Jun 26 01:58:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3616
3617         * nss/nss_files/files-parse.c (parse_list): Count null in EOL calc.
3618
3619         Move DB code into separate -ldb library.
3620         * db/Makefile (extra-libs): New variable, list libdb.
3621         (routines): Renamed to libdb-routines.
3622         * shlib-versions: Add libdb=2.
3623
3624         * nss/network-lookup.c (DEFAULT_CONFIG): New macro.
3625         * nss/host-lookup.c (DEFAULT_CONFIG): New macro.
3626
3627         * nss/nsswitch.c (nss_parse_service_list): Use __strncasecmp instead
3628         of strncasecmp.  Extend syntax to grok [!foo=bar].
3629
3630         * sysdeps/generic/strncase.c: Define __strncasecmp with strncasecmp as
3631         weak alias.
3632         * string/string.h: Declare __strncasecmp.
3633
3634         * nss/nsswitch.c (nss_parse_file): Call __getline, not getline.
3635         (service_alias): Variable removed.
3636         (nss_parse_service_list): New function, broken out of nss_getline.
3637         Remove alias conversion; we will just use symlinks.
3638         (__nss_database_lookup): Take new string arg DEFCONFIG.
3639         If no entry exists, make one with service list parsed from that.
3640         * nss/nsswitch.h: Update protocol for __nss_database_lookup.
3641         * nss/XXX-lookup.c (DEFAULT_CONFIG): New macro, set to 0 if undefined.
3642         (DB_LOOKUP_FCT): Pass it to _nss_database_lookup.
3643
3644         * grp/initgroups.c: Rewritten using getgrent.  Handle unlimited group
3645         list size.
3646
3647         * sunrpc/xdr.c (xdr_int): #if 0 out unresolved references in dead code.
3648
3649 Wed Jun 26 01:56:50 1996  Ulrich Drepper  <drepper@cygnus.com>
3650
3651         * locale/programs/locale.c (long_options): Short form of
3652         --version option is `-V'.
3653         (main): Recognize `-V' as option, not `-v'.
3654         Call `usage' instead of printing error message for illegal
3655         option.
3656         (usage): Document `-V'.
3657
3658 Tue Jun 25 17:22:55 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3659
3660         * sysdeps/mach/hurd/getcwd.c
3661         (_hurd_canonicalize_directory_name_internal): Initialize PARENT to
3662         THISDIR, and don't ever deallocate PARENT unless it's != THISDIR.
3663
3664 Tue Jun 25 10:58:23 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3665
3666         * inet/getrpcent.c: Fix macros.
3667         * inet/getrpcent_r.c: Fix macros.
3668
3669         * elf/dlsym.c (dlsym): Search the global scope if HANDLE is null.
3670
3671         * elf/dl-load.c (_dl_map_object_from_fd): Initialize L.
3672
3673 Tue Jun 25 09:55:47 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
3674
3675         * catgets/gencat.c (write_out): Use %Zu to print variables of type
3676         size_t.
3677         * resolv/res_debug.c (__p_rr): Print size_t variable as %lu and
3678         cast it to (unsigned long) to make it work both on 32 and 64
3679         bit architectures.
3680
3681 Sat Jun 22 13:05:25 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3682
3683         * locale/Makefile (distribute): Add `programs/' prefix to all
3684         files in that directory.
3685
3686         * Makerules (distinfo-vars): Assign subdir directly so that `ifdef
3687         subdir' works.
3688
3689         * MakeTAGS (sources, headers): Make them simply expanded variables
3690         so that all-dist is expanded before it is changed.
3691
3692 Tue Jun 25 02:59:11 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3693
3694         * Make-dist (dist): Don't depend on crypt tar file.  Remove that rule.
3695         * Makefile (subdirs): Remove crypt.
3696         * crypt: Directory removed.  It will be made an independent library
3697         distribution.
3698
3699         * Makefile (distribute): Add rpm/{Makefile,teplate,rpmrc}.
3700
3701         * inet/getrpcent_r.c (DATABASE_NAME): New macro.
3702
3703         * inet/getrpcbynumber.c (BUFLEN): New macro.
3704
3705         * configure.in (--no-whole-archive check): Remove backslashes in cmd.
3706
3707         * Makefile (headers): Add libc-lock.h.
3708         * sysdeps/stub/libc-lock.h: New file.
3709
3710         * inet/getrpcbynumber.c: Remove _r typo.
3711
3712         * elf/dl-load.c (_dl_map_object): Fix typo in last change.
3713
3714         * nss/nss_files/files-parse.c (parse_list): Reset ELT for elements
3715         after the first!
3716
3717         * nss/nsswitch.c (__nss_database_lookup): If nsswitch.conf is missing
3718         or doesn't mention DATABASE, use an internal default equivalent to
3719         "DATABASE: compat [NOTFOUND=return] dns [NOTFOUND=return] files".
3720         (nss_lookup_function): Call nss_new_service as needed.
3721         (nss_parse_file): Don't bother calling nss_new_service here.
3722
3723         * grp/fgetgrent.c (LINE_PARSER): Pass zero SWALLOW arg for fields.
3724         * pwd/fgetpwent.c: Likewise.
3725
3726         * malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
3727         * malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
3728         * malloc/malloc-size.c: New file.
3729         * malloc/malloc-walk.c: New file.
3730
3731         * malloc/malloc-find.c (malloc_find_object_address): Return null if
3732         PTR is outside the heap.
3733
3734         * elf/dl-load.c (_dl_map_object): If the requested name matches the
3735         soname of a loaded object, use that object.
3736
3737 Mon Jun 24 19:57:01 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3738
3739         * Makefile (subdirs): Add nss.
3740
3741         * inet/Makefile (routines): Add getrpcent, getrpcbyname,
3742         getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
3743         * inet/getrpcbynumber_r.c: New file.
3744         * inet/getrpcbynumber.c: New file.
3745         * inet/getrpcbyname.c: New file.
3746         * inet/getrpcbyname_r.c: New file.
3747         * inet/getrpcent_r.c: New file.
3748         * inet/getrpcent.c: New file.
3749         * nss/rpc-lookup.c: New file.
3750         * nss/nss_files/files-rpc.c: New file.
3751         * nss/Makefile (routines): Add rpc-lookup.
3752         (libnss_files-routines): Add files-rpc.
3753         * sunrpc/Makefile (routines): Remove getrpcent.
3754         * sunrpc/getrpcent.c: File removed.
3755
3756         * nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
3757         non-null on entry.
3758
3759         * Makeconfig (rpath-link): Add $(nssobjdir).
3760         (nssobjdir): New variable.
3761
3762         * Makerules: Move shared library building before objects rules, so
3763         versions are known before extra-lib.mk gets included.
3764         * extra-lib.mk (lib-noranlib): Depend on the shared object too.
3765
3766         * pwd/getpwuid.c: Rewritten using nss.
3767         * pwd/getpwnam.c: Likewise.
3768         * pwd/getpwent.c: Likewise.
3769         * grp/getgrnam.c: Likewise.
3770         * grp/getgrgid.c: Likewise.
3771         * grp/getgrent.c: Likewise.
3772         * pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
3773         * pwd/getpwent_r.c: New file.
3774         * pwd/getpwnam_r.c: New file.
3775         * pwd/getpwuid_r.c: New file.
3776         * grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
3777         * grp/getgrnam_r.c: New file.
3778         * grp/getgrgid_r.c: New file.
3779         * grp/getgrent_r.c: New file.
3780         * grp/Makefile (routines): Remove grpopen, grpread.
3781         * pwd/Makefile (routines): Remove pwdopen, pwdread.
3782         * grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
3783
3784         * pwd/fgetpwent.c: Rewritten using files-parse.c.
3785         * grp/fgetgrent.c: Likewise.
3786
3787         * nss/Makefile (routines): Add grp-lookup and pwd-lookup.
3788         * nss/pwd-lookup.c, nss/grp-lookup.c: New files.
3789         * nss/nss_files/files-grp.c: New file.
3790         * nss/nss_files/files-pwd.c: New file.
3791
3792         * nss/Makefile (subdir-dirs): New variable; use it in vpath.
3793
3794         * nss/nss_files/files-parse.c: New file.
3795         * nss/nss_files/files-XXX.c: New file.
3796         * nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
3797         nss/nss_files/files-service.c, nss/nss_files/files-network.c:
3798         Rewritten using them.
3799
3800         * nss/Makefile (libnss_files-routines): Remove files-host.
3801         Add files-hosts, files-grp, files-pwd.
3802
3803         * nss/nss_dns/dns-network.c: Don't include <pthread.h>.
3804
3805 Mon Jun 24 22:39:12 1996  Richard Henderson  <rth@tamu.edu>
3806
3807         * sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
3808         A .plt entry now loads the .rela.plt offset directly rather
3809         than making us calculate it.
3810
3811 Sun Jun 23 15:24:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3812
3813         * time/Makefile ($(installed-localtime-file) rule): Do
3814         $(make-target-directory) first.
3815
3816         * resolv.h: Fix wrapper for resolv/resolv.h.
3817
3818         * configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
3819         Compile dummy file and pass -nostdlib -nostartfiles so as not to
3820         require installed libraries.
3821
3822         * shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
3823         libnss_dns=1.
3824
3825 Sun Jun 23 19:42:05 1996  Ulrich Drepper  <drepper@cygnus.com>
3826
3827         * resolv/Makefile (distribute): Remove res_hconf.h; add mapv4v6addr.h
3828         and mapv4v6hostent.h.
3829         (routines): Move res* and gethnamaddr into libresolv-routines.
3830         (libresolv-routines): New variable, put them there.
3831         (extra-libs): New variable, list libresolv.
3832         (CPPFLAGS): Add -D for get*by* to res_get*by*.
3833
3834         * resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
3835
3836         * inet/herrno.c: New file.
3837
3838         * resolv/res_init.c: Remove res_hconf calls.
3839
3840         * nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
3841         nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
3842         nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
3843         nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
3844         nss/service-lookup.c: New files.  Implementation of name
3845         service switch, following the approach in Solaris.
3846         Interface specification and general structure inspired by Peter
3847         Eriksson <pen@lysator.liu.se>.
3848         * nss/nss_files/files-host.c, nss/nss_files/files-network.c,
3849         nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
3850         Implementation of libnss_files.so module for file based databases
3851         in NSS service.
3852         * nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
3853         if libnss_dns.so module for DNS name lookup in NSS service.
3854
3855         * inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
3856         inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
3857         Changed to serve as interface to NSS.
3858         * inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
3859         inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
3860         inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
3861         inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
3862         inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
3863         inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
3864         inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files.  Implement
3865         interfaces to NSS, including reentrant functions.
3866
3867         * resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
3868         resolv/sethostent.c: Removed:  Obsoleted by NSS.
3869
3870         * resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
3871         gethnamaddr.c.  These private functions are now used in more
3872         than one file.
3873
3874         * resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
3875
3876 Sat Jun 22 16:49:47 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3877
3878         * rpm/Makefile ($(config)): Make sure the word list in the for
3879         loop is syntactically non-empty.
3880
3881 Sat Jun 22 21:29:52 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3882
3883         * Version 1.92 test release.
3884
3885 Sat Jun 22 23:30:07 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3886
3887         * sysdeps/unix/sysv/linux/syscalls.list (ksyslog_ctl): Rename
3888         to klogctl to match prototype in sys/klog.h.
3889
3890         * sysdeps/posix/libc_fatal.c: Add include of <string.h>.
3891         * sysdeps/unix/sysv/linux/gethostid.c: Ditto.
3892
3893         * sysdeps/posix/getcwd.c (__canonicalize_directory_name_internal):
3894         Remove.  Code is now part of __getcwd again.  The old function
3895         never really worked for anything but THISDIR==".".
3896
3897         * sysdeps/alpha/Makefile (CFLAGS-rtld.c): Add -mbuild-constants
3898         only when building ELF version of library.
3899
3900         * libio/libioP.h (_IO_vscanf): Add prototype.
3901
3902         * posix/unistd.h (syscall): Change sysno arg and return value
3903         to int long.
3904
3905 Sat Jun 22 10:44:09 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3906
3907         * version.h (VERSION): Updated to 1.92.
3908
3909         * misc/Makefile (headers): Add ar.h.
3910         * misc/ar.h: New file.
3911
3912         * config.make.in (BUILD_CC): New variable.
3913         * configure.in: Check for BUILD_CC if $host != $build.
3914
3915         * posix/glob.c: Include <alloca.h> only [HAVE_ALLOCA_H], not [sparc].
3916
3917         * Makerules [! objects] (subdir_lib): Depend on the stamp$o files.
3918         (stamp$o files): New targets, create them empty, no deps.
3919
3920         * rpm/template (Source): New field.
3921         (%prep, %build, %install): New sections.
3922         (%files): Add %doc FAQ NEWS NOTES README.
3923         * rpm/rpmrc (builddir): Removed.
3924
3925 Fri Jun 21 00:27:51 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3926
3927         * elf/dl-load.c (_dl_map_object_from_fd): Fix mapping and l_phdr
3928         guessing to not assume p_vaddr of first load cmd is zero.
3929
3930         * sysdeps/sparc/elf/start.S: New file.
3931         * sysdeps/sparc/dl-machine.h: New file.
3932
3933         * posix/fnmatch.c (fnmatch): Fix \*[*?]+ case to increment name ptr
3934         only for ?s, not for *s.  Fix from Chet Ramey.
3935
3936         Fixes thanks to Raja R Harinath <harinath@cs.umn.edu>:
3937         * sysdeps/unix/sysv/utmpbits.h: Define _HAVE_UT_{TYPE,ID,TV,HOST}.
3938         Use __{BEGIN,END}_DECLS.
3939         (_PATH_WTMP, _PATH_UTMP, _PATH_LASTLOG): New macros.
3940         * login/utmp.h (UTMP_FILE, UTMP_FILENAME, WTMP_FILE, WTMP_FILENAME):
3941         New macros, moved here from sysdeps/gnu/utmpbits.h.
3942         * sysdeps/generic/utmpbits.h (_HAVE_UT_HOST): Define it.
3943         * sysdeps/gnu/utmpbits.h (_HAVE_UT_HOST): Likewise.
3944         * login/logout.c: Use ut_host only #if _HAVE_UT_HOST.
3945         Use sizeof instead of UT_*SIZE.
3946         * login/logwtmp.c: Likewise.
3947
3948         * misc/tsearch.c (tdelete): Define as weak alias to __tdelete.
3949
3950         * version.c (banner): Add trailing newline.
3951
3952         * login/utmp.h: Declare login_tty.
3953
3954 Thu Jun 20 21:19:07 1996  Richard Henderson  <rth@tamu.edu>
3955
3956         * sysdeps/alpha/dl-machine.h (elf_alpha_fix_plt):
3957         Changed to a 12-byte PLT entry to remove dependency on $gp.
3958         Take a new got_addr parameter.
3959         (elf_machine_rela): Pass the new parameter.
3960         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Do arithmetic for 12-byte PLT.
3961         (RTLD_START): Do normal linkage with program entry.
3962
3963 Thu Jun 20 12:18:21 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3964
3965         * sysdeps/mach/hurd/brk.c (_hurd_brk): Initialize to 0.
3966
3967         * hurd/getuids.c (getuids): New weak link to __getuids.
3968
3969 Wed Jun 19 10:21:24 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3970
3971         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry,
3972         __hurd_file_name_lookup, __hurd_file_name_split): Add & use LOOKUP
3973         argument.
3974         Rename nested function lookup to lookup_op.
3975         (__file_name_lookup, __file_name_lookup_under):
3976         Pass 0 for lookup arg to __hurd_file_name_lookup.
3977         (__file_name_split): Likewise for __hurd_file_name_split.
3978         * hurd/path-lookup.c (hurd_file_name_path_lookup): Add LOOKUP argument.
3979         Rename nested function lookup to scan_lookup.
3980         (file_name_path_lookup): Pass 0 for lookup arg to
3981         hurd_file_name_path_lookup.
3982         * hurd/hurd/lookup.h (__hurd_file_name_lookup, hurd_file_name_lookup,
3983         __hurd_file_name_lookup_retry, hurd_file_name_lookup_retry:
3984         __hurd_file_name_split, hurd_file_name_split, hurd_file_name_lookup):
3985         Add LOOKUP argument.
3986         * sysdeps/mach/hurd/access.c (__access): Pass 0 lookup arg to
3987         __hurd_file_name_lookup.
3988
3989 Mon Jun 17 19:09:49 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3990
3991         * Make-dist (+sysdeps): Move wildcard inside loop to avoid consing
3992         up a huge list just to discard most of it.
3993
3994         * configure.in (sysnames): Avoid fgrep by using the case shell
3995         builtin.
3996
3997         * Makeconfig (config.status): Fix dependency on Implies files.
3998
3999 Wed Jun 19 01:27:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4000
4001         * math/Makefile (distribute): Add ieee-math.c.
4002
4003 Wed Jun 19 03:24:58 1996  Ulrich Drepper  <drepper@cygnus.com>
4004
4005         * locale/codeset_name.c: New file.  Provide function for information
4006         about currently used character set.
4007         * locale/Makefile (routines): Add codeset_name.
4008         * locale/langinfo.h (_NL_CTYPE_CODESET_NAME): Add new constant.
4009         * locale/localeinfo.h: Change magic number because of incompatible
4010         change.
4011         * locale/C-ctype.c: Add initializer for new field `codeset_name'.
4012         * locale/programs/ld-ctype.c: Implement handling of `codeset_name'.
4013
4014         * locale/programs/locfile.c: Don't depend in pre-2.0 Linux specific
4015         name `MAX_IOVEC'.  Instead use standard name `UIO_MAXIOV'.
4016
4017         * locale/setlocale.c (setlocale): Initialize local variables to
4018         prevent warnings.
4019
4020 Thu Jun 13 17:25:11 1996  David Mosberger-Tang  <davidm@azstarnet.com>
4021
4022         * sysdeps/generic/memcmp.c: Add prototype decls for internal fns.
4023
4024         * locale/programs/locale.c: Include string.h.
4025
4026         * sunrpc/xdr_stdio.c (xdrstdio_getlong), sunrpc/xdr_rec.c
4027         (xdrrec_getlong), sunrpc/xdr_mem.c (xdrmem_getlong): Make sure
4028         appropriate sign-extension is performed on machines with
4029         sizeof(long) > 4.
4030
4031         * sunrpc/xdr.c (xdr_int, xdr_u_int): If sizeof(long)==8 and
4032         sizeof(int)<sizeof(long), we need to go through a temporary
4033         variable.
4034
4035         * locale/programs/ld-numeric.c: Include <alloca.h>
4036
4037         * libio/stdio.h (__libc_fatal): Add prototype.
4038
4039         * libio/cleanup.c: Use __P() to declare prototype when __STDC__ is
4040         in efect.
4041
4042         * libio/iopopen.c (read_or_write, parent_end, child_end): Declare
4043         volatile to avoid "might get clobbered by longjmp" warning.
4044
4045         * features.h (__KERNEL_STRICT_NAMES): Define __KERNEL_STRICT_NAMES
4046         unless _LOOSE_KERNEL_NAMES is in effect (which, with high
4047         probability is a sure loser).
4048         * sysdeps/unix/sysv/linux/gnu/types.h (__KERNEL_STRICT_NAMES): Remove.
4049
4050         * sysdeps/unix/bsd/osf/alpha/start.S (errno): Removed.
4051         * sysdeps/unix/sysv/linux/alpha/start.S: Ditto.
4052
4053         * misc/paths.h (_PATH_MAN): Change from /usr/share/man to /usr/man
4054         to be Linux FSSTND compliant.
4055
4056 Mon Jun 10 17:50:31 1996  David Mosberger-Tang  <davidm@azstarnet.com>
4057
4058         * sysdeps/unix/sysv/linux/alpha/pipe.S: Use PSEUDO.
4059
4060         * sysdeps/unix/sysv/linux/alpha/sysdep.S,
4061         sysdeps/unix/sysv/linux/alpha/brk.S,
4062         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
4063         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
4064         sysdeps/unix/sysv/linux/alpha/llseek.S,
4065         sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
4066         sysdeps/unix/sysv/linux/alpha/syscall.S: Rename syscall_error to
4067         __syscall_error to avoid intruding application name space.
4068
4069         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Rename __NR_get?id
4070         to SYS_get?id so that syscall stubs in sysdeps/unix define
4071         these syscalls in terms of getxpid/getxuid/getxgid.
4072
4073         * sysdeps/unix/_exit.S, sysdeps/unix/getegid.S,
4074         sysdeps/unix/geteuid.S, sysdeps/unix/getppid.S,
4075         sysdeps/unix/execve.S, sysdeps/unix/fork.S,
4076         sysdeps/unix/syscall.S: Terminate syscall with PSEUDO_END.
4077
4078         * sysdeps/unix/make-syscalls.sh, sysdeps/unix/sysdep.h
4079         (PSEUDO_END): Rename END() to PSEUDO_END().
4080
4081         * sysdeps/unix/alpha/sysdep.h: Move error-handling code in PSEUDO
4082         to PSEUDO_END to improve branch-prediction.  Include .frame
4083         directive to make syscalls debugabble.
4084         (PSEUDO_END): New macro.
4085
4086         * sysdeps/unix/alpha/sysdep.h, sysdeps/alpha/bb_init_func.S,
4087         sysdeps/unix/sysv/linux/alpha/brk.S: Use ldiq instead of ldi since
4088         latter is illegal under DEC Unix.
4089
4090         * sysdeps/unix/alpha/sysdep.S: Renamed from
4091         sysdeps/unix/sysv/linux/alpha/sysdep.S.  This file works for OSF/1
4092         as well.
4093         * sysdeps/unix/bsd/osf/alpha/sysdep.S: Remove (note that the
4094         EWOULDBLOCK -> EAGAIN mapping was unnecessary since
4095         EWOULDBLOCK==EAGAIN under DEC Unix and Linux/Alpha).
4096
4097         * sysdeps/alpha/divrem.h: Use retaddr instead of ra as the return
4098         address register in the .frame directive.
4099
4100         * sysdeps/alpha/copysign.c: Remove.
4101
4102         * sunrpc/rpc/types.h: Include <sys/param.h> and <netinet/in.h> to
4103         avoid RPC definitions of INADDR_LOOPBACK and/or MAXHOSTNAMELEN.
4104
4105         * errno.h: Move __END_DECLS to correct place to make file
4106         compilable under c++.
4107
4108         * dirent/dirent.h: Document _DIRENT_HAVE_D_OFF macro.  Define
4109         d_ino only if <direntry.h> hasn't defined d_fileno.
4110
4111         * configure.in (HAVE_ASM_WEAKEXT_DIRECTIVE): Reverse order of
4112         arguments to weakext to make .weakext detection work on ECOFF systems.
4113
4114         * FAQ: Add Linux/Alpha to list of supported platforms.  Mention
4115         that _validuser() has been replaced by __ivaliduser().
4116
4117 Thu Jun  6 21:39:38 1996  David Mosberger-Tang  <davidm@azstarnet.com>
4118
4119         * sysdeps/unix/bsd/sun/sunos4/tcsetattr.c (tcsetattr): Declare cmd
4120         as unsigned long, not as int (to avoid incorrect int->long
4121         promotion).
4122
4123 \f
4124
4125 See ChangeLog.5 for earlier changes.