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