* Makeconfig (sysd-rules-patterns): New variable.
[platform/upstream/glibc.git] / ChangeLog
1 2008-01-29  Roland McGrath  <roland@redhat.com>
2
3         * Makeconfig (sysd-rules-patterns): New variable.
4         * Makerules ($(common-objpfx)sysd-rules): Drive the loop from that.
5         (check-inhibit-asm): New canned sequence, replaces ...
6         (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed.
7         * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands.
8         (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld.
9         (CFLAGS-rtld): Variable removed.
10
11 2008-01-24  Roland McGrath  <roland@redhat.com>
12
13         * configure.in: Let configure fragments set base_os.
14         * configure: Regenerated.
15
16 2008-01-22  Ulrich Drepper  <drepper@redhat.com>
17
18         * po/ko.po: Update from translation team.
19
20 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
21
22         * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw.
23
24 2008-01-12  Andreas Jaeger  <aj@suse.de>
25
26         [BZ #5040]
27         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS):
28         Add EPOLLRDHUP.
29
30 2008-01-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>
31
32         * hurd/hurdsock.c (_hurd_socket_server): Return the standard
33         error EAFNOSUPPORT rather than non-standard EPFNOSUPPORT.
34         * sunrpc/bindrsvprt.c (bindresvport): Likewise.
35
36 2007-10-23  Alexandre Oliva  <aoliva@redhat.com>
37
38         * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define.
39         * elf/dl-close.c (_dl_close): Check for it.
40         * elf/dl-reloc.c (CHECK_STATIC_TLS): Likewise.
41         (_dl_allocate_static_tls): Likewise.
42         * elf/dl-tls.c (_dl_allocate_tls_init): Likewise.
43         (__tls_get_addr): Protect from race conditions in setting l_tls_offset
44         to it.
45         * elf/tst-tls16.c: New file.
46         * elf/tst-tlsmod16a.c: New file.
47         * elf/tst-tlsmod16b.c: New file.
48         * elf/Makefile: Add rules to build and run tst-tls16.
49
50 2008-01-16  Ulrich Drepper  <drepper@redhat.com>
51
52         [BZ #5628]
53         * bits/shm.h: Fix comment describing shmid_ds.
54         * sysdeps/gnu/bits/shm.h: Likewise.
55         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
56         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
57         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
58         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
59         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
60         * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise.
61         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
62         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
63         Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>.
64
65         [BZ #5607]
66         * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate
67         prototypes.
68         * conform/data/limits.h-data: Adjust limits changed in v6 and add
69         additional suffixes.
70         * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry.
71         Add optional functions mq_timedreceive and mq_timedsend.
72         * conform/data/netdb.h-data: Add more AI_* and EAI_* constants.
73         * conform/data/pthread.h-data: Fix prototype of
74         pthread_condattr_setclock.  pthread_sigmask is not required in v6.
75         * conform/data/semaphore.h-data: Allow time.h definitions.
76         * conform/data/signal.h-data: Likewise.
77         * conform/data/stdio.h-data: getw and putw are not required in v6.
78         * conform/data/stdlib.h-data: Change setstate prototype.
79         * conform/data/string.h-data: Fix strerror_r prototype.
80         * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition.
81         * conform/data/unistd.h-data: pthread_atfork not required in v6.
82         Fix readlink prototype.
83         * conform/data/netinet/in.h-data: Add const to in6addr_any and
84         in6addr_loopback.
85         * inet/netinet/in.h: Cleanup namespace.
86         * posix/regex.h: Likewise.
87         * resolv/netdb.h: Likewise.
88         * sysdeps/unix/sysv/linux/bits/in.h: Likewise.
89         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
90         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
91         * sysdeps/posix/getaddrinfo.c (default_labels): Adjust for change
92         of names of in in6_addr.
93         (default_precedence): Likewise.
94         * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for
95         NULL definition.
96
97 2008-01-15  Ulrich Drepper  <drepper@redhat.com>
98
99         * conform/data/fmtmsg.h-data: Add missing allows.
100         * conform/data/ftw.h-data: Likewise.
101         * conform/data/inttypes.h-data: Likewise.
102         * conform/data/math.h-data: Likewise.
103         * conform/data/signal.h-data: Likewise.
104         * conform/data/net/if.h-data: Likewise.
105         * conform/data/netinet/in.h-data: Likewise.
106         * conform/data/sys/socket.h-data: Likewise.
107
108         [BZ #5614]
109         * string/bits/string2.h (__strtok_r_1c): Always update *__NEXTP.
110         (__strtok_r): Simplify.
111         * string/tester.c (test_strtok_r): Add test case for futile search
112         with single-character seach string.
113
114 2008-01-12  Ulrich Drepper  <drepper@redhat.com>
115
116         * po/ko.po: Update from translation team.
117
118 2008-01-11  Andreas Jaeger  <aj@suse.de>
119
120         [BZ #5600]
121         * sysdeps/unix/sysv/linux/sys/signalfd.h (struct
122         signalfd_siginfo): Use 64-bit type for ssi_ptr to sync with Linux
123         kernel header.
124
125 2008-01-10  Ulrich Drepper  <drepper@redhat.com>
126
127         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result of
128         native interface lookup in all the relevant places.
129
130 2008-01-10  Jakub Jelinek  <jakub@redhat.com>
131             Ulrich Drepper  <drepper@redhat.com>
132
133         * sysdeps/posix/getaddrinfo.c (sort_results): Remove service_order
134         field.  Use sockaddr_in6 for source_addr.
135         (get_scope): Change type of parameter to sockaddr_in6.  Adjust.
136         (match_prefix): Likewise.
137         (get_label): Likewise.
138         (get_precedence): Likewise.
139         (rfc3484_sort): Change to use indirect access to results array.
140         Adjust to use of sockaddr_in6.  Replace service_order test with
141         simple index comparison.
142         (getaddrinfo): Define order array.  Initialize it.  Don't initialize
143         service_order field.  Adjust qsort_t calls.  Access sorted result
144         array indirectly through order array.
145         * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort.
146         * posix/tst-rfc3484-2.c: Likewise.
147         * posix/tst-rfc3484-3.c: Likewise.
148
149 2008-01-09  Ulrich Drepper  <drepper@redhat.com>
150
151         [BZ #5541]
152         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Also free xports and
153         pollfd structures.
154         Patch by AndrĂ© Cruz.
155
156         [BZ #5545]
157         * sunrpc/clnt_perr.c (clnt_sperror): Don't use fixed size buffer.
158         (clnt_spcreateerror): Likewise.
159
160         [BZ #5553]
161         * malloc/malloc.c (public_mALLOc): Set ar_ptr when trying main_arena.
162         (public_mEMALIGn): Likewise.
163         Patch mostly by Daniel Jacobowitz.
164
165 2008-01-09  Jakub Jelinek  <jakub@redhat.com>
166
167         * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): Avoid
168         clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size.
169         * stdlib/Makefile: Add rules to build and run tst-makecontext2.
170         * stdlib/tst-makecontext2.c: New test.
171
172 008-01-08  Jakub Jelinek  <jakub@redhat.com>
173
174         * iconv/loop.c (UPDATE_PARAMS): Define to empty statement if not
175         defined.
176         (REINIT_PARAMS): Likewise.  Undefine before end of file.
177         (STANDARD_TO_LOOP_ERR_HANDLER): Use UPDATE_PARAMS before calling
178         transliteration hooks and REINIT_PARAMS afterwards.
179         * iconvdata/iso-2022-jp.c (BODY): Use a separate variable for
180         status.
181         (REINIT_PARAMS): Define.
182         * iconvdata/ibm1364.c (REINIT_PARAMS): Likewise.
183         * iconvdata/ibm930.c (REINIT_PARAMS): Likewise.
184         * iconvdata/ibm933.c (REINIT_PARAMS): Likewise.
185         * iconvdata/ibm935.c (REINIT_PARAMS): Likewise.
186         * iconvdata/ibm937.c (REINIT_PARAMS): Likewise.
187         * iconvdata/ibm939.c (REINIT_PARAMS): Likewise.
188         * iconvdata/iso-2022-cn.c (REINIT_PARAMS): Likewise.
189         * iconvdata/iso-2022-cn-ext.c (REINIT_PARAMS): Likewise.
190         * iconvdata/iso-2022-jp-3.c (REINIT_PARAMS): Likewise.
191         * iconvdata/iso-2022-kr.c (REINIT_PARAMS): Likewise.
192         * iconvdata/Makefile: Add rules to build and run tst-iconv7.c.
193         * iconvdata/tst-iconv7.c: New test.
194
195 2008-01-07  Ulrich Drepper  <drepper@redhat.com>
196
197         * libio/stdio.h (vscanf): Fix definition for loser compilers.
198
199 2008-01-05  Jakub Jelinek  <jakub@redhat.com>
200
201         [BZ #5112]
202         * nscd/connections.c (restart): Fix condition.
203
204 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
205
206         * ctype/ctype.h (__ctype_b_loc, __ctype_tolower_loc,
207         __ctype_toupper_loc): Add __THROW.
208
209 2008-01-02  Ulrich Drepper  <drepper@redhat.com>
210
211         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Fix
212         recognition of interface family.
213
214         * posix/getconf.c: Update copyright year.
215         * nss/getent.c: Likewise.
216         * iconv/iconvconfig.c: Likewise.
217         * iconv/iconv_prog.c: Likewise.
218         * elf/ldconfig.c: Likewise.
219         * catgets/gencat.c: Likewise.
220         * csu/version.c: Likewise.
221         * elf/ldd.bash.in: Likewise.
222         * elf/sprof.c (print_version): Likewise.
223         * locale/programs/locale.c: Likewise.
224         * locale/programs/localedef.c: Likewise.
225         * nscd/nscd.c (print_version): Likewise.
226         * debug/xtrace.sh: Likewise.
227         * malloc/memusage.sh: Likewise.
228         * malloc/mtrace.pl: Likewise.
229         * debug/catchsegv.sh: Likewise.
230
231 2007-12-26  Ulrich Drepper  <drepper@redhat.com>
232
233         * nss/nsswitch.c (__nss_lookup): Actually use alternative name in
234         second lookup.
235
236 2007-12-23  Ulrich Drepper  <drepper@redhat.com>
237
238         * sysdeps/x86_64/cacheinfo.c (intel_02_known): New entry 0x3f.
239         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
240
241 2007-12-17  Roland McGrath  <roland@redhat.com>
242
243         * inet/ether_line.c (ether_line): Remove unused variable.
244
245 2007-12-17  Samuel Thibault  <samuel.thibault@ens-lyon.org>
246
247         * login/forkpty.c (forkpty): Add const qualifier to parameters termp
248         and winp.
249         * login/openpty.c (openpty): Likewise.
250         * login/pty.h (openpty, forkpty): Likewise.
251         * manual/terminal.texi (openpty, forkpty): Likewise.
252
253 2007-12-17  Ulrich Drepper  <drepper@redhat.com>
254
255         * malloc/malloc.c (public_cALLOc): For arena other than
256         main_arena, count all bytes inside the mprotect_size range of the
257         heap as uninitialized.
258
259 2007-12-16  Ulrich Drepper  <drepper@redhat.com>
260
261         * elf/tst-execstack.c (do_test): Don't fail if SELinux forbids
262         executable stacks.
263
264         * malloc/malloc.c (public_mTRIm): Iterate over all arenas and call
265         mTRIm for all of them.
266         (mTRIm): Additionally iterate over all free blocks and use madvise
267         to free memory for all those blocks which contain at least one
268         memory page.
269         * malloc/tst-trim1.c: New file.
270         * malloc/Makefile (tests): Add tst-trim1.
271
272         * malloc/malloc.c (do_check_malloc_state): Minimal cleanups.
273
274 2007-12-14  Ulrich Drepper  <drepper@redhat.com>
275
276         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P):
277         First cast argument to long
278         * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday):
279         Return long.
280         (__vdso_clock_gettime): Likewise.
281         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions
282         return long.
283
284 2007-12-13  Ulrich Drepper  <drepper@redhat.com>
285
286         * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l.
287         * locale/nl_langinfo_l.c: Real implementation, copied from
288         nl_langinfo.c.
289         * include/langinfo.h: Add libc_hidden_proto for __nl_langinfo_l.
290
291 2007-12-01  Jim Meyering  <meyering@redhat.com>
292
293         * posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
294         that would inhibit utf8-optimization of a regexp containing line-
295         or buffer-anchors, e.g., `^', `$'.
296
297 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
298
299         * time/bug-getdate1.c (do_test): Don't use century values which
300         aren't valid on 32-bit systems.
301
302 2007-12-12  Jakub Jelinek  <jakub@redhat.com>
303
304         * sysdeps/i386/i486/bits/string.h (memmove): Define as macro.
305         (memmove): Rename to __memmove_g, with __asm__ ("memmove").
306         * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g,
307         __strcat_g, __strncat_g): Add __asm__.
308
309 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
310
311         [BZ #5477]
312         * io/fchmodat.c: Fix typo in stub_warning use.
313         Patch by Petr Salinger.
314
315 2007-12-11  Ulrich Drepper  <drepper@redhat.com>
316
317         * iconvdata/hp-thai8.c: New file.
318         * iconvdata/Makefile: Add rules for hp-thai8.c.
319         * iconvdata/tst-tables.sh: Add entry for HP-THAI8.
320         * iconvdata/gconv-modules: Likewise.
321
322         [BZ #5464]
323         * iconvdata/hp-greek8.c: New file.
324         * iconvdata/Makefile: Add rules for hp-greek8.c.
325         * iconvdata/tst-tables.sh: Add entry for HP-GREEK8.
326         * iconvdata/gconv-modules: Likewise.
327
328         [BZ #5463]
329         * iconvdata/hp-turkish8.c: New file.
330         * iconvdata/Makefile: Add rules for hp-turkish8.c.
331         * iconvdata/tst-tables.sh: Add entry for HP-TURKISH8.
332         * iconvdata/gconv-modules: Likewise.
333
334         * malloc/arena.c (grow_heap): Split out code to shrink heap into...
335         (shrink_heap): ... this new function.
336         (heap_trim): Call shrink_heap instead of grow_heap.
337
338         * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this
339         case don't call alloc_perturb.
340
341 2007-12-10  Ulrich Drepper  <drepper@redhat.com>
342
343         * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if
344         possible.
345         * sysdeps/unix/sysv/linux/kernel-features.h
346         (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24.
347         * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define.
348
349 2007-12-08  Ulrich Drepper  <drepper@redhat.com>
350
351         [BZ #5424]
352         * stdio-common/vfprintf.c: Do not overflow when adding to done.
353         * stdio-common/Makefile (tests): Add bug22.
354         * stdio-common/bug22.c: New file.
355
356         [BZ #5451]
357         * time/getdate.c: Fix filling in default values.
358         * time/bug-getdate1.c: New file.
359         * time/Makefile: Add rules to build and run bug-getdate1.
360
361         * iconvdata/ebcdic-is-friss.c: Use 8bit-gap instead of 8bit-generic.
362         * iconvdata/ebcdic-es.c: Likewise.
363         * iconvdata/ebcdic-es-a.c: Likewise.
364         * iconvdata/ebcdic-uk.c: Likewise.
365         * iconvdata/iso8859-16.c: Likewise.
366         * iconvdata/viscii.c: Likewise.
367         * iconvdata/iso8859-9e.c: Likewise.
368         * iconvdata/Makefile: Adjust appropriately.
369
370         [BZ #5428]
371         * wcsmbs/wchar.h: Unconditionally undefine __need_mbstate and
372         __need_wint_t.
373
374 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
375
376         [BZ #5427]
377         * iconvdata/hp-roman9.c: New file.
378         * iconvdata/Makefile: Add rules for hp-roman9.c.
379         * iconvdata/tst-tables.sh: Add HP-ROMAN9.
380         * iconvdata/gconv-modules: Likewise.
381
382         * iconvdata/hp-roman8.c: Use 8bit-gap instead of 8bit-generic.
383         * iconvdata/Makefile: Adjust appropriately.
384
385         [BZ #5441]
386         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free
387         structure, it's allocated with alloca.
388         * stdio-common/Makefile (tests): Add bug21.
389         * stdio-common/bug21.c: New file.
390
391 2007-12-06  Aurelien Jarno  <aurelien@aurel32.net>
392
393         [BZ #5452]
394         * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__
395         keyword for gcc's braced-groups.
396
397 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
398
399         [BZ #5454]
400         * inet/ether_line.c: Strip hostname of whitespaces.
401         * inet/Makefile (tests): Add tst-ether_line.
402         * inet/tst-ether_line.c: New file.
403
404 2007-12-03  Ulrich Drepper  <drepper@redhat.com>
405
406         [BZ #5439]
407         * sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull.
408
409         [BZ #5435]
410         * sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack.
411
412         * stdlib/tst-setcontext.c: Catch the case where the links gets
413         messed up and we do not reach main again.
414
415         * po/ca.po: Update from translation team.
416
417 2007-11-26  Ulrich Drepper  <drepper@redhat.com>
418
419         * posix/unistd.h: Declare fsync also for __USE_XOPEN2K.
420         * posix/regex.h (REG_ENOSYS): Likewise.
421         * wcsmbs/wchar.h: Define __need_file also for __USE_XOPEN2K.
422
423 2007-11-25  Ulrich Drepper  <drepper@redhat.com>
424
425         * nscd/nscd.h (MAX_STACK_USE): Define.
426         * nscd/mem.c (MAX_STACK_USE): Remove definition here.
427         (gc): Initialize stack_used based on allocation in prune_cache.
428         * nscd/cache.c (prune_cache): Use heap for mark array if necessary.
429         Clear array before use.
430
431         * nscd/aicache.c (addhstaiX): Update statistics counter in case
432         memory allocation failed.
433         * nscd/hstcache.c (cache_addhst): Likewise.
434         * nscd/grpcache.c (cache_addgr): Likewise.
435         * nscd/servicescache.c (cache_addserv): Likewise.
436         * nscd/pwdcache.c (cache_addpw): Likewise.
437         * nscd/initgrcache.c (addinitgroupsX): Likewise.
438
439 2007-11-23  Ulrich Drepper  <drepper@redhat.com>
440
441         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add open
442         and creat system calls.
443
444         * sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>.
445
446 2007-11-23  Martin Schwidefsky  <schwidefsky@de.ibm.com>
447
448         * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers):
449         Add netiucv/iucv.h.
450         * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file.
451         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV
452         protocol.
453         * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise.
454         * sysdeps/unix/sysv/linux/s390/opensock.c: New file.
455         * sysdeps/unix/sysv/linux/s390/sa_len.c: New file.
456
457 2007-11-22  Martin Schwidefsky  <schwidefsky@de.ibm.com>
458
459         * sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat,
460         strncat): Define as macros to avoid compile errors.
461
462         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list:  Add open and
463         creat entries.
464
465 2007-11-22  Ulrich Drepper  <drepper@redhat.com>
466
467         [BZ #5382]
468         * nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define.
469         * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE.
470         * nscd/mem.c (gc): Don't allocate arrays on the stack if they can
471         overflow it.
472         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
473
474         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
475         Return zero in case the thread library is not NPTL.
476
477         [BZ #5375]
478         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix locking when
479         initializing interface list.
480
481         [BZ #5378]
482         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
483         use result of nss_getgrgid_r if nothing was found.  For other
484         error return with a failure.
485         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
486
487         * locale/programs/ld-collate.c (collate_read): Fix loop to match
488         macro name.
489
490 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
491
492         * sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables.
493         (get_scope): For IPv4 scope, use scopes table.
494         (fini): Free scopes table if necessary.
495         (free_scopelist): New function.
496         (scopecmp): New function.
497         (gaiconf_init): Also handle scopev4 entries.
498         * posix/tst-rfc3484.c (do_test): Initialize scopes.
499         * posix/tst-rfc3484-2.c (do_test): Likewise.
500         * posix/gai.conf: Document scopev4 defaults.
501         * posix/Makefile (tests): Add tst-rfc3484-3.
502         * posix/tst-rfc3484-3.c: New file.
503
504         * sysdeps/posix/getaddrinfo.c (default_labels): Describe entry for
505         Teredo tunnels.
506         * posix/gai.conf: Update for current default tables.
507
508 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
509
510         * po/tr.po: Update from translation team.
511
512 2007-11-18  Roland McGrath  <roland@frob.com>
513
514         * manual/arith.texi (Remainder Functions): Spelling fix.
515         From Shaun Silk <genix@mysoul.com.au>.
516
517         * sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value.
518
519 2007-11-17  Ulrich Drepper  <drepper@redhat.com>
520
521         * po/zh_CN.po: Update from translation team.
522
523         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
524         Add sys/signalfd.h and sys/eventfd.h.
525
526 2007-11-15  Bruno Haible  <bruno@clisp.org>
527
528         [BZ #5346]
529         * intl/dcigettext.c (struct known_translation_t): Turn msgid into a
530         union.
531         (transcmp): Use the appropriate part of s1->msgid and s2->msgid.
532         (DCIGETTEXT): Change the allocation of the 'search' variable so that
533         it needs only fixed stack space. Delay the initialization of
534         msgid_len until it is needed.
535
536 2007-11-15  Andreas Jaeger  <aj@suse.de>
537
538         * sysdeps/ieee754/dbl-64/sincos.tbl: Fix size of union.
539         Reported by Christoph Quirin Lauter <christoph.lauter@ens-lyon.fr>.
540
541 2007-11-15  Ulrich Drepper  <drepper@redhat.com>
542
543         * po/ko.po: Update from translation team.
544
545 2007-11-14  Ulrich Drepper  <drepper@redhat.com>
546
547         * sysdeps/unix/sysv/linux/check_native.c (__check_native): Simplify
548         significantly.  The device type is also part of the ifinfomsg data.
549
550         * po/sv.po: Update from translation team.
551         * po/nl.po: Likewise.
552
553         * nscd/cache.c (prune_cache): If cache is empty, instruct caller
554         to wake up in 24 hours.
555
556         * nscd/gai.c (__ioctl): Define.  Include check_native.c.
557
558 2007-11-13  Ulrich Drepper  <drepper@redhat.com>
559
560         * po/cs.po: Update from translation team.
561         * po/pl.po: Likewise.
562
563         * include/ifaddrs.h: Remove in6ai_temporary.
564         (struct in6addrinfo): Add index element.
565         Declare __check_native.
566         * inet/Makefile (aux): Add check_native.
567         * sysdeps/unix/sysv/linux/check_native.c: New file.
568         * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize
569         IFA_F_TEMPORARY.  Pass back ifa_index.
570         * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code.
571         (rfc3484_sort): Add new parameter.  Implement rule 7 correctly:
572         call __check_native if necessary.
573         (getaddrinfo): Fill in index field.  Use qsort_r instead of qsort
574         to sort addresses.  Pass information about the results.
575         * posix/tst-rfc3484.c: Adjust for addition of index field and change
576         of rfc3484_sort interface.
577         * posix/tst-rfc3484-2.c: Likewise.
578
579         * stdlib/stdlib.h: Define __compar_d_fn_t.  Declare qsort_r.
580         * include/stdlib.h: Add hidden_proto for qsort_t and adjust protoype
581         for _quicksort.
582         * stdlib/msort.c (qsort): Now a wrapper around qsort_r.
583         (qsort_r): Renamed from qsort.  Take additional parameter and pass it
584         on as third parameter to compare function and _quicksort.
585         * stdlib/qsort.c (_quicksort): Take additional parameter and pass on
586         to the compare function.
587         * stdlib/Versions [libc] (GLIBC_2.8): Add qsort_r.
588         * Versions.def: Add GLIBC_2.8 for libc.
589
590         * posix/tst-rfc3484.c: Adjust for addition of prefixlen field.
591         * posix/tst-rfc3484-2.c: Likewise.
592
593         * include/kernel-features.h: Moved to...
594         * sysdeps/mach/hurd/kernel-features.h: ...here.
595
596 2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>
597
598         * sysdeps/i386/i586/memcpy_chk.S: New file.
599         * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
600         * sysdeps/i386/i586/memset_chk.S: Likewise.
601
602 2007-11-12  Ulrich Drepper  <drepper@redhat.com>
603
604         * include/ifaddrs.c (struct in6addrinfo): Add prefixlen field.
605         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return
606         list of interfaces.  Also store prefix length.
607         * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element.
608         (rfc3484_sort): In rule 9, for IPv4 addresses count only matching
609         prefix if source and destination address are in the same subnet.
610         (getaddrinfo): Always call __check_pf.  Fill in prefixlen field.
611         Always look for matching record in in6ai list.
612         Correct source_addr_len value for IPv6->IPv4 converted records.
613
614 2007-11-11  Roland McGrath  <roland@frob.com>
615
616         * include/kernel-features.h: New file.
617
618 2007-11-10  Ulrich Drepper  <drepper@redhat.com>
619
620         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary
621         complications for 64-bit platforms.
622
623         * sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to..
624         * sysdeps/unix/sysv/linux/open64_2.c: ...here.  New file.
625         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add
626         open64_2.
627         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat
628         entries.
629         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
630         * sysdeps/wordsize-64/alphasort.c: New file.
631         * sysdeps/wordsize-64/alphasort64.c: New file.
632         * sysdeps/wordsize-64/fseeko.c: New file.
633         * sysdeps/wordsize-64/fseeko64.c: New file.
634         * sysdeps/wordsize-64/ftello.c: New file.
635         * sysdeps/wordsize-64/ftello64.c: New file.
636         * sysdeps/wordsize-64/ftw.c: New file.
637         * sysdeps/wordsize-64/ftw64.c: New file.
638         * sysdeps/wordsize-64/iofgetpos.c: New file.
639         * sysdeps/wordsize-64/iofgetpos64.c: New file.
640         * sysdeps/wordsize-64/iofopen.c: New file.
641         * sysdeps/wordsize-64/iofopen64.c: New file.
642         * sysdeps/wordsize-64/iofsetpos.c: New file.
643         * sysdeps/wordsize-64/iofsetpos64.c: New file.
644         * sysdeps/wordsize-64/lockf.c: New file.
645         * sysdeps/wordsize-64/lockf64.c: New file.
646         * sysdeps/wordsize-64/mkostemp.c: New file.
647         * sysdeps/wordsize-64/mkostemp64.c: New file.
648         * sysdeps/wordsize-64/mkstemp.c: New file.
649         * sysdeps/wordsize-64/mkstemp64.c: New file.
650         * sysdeps/wordsize-64/scandir.c: New file.
651         * sysdeps/wordsize-64/scandir64.c: New file.
652         * sysdeps/wordsize-64/tmpfile.c: New file.
653         * sysdeps/wordsize-64/tmpfile64.c: New file.
654         * sysdeps/wordsize-64/versionsort.c: New file.
655         * sysdeps/wordsize-64/versionsort64.c: New file.
656         * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file.
657         * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file.
658         * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file.
659         * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file.
660         * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file.
661         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file.
662         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file.
663         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file.
664         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file.
665         * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file.
666         * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file.
667         * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file.
668
669         * crypt/sha256-crypt.c: Fix a comment.
670         * crypt/sha512-crypt.c: Likewise.
671
672 2007-11-07  H.J. Lu  <hongjiu.lu@intel.com>
673
674         * sysdeps/x86_64/memset.S: Add sfence after movnti.
675
676 2007-11-07  Ulrich Drepper  <drepper@redhat.com>
677
678         [BZ #5277]
679         * iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed
680         because output buffer is too small break, don't loop.
681         * iconvdata/Makefile (tests): Add bug-iconv6.
682         * iconvdata/bug-iconv6.c: New file.
683
684 2007-11-06  Ulrich Drepper  <drepper@redhat.com>
685
686         * stdio-common/vfprintf.c (vfprintf): Compute necessary buffer size
687         with size_t type.
688         * stdio-common/printf_fp.c (__print_fp): Change chars_needed type to
689         size_t.  Add casts where needed.
690
691         * nscd/selinux.c (nscd_request_avc_has_perm): When compiled with
692         old headers, don't call avc_has_perm if we don't have the
693         permission information.
694
695 2007-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
696
697         * elf/rtld.c (dl_main): Use the page size to find the map start.
698
699 2007-11-05  Ulrich Drepper  <drepper@redhat.com>
700
701         * time/tzfile.c (__tzfile_read): Fix check for version 0 data files.
702         Patch by Szymon Siwek <sls@poczta.wp.pl>.
703
704         * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup only
705         when the lookup call failed.
706
707         * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock.
708         Add prune_cond and wakeup_time.
709         (CACHE_PRUNE_INTERNAL): Define.
710         Update declarations of prune_cache and setup_thread.
711         * nscd/connections.c (dbs): Update initializers.
712         (CACHE_PRUNE_INTERNAL): Moved to nscd.h.
713         (nscd_init): Default number of threads is now 4.
714         (invalidate_cache): Take lock before calling prune_cache.
715         (handle_request): If SELinux forbids the request, say so.
716         (readylist_cond): Use static initializer.
717         (nscd_run_prune): New function.  Used only by pruning threads.
718         (nscd_run_worder): Renamed from nscd_run.  Remove support for pruning
719         here.
720         (fd_ready): Update nscd_run reference.
721         (start_threads): No need to initialize readylist_cond.
722         Start pruning threads separately.
723         * nscd/nscd_setup_thread.c: Change return value type to int and always
724         return 0.
725         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type
726         to int and return nonzero value if we can use the TID address hack.
727         * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for
728         the database is later than the new entry's timeout, update the
729         wakeup time and wake the cleanup thread.
730         (prune_cache): Return seconds the next entry in the database is still
731         valid.  Remove locking for pruning here.
732         * nscd/nscd.conf: Document default number of threads.
733
734 2007-10-31  Ulrich Drepper  <drepper@redhat.com>
735
736         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Make sure
737         stack is properly aligned for the target function.
738         Correct unwind info.
739
740         * elf/rtld.c (dl_main): Initialize stack and pointer guard early
741         when using auditing libraries.
742
743 2007-10-29  Ulrich Drepper  <drepper@redhat.com>
744
745         * resolv/Versions [libresolv] (GLIBC_PRIVATE): Add
746         _nss_dns_getnetbyaddr2_r.
747         * resolv/nss_dns/dns-host.c: Define _nss_dns_getnetbyaddr2_r.  Pass
748         extra parameter to getanswer_r.
749         (_nss_dns_getnetbyaddr_r): Now a wrapper around
750         _nss_dns_getnetbyaddr2_r.
751
752         * nscd/Makefile (nscd-modules): Replace gethstbynm2_r with
753         gethstbynm3_r.
754         * nscd/gethstbynm2_r.c: Remove.
755         * nscd/gethstbynm3_r.c: New file.
756         * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of
757         __gethostbyaddr_r.
758         * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function.  Define
759         __gethostbyaddr_r compatibility wrapper.
760         * nscd/hstcache.c (cache_addhst): Add ttl parameter.  Use it when
761         determining timeout of entry.
762         (lookup): Take new parameter and pass it to __gethostbyname3_r and
763         __gethostbyaddr2_r.
764         (addhstbyX): Pass reference to variable for TTL to lookup and
765         cache_addhst.
766         * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2,
767         __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2,
768         and __nss_next2.  Remove __nss_services_lookup.
769         * nss/XXX-lookup.c: Name function now *_lookup2.  Add new parameter.
770         Add compat wrapper.
771         * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and
772         __nss_next2.
773         * nss/getXXent_r.c: Likewise.
774         * nss/getnssent_r.c: Likewise.
775         * nss/nsswitch.c (__nss_lookup): Add new parameter.  If first function
776         does not exist in module, try the optional second name.
777         (__nss_next2): New function.
778         (__nss_next): Now wrapper around __nss_next2.
779         * nss/nsswitch.h: Adjust __nss_lookup prototype.
780         Declare __nss_next2.
781         Adjust definition of db_lookup_function type.
782         * nss/service-lookup.c: Define NO_COMPAT.
783         * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r.
784         * inet/ether_hton.c: Use __nss_next2 instead of __nss_next.
785         * inet/ether_ntoh.c: Likewise.
786         * sunrpc/netname.c: Likewise.
787         * sunrpc/publickey.c: Likewise.
788         * inet/getnetgrent.c: Likewise.  Adjust calls to __nss_lookup.
789         * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2.
790         * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
791         * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
792         * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
793
794         * nscd/aicache.c (addhstaiX): Fix default TTL handling.
795
796         * inet/getnetgrent.c (setup): Encrypt static pointer.
797
798 2007-10-28  Ulrich Drepper  <drepper@redhat.com>
799
800         [BZ #5204]
801         * crypt/sha256c-test.c: Define TIMEOUT to 6 for ancient hardware.
802         * crypt/sha512c-test.c: Likewise.
803
804         [BZ #5225]
805         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't misuse wp pointer
806         to keep track of end of %[ format string element.
807         * stdio-common/Makefile (tests): Add bug20.
808         * stdio-common/bug20.c: New file.
809
810         [BZ #5222]
811         * elf/dl-load.c (_dl_rtld_di_serinfo): Correct handling of short
812         path elements in counting mode.
813
814 2007-10-27  Andreas Jaeger  <aj@suse.de>
815
816         [BZ #5040]
817         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLRDHUP): Add value.
818
819         [BZ #3112]
820         * sysdeps/ia64/backtrace.c (init): Free shared library if incorrect.
821         (__cleanup): Free shared library when exiting.
822         * sysdeps/i386/backtrace.c (init): Free shared library if incorrect.
823         (__cleanup): Free shared library when exiting.
824
825 2006-04-14  H.J. Lu  <hongjiu.lu@intel.com>
826
827         [BZ #2549]
828         * math/libm-test.inc (check_float_internal): Support
829         denormalized return.
830
831 2007-10-23  Andreas Jaeger  <aj@suse.de>
832
833         [BZ #5208]
834         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use
835         __LONG_LONG_PAIR to handle little endian byte order.
836         Suggested by abhishekrai@google.com
837
838 2007-10-27  Ulrich Drepper  <drepper@redhat.com>
839
840         * malloc/arena.c [!NO_THREADS]: Use ATFORK_MEM if defined.
841
842 2007-10-26  Ulrich Drepper  <drepper@redhat.com>
843
844         * nscd/cache.c (prune_cache): Move test for modified file outside
845         of locking.
846
847 2007-10-21  Andreas Jaeger  <aj@suse.de>
848
849         * manual/texinfo.tex: Update to latest version.
850
851         * manual/sysinfo.texi (System Parameters): Fix Formatting.
852
853         * manual/arith.texi (Status bit operations): Fix formatting.
854
855         * manual/errno.texi (Error Messages): Fix formatting.
856
857         * manual/sysinfo.texi (System Parameters): Fix formatting.
858
859         * manual/libc.texinfo: Update VERSION and UPDATED.
860
861 2007-10-19  Roland McGrath  <roland@redhat.com>
862
863         * elf/Makefile ($(objpfx)ld.so): Use $(AWK).
864
865 2007-10-06  David S. Miller  <davem@davemloft.net>
866
867         * configure.in: Add sparcv9v2 and sparc64v2.
868         * scripts/config.sub: Likewise.
869         * configure: Regenerate.
870         * elf/elf.h (HWCAP_SPARC_N2): New.
871         * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
872         * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
873         (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
874         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
875         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
876         * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
877         * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
878
879 2007-10-18  Ulrich Drepper  <drepper@redhat.com>
880
881         * sunrpc/clnt_udp.c (clntudp_call): Don't block in recvfrom call
882         even if the poll result indicates there is data to read.
883         Patch by Jeff Moyer <jmoyer@redhat.com>.
884
885 2007-10-18  Roland McGrath  <roland@redhat.com>
886
887         * elf/elf.h (NT_PPC_VMX): New macro.
888
889 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
890
891         * version.h (VERSION): Set to 2.7.90.
892
893 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
894
895         * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero.  Add
896         weak_alias.
897
898 2007-10-17  Roland McGrath  <roland@frob.com>
899
900         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New.
901         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it.
902
903 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
904
905         * version.h (VERSION): Bump to 2.7.
906         * include/features.h (__GLIBC_MINOR__): Bump to 7.
907
908         [BZ #5186]
909         * time/tzset.c (__tz_convert): Don't force testing for a change of
910         TZ if not called from localtime.  But then also see whether the
911         file changed, in case __use_tzfile is set.
912
913         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC.
914         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
915         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
916         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
917         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
918         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
919         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h:  Likewise.
920         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
921
922 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
923
924         * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses
925         and admin selects to be able to replace the gai.conf file, lock
926         data structures around the qsort call.
927
928 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
929
930         * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of
931         new memset.
932         * sysdeps/x86_64/memset.S: Revert to old version for now.  The cost is
933         too high for the improvements.  Implement bzero unconditionally for
934         use in libc.
935
936 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
937             Jakub Jelinek  <jakub@redhat.com>
938
939         * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available
940         even when time_t is 32-bit.
941         (__tzfile_compute): Override POSIX TZ string STD/DST zone names if
942         timezone data read by __tzfile_default.  Ensure __tzname[0] is
943         always set after the search.
944
945 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
946
947         * time/tzfile.c (__tzfile_read): Help the compiler recognize
948         unreachable code on 32-bit machines.
949
950 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
951
952         [BZ #5184]
953         * time/strftime_l.c: Include stdbool.h.
954         (my_strftime): New wrapper, old function renamed to...
955         (__strftime_internal): ... new function.  Add tzset_called
956         argument, pass it down to recursive calls, don't call tzset ()
957         if already true, set to true after call to tzset ().
958
959 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
960
961         * time/tzfile.c (__tzfile_read): Take extra memory requested by caller
962         into account when copying TZ string.
963
964 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
965
966         * time/tzfile.c (__tzfile_compute): For use_last case set i to
967         num_transition rather than num_transitions - 1.
968
969 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
970
971         * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move
972         PIC indirect jump.
973
974         * sysdeps/x86_64/memset.S: Jump from bzero to memset using
975         a local label rather than HIDDEN_JUMPTARGET.
976
977 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
978
979         * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define.
980         (init_cacheinfo): Initialize it.
981         * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size.
982         Always define bzero.
983         Remove non-glibc code.
984         * sysdeps/x86_64/bzero.S: Make an empty file.
985
986 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
987
988         * sysdeps/x86_64/cacheinfo.c
989         (__x86_64_preferred_memory_instruction): New.
990         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
991
992         * sysdeps/x86_64/memset.S: Rewrite.
993
994 2007-10-15  Roland McGrath  <roland@redhat.com>
995
996         * po/libc.pot: Regenerated.
997
998 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
999
1000         * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct
1001         pointers.
1002
1003         [BZ #3425]
1004         * resolv/nss_dns/dns-host.c (getanswer_r): Fail with
1005         NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no
1006         address record to T_A/T_AAAA requests.
1007
1008 2007-10-14  Ulrich Drepper  <drepper@redhat.com>
1009
1010         * posix/glob.c: Reimplement link_exists_p to use fstatat64.
1011
1012         * posix/glob.c: Add some branch prediction throughout.
1013
1014         * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful
1015         read from nscd.
1016
1017         * sysdeps/posix/getaddrinfo.c (struct sort_result): Add
1018         service_order.
1019         (rfc3484_sort): Make sure that even if qsort doesn't support
1020         stable sorting out sorting here is stable by comparing service_order.
1021         (getaddrinfo): Initialize service_order.
1022         * posix/tst-rfc3484.c (do_test): Adjust for addition of
1023         service_order field to sorting structure.
1024         * posix/tst-rfc3484-2.c (do_test): Likewise.
1025
1026         * include/time.h: Declare __tzset_parse_tz and __tzset_compute.
1027         * time/tzset.c (tzset_internal): Break TZ string parsing out into
1028         __tzset_parse_tz and updating of daylight, timezone, tzname into
1029         update_vars.
1030         (__tz_compute): Renamed from tz_compute.  Take additional parameters.
1031         (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now
1032         happens in __tz_compute.
1033         * time/tzfile.c (__tzfile_read): Also read TZ string.
1034         (find_transition): Fold into __tzfile_compute.
1035         (__tzfile_compute): For times beyond the last transition try to
1036         use the TZ string.
1037         * timezone/tst-timezone.c: Information in daylight and tzname does
1038         change for Asia/Tokyo timezone with more concrete information.
1039         Remove the test.
1040
1041         * include/stdio.h: Add libc_hidden_proto for ftello.
1042         * libio/ftello.c: Add libc_hidden_def.
1043
1044         [BZ #1140]
1045         * time/tzfile.c (__tzfile_compute): Compute tzname[] values based
1046         on the specified time and not the last entries in the file.  Move
1047         code to determine tzname[] to...
1048         (find_transition): ...here.  Add ugly guess for times before the
1049         first transition.
1050
1051 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
1052
1053         [BZ #3195]
1054         * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found
1055         no entry.
1056         * nscd/nscd_getgr.c (nscd_getgr_r): Likewise.
1057         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1058         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
1059         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
1060
1061         * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler
1062         read mechanism when there are no group members and avoid no-op
1063         read syscall in this case.
1064
1065         [BZ #3242]
1066         * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter.
1067         (__readall): If reading failed due to EAGAIN error wait a bit
1068         and possibly try again.
1069         (__readvall): Likewise.
1070
1071 2007-10-13  Bruno Haible  <bruno@clisp.org>
1072
1073         * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock
1074         when we cannot recode the message.
1075
1076 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
1077
1078         [BZ #4359]
1079         * libio/__freading.c (__freading): Don't return true for
1080         write-only streams.  For read/write streams, check whether we
1081         performed a read operation already.
1082         * libio/Makefile (tests): Add tst-ext2.
1083         * libio/tst-ext2.c: New file.
1084
1085 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
1086
1087         * locale/programs/repertoire.c (repertoire_read): Always free
1088         memory for repertoire file name [Coverity CID 270].
1089
1090         * elf/cache.c (save_aux_cache): Free memory allocated for
1091         temporary file name [Coverity CID 267].
1092
1093 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
1094
1095         * misc/Makefile (headers): Add bits/error.h.
1096
1097 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
1098
1099         * posix/fnmatch_loop.c: Take rule index returned as part of
1100         findidx return value into account when accessing weights.
1101         * posix/regcomp.c: Likewise.
1102         * posix/regexec.c: Likewise.
1103
1104         * locale/programs/ld-collate.c (collate_read): Optimize a bit.
1105         (skip_to): Fix problems with parameter of elifdef/elifndef.
1106
1107 2007-10-11  Ulrich Drepper  <drepper@redhat.com>
1108
1109         * iconv/gconv_simple.c: Add some branch prediction.
1110
1111 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
1112
1113         * locale/programs/ld-collate.c (collate_read): If ignore_content
1114         and nowtok is tok_define, eat any tok_eol tokens.
1115
1116 2007-10-11  Jakub Jelinek  <jakub@redhat.com>
1117
1118         * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
1119         (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
1120
1121         * inet/netinet/in.h: Don't include bits/socket.h.
1122         * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
1123         macro.
1124         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
1125
1126 2007-10-10  Ulrich Drepper  <drepper@redhat.com>
1127
1128         * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
1129         and tok_elifndef.
1130         * locale/programs/locfile-kw.gperf: Likewise.
1131         * locale/programs/ld-collate.c: Implement primitive preprocessor.
1132
1133 2007-10-10  Jakub Jelinek  <jakub@redhat.com>
1134
1135         * stdio-common/printf-parse.h: Include string.h and wchar.h.
1136         (__find_specwc): Change into __extern_always_inline function.
1137         (__find_specmb): Likewise.  Remove ps argument.  Use __strchrnul.
1138         (__parse_one_specmb): Remove ps argument.
1139         * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
1140         Adjust __find_specmb and __parse_one_specmb callers.
1141         * stdio-common/printf-prs.c (parse_printf_format): Likewise.
1142         * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
1143         Removed.
1144         (__parse_one_specmb): Remove ps argument, adjust __find_specmb
1145         caller.
1146
1147 2007-10-09  Ulrich Drepper  <drepper@redhat.com>
1148
1149         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
1150         with some Pentium Ds.
1151
1152 2007-10-08  Ulrich Drepper  <drepper@redhat.com>
1153
1154         * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
1155         __read not read.
1156         * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
1157         __write not write.
1158
1159 2007-10-07  Ulrich Drepper  <drepper@redhat.com>
1160
1161         [BZ #181]
1162         * locale/C-time.c: Set week_1stday data to 19971201.
1163         * locale/programs/ld-time.c (time_finish): Default for
1164         first_workday is Monday.
1165
1166         [BZ #2633]
1167         * wcsmbs/wchar.h: Move many C99 functions into std namespace.
1168
1169         [BZ #5103]
1170         * posix/glob.c (glob): Recognize patterns starting \/.
1171         * posix/tst-gnuglob.c (find_file): Handle absolute path names.
1172         (main): Add test for pattern starting \/.
1173
1174         * misc/error.h: Use __const instead of const.
1175         * misc/bits/error.h: Likewise.
1176
1177 2007-10-07  Andreas Jaeger  <aj@suse.de>
1178
1179         * include/bits/error.h: New file.
1180
1181         * misc/bits/error.h (error_at_line): Fix prototype.
1182
1183 2007-10-06  Ulrich Drepper  <drepper@redhat.com>
1184
1185         [BZ #3924]
1186         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
1187         more little bugs in creating the stack frame when pltexit has to
1188         be called.
1189
1190         * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
1191         * nscd/connections.c (verify_persistent_db): Recognize circular lists.
1192
1193         [BZ #4407]
1194         * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
1195         * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
1196         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
1197         * math/libm-test.inc: Add test for this case.
1198
1199         [BZ #5010]
1200         * sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
1201         (svc_register): Initialize sc_mapped.  Set to TRUE if call to
1202         map service succeeded.
1203         (svc_is_mapped): New function.
1204         (svc_unregister): Use it before trying to unmap service.
1205
1206 2007-10-05  Ulrich Drepper  <drepper@redhat.com>
1207
1208         * timezone/zic.c: Update from tzcode2007h.
1209
1210         [BZ #5063]
1211         * timezone/africa: Update from tzdata2007h.
1212         * timezone/antarctica: Likewise.
1213         * timezone/asia: Likewise.
1214         * timezone/australasia: Likewise.
1215         * timezone/europe: Likewise.
1216         * timezone/leapseconds: Likewise.
1217         * timezone/northamerica: Likewise.
1218         * timezone/southamerica: Likewise.
1219         * timzeone/zone.tab: Likewise.
1220
1221         [BZ #5104]
1222         * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
1223
1224         [BZ #5113]
1225         * string/bits/string2.h (__strdup): Cast parameters to calloc to
1226         avoid warning with -Wconversion.
1227         (__strndup): Likewise.
1228         Half the patch by Christian Iseli <christian.iseli@licr.org>.
1229
1230         [BZ #5112]
1231         * nscd/connections.c (restart): Don't resync if database is
1232         disabled.  Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
1233
1234         * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
1235         struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.
1236
1237         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
1238         evetnfd_read, eventfd_write.
1239         * sysdeps/unix/sysv/linux/eventfd.c: New file.
1240         * sysdeps/unix/sysv/linux/eventfd_read.c: New file.
1241         * sysdeps/unix/sysv/linux/eventfd_write.c: New file.
1242         * sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
1243         * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
1244         eventfd_write for GLIBC_2.7.
1245
1246         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
1247         * sysdeps/unix/sysv/linux/signalfd.c: New file.
1248         * sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
1249         * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
1250
1251 2007-10-04  Jakub Jelinek  <jakub@redhat.com>
1252
1253         * stdlib/msort.c: Include stdint.h.
1254         (struct msort_param): New type.
1255         (msort_with_tmp): Use struct msort_param pointer for unchanging
1256         parameters.  Add optimized handling for several common sizes
1257         and indirect sorting mode.
1258         (qsort): Adjust msort_with_tmp callers.  For big S use indirect
1259         sorting.
1260         Suggested by Belazougui Djamel .
1261
1262         * stdlib/Makefile (tests): Add tst-qsort2.
1263         * stdlib/tst-qsort2.c: New test.
1264
1265 2007-10-04  Ulrich Drepper  <drepper@redhat.com>
1266
1267         * login/login_tty.c (login_tty): The Linux kernel can return EBUSY
1268         for dup2 in case another thread races with the current one.  Retry
1269         in this case.
1270
1271         * misc/error.h: Remove support for use outside of libc.  We have to
1272         include <features.h> now.  Include <bits/error.h> if possible.
1273         * misc/bits/error.h: New file.
1274
1275 2007-10-03  Jakub Jelinek  <jakub@redhat.com>
1276
1277         * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
1278         bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
1279         __extern_always_inline functions unconditionally, drop macros.
1280
1281         * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
1282         * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
1283         __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
1284
1285         * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
1286         add __artificial__ attribute.
1287
1288 2007-10-02  Ulrich Drepper  <drepper@redhat.com>
1289
1290         * string/strcoll_l.c (STRCOLL): Correct handling of switching from
1291         backward to forward direction.
1292
1293         * string/strcoll_l.c (STRCOLL): Correct test for alloca use.
1294
1295         [BZ #645]
1296         * locale/programs/ld-collate.c (collate_finish): Compare against last
1297         used section which is known to have rules defined.
1298         (collate_read): After order_start, correctly record order of sections
1299         and queue sections up.
1300
1301 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
1302
1303         [BZ #5071]
1304         * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
1305         the same number of pages.
1306         Patch by Tomash Brechko <tomash.brechko@gmail.com>.
1307
1308         * locale/programs/ld-collate.c (collate_read): After initial copy
1309         statement, continue in state 0.
1310
1311         * include/stdio_ext.h (__fsetlocking): Define as macro.
1312
1313 2007-09-30  Ulrich Drepper  <drepper@redhat.com>
1314
1315         * locale/programs/ld-collate.c (collate_finish): Compare all bytes
1316         of section order.
1317
1318         * po/pt_BR.po: Fix typo.
1319
1320 2007-09-29  Ulrich Drepper  <drepper@redhat.com>
1321
1322         * iconvdata/Makefile (modules): Add ISO8859-9E.
1323         (distribute): Add iso8859-9e.c.
1324         (gen-8bit-gap-modules): Add iso8859-9e.
1325         * iconvdata/iso8859-9e.c: New file.
1326         * iconvdata/gconv-modules: Add entries for ISO-8859-9E.
1327         * iconvdata/TESTS: Likewise.
1328         * iconvdata/tst-tables.sh: Likewise.
1329
1330         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
1331
1332         * locale/iso-639.def: Add several new entries.
1333
1334 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
1335
1336         * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
1337         void * pointers instead of struct link_map **.
1338         (_dl_scope_free): Change argument type to void *.
1339         * include/link.h (struct link_map): Change type of l_reldeps
1340         to struct link_map_reldeps, move l_reldepsact into that
1341         struct too.
1342         * elf/dl-deps.c: Include atomic.h.
1343         (_dl_map_object_deps): Only change l->l_initfini when it is
1344         fully populated, use _dl_scope_free for freeing it.  Optimize
1345         removal of libs from reldeps by using l_reserved flag, when
1346         some removal is needed, allocate a new list instead of
1347         reallocating and free the old with _dl_scope_free.  Adjust
1348         for l_reldeps and l_reldepsact changes.
1349         * elf/dl-lookup.c (add_dependency): Likewise.  Reorganize to allow
1350         searching in l_initfini and l_reldeps without holding dl_load_lock.
1351         * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
1352         l_reldepsact changes.
1353         * elf/dl-close.c (_dl_close_worker): Likewise.
1354         * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
1355
1356 2007-09-28  Ulrich Drepper  <drepper@redhat.com>
1357
1358         * iconvdata/Makefile (modules): Add KOI8-RU.
1359         (distribute): Add koi8-ru.c.
1360         (gen-8bit-gap-modules): Add koi8-ru.
1361         * iconvdata/koi8-ru.c: New file.
1362         * iconvdata/gconv-modules: Add entries for KOI8-RU.
1363         * iconvdata/TESTS: Likewise.
1364         * iconvdata/tst-tables.sh: Likewise.
1365
1366         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
1367
1368 2007-09-26  Jakub Jelinek  <jakub@redhat.com>
1369
1370         * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
1371         with __warning__/__error__ attributes.
1372         (__warnattr): Define.
1373         * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
1374         __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
1375         __warnattr.
1376         (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
1377         of __*_chk if compile time detectable overflow is found.
1378         * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
1379         __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
1380         with __warnattr.
1381         (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
1382         instead of __*_chk if compile time detectable overflow is found.
1383         (__gets_alias): Rename to...
1384         (__gets_warn): ... this.  Add __warnattr.
1385         (gets): Call __gets_warn instead of __gets_alias.
1386         * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
1387         aliases with __warnattr.
1388         (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
1389         time detectable overflow is found.
1390         * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
1391         __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
1392         __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
1393         __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
1394         __getdomainname_chk_warn): New aliases with __warnattr.
1395         (read, pread, pread64, readlink, readlinkat, getcwd, confstr,
1396         getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
1397         __*_chk_warn instead of __*_chk if compile time detectable overflow
1398         is found.
1399         (__getgroups_chk): Rename argument to __listlen from listlen.
1400         (__getwd_alias): Rename to...
1401         (__getwd_warn): ... this.  Add __warnattr.
1402         (getwd): Call __getwd_warn instead of __getwd_alias.
1403         * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
1404         __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
1405         __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
1406         __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
1407         __wcsnrtombs_chk_warn): New aliases with __warnattr.
1408         (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
1409         mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
1410         compile time detectable overflow is found.
1411         (wcsncpy, wcpncpy): Likewise.  For constant __n fix check whether
1412         to use __*_chk or not.
1413         (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
1414         in comparisons which function should be called and in __*_chk*
1415         arguments.  Call __*_chk_warn instead of __*_chk if compile time
1416         detectable overflow is found.
1417         (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
1418         __*_chk argument.
1419         * debug/tst-chk1.c (do_test): Add a few more tests.
1420
1421 2007-09-24  Ulrich Drepper  <drepper@redhat.com>
1422
1423         [BZ #5058]
1424         * intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
1425         * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
1426         (_nl_unload_domain): Finalize conversions_lock.
1427         * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
1428         handling table of known conversions.
1429
1430 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
1431
1432         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
1433         close_not_cancel_no_status instead of close.
1434
1435 2007-09-13  Aurelien Jarno  <aurelien@aurel32.net>
1436
1437         [BZ #5028]
1438         * posix/regcomp.c (lookup_collation_sequence_value): Check that
1439         nrules != 0 for multibyte chars.
1440
1441 2007-09-23  Ulrich Drepper  <drepper@redhat.com>
1442
1443         * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
1444         Provide better error message in case the type is unknown.
1445
1446         [BZ #4963]
1447         * wcsmbs/wcsnlen.c: Don't reference before checking the length.
1448         * string/stratcliff.c: Make usable to test wide char functions.
1449         * wcsmbs/wcsatcliff.c: New file.
1450         * wcsmbs/Makefiel (tests): Add wcsatcliff.
1451
1452         [BZ #4972]
1453         * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
1454         (distribute): Add mac-centraleurope.c.
1455         (gen-8bit-gap-modules): Add mac-centraleurope.
1456         * iconvdata/mac-centraleurope.c: New file.
1457         * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
1458         * iconvdata/TESTS: Likewise.
1459         * iconvdata/tst-tables.sh: Likewise.
1460
1461         [BZ #5043]
1462         * iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
1463
1464 2007-09-21  Ulrich Drepper  <drepper@redhat.com>
1465
1466         * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
1467         from __x86_64_core_cache_size_half.
1468         (init_cacheinfo): Compute shared cache size for AMD processors with
1469         shared L3 correctly.
1470         * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
1471         name change.
1472         Patch in large parts by Evandro Menezes.
1473
1474 2007-09-19  Ulrich Drepper  <drepper@redhat.com>
1475
1476         * elf/dl-lookup.c (add_dependency): Handle failing memory
1477         allocation for dependency list.  Remove unnecessary check.
1478
1479         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
1480         open/close when determining source addresses.
1481
1482         * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
1483         sha512-crypt, and sha512.
1484         (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
1485         (distribute): Add sha256.h and sha512.h.
1486         * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
1487         and call the appropriate code.
1488         * crypt/sha256-crypt.c: New file.
1489         * crypt/sha256.c: New file.
1490         * crypt/sha256.h: New file.
1491         * crypt/sha256c-test.c: New file.
1492         * crypt/sha256test.c: New file.
1493         * crypt/sha512-crypt.c: New file.
1494         * crypt/sha512.c: New file.
1495         * crypt/sha512.h: New file.
1496         * crypt/sha512c-test.c: New file.
1497         * crypt/sha512test.c: New file.
1498
1499 2007-09-19  Jakub Jelinek  <jakub@redhat.com>
1500
1501         * misc/bits/syslog.h (syslog): Remove extraneous argument from
1502         the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
1503         __syslog_chk.
1504
1505 2007-09-18  Jakub Jelinek  <jakub@redhat.com>
1506
1507         * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
1508         %as in fscanf format strings.
1509
1510         * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
1511         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1512         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
1513         Likewise.
1514         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
1515         Likewise.
1516
1517         * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
1518         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
1519         DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
1520         * elf/dl-sym.c (do_sym): Likewise.
1521         * include/link.h (struct link_map): Add l_serial field.
1522         * elf/dl-object.c (_dl_new_object): Initialize l_serial.
1523         * elf/dl-lookup.c (add_dependency): Add flags argument.
1524         Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
1525         flags, use THREAD_GSCOPE_RESET_FLAG before and
1526         THREAD_GSCOPE_SET_FLAG after
1527         __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
1528         Don't dereference map until it has been found on some list.
1529         If map->l_serial changed, return -1.
1530
1531 2007-09-17  Jakub Jelinek  <jakub@redhat.com>
1532
1533         * include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
1534         __isoc99_sscanf, __isoc99_vscanf): New prototypes.
1535         (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
1536         libc_hidden_proto.
1537         * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
1538         __isoc99_swscanf, __isoc99_vwscanf): New prototypes.
1539         (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
1540         add libc_hidden_proto.
1541         * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
1542         vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
1543         conformance requested.
1544         * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
1545         vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
1546         conformance requested.
1547         * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
1548         vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
1549         conformance requested.
1550         * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
1551         vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
1552         ISO C99 or POSIX conformance requested.
1553         * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
1554         __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
1555         __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
1556         and __isoc99_vsscanf@@GLIBC_2.7.
1557         * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
1558         isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
1559         (tests): Add scanf14.
1560         (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
1561         CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
1562         CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
1563         CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
1564         CFLAGS-isoc99_scanf.c): Add $(exceptions).
1565         (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
1566         from using internal headers.
1567         * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
1568         __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
1569         __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
1570         and __isoc99_vswscanf@@GLIBC_2.7.
1571         * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
1572         isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
1573         (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
1574         CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
1575         (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
1576         * stdio-common/isoc99_scanf.c: New file.
1577         * stdio-common/isoc99_vsscanf.c: New file.
1578         * stdio-common/isoc99_vscanf.c: New file.
1579         * stdio-common/isoc99_vfscanf.c: New file.
1580         * stdio-common/isoc99_fscanf.c: New file.
1581         * stdio-common/isoc99_sscanf.c: New file.
1582         * wcsmbs/isoc99_fwscanf.c: New file.
1583         * wcsmbs/isoc99_vswscanf.c: New file.
1584         * wcsmbs/isoc99_swscanf.c: New file.
1585         * wcsmbs/isoc99_wscanf.c: New file.
1586         * wcsmbs/isoc99_vwscanf.c: New file.
1587         * wcsmbs/isoc99_vfwscanf.c: New file.
1588         * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
1589         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
1590         clear _IO_FLAGS2_SCANF_STD bit from _flags2.
1591         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
1592         handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
1593         * stdio-common/scanf14.c: New test.
1594         * stdio-common/scanf15.c: New test.
1595         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
1596         isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
1597         isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
1598         isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
1599         isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
1600         * sysdeps/ieee754/ldbl-opt/Versions (libc): Export
1601         __nldbl___isoc99_scanf@@GLIBC_2.7,
1602         __nldbl___isoc99_fscanf@@GLIBC_2.7,
1603         __nldbl___isoc99_sscanf@@GLIBC_2.7,
1604         __nldbl___isoc99_vscanf@@GLIBC_2.7,
1605         __nldbl___isoc99_vfscanf@@GLIBC_2.7,
1606         __nldbl___isoc99_vsscanf@@GLIBC_2.7,
1607         __nldbl___isoc99_wscanf@@GLIBC_2.7,
1608         __nldbl___isoc99_fwscanf@@GLIBC_2.7,
1609         __nldbl___isoc99_swscanf@@GLIBC_2.7,
1610         __nldbl___isoc99_vwscanf@@GLIBC_2.7,
1611         __nldbl___isoc99_vfwscanf@@GLIBC_2.7
1612         and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
1613         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
1614         __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
1615         __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
1616         __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
1617         __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
1618         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c
1619         (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
1620         __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
1621         __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
1622         __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
1623         __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
1624         __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
1625         functions.
1626         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
1627         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
1628         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
1629         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
1630         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
1631         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
1632         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
1633         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
1634         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
1635         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
1636         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
1637         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
1638
1639         * stdio-common/Makefile (tests): Add scanf13.
1640         (scanf13-ENV): New.
1641         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
1642         m modifier followed by l.
1643         (STRING_ARG): Add width argument.
1644         (_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
1645         <case L_('C')>: Handle %mlc and %mC.
1646         <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
1647         arguments.
1648         * stdio-common/scanf13.c: New test.
1649
1650         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
1651         the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
1652
1653 2007-09-18  Ulrich Drepper  <drepper@redhat.com>
1654
1655         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
1656         type and __THROW marker of splice, vmsplice, and tee.
1657         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1658         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1659         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1660         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1661         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1662         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1663         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1664         * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
1665         as cancellation points.
1666
1667 2003-11-01  Daniel Jacobowitz  <dan@debian.org>
1668
1669         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
1670         parse more than three parts of the version number.
1671
1672 2007-09-15  Ulrich Drepper  <drepper@redhat.com>
1673
1674         * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
1675         modifier.  Patch by Jakub Jelinek.
1676
1677 2007-08-26  Jakub Jelinek  <jakub@redhat.com>
1678
1679         * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
1680         call_fallocate in misc subdir.
1681         * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
1682         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
1683         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
1684         instead of __fallocate64.
1685         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
1686
1687 2007-09-15  Jakub Jelinek  <jakub@redhat.com>
1688
1689         * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
1690         * rt/Makefile (headers): Add bits/mqueue2.h.
1691         * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
1692         optimizing with GCC and __va_arg_pack_len is defined.
1693         * rt/bits/mqueue2.h: New file.
1694         * rt/mq_open.c (__mq_open): Renamed from mq_open.
1695         (mq_open): New strong_alias.
1696         (__mq_open_2): New function.
1697         * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
1698         (mq_open): New strong_alias.
1699         (__mq_open_2): New function.
1700         * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
1701         * Versions.def (librt): Add GLIBC_2.7 version.
1702         * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
1703         * include/stdio.h (__fortify_fail): Add libc_hidden_proto.
1704
1705         * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
1706         * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
1707         is defined rather than when not C++.
1708         * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
1709         __openat64_alias): New redirects.
1710         (__open_too_many_args, __open_missing_mode, __open64_too_many_args,
1711         __open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
1712         __openat64_too_many_args, __openat64_missing_mode): New __errordecls.
1713         (open, open64, openat, openat64): Rewrite as __extern_always_inline
1714         functions instead of function-like macros.
1715
1716 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
1717
1718         * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
1719         * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
1720         * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
1721
1722 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
1723
1724         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
1725         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
1726
1727 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
1728
1729         * inet/tst-network.c: Increment ERRORS for failing tests.
1730
1731 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
1732
1733         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
1734         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
1735         implement as __extern_always_inline function.
1736         (vsyslog): Define as __extern_always_inline function unconditionally.
1737         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
1738         When __va_arg_pack is defined, implement as __extern_always_inline
1739         functions.
1740         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
1741         __extern_always_inline functions unconditionally.
1742         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
1743         bits/stdio2.h will be included.
1744         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
1745         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
1746         implement as __extern_always_inline functions.
1747         (vswprintf, vwprintf, vfwprintf): Define as
1748         __extern_always_inline functions unconditionally.
1749         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
1750
1751 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
1752
1753         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
1754         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
1755         attribute.
1756         * include/features.h (__USE_EXTERN_INLINES): Define only when
1757         __extern_inline is defined.
1758         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
1759         is defined instead of when not __cplusplus.
1760         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
1761         is defined instead of when not __cplusplus.
1762         * socket/sys/socket.h: Include bits/socket2.h when
1763         __extern_always_inline is defined instead of when not __cplusplus.
1764         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
1765         is defined instead of when not __cplusplus.
1766         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
1767         is defined instead of when not __cplusplus.
1768         * string/string.h: Include bits/string3.h when __extern_always_inline
1769         is defined instead of when not __cplusplus.
1770         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
1771         is defined instead of when not __cplusplus.
1772         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
1773         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
1774         is not defined.
1775         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
1776         defined __extern_always_inline instead of !defined __cplusplus.
1777         * libio/bits/stdio-ldbl.h: Likewise.
1778         * wcsmbs/bits/wchar-ldbl.h: Likewise.
1779         * misc/bits/syslog.h (syslog): Don't define for C++.
1780         (vsyslog): Use __extern_always_inline function for C++ instead of
1781         a macro.
1782         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
1783         whenever that macro is defined.
1784         (vprintf): Don't provide the inline for C++.
1785         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
1786         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
1787         define the macros for C++.
1788         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
1789         __extern_always_inline functions for C++.
1790         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
1791         stat64, lstat64, fstat64, fstatat64): Don't define if not
1792         __USE_EXTERN_INLINES.
1793         * wcsmbs/bits/wchar2.h: Fix #error message.
1794         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
1795         (vswprintf, vwprintf, vfwprintf): Define using
1796         __extern_always_inline functions for C++.
1797         * string/bits/string3.h: Don't #undef macros if __cplusplus.
1798         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
1799         strncpy, strcat, strncat): Define as __extern_always_inline
1800         functions instead of macros for C++.
1801         * math/bits/cmathcalls.h: Guard __extern_inline routines with
1802         defined __extern_inline.
1803         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
1804         to __extern_inline whenever that macro is defined.
1805         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
1806         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
1807         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
1808         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
1809         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
1810         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
1811         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
1812         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
1813         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
1814         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
1815         prototypes.  Only provide __extern_inline routines if
1816         __USE_EXTERN_INLINES.
1817         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
1818         tests.
1819         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
1820         For now avoid some *printf tests in C++.  Skip all testing
1821         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
1822         is not.
1823         * debug/tst-chk4.cc: New file.
1824         * debug/tst-chk5.cc: New file.
1825         * debug/tst-chk6.cc: New file.
1826         * debug/tst-lfschk4.cc: New file.
1827         * debug/tst-lfschk5.cc: New file.
1828         * debug/tst-lfschk6.cc: New file.
1829         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
1830         prototypes in C++.
1831         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
1832         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
1833         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
1834
1835 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
1836
1837         * po/cs.po: Update from translation team.
1838
1839 2007-09-11  Roland McGrath  <roland@redhat.com>
1840
1841         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
1842         compiling.
1843
1844 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1845
1846         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
1847
1848 2007-09-05  Roland McGrath  <roland@redhat.com>
1849
1850         * manual/signal.texi (Signaling Another Process): Typo fix.
1851         From Karl Berry <karl@freefriends.org>.
1852
1853 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
1854
1855         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
1856         zero if not defined.
1857         (make_request): Recognize optimistic addresses and treat them like
1858         deprecated addresses.
1859         Reported by Neil Horman <nhorman@redhat.com>.
1860
1861 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
1862
1863         * nscd/connections.c (send_ro_fd): Also transfer file size.
1864         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
1865         file size don't call fstat.
1866
1867         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
1868         ahead and map the file.  This should always be correct and we can
1869         catch problems later.
1870
1871 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
1872
1873         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
1874         prototypes.
1875         (__fread_alias, __fread_unlocked_alias): New aliases.
1876         (fread): New extern inline.
1877         (fread_unlocked): Likewise.  Undef macro before definition of
1878         the inline function.
1879         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
1880         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
1881         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
1882         and __fread_unlocked_chk@@GLIBC_2.7.
1883         * debug/fread_chk.c: New file.
1884         * debug/fread_u_chk.c: New file.
1885         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
1886
1887 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
1888
1889         * sysdeps/unix/sysv/linux/syscalls.list
1890         (personality): Change caller to EXTRA.
1891
1892 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
1893
1894         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
1895         to keep gcc quiet.
1896         * iconvdata/iso-2022-cn.c (BODY): Likewise.
1897
1898         * locale/programs/ld-collate.c (collate_output): Avoid warning if
1899         NDEBUG is defined.
1900
1901         * Makerules: Use -p option with mkdir.
1902
1903         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
1904         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
1905         (_xdr_directory_obj): Likewise.
1906         (xdr_entry_obj): Likewise.
1907         (xdr_group_obj): Likewise.
1908         (xdr_link_obj): Likewise.
1909         (xdr_table_obj): Likewise.
1910         (_xdr_nis_result): Likewise.
1911         (_xdr_ns_request): Likewise.
1912         (_xdr_ib_request): Likewise.
1913         (_xdr_nis_taglist): Likewise.
1914         (xdr_cback_data): Likewise.
1915         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
1916         (xdr_ypresp_maplist): Likewise.
1917
1918         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
1919
1920         * posix/regex_internal.h: Prevent some declarations and definitions
1921         to be seen when used in tests.
1922
1923         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
1924         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
1925
1926         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
1927
1928         * config.make.in (datarootdir): Add to shut up configure.
1929
1930         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
1931         associativity for fully-associative caches.
1932
1933         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
1934         requests.  Fill on more associativity values for L2.
1935         Patch mostly by Evandro Menezes.
1936
1937 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
1938
1939         * sysdeps/unix/sysv/linux/x86_64/init-first.c
1940         (_libc_vdso_platform_setup): Avoid using exported variable by using
1941         alias.
1942
1943         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
1944
1945         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
1946         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
1947         defined.
1948
1949 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
1950
1951         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
1952         align stack for call if pltexit is to be used.
1953
1954         [BZ #3924]
1955         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
1956         align for function call in case pltexit has to be called later.
1957
1958         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
1959         implicit atomic operation when storing function pointer.
1960         (_dl_runtime_profile): Likewise.
1961
1962 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
1963
1964         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
1965         NIS_NOTFOUND.
1966
1967 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
1968
1969         [BZ #4566]
1970         * string/strtok.c: Fix typo in comment.
1971
1972         [BZ #4582]
1973         * debug/segfault.c: Fix typos in comments.
1974
1975         [BZ #4588]
1976         * stdio-common/tempnam.c: Fix comment, it is not checked that
1977         TMPDIR points to a writable directory.
1978
1979         [BZ #4726]
1980         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
1981         memory allocated for the name server address.
1982
1983         [BZ #4946]
1984         * nscd/connections.c (handle_request): Using sendfile always
1985         requires that mmap is used for the database.
1986         Patch by Petr Baudis <pasky@suse.cz>.
1987
1988         [BZ #4905]
1989         * nscd/hstcache.c (cache_addhst): When reloading an entry which
1990         suddenly has two or more addresses, ignore it and remove the old
1991         entry.
1992
1993         [BZ #4814]
1994         * resolv/res_hconf.c: Prepare for compiling outside libc.
1995         * nscd/res_hconf.c: New file.
1996         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
1997         the new file.
1998         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
1999         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
2000
2001         * nscd/hstcache.c (cache_addhst): Minimal optimization.
2002
2003         [BZ #4925]
2004         * debug/pcprofiledump.c: Turn on internationalization by calling
2005         setlocale.  Patch mostly by Benno Schulenberg.
2006
2007         [BZ #4936]
2008         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
2009         the state.
2010         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
2011         * iconvdata/bug-iconv5.c: New file.
2012
2013 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
2014
2015         [BZ #4896]
2016         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
2017         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
2018         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
2019         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
2020         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
2021         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
2022         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
2023         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
2024
2025 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
2026
2027         [BZ #4937]
2028         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
2029         lookup loop.  Suggested by John Reiser.
2030
2031 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
2032
2033         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
2034
2035 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
2036
2037         * csu/libc-start.c: Don't handle VDSO_SETUP here.
2038         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
2039         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
2040         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
2041         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
2042         to...
2043         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
2044
2045 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
2046
2047         * po/nl.po: Update from translation team.
2048
2049 2007-08-16  Andreas Jaeger  <aj@suse.de>
2050
2051         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
2052         Reported by Peter Festner <peter.festner@ewetel.net>.
2053
2054 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
2055
2056         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
2057
2058 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
2059
2060         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
2061         to check for undefined symbols.
2062
2063         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
2064         If the syscall fails, set errno to the actual returned error number
2065         rather than EINVAL.
2066         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
2067         arguments are incorrect, set errno to EINVAL, if the syscall
2068         fails, set errno to the actual returned error number.
2069
2070         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
2071         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
2072
2073         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
2074         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
2075         file.
2076         (ASI_PNF, ASI_BLK_P): Don't define.
2077         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
2078         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
2079         file.
2080         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
2081         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
2082         file.
2083
2084 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
2085
2086         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
2087         FE_UNDERFLOW on Niagara CPUs.
2088
2089         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
2090         exceptions.
2091
2092 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
2093
2094         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
2095         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
2096         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
2097         flush should be used or not inside of the function.
2098         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
2099
2100         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
2101         __thread_start): Use HIDDEN_JUMPTARGET.
2102         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
2103         __thread_start): Likewise.
2104         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
2105
2106         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
2107         Add libc_hidden_proto.
2108         (STRTOF): Add libc_hidden_proto.
2109         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
2110         (strtold_l, wcstold_l): Use them as second argument for
2111         long_double_symbol.
2112
2113 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
2114
2115         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
2116
2117 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2118
2119         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
2120
2121 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
2122
2123         * po/bg.po: New file.  From the translation team.
2124
2125 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
2126
2127         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
2128         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
2129         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
2130         when each feature was introduced.
2131
2132         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
2133         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
2134         (CHECK_HASH): New macro.
2135         (PREPARE_VERSION): Use it.
2136
2137         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
2138         prototype if not __ASSUME_PSELECT.
2139         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
2140         prototype if not __ASSUME_PPOLL.
2141
2142         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
2143
2144         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
2145         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
2146         is defined.
2147
2148 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
2149
2150         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
2151         (_libc_vdso_platform_setup): If vDSO is not available point
2152         __vdso_gettimeofday to the vsyscall.
2153         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
2154         __vdso_gettimeofday instead of vsyscall.
2155
2156 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
2157
2158         * nscd/servicescache.c: Include kernel-features.h.
2159         * nscd/gai.c: Likewise.
2160         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
2161         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
2162         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
2163         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
2164         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
2165         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
2166         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
2167         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
2168         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
2169
2170 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
2171
2172         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
2173         and _dl_get_origin defines anymore.
2174
2175         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
2176         Build fix for systems which might lack POSIX timer support.
2177
2178         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
2179         (_libc_vdso_platform_setup): Mangle function pointers before storing
2180         them.
2181         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
2182         Demangle vdso pointer before use.
2183         (INTERNAL_VSYSCALL): Likewise.
2184
2185         * elf/cache.c (primes): Mark as const.
2186         Noted by Roland McGrath.
2187
2188 2007-08-01  Andreas Jaeger  <aj@suse.de>
2189             Jakub Jelinek  <jakub@redhat.com>
2190
2191         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
2192         (options): Add option.
2193         (parse_opt): Handle option.
2194         (manual_link): Adjust process_file caller.  Call implicit_soname.
2195         (search_dir): Formatting.  Use and populate auxiliary cache.
2196         (main): Load and save auxiliary cache.
2197         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
2198         stat64 from fstat64 to caller.
2199         (implicit_soname): New function.
2200         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
2201         leave *soname as NULL.
2202         * elf/cache.c: Include libgen.h.
2203         (print_entry, print_cache, compare, save_cache, add_to_cache):
2204         Formatting and cleanups.
2205         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
2206         aux_cache_file): New structures.
2207         (AUX_CACHEMAGIC): Define.
2208         (primes): New array.
2209         (aux_hash_size, aux_hash): New variables.
2210         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
2211         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
2212         load_aux_cache, save_aux_cache): New functions.
2213         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
2214         (init_aux_cache, search_aux_cache, add_to_aux_cache,
2215         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
2216         (process_file): Adjust prototype.
2217
2218 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
2219
2220         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
2221         with __need_size_t.
2222
2223 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
2224
2225         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
2226         r_found_version structure as second parameter.
2227         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
2228         (_dl_vdso_vsym): Change type of second parameter accordingly.
2229         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
2230         (_libc_vdso_platform_setup): Adjust.
2231         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
2232         (_libc_vdso_platform_setup): Likewise.
2233
2234         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
2235         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
2236         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
2237         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
2238         * csu/libc-start.c: Pretty printing.
2239         Use VDSO_SETUP if defined.
2240         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
2241         and let generic code call into _libc_vdso_platform_setup.
2242         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
2243         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
2244         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
2245         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
2246         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
2247         for GLIBC_PRIVATE.
2248         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
2249         (sysdep_rountines): Add dl-vdso.
2250
2251         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
2252         of routines.
2253
2254         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
2255         attribute_hidden to __vdso_gettimeofday prototype.
2256
2257 2007-08-12  Roland McGrath  <roland@redhat.com>
2258
2259         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
2260         From: Karl Berry <karl@freefriends.org>.
2261
2262 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
2263
2264         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
2265         an atime update for the files we read.
2266
2267 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
2268
2269         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
2270
2271         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
2272         instead of mkstemp.
2273
2274         * misc/Makefile (routines): Add mkostemp and mkostemp64.
2275         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
2276         * misc/mkostemp.c: New file.
2277         * misc/mkostemp64.c: New file.
2278         * stdlib/stdlib.h: Declare the new functions.
2279         * sysdeps/posix/tempname.c: Add new parameter which is added to
2280         the flags for open.  Remove __GT_BIGFILE handling.
2281         * stdio-common/tempname.c: Likewise.
2282         * include/stdio.h: Adjust __gen_tempname prototype.
2283         Renumber __GT_* constants.
2284         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
2285         * misc/mkdtemp.c: Likewise.
2286         * misc/mkstemp.c: Likewise.
2287         * misc/mkstemp64.c: Likewise.
2288         * misc/mktemp.c: Likewise.
2289         * stdio-common/tempnam.c: Likewise.
2290         * stdio-common/tmpfile.c: Likewise.
2291         * stdio-common/tmpfile64.c: Likewise.
2292         * stdio-common/tmpnam.c: Likewise.
2293         * stdio-common/tmpnam_r.c: Likewise.
2294
2295 2007-08-10  Roland McGrath  <roland@frob.com>
2296
2297         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
2298         New macros.
2299         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
2300         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2301
2302 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
2303
2304         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
2305         possible.
2306         * nss/nss_files/files-alias.c (internal_setent): Likewise.
2307         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
2308         * nss/nss_files/files-have_o_cloexec.c: New file.
2309
2310         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
2311         available.
2312
2313 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
2314
2315         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
2316         ___new_wcstold_l): New weak aliases.
2317         (strtold_l, wcstold_l): Use them as second argument for
2318         long_double_symbol.
2319
2320 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
2321
2322         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
2323         register in test for error.
2324
2325         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
2326         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
2327
2328         * po/sv.po: Update from translation team.
2329
2330 2007-08-06  Roland McGrath  <roland@redhat.com>
2331
2332         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
2333         Remove __strto*_l inlines.
2334         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
2335         * stdlib/strtod.c: Add libc_hidden_def.
2336         * stdlib/strtod_l.c: Likewise.
2337         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
2338         for __new_strtold and __new_wcstold.
2339         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
2340         __STRTOF, STRTOF.
2341         * stdlib/strtol.c: Add libc_hidden_def.
2342         * stdlib/strtol_l.c: Likewise.
2343         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
2344         strtoq.
2345
2346         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
2347
2348         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
2349         * scripts/data/localplt-generic.data: ... here.
2350         * elf/Makefile (check-data): Get generic file if no other.
2351         ($(objpfx)check-localplt.out): Make target unconditional.
2352
2353         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
2354         Use ElfW(Nhdr).
2355
2356 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
2357
2358         * po/zh_CN.po: Updated translation from translation team.
2359
2360 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
2361
2362         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
2363         Don't use CGOTSETUP and CGOTRESTORE macros.
2364
2365 2007-08-04  Roland McGrath  <roland@redhat.com>
2366
2367         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
2368
2369 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
2370
2371         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
2372         __extension__ around the whole statement expression.
2373
2374 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
2375
2376         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
2377         elements during initialization.
2378
2379         * po/pl.po: Updated translation from translation team.
2380         * po/tr.po: Likewise.
2381         * po/nl.po: Likewise.
2382
2383 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
2384
2385         * rt/aio.h: Add __nonnull attributes.
2386
2387 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
2388
2389         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
2390         * stdlib/Makefile (tests): Add tst-strtod5.
2391         (tst-strtod5-ENV): New.
2392         * stdlib/tst-strtod5.c: New file.
2393
2394         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
2395         failed.
2396         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
2397         on failure.
2398
2399         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
2400         allocated.
2401
2402 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
2403
2404         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
2405         numbers.
2406
2407 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
2408
2409         * io/Makefile (aux): Add have_o_cloexec.
2410         * include/fcntl.h: Declare __have_o_cloexec.
2411         * io/have_o_cloexec.c: New file.
2412         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
2413         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
2414         fcntl call if not necessary.
2415         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
2416         of local variable.
2417
2418         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
2419         Avoid memset, add explicit initialization.
2420         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
2421         to the end and change into zero-sized array.
2422         Move lock member to fill a hole on 64-bit platforms.
2423
2424         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
2425         inline functions.
2426         * include/stdlib.h: Add __strto*_internal prototypes here.
2427         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
2428         inline functions.
2429         * include/wchar.h: Add __wcsto*_internal prototypes.
2430         * sysdeps/generic/inttypes.h: No need to protect the declaration
2431         of the __strto*_internal and __wcsto*_internal members here.
2432
2433         * rt/mqueue.h: Change const to __const and add nonnull attributes.
2434
2435 2007-08-02  Roland McGrath  <roland@redhat.com>
2436
2437         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
2438         $(inst_bindir)/getconf if possible.
2439
2440         * posix/Makefile ($(objpfx)getconf.speclist): New target.
2441         (generated): Add it.
2442         ($(inst_libexecdir)/getconf): Use it.
2443
2444 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
2445
2446         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
2447         /proc is faster and sufficient.  /sys is still needed for
2448         __get_nprocs_conf.
2449
2450 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
2451
2452         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
2453         syscall as __fallocate64.
2454         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
2455         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
2456
2457 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
2458
2459         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
2460         value.
2461
2462         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
2463         if off_t is different rank from size_t.
2464
2465         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
2466         uw_frame_state_for): Avoid type punning warnings.
2467         * sysdeps/generic/unwind-dw2-fde-glibc.c
2468         (_Unwind_IteratePhdrCallback): Likewise.
2469         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
2470         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
2471         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
2472         pointers.
2473
2474 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
2475
2476         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
2477         total processors using sysfs.
2478         (__get_nprocs): Use sysfs to determine which processors are online.
2479
2480 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
2481
2482         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
2483         syscall arguments count.
2484
2485         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
2486
2487 2007-07-30  Roland McGrath  <roland@redhat.com>
2488
2489         * manual/libc.texinfo: Update copyrights, formatting magic, and
2490         @dircategory.  From Karl Berry <karl@freefriends.org>.
2491
2492 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
2493
2494         [BZ #4860]
2495         * io/Makefile (headers): Add bits/fcntl2.h.
2496
2497         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
2498         using gcc builtin.
2499         (__CPU_EQUAL_S): Likewise.
2500
2501         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
2502         (tests): Add tst-cpuset.
2503         * posix/sched_cpualloc.c: New file.
2504         * posix/sched_cpufree.c: New file.
2505         * posix/tst-cpuset.c: New file.
2506         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
2507         GLIBC_2.7.
2508         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
2509         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
2510         macros.  Define CPU_*_S macros.
2511
2512 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
2513
2514         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
2515         entry.
2516
2517         [BZ #4858]
2518         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
2519         #.0g and value rounded to 1.0.
2520         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
2521
2522 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
2523
2524         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
2525         for int_frac_digits and frac_digits.
2526
2527         * login/logout.c (logout): Avoid aliasing violation.
2528         * login/logwtmp.c (logwtmp): Likewise.
2529
2530         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
2531
2532         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
2533         to avoid warning.
2534         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
2535         warning.
2536         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
2537         warning.
2538         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
2539         to avoid warnings.
2540
2541         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
2542         void **.
2543         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
2544
2545         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
2546         char * to avoid warning.
2547         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
2548
2549         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
2550
2551         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
2552         allocate_arrays): Cast second argument to charmap_find_symbol
2553         to char * to avoid warnings.
2554
2555         * locale/programs/repertoire.c (repertoire_new_char): Change
2556         from_nr, to_nr and cnt to unsigned long, adjust printf format
2557         string.
2558
2559         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
2560         Cast second argument to new_element to char * to avoid warnings.
2561
2562         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
2563
2564         * intl/gettextP.h (struct loaded_domain): Change plural to const
2565         struct expression *.
2566         * intl/plural-eval.c (plural_eval): Change first argument to
2567         const struct expression *.
2568         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
2569         argument to const struct expression **.
2570         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
2571         prototypes.
2572         * intl/loadmsgcat (_nl_unload_domain): Cast away const
2573         in call to __gettext_free_exp.
2574
2575         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
2576         unitialized wstring/wpattern var warnings.
2577
2578         * posix/runtests.c (struct a_test): Make data field const char *.
2579
2580         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
2581         vars if not LDBL_MANT_DIG >= 106.
2582
2583         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
2584
2585         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
2586         __find_specmb to avoid warning.
2587
2588         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
2589
2590         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
2591         to avoid warnings.
2592
2593         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
2594         initializer.
2595
2596         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
2597         tv var when it will be actually used.
2598
2599         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
2600         to avoid warnings.
2601
2602         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
2603         char array resp. pointer.
2604         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
2605         char array.
2606         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
2607         to const unsigned char **.
2608         (ucs4_to_cns11643): Change second argument to unsigned char *.
2609         * iconvdata/euc-tw.c (BODY): Change endp type to
2610         const unsigned char *.
2611         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
2612         to unsigned char *.
2613         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
2614         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
2615         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
2616         types to unsigned char pointers/arrays instead of char.
2617         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
2618         to unsigned char *.
2619         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
2620         * iconvdata/jis0212.h: Include assert.h.
2621         (ucs4_to_jisx0212): Change second argument to unsigned char *.
2622         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
2623         of trying to handle that.
2624         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
2625         shut up a warning.
2626         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
2627         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
2628         two dimensional const unsigned char arrays.
2629         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
2630         Initialize endp to inptr to shut up a warning.
2631
2632 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
2633
2634         [BZ #4772]
2635         * time/strptime_l.c (__strptime_internal): Silently ignore
2636         strftime modifiers and field width in recursive calls.
2637
2638         * include/time.h (enum ptime_locale_status): Remove.
2639         (__strptime_internal): Remove decided and era_cnt arguments,
2640         add statep argument.
2641         * time/strptime_l.c (__strptime_internal): Remove decided
2642         and era_cnt arguments, add statep argument.  Don't recompute
2643         any fields in recursive calls, only update caller's tm
2644         and state, if recursive call fails, don't change tm nor
2645         any state.
2646         (get_alt_number): Adjust.
2647         (recursive): Adjust caller.
2648         (strptime): Likewise.
2649         * time/strptime.c (strptime): Likewise.
2650
2651 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
2652
2653         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
2654         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
2655         if from and to charsets are the same.
2656         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
2657         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
2658         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
2659
2660 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
2661
2662         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
2663         Don't define wint_t when __need_mbstate_t unless it
2664         is necessary.
2665         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
2666         in the typedef if possible.
2667         * wctype/wctype.h (wint_t): Define by including
2668         wchar.h with __need_wint_t instead of including stddef.h
2669         with __need_wint_t and as fallback definining it ourselves.
2670         * iconv/gconv.h (__need_wint_t): Define before including
2671         wchar.h.
2672         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
2673         or _GLIBCPP_USE_WCHAR_T.
2674         (__need_wchar_t): Don't define
2675         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
2676         (__need_wint_t): Don't define before including stddef.h,
2677         define before including wchar.h only if _LIBC or
2678         _GLIBCPP_USE_WCHAR_T.
2679         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
2680         * sysdeps/mach/hurd/_G_config.h: Likewise.
2681         * sysdeps/generic/_G_config.h: Likewise.
2682         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
2683         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
2684         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
2685         if _LIBC or _GLIBCPP_USE_WCHAR_T.
2686
2687 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
2688
2689         * sysdeps/posix/posix_fallocate64.c: Undefine
2690         __posix_fallocate64_l64 before alias handling.
2691         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
2692         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
2693         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
2694         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
2695
2696         * io/tst-posix_fallocate.c: Include <fcntl.h>.
2697
2698 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
2699
2700         * locale/programs/ld-collate.c (atwc): New variable.
2701         (add_to_tablewc): New toplevel function, moved from collate_output.
2702         (collate_output): Remove add_to_tablewc nested function.
2703
2704         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
2705         (name_insert): New function.
2706         (write_output): Remove hash_table and hash_size vars and name_insert
2707         nested function.
2708
2709 2007-07-24  Roland McGrath  <roland@redhat.com>
2710
2711         * Makerules (install-others-programs-nosubdir): New target.
2712         (install-no-libc.a-nosubdir): Depend on it.
2713
2714         * iconv/Makefile (install-others-programs): Set this instead of
2715         install-others.
2716         * login/Makefile (install-others-programs): Likewise.
2717         * posix/Makefile (install-others-programs): Likewise.
2718
2719         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
2720         dependencies.
2721
2722 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
2723
2724         * io/Makefile (tests): Add tst-posix_fallocate.
2725         * io/tst-posix_fallocate.c: New file.
2726
2727         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2728         __ASSUME_FALLOCATE.
2729
2730 2007-07-22  Roland McGrath  <roland@frob.com>
2731
2732         * hurd/getdport.c: Add missing copyright year update.
2733
2734         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
2735         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
2736
2737 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
2738
2739         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
2740
2741         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
2742         O_CLOEXEC is needed.
2743         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
2744         Avoid additional fcntl to set O_CLOEXEC if not needed.
2745         * nis/nss_compat/compat-initgroups.c: Likewise.
2746         * nis/nss_compat/compat-pwd.c: Likewise.
2747         * nis/nss_compat/compat-spwd.c: Likewise.
2748
2749 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
2750
2751         [BZ #3665]
2752         * manual/errno.texi: Change ECANCELED value to 119.
2753
2754         [BZ #4610]
2755         * mach/lock-intern.h: Include <sys/cdefs.h>.
2756
2757         [BZ #4178]
2758         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
2759         reading A.
2760
2761         [BZ #4126]
2762         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
2763         to __sigsuspend.
2764
2765         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
2766
2767 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
2768
2769         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
2770         `__ASSEMBLER__'.
2771         * sysdeps/mach/hurd/i386/tls.h: Likewise.
2772
2773 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
2774
2775         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
2776         descriptor received from nscd.
2777
2778         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
2779
2780         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
2781         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2782         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2783         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2784         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2785         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
2786
2787 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
2788
2789         [BZ #4816]
2790         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
2791
2792         [BZ #4813]
2793         * login/forkpty.c (forkpty): Close master and slave fds on
2794         fork failure.  Patch by
2795         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
2796
2797 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
2798
2799         * include/features.h (__USE_ISOC95): New define.
2800         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
2801         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
2802         for -std=iso9899:199409.
2803         * CONFORMANCE: Remove comments about unsupported AMD1.
2804
2805 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
2806
2807         * sysdeps/ia64/sched_cpucount.c: New file.
2808         * sysdeps/powerpc/sched_cpucount.c: New file.
2809
2810         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
2811         __BEGIN_DECLS/__END_DECLS around the prototype.
2812         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
2813         pointer to const cpu_set_t.
2814
2815         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
2816         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
2817         __need_size_t and include stddef.h.
2818         * sysvipc/sys/msg.h: Likewise.
2819         * posix/sched.h: Likewise.
2820         * hurd/hurd/signal.h (__need_size_t): Define.
2821
2822         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
2823         neither does signal.h in pedantic ISO C namespaces.  stdio.h
2824         no longer defines wint_t or wchar_t.
2825
2826         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
2827         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
2828         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
2829         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
2830         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
2831         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
2832         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
2833         * debug/printf_chk.c (__printf_chk): Likewise.
2834         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
2835         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
2836
2837         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
2838         Define.
2839
2840         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
2841         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
2842
2843 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
2844
2845         [BZ #4792]
2846         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
2847         * malloc/malloc.h (realloc): Likewise.
2848
2849         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
2850         if one of proc_file_chain streams has that fileno.
2851         * stdio-common/Makefile (tests): Add tst-popen2.
2852         * stdio-common/tst-popen2.c: New test.
2853
2854 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
2855
2856         * elf/ldconfig.c: Allow GPLv2 or any later version.
2857         * elf/readlib.c: Likewise.
2858         * elf/chroot_canon.c: Likewise.
2859         * elf/cache.c: Likewise.
2860         * nscd/mem.c: Likewise.
2861         * nscd/getpwuid_r.c: Likewise.
2862         * nscd/grpcache.c: Likewise.
2863         * nscd/aicache.c: Likewise.
2864         * nscd/getsrvbynm_r.c: Likewise.
2865         * nscd/nscd.c: Likewise.
2866         * nscd/servicescache.c: Likewise.
2867         * nscd/getsrvbypt_r.c: Likewise.
2868         * nscd/initgrcache.c: Likewise.
2869         * nscd/gethstbyad_r.c: Likewise.
2870         * nscd/gethstbynm2_r.c: Likewise.
2871         * nscd/getgrnam_r.c: Likewise.
2872         * nscd/nscd_setup_thread.c: Likewise.
2873         * nscd/getpwnam_r.c: Likewise.
2874         * nscd/gai.c: Likewise.
2875         * nscd/connections.c: Likewise.
2876         * nscd/dbg_log.c: Likewise.
2877         * nscd/cache.c: Likewise.
2878         * nscd/hstcache.c: Likewise.
2879         * nscd/nscd_conf.c: Likewise.
2880         * nscd/getgrgid_r.c: Likewise.
2881         * nscd/pwdcache.c: Likewise.
2882         * catgets/gencat.c: Likewise.
2883         * locale/programs/linereader.h: Likewise.
2884         * locale/programs/locarchive.c: Likewise.
2885         * locale/programs/ld-paper.c: Likewise.
2886         * locale/programs/locfile-kw.h: Likewise.
2887         * locale/programs/ld-address.c: Likewise.
2888         * locale/programs/xmalloc.c: Likewise.
2889         * locale/programs/ld-time.c: Likewise.
2890         * locale/programs/localedef.c: Likewise.
2891         * locale/programs/simple-hash.c: Likewise.
2892         * locale/programs/xstrdup.c: Likewise.
2893         * locale/programs/ld-numeric.c: Likewise.
2894         * locale/programs/locfile-kw.gperf: Likewise.
2895         * locale/programs/ld-collate.c: Likewise.
2896         * locale/programs/charmap-kw.gperf: Likewise.
2897         * locale/programs/charmap.h: Likewise.
2898         * locale/programs/charmap-kw.h: Likewise.
2899         * locale/programs/config.h: Likewise.
2900         * locale/programs/locfile.c: Likewise.
2901         * locale/programs/ld-ctype.c: Likewise.
2902         * locale/programs/charmap.c: Likewise.
2903         * locale/programs/ld-messages.c: Likewise.
2904         * locale/programs/repertoire.h: Likewise.
2905         * locale/programs/locale.c: Likewise.
2906         * locale/programs/ld-name.c: Likewise.
2907         * locale/programs/linereader.c: Likewise.
2908         * locale/programs/locfile.h: Likewise.
2909         * locale/programs/3level.h: Likewise.
2910         * locale/programs/ld-monetary.c: Likewise.
2911         * locale/programs/ld-measurement.c: Likewise.
2912         * locale/programs/charmap-dir.c: Likewise.
2913         * locale/programs/ld-identification.c: Likewise.
2914         * locale/programs/localedef.h: Likewise.
2915         * locale/programs/charmap-dir.h: Likewise.
2916         * locale/programs/repertoire.c: Likewise.
2917         * locale/programs/simple-hash.h: Likewise.
2918         * locale/programs/ld-telephone.c: Likewise.
2919         * locale/programs/locale-spec.c: Likewise.
2920         * locale/programs/locfile-token.h: Likewise.
2921         * posix/getconf.c: Likewise.
2922         * iconv/dummy-repertoire.c: Likewise.
2923         * iconv/iconv_charmap.c: Likewise.
2924         * iconv/iconvconfig.c: Likewise.
2925         * iconv/iconv_prog.c: Likewise.
2926         * malloc/memusagestat.c: Likewise.
2927         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
2928
2929 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2930
2931         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
2932         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
2933         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
2934         check for the first argument.
2935
2936 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
2937
2938         [BZ #4775]
2939         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
2940         (__tgmath_real_type): Fix if expr is const int or other const
2941         qualified integral type.
2942         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
2943         expressions and handle const qualified arguments.
2944         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
2945         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
2946         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
2947         statement expressions.
2948         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
2949         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
2950         (__TGMATH_UNARY_IMAG): Define.
2951         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
2952         * math/Makefile (tests): Add test-tgmath2.
2953         (CFLAGS-test-tgmath2.c): Add.
2954         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
2955         count_cfloat, count_cldouble): New variables.
2956         (NCCALLS): Define.
2957         (main): Check number of complex calls as well.
2958         (F(compile_test)): Add complex tests and tests with const qualified
2959         arguments.
2960         (y, z, ccount): Define.
2961         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
2962         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
2963         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
2964         F(cproj)): New functions.
2965         * math/test-tgmath2.c: New test.
2966
2967 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
2968
2969         [BZ #4776]
2970         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
2971         RPATH etc. as "/" rather than "", don't segfault on empty paths,
2972         instead output ".".
2973         * dlfcn/Makefile (distribute): Add glreflib3.c.
2974         (module-names): Add glreflib3.
2975         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
2976         glreflib1.so.
2977         (LDFLAGS_glreflib3.so): New.
2978         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
2979         glreflib1.so.
2980         * dlfcn/glreflib3.c: New file.
2981
2982         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
2983         returned -1, return NULL.
2984         * intl/explodename.c (_nl_explode_name): Return -1 if
2985         _nl_normalize_codeset failed.
2986
2987 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
2988
2989         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
2990         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
2991         and avoid branch misspredicts for > 31 bytes memset case.
2992         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
2993         Remove toc ref to __cache_line_size.
2994
2995         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
2996         to get ISA-V2.0 branch hints.
2997         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
2998         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
2999         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
3000         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
3001         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
3002         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
3003         Remove toc ref to __cache_line_size.
3004
3005         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
3006         Include math_ldbl_opt.h.
3007
3008 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
3009
3010         [BZ #4773]
3011         * time/strptime_l.c (__strptime_internal): Implement greedy
3012         matching of weekday and month names.
3013
3014 2007-07-09  Roland McGrath  <roland@redhat.com>
3015
3016         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
3017         (ELF_NOTE_ABI): Use it.
3018         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
3019
3020 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
3021
3022         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
3023         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
3024
3025 2007-07-07  Ulrich Drepper  <drepper@redhat.com>
3026
3027         [BZ #4745]
3028         * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
3029         in loop to look for conversion specifier to avoid testing of
3030         wrong errno value.
3031         * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
3032         * stdio-common/bug18.c: New file.
3033         * stdio-common/bug18a.c: New file.
3034         * stdio-common/bug19.c: New file.
3035         * stdio-common/bug19a.c: New file.
3036
3037 2007-07-05  Mike Frysinger  <vapier@gentoo.org>
3038
3039         * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
3040         running awk script.
3041
3042 2007-07-01  Jakub Jelinek  <jakub@redhat.com>
3043
3044         * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
3045         * elf/dl-minimal.c (__libc_memalign): Likewise.  Handle malloc (0).
3046         Return NULL if mmap failed instead of asserting it does not.
3047         (calloc): Check for integer overflow.
3048
3049         * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
3050         than LONG_MAX / 10.
3051
3052 2007-07-03  Jakub Jelinek  <jakub@redhat.com>
3053
3054         [BZ #4702]
3055         * nis/nss-default.c: Include errno.h.
3056         (init): Preserve errno.
3057
3058 2007-07-02  Ulrich Drepper  <drepper@redhat.com>
3059
3060         * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
3061
3062 2007-06-30  Ulrich Drepper  <drepper@redhat.com>
3063
3064         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
3065
3066 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3067
3068         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
3069
3070 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3071
3072         * sysdeps/s390/dl-procinfo.c: New file.
3073         * sysdeps/s390/dl-procinfo.h: New file.
3074         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
3075
3076 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
3077
3078         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
3079         in PT_NOTE segments with multiple notes.
3080         * elf/readelflib.c (process_elf_file): Likewise.
3081
3082 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
3083
3084         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
3085         ISO C compliant.
3086
3087 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
3088
3089         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
3090
3091 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
3092
3093         * include/link.h: Don't include rtld-lowlevel.h.
3094         (struct link_map): Remove l_scope_lock.
3095         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
3096         (_dl_scope_free_list): New field (variable) in _rtld_global.
3097         (DL_LOOKUP_SCOPE_LOCK): Remove.
3098         (_dl_scope_free): New prototype.
3099         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
3100         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
3101         (_dl_profile_fixup): Likewise.
3102         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
3103         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
3104         THREAD_GSCOPE_RESET_FLAG around it.
3105         * elf/dl-close.c (_dl_close_worker): Don't use
3106         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
3107         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
3108         scopes were queued or if l_scope_mem has been abandoned.
3109         * elf/dl-open.c (_dl_scope_free): New function.
3110         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
3111         * elf/dl-support.c (_dl_scope_free_list): New variable.
3112         * elf/dl-lookup.c (add_dependency): Remove flags argument.
3113         Remove DL_LOOKUP_SCOPE_LOCK handling.
3114         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
3115         handling.
3116         * elf/dl-object.c (_dl_new_object): Don't use
3117         __rtld_mrlock_initialize.
3118
3119 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
3120
3121         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
3122         to fill in holes
3123         (rtld_global_ro): Likewise.
3124
3125 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
3126
3127         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
3128         Move PT_LOAD checking to...
3129         (_dl_addr_inside_object): ... here, new function.
3130         * elf/dl-sym.c (do_sym): If not l_contiguous,
3131         call _dl_addr_inside_object.
3132         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
3133         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
3134         * elf/dl-open.c (dl_open_worker): Likewise.
3135         (_dl_addr_inside_object): New function if IS_IN_rtld.
3136         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
3137         holes are present or are PROT_NONE protected.
3138         * include/link.h (struct link_map): Add l_contiguous field.
3139         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
3140
3141 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
3142             Tomas Janousek  <tjanouse@redhat.com>
3143             Ulrich Drepper  <drepper@redhat.com>
3144
3145         [BZ #4647]
3146         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
3147         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
3148         socket.
3149         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
3150         unused member a bitmap.
3151         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
3152         servers are configured.
3153
3154 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
3155
3156         * elf/rtld.c (dl_main): Don't call init_tls more than once.
3157
3158 2007-06-17  Andreas Schwab  <schwab@suse.de>
3159
3160         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
3161
3162 2007-06-16  Andreas Jaeger  <aj@suse.de>
3163
3164         [BZ #4125]
3165         * sysdeps/unix/sysv/linux/sys/ptrace.h
3166         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
3167         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
3168         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
3169         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
3170         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
3171         Define.
3172         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
3173         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
3174         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
3175         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
3176
3177 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
3178
3179         [BZ #4599]
3180         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
3181         determining whether there are IPv4/IPv6 addresses, ignore loopback
3182         addresses.
3183
3184 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
3185
3186         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
3187         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
3188         as the return type.  Change type of "r" variable to CMPtype.
3189         * soft-fp/eqsf2.c (__eqsf2): Likewise.
3190         * soft-fp/eqtf2.c (__eqtf2): Likewise.
3191         * soft-fp/gedf2.c (__gedf2): Likewise.
3192         * soft-fp/gesf2.c (__gesf2): Likewise.
3193         * soft-fp/getf2.c (__getf2): Likewise.
3194         * soft-fp/ledf2.c (__ledf2): Likewise.
3195         * soft-fp/lesf2.c (__lesf2): Likewise.
3196         * soft-fp/letf2.c (__letf2): Likewise.
3197         * soft-fp/unorddf2 (__unorddf2): Likewise.
3198         * soft-fp/unordsf2 (__unordsf2): Likewise.
3199         * soft-fp/unordtf2 (__unordtf2): Likewise.
3200
3201 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
3202
3203         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
3204         make sure gcc doesn't mess around with this.
3205
3206 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
3207
3208         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
3209
3210 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
3211
3212         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
3213         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
3214         at most once per _dl_close_worker.
3215
3216 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
3217
3218         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
3219         __sched_cpucount as const.
3220         * posix/sched_cpucount.c: Adjust.
3221
3222         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
3223         instruction for counting bits.
3224         * sysdeps/x86_64/sched_cpucount.c: New file.
3225
3226 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
3227
3228         * configure.in: Avoid variable named BASH.
3229         * config.make.in: Likewise.
3230         Patch in part by Mike Frysinger.
3231
3232 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
3233
3234         [BZ #4586]
3235         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
3236         pseudo-zeros as zero.
3237         * sysdeps/x86_64/ldbl2mpn.c: New file.
3238         * sysdeps/ia64/ldbl2mpn.c: New file.
3239
3240 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
3241
3242         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
3243         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
3244         Remove unreachable code at the end.
3245
3246 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
3247
3248         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
3249         ldbl-128ibm in comment.
3250         (fpclassifyl): Correct classification of denormals.
3251         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
3252         return value for MIN denormal. Rewrite using long double math too
3253         correctly handle denormals and canonicalize the results.
3254
3255 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
3256
3257         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
3258         (__mpn_construct_long_double): Fix conversion where result ought
3259         to be smaller than __LDBL_MIN__, or the low double should be
3260         denormal.  Fix decision where to negate low double - honor round
3261         to even rules.
3262         * stdio-common/tst-sprintf2.c: Include string.h.
3263         (COMPARE_LDBL): Define.
3264         (TEST): Also test whether a string hexadecimal float representation
3265         can be parsed back to the number.
3266         (main): Add a couple of further tests.
3267
3268 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
3269
3270         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
3271         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
3272         is non-zero, but smaller than 2 * __DBL_MIN__.
3273         * stdio-common/tst-sprintf2.c: New test.
3274         * stdio-common/Makefile (tests): Add tst-sprintf2.
3275
3276         * math/test-misc.c (main): Don't run last batch of tests with
3277         IBM long double format.
3278
3279 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
3280
3281         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
3282         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
3283         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
3284         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
3285         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
3286         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
3287         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
3288         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
3289         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
3290         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
3291         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
3292         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
3293         New file.
3294         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
3295         New file.
3296         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
3297         New file.
3298         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
3299         New file.
3300         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
3301         New file.
3302         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
3303         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
3304         New file.
3305         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
3306         New file.
3307         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
3308         New file.
3309         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
3310         New file.
3311         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
3312         New file.
3313
3314 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
3315
3316         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
3317         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
3318         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
3319         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
3320         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
3321         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
3322         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
3323         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
3324
3325 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
3326
3327         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
3328         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
3329         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
3330         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
3331         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
3332         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
3333         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
3334         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
3335
3336 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
3337
3338         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
3339         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
3340         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
3341         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
3342
3343 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
3344
3345         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
3346         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
3347
3348 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
3349
3350         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
3351         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
3352         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
3353         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
3354
3355 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
3356
3357         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
3358         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
3359
3360 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
3361
3362         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
3363         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
3364
3365         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
3366         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
3367         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
3368         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
3369
3370 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
3371
3372         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
3373         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
3374         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
3375         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
3376
3377 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
3378
3379         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
3380         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
3381         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
3382         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
3383         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
3384         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
3385
3386 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
3387
3388         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
3389         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
3390         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
3391         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
3392
3393 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3394
3395         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
3396         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
3397         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
3398         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
3399         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
3400         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
3401         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
3402         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
3403         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
3404         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
3405         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
3406         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
3407         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
3408         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
3409         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
3410         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
3411
3412 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
3413
3414         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
3415         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
3416
3417 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
3418
3419         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
3420         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
3421
3422 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
3423
3424         * sysdeps/powerpc/powerpc32/970/Implies: New file.
3425         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
3426         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
3427         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
3428         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
3429         * sysdeps/powerpc/powerpc64/970/Implies: New file.
3430         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
3431         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
3432         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
3433         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
3434
3435 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
3436
3437         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
3438
3439 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
3440
3441         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
3442         branch miss-predicts. Ensure that cache line crossing does not impact
3443         dispatch grouping.
3444
3445 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
3446
3447         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
3448         "../../powerpc32/power4/memcopy.h".
3449         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
3450         "../../powerpc32/power4/wordcopy.c".
3451
3452 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
3453
3454         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
3455         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
3456         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
3457         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
3458         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
3459         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
3460
3461 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
3462
3463         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
3464
3465 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
3466
3467         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
3468         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
3469         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
3470         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
3471         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
3472         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
3473         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
3474         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
3475
3476 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
3477
3478         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
3479
3480 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
3481
3482         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
3483         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
3484         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
3485         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
3486         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
3487         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
3488         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
3489
3490 2007-05-29  Roland McGrath  <roland@redhat.com>
3491
3492         * po/Makefile (po-sed-cmd): New variable.
3493         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
3494
3495 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
3496
3497         * crypt/md5-crypt.c: Fix comment.
3498
3499         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
3500         of crashing.  When this is the case or if the reply is malformed,
3501         don't try to close the new file descriptor since it does not
3502         exist.
3503         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
3504
3505 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
3506
3507         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
3508         if __NR_utimensat is not defined.
3509
3510 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
3511
3512         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
3513
3514 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
3515
3516         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
3517         (open): Fix comment typos.  Don't call __open_2 if flags
3518         is a compile time constant without O_CREAT.
3519         (__open64_2): Add nonnull attribute.
3520         (open64): Fix comment typos.  Don't call __open64_2 if flags
3521         is a compile time constant without O_CREAT.
3522         (__openat_2): Add nonnull attribute, fix nonnull attribute
3523         on redirect.
3524         (openat): Fix comment typos.  Don't call __openat_2 if flags
3525         is a compile time constant without O_CREAT.
3526         (__openat64_2): Add nonnull attribute, fix nonnull attribute
3527         on redirect.
3528         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
3529         is a compile time constant without O_CREAT.
3530
3531 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
3532
3533         * Makerules (sysd-rules): Define PTW for ptw-* files.
3534         * Versions: Define GLIBC_2.7 for libc.
3535         * include/stdio.h: Declare __fortify_fail.
3536         * debug/fortify_fail.c: New file.
3537         * debug/Makefile (routines): Add fortify_fail.
3538         * debug/chk_fail.c: Use __fortify_fail.
3539         * debug/stack_chk_fail.c: Likewise.
3540         * io/Versions: Export __open_2, __open64_2, __openat_2, and
3541         __openat64_2 for GLIBC_2.7.
3542         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
3543         * io/open.c: Define *_2 variant of function which checks for O_CREAT
3544         and fails if necessary.
3545         * io/open64.c: Likewise.
3546         * io/openat.c: Likewise.
3547         * io/openat64.c: Likewise.
3548         * sysdeps/unix/sysv/linux/open64.c: Likewise.
3549         * sysdeps/unix/sysv/linux/openat.c: Likewise.
3550         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
3551         * io/bits/fcntl2.h: New file.
3552         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
3553         __openat64_2.
3554         * include/bits/fcntl2.h: New file.
3555         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
3556         Add open_2.
3557         * sysdeps/unix/sysv/linux/open_2.c: New file.
3558
3559 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
3560
3561         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
3562         as second parameter to handle_intel.
3563
3564         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
3565         the entry.
3566
3567         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
3568         handling to ...
3569         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
3570         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
3571         cacheinfo.
3572         * sysdeps/x86_64/memcpy.S: Complete rewrite.
3573         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
3574         Patch by Evandro Menezes <evandro.menezes@amd.com>.
3575
3576         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
3577
3578 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
3579
3580         [BZ #4525]
3581         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
3582         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
3583         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
3584
3585         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
3586
3587         [BZ #4514]
3588         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
3589         reinitialize workend at the start of each do_positional format spec
3590         loop, free workstart before do_positional loops.
3591         (printf_unknown): Fix size of work_buffer.
3592         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
3593
3594         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
3595         (public_sET_STATe): If ms->version < 3, put all chunks into
3596         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
3597         chunks.
3598
3599         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
3600         * malloc/hooks.c: Likewise.
3601         * malloc/arena.c: Likewise.
3602         * malloc/malloc.c (do_check_malloc_state): Don't assert
3603         n_mmaps is not greater than n_mmaps_max.  This removes the need
3604         for the previous change.
3605
3606         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
3607         2007-05-07 commit.
3608
3609 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
3610
3611         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
3612         Define for kernel >= 2.6.22.
3613
3614 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
3615
3616         * elf/dl-close.c (_dl_close_worker): When removing object from
3617         global scope, wait for all lookups to finish afterwards.
3618         * elf/dl-open.c (add_to_global): When global scope array must
3619         grow, allocate a new one and free old array only after all
3620         lookups finish.
3621         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
3622         (_dl_lookup_symbol_x): Likewise.
3623         * elf/dl-support.c: Define _dl_wait_lookup_done.
3624         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
3625         _dl_wait_lookup_done.
3626
3627         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
3628         not overlapping with arena.
3629
3630         * malloc/mcheck.c (reallochook): If size==0, free the block.
3631
3632         * rt/tst-shm.c: Use fstat64 instead of fstat.
3633
3634         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
3635         __NR_sync_file_range is not defined.
3636
3637 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
3638
3639         Dummy files to prevent stub versions from being used.
3640         * sysdeps/x86_64/fpu/k_cosl.c: New file.
3641         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
3642         * sysdeps/x86_64/fpu/k_sinl.c: New file.
3643         * sysdeps/x86_64/fpu/k_tanl.c: New file.
3644
3645         * version.h (VERSION): Set to 2.6.90.
3646
3647 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
3648
3649         * version.h (VERSION): Define to 2.6.
3650         * include/features.h (__GLIBC_MINOR__): Define to 6.
3651
3652         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
3653
3654         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
3655         sizes.
3656
3657 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
3658
3659         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
3660         number of mmaps.  n_mmaps_max is the target.
3661         * malloc/hooks.c: Likewise.
3662         * malloc/arena.c: Likewise.
3663
3664 2007-05-12  Andreas Jaeger  <aj@suse.de>
3665
3666         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
3667         getpid.
3668
3669 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
3670
3671         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
3672         adding new variables.
3673
3674         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
3675         optimize.  Completely extend global scope array before making the
3676         new entries visible.
3677
3678 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
3679
3680         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
3681         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
3682         tst-getcpu.
3683
3684         * include/link.h: Move l_version and l_nversion members around to
3685         fill gaps.
3686
3687         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
3688
3689         * sysdeps/unix/sysv/linux/sched_setaffinity.c
3690         (__sched_setaffinity_new): If syscall was successful and
3691         RESET_VGETCPU_CACHE is defined, use it before returning.
3692         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
3693
3694         * io/sys/stat.h: Make sure struct timespec is defined for
3695         __USE_ATFILE.
3696
3697         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
3698         UTIME_OMIT.
3699         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
3700         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
3701         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
3702         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
3703         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
3704         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
3705         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
3706         * io/sys/stat.h: Declare utimensat, futimens.
3707         * io/utimensat.c: New file.
3708         * io/futimens.c: New file.
3709         * sysdeps/unix/sysv/linux/utimensat.c: New file.
3710         * sysdeps/unix/sysv/linux/futimens.c: New file.
3711         * io/Makefile (routines): Add utimensat, futimens.
3712         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
3713         * sysdeps/unix/sysv/linux/lutimes.c: New file.
3714         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
3715         available.
3716
3717         * include/sys/cdefs.h: Redefine __nonnull so that test for
3718         incorrect parameters in the libc code itself are not omitted.
3719
3720 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
3721
3722         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
3723         exception in addition to inexact when asked to raise only FE_INEXACT.
3724
3725         [BZ #3427]
3726         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
3727         in *envp.
3728
3729 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
3730
3731         [BZ #4403]
3732         * string/strfry.c (strfry): Make result more random.
3733
3734 2007-05-07  Richard Henderson  <rth@redhat.com>
3735
3736         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
3737         if __NO_LONG_DOUBLE_MATH.
3738         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
3739         available in the compiler, add .arch directive to the assembly.
3740
3741 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
3742
3743         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
3744         compat_symbol to GLIBC_2_1.
3745         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
3746         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
3747         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
3748         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
3749         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
3750         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
3751         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
3752         libc, not libm.
3753         (__isnanl): New compat_symbol.
3754
3755 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
3756             Jakub Jelinek  <jakub@redhat.com>
3757
3758         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
3759         (new_heap): Initialize mprotect_size.
3760         (grow_heap): When growing, only mprotect from mprotect_size till
3761         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
3762         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
3763
3764 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
3765             Peter Bergner  <bergner@us.ibm.com>
3766
3767         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
3768         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
3769         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
3770         * sysdeps/powerpc/fpu/fe_mask.c: New file.
3771         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
3772         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
3773         Call __fe_mask_env() if all FP exceptions disabled.
3774         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
3775         from old FPSCR to new fenv to propagate DFP rounding modes.
3776         Call __fe_mask_env() if FP exceptions previously enabled.
3777         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
3778         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
3779         transitioning from all exceptions disabled to any exception enabled
3780         or visa versa.
3781         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
3782         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
3783         when transitioning from all exceptions disabled to any exception
3784         enabled or visa versa.
3785         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
3786         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
3787         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
3788         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
3789         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
3790         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
3791
3792 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
3793
3794         [BZ #4465]
3795         * posix/unistd.h: Remove __THROW from fdatasync.
3796
3797 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
3798
3799         [BZ #4465]
3800         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
3801
3802 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
3803
3804         * stdio-common/vfprintf.c (process_string_arg): Optimize
3805         ridiculous precision in wide char code printing multi-byte string.
3806         Reported by Jim Meyering <jim@meyering.net>.
3807
3808         [BZ #4131]
3809         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
3810         boundaries to work around systems with overlapping binary loading.
3811         Based on a patch by Suzuki <suzuki@in.ibm.com>.
3812
3813 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
3814
3815         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
3816         __mbsnrtowcs after last change.
3817
3818         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
3819         (get_ident): Likewise.
3820
3821 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
3822
3823         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
3824         with setting the sticky bit.
3825         * math/test-misc.c (main): Add more truncation tests.
3826
3827 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
3828
3829         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
3830         double in the function declaration.
3831         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
3832         double in the function declaration.
3833         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
3834         float in the function declaration.
3835         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
3836         float in the function declaration.
3837
3838         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
3839         denormal operands.  Do not generate FP_EX_DENORM exception.
3840         (FP_UNPACK_RAW_EP): Ditto.
3841         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
3842         undefined _FP_UNPACK_RAW_E.
3843         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
3844         undefined _FP_UNPACK_RAW_EP.
3845         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
3846         undefined _FP_PACK_RAW_E.
3847         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
3848         undefined _FP_PACK_RAW_EP.
3849
3850         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
3851         _FP_FRAC_COPY_2.
3852         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
3853         _FP_FRAC_COPY_4.
3854
3855 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
3856             Jakub Jelinek  <jakub@redhat.com>
3857
3858         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
3859         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
3860         this case.
3861         * soft-fp/op-common.h (FP_TRUNC): Ditto.
3862
3863 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
3864
3865         * math/test-misc.c (main): Add tests for rounding long double
3866         values close to smallest double denormalized value to double.
3867
3868 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
3869
3870         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
3871         condition for truncating to 0.  Set sticky bit for such
3872         truncation.
3873
3874 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
3875
3876         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
3877         fixed length array for ignore.
3878
3879 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
3880
3881         [BZ #4438]
3882         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
3883         stack for large precisions.
3884         * stdio-common/test-vfprintf.c (main): Add test for large
3885         precision.
3886
3887 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
3888
3889         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
3890         for exponent 0.
3891         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
3892
3893         [BZ #4439]
3894         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
3895         account in the size check.
3896         * resolv/tst-inet_ntop.c: New test.
3897         * resolv/Makefile (tests): Add tst-inet_ntop.
3898
3899 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
3900             Jakub Jelinek  <jakub@redhat.com>
3901
3902         [BZ #4349]
3903         * malloc/malloc.c: Keep separate list for first blocks on the bin
3904         lists with a given size.  This helps skipping over list elements
3905         we know won't fit in two places.
3906         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
3907
3908 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
3909
3910         [BZ #4102]
3911         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
3912         label to Teredo tunnel addresses 2001://32.
3913
3914 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
3915
3916         * locale/programs/ld-collate.c (collate_read): Allow order_start
3917         after copy.
3918
3919         * locale/programs/ld-collate.c (collate_read): Fix printing of
3920         error message.
3921
3922         [BZ #3213]
3923         * locale/C-translit.h.in: Add entry for U2044.
3924
3925         [BZ #4342]
3926         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
3927         hexa-decimal floats without exponent.
3928         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
3929
3930 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
3931
3932         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
3933         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
3934         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
3935         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
3936         GLIBC_2.6.
3937         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
3938         Add sched_getcpu.
3939
3940 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
3941
3942         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
3943         of 0 after the out_fail label.
3944
3945 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
3946
3947         [BZ #4406]
3948         * iconv/gconv_charset.h (strip): Allow ':'.
3949         * iconv/iconv_open.c (iconv_open): Adjust comment.
3950
3951 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
3952
3953         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
3954         version.
3955
3956 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
3957
3958         [BZ #4381]
3959         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
3960         alignment of buffer and tmp_buffer.
3961         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
3962         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
3963         alignment of buffer.
3964         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
3965         bigger than INT_MAX.
3966         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
3967         h_errnop arguments.  Fail if buflen is too small.
3968         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
3969
3970 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
3971
3972         [BZ #4405]
3973         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
3974         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
3975
3976 2007-04-22  Roland McGrath  <roland@redhat.com>
3977
3978         * elf/elf.h (NT_PRXFPREG): New macro.
3979
3980 2007-04-19  Andreas Jaeger  <aj@suse.de>
3981
3982         [BZ #3905]
3983         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
3984         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
3985         Added.
3986
3987 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
3988
3989         * include/sys/mman.h: Mark madvise hidden.
3990         * misc/madvise.c: Add libc_hidden_def.
3991
3992 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
3993
3994         * nis/nis_domain_of.c (__nis_domain_of): New function.
3995         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
3996         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
3997         * nis/nis_call.c (rec_dirsearch): Likewise.
3998         (first_shoot): Likewise.  Remove search_parent_first argument.
3999         (struct nis_server_cache): Rename search_parent_first field
4000         to search_parent.
4001         (nis_server_cache_search, nis_server_cache_add): Rename
4002         search_parent_first argument to search_parent.
4003         (__nisfind_server): Likewise.  If search_parent, call
4004         __nis_domain_of.
4005
4006 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
4007
4008         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
4009
4010 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
4011
4012         [BZ #4368]
4013         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
4014
4015 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
4016
4017         [BZ #4364]
4018         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
4019
4020 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
4021
4022         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
4023         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
4024         current number of locales in SUPPORTED.
4025         (create_archive): Initialize serial.
4026         (enlarge_archive): Preserve aliases rather than duplicating
4027         their locrecs.
4028
4029 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
4030
4031         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
4032         after _IO_un_link, not before it.
4033
4034         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
4035         special case handling when wcp == wstartp + 1.  Fix a comment typo.
4036         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
4037
4038 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
4039
4040         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
4041         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
4042         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
4043         Remove __THROW.
4044         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
4045         _IO_file_xsgetn_maybe_mmap): Likewise.
4046         * libio/oldfileops.c (old_do_write): Likewise.
4047         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
4048         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
4049         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
4050         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
4051         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
4052         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
4053         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
4054         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
4055         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
4056         _IO_file_underflow, _IO_file_underflow_mmap,
4057         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
4058         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
4059         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
4060         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
4061         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
4062         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
4063         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
4064         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
4065         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
4066         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
4067         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
4068         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
4069         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
4070         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
4071         _IO_adjust_column_internal, _IO_default_uflow_internal,
4072         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
4073         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
4074         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
4075         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
4076         _IO_file_close_it_internal, _IO_file_underflow_internal,
4077         _IO_file_overflow_internal, _IO_file_attach_internal,
4078         _IO_file_fopen_internal, _IO_file_sync_internal,
4079         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
4080         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
4081         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
4082         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
4083         _IO_seekpos_unlocked): Likewise.
4084         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
4085         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
4086
4087 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
4088
4089         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
4090         argument in xmalloc size computation.
4091
4092 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
4093
4094         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
4095         math_opt_barrier and math_force_eval macros.
4096
4097 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
4098
4099         [BZ #3306]
4100         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
4101         * sysdeps/i386/fpu/math_private.h: New file.
4102         * sysdeps/x86_64/fpu/math_private.h: New file.
4103         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
4104         math_force_eval macros.  Use "+m" constraint on asm rather than
4105         "=m" and "m".
4106         * math/s_nextafter.c (__nextafter): Likewise.
4107         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
4108         Likewise.
4109         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
4110         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
4111         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
4112         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
4113         math_opt_barrier and math_force_eval macros.
4114         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
4115         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
4116         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
4117         (__nexttoward): Use math_opt_barrier and
4118         math_force_eval macros.  Use "+m" constraint on asm rather than
4119         "=m" and "m".  Only use asm to force double result if
4120         FLT_EVAL_METHOD is 2.
4121         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
4122         (__nexttowardf): Use math_opt_barrier and
4123         math_force_eval macros.  Use "+m" constraint on asm rather than
4124         "=m" and "m".  Only use asm to force double result if
4125         FLT_EVAL_METHOD is not 0.
4126         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
4127         (__nexttowardf): Use math_opt_barrier and
4128         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
4129         x to float using asm.
4130         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
4131         (__nldbl_nexttowardf): Use math_opt_barrier and
4132         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
4133         x to float using asm.
4134         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
4135         (__nexttowardf): Use math_opt_barrier and math_force_eval
4136         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
4137         * math/bug-nextafter.c (zero, inf): New variables.
4138         (main): Add new tests.
4139         * math/bug-nexttoward.c (zero, inf): New variables.
4140         (main): Add new tests.
4141
4142 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
4143
4144         [BZ #3427]
4145         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
4146         exceptions both in SW and MXCSR.
4147         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
4148         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
4149         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
4150         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
4151         in MXCSR if SSE is available.
4152         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
4153         and ldsodefs.h.
4154         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
4155         Fix comment typo.
4156         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
4157         Return 0 rather than 1.
4158         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
4159         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
4160         * math/test-fenv.c (feholdexcept_tests): New function.
4161         (main): Call it.
4162
4163 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
4164
4165         [BZ #3427]
4166         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
4167         in SW.
4168
4169 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
4170
4171         [BZ #4344]
4172         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
4173         Reported by David Anderson <davea42@earthlink.net>.
4174
4175 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
4176
4177         * posix/sys/wait.h: Remove unnecessary forward declaration.
4178
4179 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
4180
4181         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
4182         with obj->do_servers after first_shoot.
4183
4184 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
4185
4186         * posix/Makefile (routines): Add sched_cpucount.
4187         (tests): Add tst-cpucount.
4188         * posix/sched_cpucount.c: New file.
4189         * posix/tst-cpucount.c: New file.
4190         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
4191         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
4192         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
4193         * posix/sched.h: Define CPU_COUNT.
4194
4195 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
4196
4197         * posix/fnmatch.c (STRUCT): Define.
4198         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
4199         * posix/fnmatch_loop.c (struct STRUCT): New type.
4200         (FCT): Add ends argument.  If ends != NULL and normal * is
4201         seen in the pattern, store current pattern and string pointers
4202         and return.  Adjust recursive calls.
4203         (EXT): Adjust FCT callers.
4204         (STRUCT): Undef at the end of the file.
4205         * posix/Makefile (tests): Add tst-fnmatch2.
4206         * posix/tst-fnmatch2.c: New test.
4207
4208 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
4209
4210         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
4211         and 1 on failure.
4212
4213         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
4214         Change last argument to unsigned int.
4215
4216 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
4217
4218         * scripts/check-local-headers.sh: Filter out sys/capability.h.
4219
4220 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
4221
4222         * config.h.in (HAVE_LIBCAP): Add.
4223         * nscd/selinux.h: Include sys/capability.h rather than non-existent
4224         sys/capabilities.h.
4225         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
4226         free_caps.  Cast away const from 4th cap_set_flag argument.
4227
4228 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
4229
4230         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
4231         GLIBC_2.6.
4232         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
4233         Add sync_file_range.
4234         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
4235
4236 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
4237
4238         * sysdeps/powerpc/bits/atomic.h
4239         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
4240         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
4241         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
4242         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
4243         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
4244         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
4245         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
4246         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
4247         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
4248         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
4249         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
4250         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
4251         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
4252         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
4253         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
4254         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
4255         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
4256         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
4257         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
4258         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
4259
4260 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
4261
4262         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
4263         (__cache_line_size): Define the variable here.  Add
4264         attribute_hidden, remove weak_extern.
4265         (__libc_start_main): Set __cache_line_size
4266         unconditionally.
4267         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
4268         (__cache_line_size): Define the variable here.  Add
4269         attribute_hidden, remove weak_extern.
4270         (DL_PLATFORM_AUXV): Set __cache_line_size
4271         unconditionally.
4272         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
4273         weak_extern, add attribute_hidden.
4274         (__elf_machine_runtime_setup): Assume __cache_line_size is always
4275         defined in ld.so.
4276         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
4277         definition.
4278         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
4279
4280 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
4281
4282         [BZ #4276]
4283         * timezone/africa: Update from tzdata2007d.
4284         * timezone/asia: Likewise.
4285         * timezone/australasia: Likewise.
4286         * timezone/backward: Likewise.
4287         * timezone/europe: Likewise.
4288         * timezone/iso3166.tab: Likewise.
4289         * timezone/leapseconds: Likewise.
4290         * timezone/northamerica: Likewise.
4291         * timezone/southamerica: Likewise.
4292         * timezone/zone.tab: Likewise.
4293
4294         * timezone/private.h: Update from tzcode2007d.
4295         * timezone/zdump.c: Likewise.
4296         * timezone/zic.c: Likewise.
4297
4298 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
4299
4300         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
4301         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
4302         variables.
4303         (nis_server_cache_search, nis_server_cache_add): New functions.
4304         (__nisfind_server): Use them.  Add dbp and flags argument, if
4305         call __nisbind_create.
4306         (__nisbind_create): Add server_used and current_ep arguments,
4307         only call __nis_findfastest if server_used is ~0.
4308         (__do_niscall2, __prepare_niscall): Adjust callers.
4309         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
4310         ckey_cache_euid, ckey_cache_lock): New variables.
4311         (get_ckey): New function.
4312         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
4313         __pmap_getnisport.  Save __pmap_getnisport result in
4314         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
4315         key.
4316         * nis/nis_lookup.c (nis_lookup): Likewise.
4317         * nis/nis_table.c (nis_list): Likewise.
4318         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
4319         prototypes.
4320
4321         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
4322         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
4323         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
4324         _nss_nisplus_getservbyport_r): Likewise.
4325         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
4326         _nss_nisplus_getnetbyaddr_r): Likewise.
4327         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
4328         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
4329         _nss_nisplus_getntohost_r): Likewise.
4330         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
4331         _nss_nisplus_getrpcbynumber_r): Likewise.
4332
4333 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
4334
4335         * configure.in (libc_cv_gnu89_inline): Only do compile test.
4336         * configure: Rebuilt.
4337
4338         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
4339         bit-fields.
4340         * soft-fp/extended.h (_FP_UNION_E): Likewise.
4341
4342 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
4343
4344         [BZ #2831]
4345         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
4346         bit-fields.
4347
4348 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
4349
4350         * nscd/gai.c: Include alloca.h.
4351         (__libc_use_alloca): Define.
4352
4353 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
4354
4355         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
4356         smaller scopes.
4357         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
4358         (DL_DST_REQUIRED): Adjust user.
4359
4360         * include/dlfcn.h (struct link_map): New forward decl.
4361
4362         * inet/getnameinfo.c: Include stddef.h.
4363         (getnameinfo): Use offsetof.
4364
4365         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
4366
4367         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
4368
4369         * string/strerror_l.c: Include stdlib.h.
4370
4371         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
4372         * config.make.in (gnu89-inline-CFLAGS): New variable.
4373         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
4374         -std=gnu99.
4375         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
4376         * argp/argp.h: Use it.
4377         * bits/mathinline.h: Likewise.
4378         * bits/sigset.h: Likewise.
4379         * bits/string.h: Likewise.
4380         * ctype/ctype.h: Likewise.
4381         * hurd/hurd.h: Likewise.
4382         * hurd/hurd/fd.h: Likewise.
4383         * hurd/hurd/port.h: Likewise.
4384         * hurd/hurd/signal.h: Likewise.
4385         * hurd/hurd/threadvar.h: Likewise.
4386         * hurd/hurd/userlink.h: Likewise.
4387         * io/sys/stat.h: Likewise.
4388         * libio/bits/stdio.h: Likewise.
4389         * libio/bits/stdio2.h: Likewise.
4390         * mach/lock-intern.h: Likewise.
4391         * mach/mach/mig_support.h: Likewise.
4392         * math/bits/cmathcalls.h: Likewise.
4393         * posix/bits/unistd.h: Likewise.
4394         * socket/bits/socket2.h: Likewise.
4395         * stdlib/bits/stdlib.h: Likewise.
4396         * stdlib/stdlib.h: Likewise.
4397         * string/argz.h: Likewise.
4398         * string/bits/string2.h: Likewise.
4399         * string/bits/string3.h: Likewise.
4400         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
4401         * sysdeps/generic/inttypes.h: Likewise.
4402         * sysdeps/generic/machine-lock.h: Likewise.
4403         * sysdeps/generic/machine-sp.h: Likewise.
4404         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
4405         * sysdeps/i386/i486/bits/string.h: Likewise.
4406         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
4407         * sysdeps/mach/alpha/machine-lock.h: Likewise.
4408         * sysdeps/mach/alpha/machine-sp.h: Likewise.
4409         * sysdeps/mach/i386/machine-lock.h: Likewise.
4410         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
4411         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
4412         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
4413         * sysdeps/s390/bits/string.h: Likewise.
4414         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
4415         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
4416         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
4417         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
4418         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
4419         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
4420         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
4421         * wcsmbs/bits/wchar2.h: Likewise.
4422         * wcsmbs/wchar.h: Likewise.
4423         * stdlib/gmp.h: Likewise.  Include <features.h> to get
4424         __extern_inline definition.
4425
4426 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
4427
4428         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
4429         NULL.
4430
4431         [BZ #3919]
4432         * math/libm-test.inc (log_test): Test -Inf and NaN.
4433         (log10_test, log1p_test, log2_test): Test -Inf.
4434         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
4435         FE_INVALID when argument is qNaN.
4436         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
4437         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
4438         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
4439         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
4440         andb $1, %ah with testb $1, %ah, don't test for parity, instead
4441         testb $4, %ah and jump if non-zero.
4442         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
4443         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
4444
4445         [BZ #4101]
4446         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
4447         ancestors with the same depths.
4448         Patch by Niels Moeller <nisse@lysator.liu.se>.
4449         (filter_doc): Don't crash if argp is NULL.
4450         * argp/Makefile (tests): Add tst-argp2.
4451         * argp/tst-argp2.c: New test.
4452
4453         [BZ #4130]
4454         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
4455         open_not_cancel_2.
4456         (updwtmp_file): Likewise.
4457
4458         [BZ #4181]
4459         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
4460         (inet6_opt_append): Don't check extlen is big enough if extbuf
4461         is NULL.
4462         (inet6_opt_finish): Likewise.
4463         * inet/Makefile (tests): Add test-inet6_opt.
4464         * inet/test-inet6_opt.c: New test.
4465
4466         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
4467         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
4468         NLMSG_ERR.  Instead use a page sized buffer.
4469         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
4470         buffer.
4471
4472 2007-03-14  Richard Henderson  <rth@redhat.com>
4473
4474         * sysdeps/alpha/fpu/s_llround.c: New file.
4475         * sysdeps/alpha/fpu/s_llroundf.c: New file.
4476         * sysdeps/alpha/fpu/s_lround.c: New file.
4477         * sysdeps/alpha/fpu/s_lroundf.c: New file.
4478         * sysdeps/alpha/fpu/s_round.c: New file.
4479         * sysdeps/alpha/fpu/s_roundf.c: New file.
4480         * sysdeps/alpha/fpu/s_trunc.c: New file.
4481         * sysdeps/alpha/fpu/s_truncf.c: New file.
4482
4483         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
4484         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
4485         * sysdeps/alpha/fpu/s_floor.c: Likewise.
4486         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
4487         * sysdeps/alpha/fpu/s_rint.c: Likewise.
4488         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
4489
4490         * sysdeps/alpha/fpu/s_fmax.S: New file.
4491         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
4492         * sysdeps/alpha/fpu/s_fmin.S: New file.
4493         * sysdeps/alpha/fpu/s_fminf.S: New file.
4494         * sysdeps/alpha/fpu/s_isnan.c: New file.
4495         * sysdeps/alpha/fpu/s_isnanf.c: New file.
4496         * sysdeps/alpha/fpu/s_llrint.c: New file.
4497         * sysdeps/alpha/fpu/s_llrintf.c: New file.
4498         * sysdeps/alpha/fpu/s_lrint.c: New file.
4499         * sysdeps/alpha/fpu/s_lrintf.c: New file.
4500         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
4501         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
4502
4503         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
4504         (__fdimf, fdimf, __fdim, fdim): Remove.
4505         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
4506         (__isnanf, __isnan, __isnanl): New.
4507
4508 2007-03-13  Richard Henderson  <rth@redhat.com>
4509
4510         * sysdeps/ieee754/ldbl-128/Makefile: New file.
4511
4512 2007-03-13  Richard Henderson  <rth@redhat.com>
4513
4514         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
4515         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
4516         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
4517         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
4518         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
4519         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
4520
4521 2007-03-13  Richard Henderson  <rth@redhat.com>
4522
4523         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
4524         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
4525         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
4526         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
4527         Move to dl-auxv.h; initialize instead of extern weak.
4528         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
4529         weak symbol.
4530         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
4531         Extern instead of initialized.
4532
4533 2007-03-13  Richard Henderson  <rth@redhat.com>
4534
4535         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
4536         __sigsuspend_nocancel.
4537
4538 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
4539
4540         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
4541         172.16/12 address range.
4542
4543 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
4544
4545         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
4546         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
4547         message.
4548
4549 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
4550
4551         [BZ #4069]
4552         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
4553         earlier.
4554         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
4555
4556         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
4557         for x qNaN and y either +-inf or non-integer value.
4558         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
4559         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
4560         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
4561
4562 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
4563
4564         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
4565         from sysdep_headers.
4566
4567 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
4568
4569         * time/tzfile.c (find_transition): Instead of a linear search try to
4570         guess the transition index, use a linear search if the result is at
4571         most 10 transitions away from the guess or binary search otherwise.
4572
4573 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
4574
4575         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
4576         memory reallocation.
4577
4578 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
4579
4580         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
4581         and fix some typos.
4582         Optimize use of TOLOWER.
4583
4584         [BZ #3325]
4585         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
4586         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
4587         * sysdeps/i386/fpu/e_fmod.S: Likewise.
4588
4589         [BZ #3458]
4590         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
4591         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
4592
4593         [BZ #4076]
4594         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
4595         (open_dir_stream): Likewise.
4596         * io/Makefile (tests): Add bug-ftw5.
4597         * io/bug-ftw5.c: New file.
4598
4599         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
4600         * nscd/servicescache.c (cache_addserv): Likewise.
4601
4602         * nscd/grpcache.c (cache_addgr): In case a record changed on
4603         refresh, adjust key_copy.
4604
4605         [BZ #4074]
4606         * nscd/pwdcache.c (cache_addpw): In case a record changed on
4607         refresh, adjust key_copy.
4608
4609         [BZ #4070]
4610         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
4611         special cases.
4612         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
4613
4614 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
4615
4616         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
4617         optimization.
4618
4619         * stdio-common/vfscanf.c: Small cleanups throughout.
4620
4621 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
4622
4623         [BZ #3325]
4624         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
4625         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
4626         * sysdeps/i386/fpu/e_fmod.S: Likewise.
4627         Patch by Jared Casper <jaredcasper@gmail.com>.
4628
4629         * sysdeps/unix/closedir.c: Outside libc don't use locking.
4630         * sysdeps/unix/opendir.c: Likewise.
4631         * sysdeps/unix/readdir.c: Likewise.
4632
4633         [BZ #2211]
4634         * stdio-common/vfscanf.c: Handle localized digits etc for floating
4635         point numbers.
4636         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
4637
4638         * stdio-common/vfscanf.c: Fix problems in width accounting.
4639         * stdio-common/tst-sscanf.c (double_tests): New tests.
4640         (main): Hook them up.
4641
4642         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
4643         More simplifications of floating-point reader.
4644
4645         * stdio-common/Makefile (tests): Add tst-swscanf.
4646         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
4647         testing.
4648         * stdio-common/tst-swscanf.c: New file.
4649
4650 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
4651
4652         [BZ #2633]
4653         * libio/stdio.h: Define struct _IO_FILE in global namespace.
4654         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
4655         Remove using for __jmp_buf_tag.
4656         * locale/locale.h (struct lconv): Also define in std namespace.
4657         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
4658
4659         [BZ #3842]
4660         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
4661         using __libc_enable_secure.
4662
4663         [BZ #3818]
4664         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
4665
4666         [BZ #3745]
4667         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
4668         of names for ellipsises.
4669
4670         [BZ #3348]
4671         * malloc/memusage.sh: Cleanups.
4672         * debug/xtrace.sh: Quoting and trap changes.
4673
4674 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
4675
4676         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
4677
4678         * locale/iso-3166.def: Update entry for Serbia.
4679         * locale/iso-4217.def: Define RSD, remove CSD.
4680
4681         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
4682         and 64-bit operations.
4683
4684         [BZ #4040]
4685         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
4686         16-bit operations.
4687
4688         * nscd/nscd.c (parse_opt): One more conversion to use send instead
4689         of writev.
4690
4691 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
4692
4693         [BZ #3991]
4694         * assert/assert.h (assert): Simplify.
4695         (assert_perror): Likewise.
4696         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
4697
4698         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
4699         reqdata.
4700
4701         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
4702         change: don't pass NULL in place of an integer.
4703
4704 2007-02-02  Bruno Haible  <bruno@clisp.org>
4705
4706         [BZ #3954]
4707         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
4708         Add mapping for U+327E.
4709         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
4710         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
4711         mapping of 0xD9 0xE8.
4712         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
4713         mapping of U+327E.
4714         Reported by Jungshik Shin <jungshik@google.com>.
4715
4716         [BZ #3955]
4717         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
4718         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
4719         Reported by Jungshik Shin <jungshik@google.com>.
4720
4721 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
4722
4723         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
4724         byte variants.
4725
4726         [BZ #4040]
4727         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
4728         byte variants.  Patch mostly be tom@tommay.net.
4729
4730 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
4731
4732         [BZ #3996]
4733         * posix/glob.c (attribute_hidden): Define if not defined.
4734         (glob): Unescape dirname, filename or username when needed and not
4735         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
4736         is NULL.  Handle unescaped [ in pattern without closing ].
4737         Don't pass GLOB_CHECK down to recursive glob for directories.
4738         (__glob_pattern_type): New function.
4739         (__glob_pattern_p): Implement using __glob_pattern_type.
4740         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
4741         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
4742         Remove unreachable code.
4743         * posix/globtest.sh: Add a couple of new tests.
4744
4745 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
4746
4747         * po/ru.po: Update from translation team.
4748
4749 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
4750
4751         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
4752         to the list of i486+ CPUs.
4753         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
4754
4755 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
4756
4757         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
4758         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
4759         references.
4760
4761 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
4762
4763         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
4764
4765         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
4766         * resolv/res_mkquery.c: Define __res_nopt.
4767         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
4768         try adding EDNS0 record.
4769         * resolv/res_send.c (send_dg): If request failed with FORMERR and
4770         EDNS0 record was send make sure we don't try it again.
4771         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
4772         * include/resolv.h: Declare __res_nopt.
4773
4774 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
4775
4776         [BZ #3944]
4777         * time/strptime_l.c (__strptime_internal): Set have_mon for
4778         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
4779         have been computed from tm_yday and tm_year.  Don't crash
4780         in day_of_the_week or day_of_the_year if not have_mon
4781         and tm_mon contains bogus value.
4782         * time/Makefile (tests): Add tst-strptime3.
4783         * time/tst-strptime3.c: New test.
4784
4785 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
4786
4787         [BZ #3957]
4788         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
4789         bit for RE_HAT_LISTS_NOT_NEWLINE.
4790         (build_charclass_op): Remove bogus comment.
4791         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
4792         * posix/bug-regex27.c: New test.
4793         * posix/bug-regex28.c: New test.
4794
4795 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
4796
4797         * po/sv.po: Update from translation team.
4798
4799 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
4800
4801         * nscd/nscd_helper.c (open_socket): Minor size optimization.
4802
4803 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
4804
4805         * include/locale.h (__uselocale): Add libc_hidden_proto.
4806         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
4807
4808         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
4809         gettimeofday.
4810
4811 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
4812
4813         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
4814         returning.
4815         (PTR_DEMANGLE): Real definition now that it's not the same as
4816         PRT_MANGLE anymore.
4817         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4818
4819         * string/strerror_l.c: New file.
4820         * string/Makefile (routines): Add strerror_l.
4821         * string/string.h: Declare strerror_l.
4822         * string/Versions: Export strerror_l for GLIBC_2.6.
4823
4824 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
4825
4826         * nscd/nscd_helper.c (open_socket): Now takes request type and key
4827         as parameter.  Construct request record.  Try sending request
4828         before the first poll use, it usually succeeds.  Adjust all
4829         callers.
4830         * nscd/nscd-client.h: Define MAXKEYLEN.
4831         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
4832
4833 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
4834
4835         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
4836         from return value.
4837         * nscd/nscd_helper.c: Include string.h.
4838         (__nscd_cache_search): Remove const qualifier from return value.
4839         On strict alignment architectures check hash entry and data head
4840         alignment.
4841         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
4842         mmapped data during GC cycle contains garbage.  If
4843         __nscd_drop_map_ref fails, decrement mapped->counter when returning
4844         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
4845         dropped to 0.
4846         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
4847         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
4848         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
4849         * nscd/nscd_getai.c (__nscd_getai): Likewise.
4850         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
4851
4852 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
4853
4854         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
4855
4856 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
4857
4858         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
4859         names not numbers in cfi_*.
4860
4861 2007-01-26  Andreas Jaeger  <aj@suse.de>
4862
4863         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
4864         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
4865         Correct values of PER_HPUX and PER_OSF4.
4866
4867 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
4868
4869         * elf/dl-minimal.c: Undefine _itoa first.
4870         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
4871         * malloc/mtrace.c: Revert last change.
4872         * posix/wordexp.c: Likewise.
4873
4874 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
4875
4876         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
4877         and __geode__ to the list of i486+ CPUs.
4878         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
4879
4880 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
4881
4882         * stdio-common/_itoa.c: Include <limits.h>.
4883         * stdio-common/_itowa.c: Likewise.
4884
4885 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
4886
4887         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
4888         platforms.
4889         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
4890         64-bit platforms.
4891         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
4892         possible.
4893         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
4894         if possible.
4895
4896         [BZ #3902]
4897         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
4898         * stdio-common/Makefile (tests): Add bug17.
4899         * stdio-common/bug17.c: New file.
4900
4901 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
4902
4903         * iconvdata/brf.c: New file.
4904         * iconvdata/testdata/BRF: New file.
4905         * iconvdata/testdata/BRF..UTF8: New file.
4906         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
4907         * iconvdata/Makefile: Add rules to build BRF.
4908         * iconvdata/TESTS: Add BRF entry.
4909         * iconvdata/gconv-modules: Likewise.
4910         * iconvdata/tst-tables.sh: Likewise.
4911
4912 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
4913
4914         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
4915         type `long long int', not `long int'.
4916         (wcstoq): Likewise.
4917
4918 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
4919
4920         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
4921         of values on 64-bit platforms which are too large.
4922
4923 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
4924             Joe Kerian  <jkerian@us.us.ibm.com>
4925
4926         [BZ #2749]
4927         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
4928         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
4929         (__copysignl): Use signbit() for comparison.
4930         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
4931         SET_LDOUBLE_WORDS64.
4932
4933         [BZ #2423, #2749]
4934         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
4935         (__ceill): Remove calls to fegetround(), fesetround().
4936         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
4937         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
4938         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
4939
4940 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
4941
4942         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
4943
4944         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
4945
4946 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
4947
4948         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
4949         demangle pointer.
4950         * csu/libc-start.c: Likewise.
4951
4952 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
4953
4954         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
4955         really work anyway.
4956
4957 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
4958
4959         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
4960         users.
4961         (handle_request): Remove unnecessary tests.
4962
4963         * nscd/cache.c (cache_add): Record the failure to add to the cache.
4964
4965 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
4966
4967         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
4968         workbits in semi-raw fraction.
4969
4970         * math/test-misc.c: Add new tests.
4971
4972 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
4973
4974         * math/basic-test.c: Include test-skeleton.c.
4975         (TEST_TRUNC): Define.
4976         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
4977         (main): Rename to ...
4978         (do_test): ...this.  Run new tests.
4979         (TEST_FUNCTION): Define.
4980
4981 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
4982             Joe Kerian  <jkerian@us.us.ibm.com>
4983
4984         [BZ #2749]
4985         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
4986         handling for high words.
4987         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
4988         and overflow for infinity.
4989
4990 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
4991
4992         * nscd/connections.c (handle_request): Add a __builtin_expect.
4993
4994         * nscd/connections.c (serv2db): Change type into structure which
4995         also says whether this is a request for data.  Renamed to
4996         servinfo.  All users changed.
4997         (handle_request): Much simpler test whether we should search the cache.
4998
4999         * nscd/connections.c (handle_request): Fix thinko in selinux test
5000         invocation.
5001
5002         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
5003         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
5004         it before getting dl_load_lock and then relock.
5005         (_dl_lookup_symbol_x): Pass flags to add_dependency.
5006         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
5007         case we unlocked the scope.
5008         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
5009         _dl_lookup_symbol_x in case we locked the scope.
5010         (_dl_profile_fixup): Likewise.
5011         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
5012         set DL_LOOKUP_SCOPE_LOCK.
5013
5014 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
5015
5016         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
5017         CFLAGS-getsrvbynpt_r.c.
5018         * nscd/getsrvbynm_r.c: New file.
5019         * nscd/getsrvbypt_r.c: New file.
5020         * nscd/nscd_getserv_r.c: New file.
5021         * nscd/servicescache.c: New file.
5022         * nscd/Makefile (routines): Add nscd_getserv_r.
5023         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
5024         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
5025         CFLAGS-getsrvbypt_r.c.
5026         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
5027         table.  Add entries for services database.
5028         * nscd/connections.c (serv2str): Mark as const.  Add entries for
5029         services database.
5030         (dbs): Add .reset_res and servdb initialization.
5031         (serv2db): Add entries for services database.
5032         (verify_persistent_db): Accept dbnr == servdb.
5033         (invalidate_cache): Rewrite database name recognition to use a table.
5034         Call res_init() if .reset_res is set for database.
5035         (handle_request): Add code to handle services database.
5036         * nscd/gai.c: Don't define __getservbyname_r.
5037         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
5038         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
5039         (serv_response_header): Define.
5040         (struct datahead): Add serv_response_header member.
5041         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
5042         using table.
5043         * nscd/nscd.conf: Add entries for services database.
5044         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
5045         Declare serv_iov_disabled.
5046         Declare addservbyname, readdservbyname, addservbyport, and
5047         readdservbyport.
5048         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
5049         (find_db): Fix error message.
5050         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
5051         __nscd_getservbyname_r, and __nscd_getservbyport_r.
5052         * nscd/selinux.c (perms): Add entries for services database.
5053         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
5054         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
5055
5056         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
5057         * nscd/hstcache.c: Likewise.
5058         * nscd/pwdcache.c: Likewise.
5059
5060         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
5061         computation of keylen.
5062
5063         * include/string.h: Only redefine strndupa if this is really for
5064         libc code.
5065
5066 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
5067
5068         * nscd/nscd_gethst_r.c: Minor cleanups.
5069
5070         * nscd/connections.c (handle_request): Check selinux permissions
5071         for all non-admin commands.
5072
5073         * sysdeps/i386/i486/bits/atomic.h: Define
5074         atomic_compare_and_exchange_val_acq,
5075         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
5076         using __sync_* built-ins for gcc >= 4.1.
5077         * sysdeps/x86_64/bits/atomic.h: Likewise.
5078
5079         [BZ #3840]
5080         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
5081         and .oS.d files.
5082
5083 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
5084
5085         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
5086         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
5087         (do_test): Check errno and exit(0) if ENOSYS.
5088
5089 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
5090
5091         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
5092         thousands separators.
5093         * stdlib/Makefile: Add rules to build and run tst-strtod4.
5094         * stdlib/tst-strtod4.c: New test.
5095
5096         [BZ #3855]
5097         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
5098         hexadecimal digit should accept just the initial 0.
5099         * stdlib/tst-strtod2.c (tests): New variable.
5100         (do_test): Run several tests rather than just one.
5101
5102 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
5103
5104         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
5105         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
5106
5107 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
5108
5109         * io/fts.c: Make sure fts_cur is always valid after return from
5110         fts_read.
5111         Patch by Miloslav Trmac <mitr@redhat.com>.
5112
5113 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
5114
5115         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
5116         (R_MIPS_NUM): Bump by 1.
5117
5118 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
5119
5120         * posix/execvp.c: Include alloca.h.
5121         (allocate_scripts_argv): Renamed to...
5122         (scripts_argv): ... this.  Don't allocate buffer here nor count
5123         arguments.
5124         (execvp): Use alloca if possible.
5125         * posix/Makefile: Add rules to build and run tst-vfork3 test.
5126         * posix/tst-vfork3.c: New test.
5127
5128 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
5129
5130         * string/Makefile (tst-strxfrm2-ENV): Define.
5131         * stdlib/Makefile (tst-strtod3-ENV): Define.
5132
5133 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
5134
5135         * posix/getconf.c: Update copyright year.
5136         * nss/getent.c: Likewise.
5137         * iconv/iconvconfig.c: Likewise.
5138         * iconv/iconv_prog.c: Likewise.
5139         * elf/ldconfig.c: Likewise.
5140         * catgets/gencat.c: Likewise.
5141         * csu/version.c: Likewise.
5142         * elf/ldd.bash.in: Likewise.
5143         * elf/sprof.c (print_version): Likewise.
5144         * locale/programs/locale.c: Likewise.
5145         * locale/programs/localedef.c: Likewise.
5146         * nscd/nscd.c (print_version): Likewise.
5147         * debug/xtrace.sh: Likewise.
5148         * malloc/memusage.sh: Likewise.
5149         * malloc/mtrace.pl: Likewise.
5150         * debug/catchsegv.sh: Likewise.
5151
5152 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
5153
5154         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
5155         attempts.
5156
5157 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
5158
5159         * posix/wordexp.c: Remove some unnecessary tests.
5160
5161 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
5162
5163         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
5164         blacklist the group till after we look it up.
5165
5166 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
5167
5168         * include/atomic.h (atomic_forced_read): New macro.
5169
5170 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
5171
5172         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
5173
5174 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
5175
5176         * nss/getXXbyYY_r.c: Include atomic.h.
5177         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
5178         add atomic_write_barrier () in between.
5179
5180         * stdlib/Makefile (tests): Add tst-makecontext.
5181         * stdlib/tst-makecontext.c: New test.
5182
5183         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
5184         (__makecontext): Don't realign uc_mcontext.uc_regs.
5185
5186 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
5187
5188         * elf/dl-support.c: Include dl-procinfo.h.
5189         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
5190         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
5191         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
5192         Define.
5193         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
5194         hardcoded constants.
5195         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
5196         PPC_PLATFORM_* macros for array designators.
5197
5198 2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
5199
5200         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
5201         names to the beginning.
5202         (_dl_powerpc_platforms): Add "power6x".
5203         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
5204         (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
5205         (_DL_PLATFORMS_COUNT): Increase.
5206         (_dl_string_platform): Handle power6x case.
5207         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
5208         PPC_FEATURE_POWER6_EXT): Define.
5209         (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
5210
5211 2006-12-18  Jakub Jelinek  <jakub@redhat.com>
5212
5213         [BZ #3747]
5214         * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
5215         [-2^31 .. 2^31) range.
5216         * stdlib/tst-rand48.c (main): Fix expected values for 64-bit
5217         targets.
5218         * stdlib/tst-rand48-2.c: New test.
5219         * stdlib/Makefile (tests): Add tst-rand48-2.
5220
5221 2006-12-14  Jakub Jelinek  <jakub@redhat.com>
5222
5223         * misc/tst-pselect.c (do_test): Fix sigblock argument.
5224
5225 2006-12-14  Ulrich Drepper  <drepper@redhat.com>
5226
5227         * misc/tst-pselect.c (do_test): Make sure the helper process is
5228         terminating when the test is aborted.
5229
5230 2006-12-13  Ulrich Drepper  <drepper@redhat.com>
5231
5232         * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
5233         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
5234         Handle relatime mount option.
5235
5236         [BZ #2337]
5237         * libio/Makefile (tests): Add tst-setvbuf1.
5238         * libio/tst-setvbuf1.c: New file.
5239
5240 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
5241
5242         [BZ #2337]
5243         * libio/genops.c (__uflow): Fix a typo.
5244         * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
5245         nor set _IO_LINE_BUF bit here.  Size the wide buffer based on
5246         the narrow buffer size.
5247
5248 2006-11-24  Jakub Jelinek  <jakub@redhat.com>
5249
5250         [BZ #2337]
5251         * libio/libio.h (_IO_FLAGS2_USER_WBUF): Define.
5252         * libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set
5253         _IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit
5254         in _flags.
5255         * libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf,
5256         _IO_wstr_finish): Likewise.
5257         * libio/wmemstream.c (open_wmemstream): Likewise.
5258         * libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp]
5259         even for wide streams.
5260
5261 2006-12-13  Jakub Jelinek  <jakub@redhat.com>
5262
5263         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
5264         kernel-features.h.
5265
5266 2006-12-11  Ulrich Drepper  <drepper@redhat.com>
5267
5268         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
5269         separators also if no non-zero digits found.
5270         * stdlib/Makefile (tests): Add tst-strtod3.
5271
5272 2006-12-09  Ulrich Drepper  <drepper@redhat.com>
5273
5274         [BZ #3632]
5275         * include/features.h: Fix comment about default value for
5276         _POSIX_C_SOURCE.
5277
5278         [BZ #3664]
5279         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
5280         empty parsed strings.
5281         * stdlib/Makefile (tests): Add tst-strtod2.
5282         * stdlib/tst-strtod2.c: New file.
5283
5284         [BZ #3673]
5285         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
5286         computation.
5287         * stdlib/Makefile (tests): Add tst-atof2.
5288         * stdlib/tst-atof2.c: New file.
5289
5290         [BZ #3674]
5291         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
5292         correctly if removing trailing zero of hex-float.
5293         * stdlib/Makefile (tests): Add tst-atof1.
5294         * stdlib/tst-atof1.c: New file.
5295
5296 2006-12-09  Jakub Jelinek  <jakub@redhat.com>
5297
5298         * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
5299         Start searching for next comma at p rather than rest.
5300         * misc/Makefile (tests): Add tst-mntent2.
5301         * misc/tst-mntent2.c: New test.
5302
5303         * misc/getusershell.c (initshells): Check for integer overflows.
5304         Make strings buffer one bigger as fgets always succeeds when second
5305         argument is 1.  Don't use calloc for shells array.  Disallow
5306         / as shell.
5307
5308 2006-12-08  Ulrich Drepper  <drepper@redhat.com>
5309
5310         * malloc/memusage.c: Handle realloc with new size of zero and
5311         non-NULL pointer correctly.
5312         (me): Really write first record twice.
5313         (struct entry): Make format bi-arch safe.
5314         (dest): Write out more realloc statistics.
5315         * malloc/memusagestat.c (struct entry): Make format bi-arch safe.
5316
5317 2006-12-05  Jakub Jelinek  <jakub@redhat.com>
5318
5319         * nis/nis_subr.c (nis_getnames): Revert last change.
5320
5321 2006-12-04  Jakub Jelinek  <jakub@redhat.com>
5322
5323         * sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
5324         (ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
5325         * sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
5326         (__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
5327         ENOTTY.
5328         * io/Makefile: Add rules to build and run tst-ttyname_r test.
5329         * io/tst-ttyname_r.c: New test.
5330
5331 2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5332
5333         * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
5334
5335 2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>
5336
5337         * sysdeps/i386/i686/memcmp.S: Use jump table as the base of
5338         jump table entries.
5339
5340 2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
5341
5342         * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
5343         `clone' function to ensure proper unwinding stop of gdb.
5344         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
5345
5346 2006-12-01  Ulrich Drepper  <drepper@redhat.com>
5347
5348         * nscd/nscd.init: Remove obsolete and commented-out -S option
5349         handling.
5350
5351 2006-11-23  Jakub Jelinek  <jakub@redhat.com>
5352
5353         [BZ #3514]
5354         * manual/string.texi (strncmp): Fix pastos from wcscmp description.
5355
5356         [BZ #3515]
5357         * manual/string.texi (strtok): Remove duplicate paragraph.
5358
5359 2006-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
5360
5361         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
5362         libgcc not supporting `rflags' unwinding (register # >= 17).
5363
5364 2006-11-30  Jakub Jelinek  <jakub@redhat.com>
5365
5366         * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
5367         succeeded.
5368
5369 2006-11-29  Daniel Jacobowitz  <dan@codesourcery.com>
5370             Jakub Jelinek  <jakub@redhat.com>
5371             Jan Kratochvil  <jan.kratochvil@redhat.com>
5372
5373         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
5374         unwind information.
5375         * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
5376         'restore_rt' even in the 'signal' directory.
5377         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
5378
5379 2006-11-27  Jakub Jelinek  <jakub@redhat.com>
5380
5381         [BZ #3559]
5382         * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
5383         malloc crashed.  Don't allocate memory unnecessarily in each
5384         loop.
5385
5386 2006-10-21  Jakub Jelinek  <jakub@redhat.com>
5387
5388         * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
5389
5390 2006-11-20  Ulrich Drepper  <drepper@redhat.com>
5391
5392         * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
5393
5394 2006-11-18  Bruno Haible  <bruno@clisp.org>
5395
5396         * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
5397         __sysconf only after having tried to call getgroups32.
5398
5399 2006-11-19  Ulrich Drepper  <drepper@redhat.com>
5400
5401         * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
5402         addresses for IPv4 queries if they can be mapped.
5403
5404 2006-11-16  Jakub Jelinek  <jakub@redhat.com>
5405
5406         * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
5407         * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
5408         (signmask): Add .size directive.
5409         (othermask): Add .type directive.
5410
5411 2006-11-14  Ulrich Drepper  <drepper@redhat.com>
5412
5413         * po/nl.po: Update from translation team.
5414
5415         * timezone/zdump.c: Redo fix for BZ #3137.
5416
5417 2006-11-14  Jakub Jelinek  <jakub@redhat.com>
5418
5419         * nss/nss_files/files-alias.c (get_next_alias): Set line back
5420         to first_unused after parsing :include: file.
5421
5422 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
5423
5424         * timezone/africa: Update from tzdata2006o.
5425         * timezone/antarctica: Likewise.
5426         * timezone/asia: Likewise.
5427         * timezone/australasia: Likewise.
5428         * timezone/backward: Likewise.
5429         * timezone/europe: Likewise.
5430         * timezone/iso3166.tab: Likewise.
5431         * timezone/northamerica: Likewise.
5432         * timezone/southamerica: Likewise.
5433         * timezone/zone.tab: Likewise.
5434
5435         * time/tzfile.c (__tzfile_read): Extend to handle new file format
5436         on machines with 64-bit time_t.
5437
5438         * timezone/checktab.awk: Update from tzcode2006o.
5439         * timezone/ialloc.c: Likewise.
5440         * timezone/private.h: Likewise.
5441         * timezone/scheck.c: Likewise.
5442         * timezone/tzfile.h: Likewise.
5443         * timezone/tzselect.ksh: Likewise.
5444         * timezone/zdump.c: Likewise.
5445         * timezone/zic.c: Likewise.
5446
5447         [BZ #3483]
5448         * elf/ldconfig.c (main): Call setlocale and textdomain.
5449         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
5450
5451         [BZ #3480]
5452         * manual/argp.texi: Fix typos.
5453         * manual/charset.texi: Likewise.
5454         * manual/errno.texi: Likewise.
5455         * manual/filesys.texi: Likewise.
5456         * manual/lang.texi: Likewise.
5457         * manual/maint.texi: Likewise.
5458         * manual/memory.texi: Likewise.
5459         * manual/message.texi: Likewise.
5460         * manual/resource.texi: Likewise.
5461         * manual/search.texi: Likewise.
5462         * manual/signal.texi: Likewise.
5463         * manual/startup.texi: Likewise.
5464         * manual/stdio.texi: Likewise.
5465         * manual/sysinfo.texi: Likewise.
5466         * manual/syslog.texi: Likewise.
5467         * manual/time.texi: Likewise.
5468         Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5469
5470         [BZ #3465]
5471         * sunrpc/clnt_raw.c: Minimal message improvements.
5472         * sunrpc/pm_getmaps.c: Likewise.
5473         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
5474         * nis/nis_print_group_entry.c: Likewise.
5475         * locale/programs/repertoire.c: Likewise.
5476         * locale/programs/charmap.c: Likewise.
5477         * malloc/memusage.sh: Likewise.
5478         * elf/dl-deps.c: Likewise.
5479         * locale/programs/ld-collate.c: Likewise.
5480         * libio/vswprintf.c: Likewise.
5481         * malloc/memusagestat.c: Likewise.
5482         * sunrpc/auth_unix.c: Likewise.
5483         * sunrpc/rpc_main.c: Likewise.
5484         * nscd/cache.c: Likewise.
5485         * locale/programs/repertoire.c: Unify output messages.
5486         * locale/programs/charmap.c: Likewise.
5487         * locale/programs/ld-ctype.c: Likewise.
5488         * locale/programs/ld-monetary.c: Likewise.
5489         * locale/programs/ld-numeric.c: Likewise.
5490         * locale/programs/ld-time.c: Likewise.
5491         * elf/ldconfig.c: Likewise.
5492         * nscd/selinux.c: Likewise.
5493         * elf/cache.c: Likewise.
5494         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
5495
5496         [BZ #3451]
5497         * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
5498         change atomic.
5499         (ceil): Likewise.
5500
5501 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
5502
5503         * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
5504         if N is one bigger than return value.
5505         * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
5506         and l1 last arguments, if buf is defined, verify the return value
5507         equals to strlen (buf) and verify no byte beyond passed length
5508         is modified.
5509
5510 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
5511
5512         * po/sv.po: Update from translation team.
5513
5514 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
5515
5516         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
5517         noinline attribute.
5518
5519 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
5520
5521         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
5522         noinline attribute.
5523
5524         * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
5525         Use __new_sys_siglist instead of _sys_siglist_internal as
5526         second macro argument.
5527         (_old_sys_siglist): Use declare_symbol_alias macro instead of
5528         strong_alias.
5529
5530 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
5531
5532         [BZ #3493]
5533         * posix/unistd.h (sysconf): Remove const attribute.
5534
5535         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
5536         temporary or deprecated addresses.
5537         Patch by Sridhar Samudrala <sri@us.ibm.com>.
5538
5539         * string/Makefile (tests): Add tst-strxfrm2.
5540         * string/tst-strxfrm2.c: New file.
5541
5542 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
5543
5544         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
5545         rather than r->r_brk.
5546
5547 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
5548
5549         * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
5550         optimization even if needed > n.
5551
5552         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
5553         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
5554         return false, otherwise return true.
5555         (cache_rpath): Return decompose_rpath return value.
5556
5557 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
5558
5559         * include/libc-symbols.h (declare_symbol): Rename to...
5560         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
5561         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
5562         .size directive.
5563         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
5564         changes.
5565         * sysdeps/gnu/siglist.c: Likewise.
5566
5567 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
5568
5569         * sysdeps/powerpc/fpu/bits/mathinline.h
5570         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
5571         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
5572
5573 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
5574
5575         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
5576         Update handling of cache descriptor 0x49 for new models.
5577         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
5578         Likewise.
5579
5580 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
5581
5582         * malloc/memusage.c (dest): Reset not_me back to false after
5583         printing statistics.
5584
5585 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
5586
5587         * configure.in: Work around ld --help change and avoid -z relro
5588         test completely if the architecture doesn't care about security.
5589
5590 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
5591
5592         * po/sv.po: Update from translation team.
5593
5594 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
5595
5596         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
5597         generate compatibility version.
5598
5599 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
5600
5601         * configure.in: Relax -z relro requirement a bit.
5602
5603         * po/sv.po: Update from translation team.
5604
5605 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
5606
5607         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
5608         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
5609         * elf/dl-close.c (_dl_close_worker): Likewise.
5610         * elf/dl-open.c (_dl_open_worker): Likewise.
5611         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
5612
5613 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
5614
5615         * configure.in: Require assembler support for visibility, compiler
5616         support for visibility and aliases, linker support for various -z
5617         options.
5618         * Makeconfig: Remove conditional code which now is unnecessary.
5619         * config.h.in: Likewise.
5620         * config.make.in: Likewise.
5621         * dlfcn/Makefile: Likewise.
5622         * elf/Makefile: Likewise.
5623         * elf/dl-load.c: Likewise.
5624         * elf/rtld.c: Likewise.
5625         * include/libc-symbols.h: Likewise.
5626         * include/stdio.h: Likewise.
5627         * io/Makefile: Likewise.
5628         * io/fstat.c: Likewise.
5629         * io/fstat64.c: Likewise.
5630         * io/fstatat.c: Likewise.
5631         * io/fstatat64.c: Likewise.
5632         * io/lstat.c: Likewise.
5633         * io/lstat64.c: Likewise.
5634         * io/mknod.c: Likewise.
5635         * io/mknodat.c: Likewise.
5636         * io/stat.c: Likewise.
5637         * io/stat64.c: Likewise.
5638         * libio/stdio.c: Likewise.
5639         * nscd/Makefile: Likewise.
5640         * stdlib/Makefile: Likewise.
5641         * stdlib/atexit.c: Likewise.
5642         * sysdeps/generic/ldsodefs.h: Likewise.
5643         * sysdeps/i386/dl-machine.h: Likewise.
5644         * sysdeps/i386/sysdep.h: Likewise.
5645         * sysdeps/i386/i686/memcmp.S: Likewise.
5646         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
5647         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
5648         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
5649
5650         * Makerules: USE_TLS support is now default.
5651         * tls.make.c: Likewise.
5652         * csu/Versions: Likewise.
5653         * csu/libc-start.c: Likewise.
5654         * csu/libc-tls.c: Likewise.
5655         * csu/version.c: Likewise.
5656         * dlfcn/dlinfo.c: Likewise.
5657         * elf/dl-addr.c: Likewise.
5658         * elf/dl-cache.c: Likewise.
5659         * elf/dl-close.c: Likewise.
5660         * elf/dl-iteratephdr.c: Likewise.
5661         * elf/dl-load.c: Likewise.
5662         * elf/dl-lookup.c: Likewise.
5663         * elf/dl-object.c: Likewise.
5664         * elf/dl-open.c: Likewise.
5665         * elf/dl-reloc.c: Likewise.
5666         * elf/dl-support.c: Likewise.
5667         * elf/dl-sym.c: Likewise.
5668         * elf/dl-sysdep.c: Likewise.
5669         * elf/dl-tls.c: Likewise.
5670         * elf/ldconfig.c: Likewise.
5671         * elf/rtld.c: Likewise.
5672         * elf/tst-tls-dlinfo.c: Likewise.
5673         * elf/tst-tls1.c: Likewise.
5674         * elf/tst-tls10.h: Likewise.
5675         * elf/tst-tls14.c: Likewise.
5676         * elf/tst-tls2.c: Likewise.
5677         * elf/tst-tls3.c: Likewise.
5678         * elf/tst-tls4.c: Likewise.
5679         * elf/tst-tls5.c: Likewise.
5680         * elf/tst-tls6.c: Likewise.
5681         * elf/tst-tls7.c: Likewise.
5682         * elf/tst-tls8.c: Likewise.
5683         * elf/tst-tls9.c: Likewise.
5684         * elf/tst-tlsmod1.c: Likewise.
5685         * elf/tst-tlsmod13.c: Likewise.
5686         * elf/tst-tlsmod13a.c: Likewise.
5687         * elf/tst-tlsmod14a.c: Likewise.
5688         * elf/tst-tlsmod2.c: Likewise.
5689         * elf/tst-tlsmod3.c: Likewise.
5690         * elf/tst-tlsmod4.c: Likewise.
5691         * elf/tst-tlsmod5.c: Likewise.
5692         * elf/tst-tlsmod6.c: Likewise.
5693         * include/errno.h: Likewise.
5694         * include/link.h: Likewise.
5695         * include/tls.h: Likewise.
5696         * locale/global-locale.c: Likewise.
5697         * locale/localeinfo.h: Likewise.
5698         * malloc/arena.c: Likewise.
5699         * malloc/hooks.c: Likewise.
5700         * malloc/malloc.c: Likewise.
5701         * resolv/Versions: Likewise.
5702         * sysdeps/alpha/dl-machine.h: Likewise.
5703         * sysdeps/alpha/libc-tls.c: Likewise.
5704         * sysdeps/generic/ldsodefs.h: Likewise.
5705         * sysdeps/generic/tls.h: Likewise.
5706         * sysdeps/i386/dl-machine.h: Likewise.
5707         * sysdeps/ia64/dl-machine.h: Likewise.
5708         * sysdeps/ia64/libc-tls.c: Likewise.
5709         * sysdeps/mach/hurd/fork.c: Likewise.
5710         * sysdeps/mach/hurd/i386/tls.h: Likewise.
5711         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
5712         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
5713         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
5714         * sysdeps/s390/libc-tls.c: Likewise.
5715         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
5716         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
5717         * sysdeps/sh/dl-machine.h: Likewise.
5718         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
5719         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
5720         * sysdeps/x86_64/dl-machine.h: Likewise.
5721
5722         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
5723         split out locking and parameter checking.
5724         (_dl_close): Call _dl_close_worker after locking and checking.
5725         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
5726         _dl_close.
5727         * elf/Makefile: Add rules to build and run tst-thrlock.
5728         * elf/tst-thrlock.c:  New file.
5729
5730         [BZ #3426]
5731         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
5732         reality.
5733
5734         [BZ #3429]
5735         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
5736         we are sure we do not need it anymore for _dl_close.  Also move
5737         the asserts inside the lock region.
5738         Patch mostly by Suzuki <suzuki@in.ibm.com>.
5739
5740 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
5741
5742         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
5743         argument.
5744         (_dl_lookup_symbol_x): Adjust caller.
5745
5746         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
5747         _ns_global_scope.
5748         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
5749
5750         * elf/dl-libc.c: Revert l_scope name changes.
5751         * elf/dl-load.c: Likewise.
5752         * elf/dl-object.c: Likewise.
5753         * elf/rtld.c: Likewise.
5754         * elf/dl-close.c (_dl_close): Likewise.
5755         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
5756         always use __rtld_mrlock_{change,done}.  Always free old scope list
5757         here if not l_scope_mem.
5758         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
5759         change.  Never free scope list here.  Just __rtld_mrlock_lock before
5760         the lookup and __rtld_mrlock_unlock it after the lookup.
5761         * elf/dl-sym.c: Likewise.
5762         * include/link.h (struct r_scoperec): Remove.
5763         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
5764         with l_scope_mem and l_scoperec_lock with l_scope_lock.
5765
5766 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
5767
5768         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
5769
5770 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
5771
5772         * configure.in: Disable building profile libraries by default.
5773
5774 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
5775
5776         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
5777         as signed longs, check for x_base + pos overflow.
5778         * sunrpc/Makefile (tests): Add tst-xdrmem2.
5779         * sunrpc/tst-xdrmem2.c: New test.
5780
5781 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
5782
5783         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
5784         _dl_lookup_symbol_x code.
5785
5786 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
5787
5788         * elf/dl-runtime.c: Include sysdep-cancel.h.
5789         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
5790         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
5791         instead of catomic_* macros.
5792         * elf/dl-sym.c: Include sysdep-cancel.h.
5793         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
5794         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
5795         * elf/dl-close.c: Include sysdep-cancel.h.
5796         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
5797         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
5798         * elf/dl-open.c: Include sysdep-cancel.h.
5799         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
5800         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
5801
5802 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
5803
5804         [BZ #3313]
5805         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
5806         fastbin rather than end of fastbin array.
5807
5808 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
5809
5810         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
5811         body macro.
5812         * sysdeps/x86_64/bits/atomic.h
5813         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
5814         (catomic_decrement): Use correct body macro.
5815
5816 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
5817
5818         * include/atomic.h: Add a unique prefix to all local variables
5819         in macros.
5820         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
5821
5822 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
5823
5824         [BZ #3369]
5825         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
5826         and 7.
5827
5828 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
5829
5830         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
5831
5832 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
5833
5834         [BZ #3313]
5835         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
5836         determine highest fast bin to consolidate, always look into all of
5837         them.
5838         (do_check_malloc_state): Only require for empty bins for large
5839         sizes in main arena.
5840
5841         * libio/stdio.h: Add more __wur attributes.
5842
5843         * elf/dl-minimal.c (realloc): Optimize last patch.
5844
5845 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
5846
5847         [BZ #3352]
5848         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
5849         and use memcpy() if it does.
5850
5851 2006-11-12  Andreas Jaeger  <aj@suse.de>
5852
5853         [BZ #2510]
5854         * manual/search.texi (Hash Search Function): Clarify.
5855         (Array Search Function): Clarify.
5856
5857 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
5858
5859         [BZ #2830]
5860         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
5861         shifting.
5862         * math/atest-exp2.c (read_mpn_hex): Likewise.
5863         * math/atest-sincos.c (main): Likewise.
5864
5865 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
5866
5867         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
5868         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
5869         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
5870         version GLIBC_2.6.
5871         * Versions.def: Add GLIBC_2.6 for libc.
5872
5873         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
5874
5875         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
5876
5877 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
5878
5879         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
5880
5881         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
5882
5883         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
5884         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
5885
5886 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
5887
5888         * include/atomic.c: Define catomic_* operations.
5889         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
5890         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
5891         * malloc/memusage.c: Likewise.
5892         * gmon/mcount.c: Likewise.
5893         * elf/dl-close.c: Likewise.
5894         * elf/dl-open.c: Likewise.
5895         * elf/dl-profile.c: Likewise.
5896         * elf/dl-sym.c: Likewise.
5897         * elf/dl-runtime.c: Likewise.
5898         * elf/dl-fptr.c: Likewise.
5899         * resolv/res_libc.c: Likewise.
5900
5901 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
5902
5903         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
5904         components which lack them.
5905
5906         * nis/nis_subr.c (nis_getnames): Make sure that we always return
5907         at least one entry consisting of the parameter concatenated with
5908         the domain.
5909
5910 2006-10-10  Roland McGrath  <roland@frob.com>
5911
5912         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
5913         * sysdeps/mach/hurd/futimes.c: Likewise.
5914         * sysdeps/mach/hurd/lutimes.c: Likewise.
5915
5916 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
5917             Jakub Jelinek  <jakub@redhat.com>
5918
5919         Implement reference counting of scope records.
5920         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
5921         from the list in objects which remain.  Always allocate new scope
5922         record.
5923         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
5924         don't resize, allocate a new one.
5925         * elf/dl-runtime.c: Update reference counters before using a scope
5926         array.
5927         * elf/dl-sym.c: Likewise.
5928         * elf/dl-libc.c: Adjust for l_scope name change.
5929         * elf/dl-load.c: Likewise.
5930         * elf/dl-object.c: Likewise.
5931         * elf/rtld.c: Likewise.
5932         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
5933         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
5934         Add l_scoperec_lock.
5935         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
5936         * sysdeps/generic/rtld-lowlevel.h: New file.
5937
5938         * include/atomic.h: Rename atomic_and to atomic_and_val and
5939         atomic_or to atomic_or_val.  Define new macros atomic_and and
5940         atomic_or which do not return values.
5941         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
5942         Various cleanups.
5943         * sysdeps/i386/i486/bits/atomic.h: Likewise.
5944
5945         * po/sv.po: Update from translation team.
5946
5947 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
5948
5949         * Versions.def: Add GLIBC_2.6 to libpthread.
5950
5951         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
5952         (versioned_symbol): Likewise.
5953         (compat_symbol): Likewise.
5954
5955         * po/tr.po: Update from translation team.
5956
5957 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
5958
5959         * nis/Banner: Removed.  It's been integral part forever and the
5960         author info is incomplete anyway.
5961         * libio/Banner: Likewise.
5962
5963         * nis/nis_table.c (nis_list): If __follow_path fails in the new
5964         code, make sure the nis_freeresult call doesn't crash and that the
5965         result is reported correctly.
5966
5967 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
5968
5969         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
5970         when callback is NULL.
5971
5972         * nis/Versions (libnss_nisplus): Add
5973         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
5974         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
5975         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
5976         _nss_create_tablename): Rename to...
5977         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
5978         ... these.  No longer static.
5979         (internal_setgrent): Adjust users.
5980         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
5981         Don't use locking around _nss_grp_create_tablename call.
5982         * nis/nss_nisplus/nisplus-initgroups.c: New file.
5983
5984 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
5985
5986         * version.h (VERSION): Bump to 2.5.90 for new development tree.
5987
5988 2006-10-06  Andreas Jaeger  <aj@suse.de>
5989
5990         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
5991
5992 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
5993
5994         * po/pl.po: Update from translation team.
5995
5996         * nscd/nscd.c (main): Fix typo in message.
5997         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
5998
5999 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
6000
6001         [BZ #3291]
6002         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
6003         errno.h, signal.h, unistd.h and sysdep-cancel.h.
6004         (__sigprocmask): Define.
6005
6006 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
6007
6008         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
6009         used.
6010
6011 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
6012
6013         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
6014         in oldtotal and newtotal calculation.
6015         * nscd/nscd-client.h (struct mapped_database): Add datasize
6016         field.
6017         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
6018         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
6019         increased.
6020         (__nscd_cache_search): Add checks to make sure we never reference
6021         data beyond the current mapping.
6022
6023 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
6024
6025         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
6026         variables const to avoid compiler warnings.
6027
6028         * io/fts.c (fts_close): Remove redundant checks.
6029         (fts_build): Likewise.
6030         (fts_palloc): Likewise.
6031
6032         * manual/message.texi (Advanced gettext functions,
6033         Using gettextized software): Fix typos.
6034
6035 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
6036
6037         * posix/glob.c (glob_in_dir): Add some comments and asserts to
6038         explain why there are no leaks.
6039
6040 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
6041
6042         * libio/wmemstream.c: Include <wchar.h>.
6043         * libio/bug-wmemstream1.c: Likewise.
6044         * libio/tst-wmemstream1.c: Likewise.
6045         * libio/tst-wmemstream2.c: Likewise.
6046
6047         * version.h (RELEASE): Bump to 2.5.
6048         * README: Regenerated.
6049
6050         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
6051
6052         [BZ #3273]
6053         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
6054         found no group members.
6055         Patch by Petr Baudis.
6056
6057 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
6058
6059         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
6060         assert bootstrap_map.l_tls_modid is zero.
6061         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
6062         if USE___THREAD.
6063
6064 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
6065
6066         * libio/stdio.h: Move open_wmemstream prototype to ...
6067         * wcsmbs/wchar.h: ... here.
6068
6069 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
6070
6071         [BZ #3252]
6072         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
6073         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
6074         __{,l}chown to handle the rest.
6075         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
6076         fchownat syscall and __ASSUME_32BITUIDS case inline, call
6077         __{,l}chown to handle the rest.
6078         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
6079         i386/fchownat.c.
6080         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
6081         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
6082
6083         [BZ #3253]
6084         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
6085         time, rather allocate increasingly bigger arrays of pointers, if
6086         possible with alloca, if too large with malloc.
6087
6088 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
6089
6090         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
6091
6092         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
6093
6094 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
6095
6096         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
6097         home addresses.
6098         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
6099         IFA_F_HOMEADDRESS flag for interfaces.
6100         * include/ifaddrs.h (struct in6addrinfo): Define
6101         in6ai_homeaddress.
6102
6103 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
6104
6105         [BZ #3225]
6106         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
6107         PTR_DEMANGLE3): Define.
6108         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
6109         PTR_DEMANGLE3): Likewise.
6110         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
6111         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
6112         Likewise.
6113         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
6114
6115 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
6116
6117         * po/libc.pot: Regenerated.
6118         * po/be.po: Updated.
6119         * po/ca.po: Likewise.
6120         * po/cs.po: Likewise.
6121         * po/da.po: Likewise.
6122         * po/de.po: Likewise.
6123         * po/el.po: Likewise.
6124         * po/en_GB.po: Likewise.
6125         * po/es.po: Likewise.
6126         * po/fi.po: Likewise.
6127         * po/fr.po: Likewise.
6128         * po/gl.po: Likewise.
6129         * po/hr.po: Likewise.
6130         * po/hu.po: Likewise.
6131         * po/ja.po: Likewise.
6132         * po/ko.po: Likewise.
6133         * po/nb.po: Likewise.
6134         * po/nl.po: Likewise.
6135         * po/pl.po: Likewise.
6136         * po/pt_BR.po: Likewise.
6137         * po/ru.po: Likewise.
6138         * po/rw.po: Likewise.
6139         * po/sk.po: Likewise.
6140         * po/sv.po: Likewise.
6141         * po/tr.po: Likewise.
6142         * po/zh_CN.po: Likewise.
6143         * po/zh_TW.po: Likewise.
6144
6145         [BZ #3137]
6146         * iconv/iconv_prog.c (main): Fix spelling in error message.
6147         * iconv/iconvconfig.c (main): Likewise.
6148         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
6149         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
6150         * locale/programs/localedef.c (main): Likewise.
6151         * locale/programs/repertoire.c (repertoire_read): Likewise.
6152         * timezone/zdump.c (main): Likewise.
6153         * nscd/connections.c (handle_request): Fix spelling in log message.
6154         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
6155
6156 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
6157
6158         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
6159         interfaces.
6160
6161 2006-09-20  Andreas Jaeger  <aj@suse.de>
6162
6163         * math/libm-test.inc (lrint_test_upward): Fix typo.
6164
6165 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
6166
6167         [BZ #2592]
6168         * math/libm-test.inc (lrint_test_tonearest): New function.
6169         (lrint_test_towardzero): New function.
6170         (lrint_test_downward): New function.
6171         (lrint_test_upward): New function.
6172         (main): Run these new tests.
6173         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
6174         of values near to 0.
6175         (two52): Use double not long double.
6176         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
6177         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
6178         (two23): Use float not double.
6179         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
6180         (two23): Use float not double.
6181         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
6182         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
6183         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
6184         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
6185
6186 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6187
6188         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
6189         Cast sp to unsigned long to avoid compiler warning.
6190         Use __makecontext_ret function instead of a trampoline on the stack.
6191         (__makecontext_ret): New function.
6192         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
6193
6194 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
6195
6196         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
6197         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
6198         bits.
6199
6200 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
6201
6202         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
6203         sure no reference to the unloaded map's search list remains in the
6204         dependency's scope.
6205
6206 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
6207
6208         * elf/Makefile: Add rules to build and run unload7 test.
6209         * elf/unload7.c: New test.
6210         * elf/unload7mod1.c: New file.
6211         * elf/unload7mod2.c: New file.
6212
6213 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
6214
6215         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
6216         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
6217         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
6218         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
6219         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
6220         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
6221         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
6222         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
6223         PTRACE_GETEVENTMSG): Likewise.
6224         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
6225         values.
6226
6227 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
6228
6229         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
6230         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
6231         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
6232         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
6233
6234 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
6235
6236         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
6237         write '\0' to the fd.
6238         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
6239         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
6240         Change regs to unsigned long pointer from unsigned int, fix fscr
6241         offset.
6242
6243 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
6244
6245         * io/Makefile (CFLAGS-fstatat.c): Set.
6246         (CFLAGS-fstatat64.c): Likewise.
6247         (CFLAGS-mknodat.c): Likewise.
6248
6249         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
6250         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
6251         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
6252         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
6253
6254 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
6255             Steven Munroe  <sjmunroe@us.ibm.com>
6256
6257         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
6258         names to the beginning.  Rename "cell" to "cellbe".
6259         (_dl_powerpc_platforms): New.
6260         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
6261         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
6262         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
6263         (_DL_HWCAP_PLATFORM): Define to new mask.
6264         (_dl_platform_string, _dl_string_platform): New functions.
6265         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
6266         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
6267
6268 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
6269
6270         [BZ #2526]
6271         * README.libm: Fix a thinko in sqrt algorithm description.
6272
6273         [BZ #3143]
6274         * manual/string.texi (argz_delete): Fix prototype.
6275         Patch by <alpt@freaknet.org>.
6276
6277 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
6278
6279         [BZ #3138]
6280         * io/test-lfs.c (do_prepare): Give name_len type size_t.
6281         * io/tst-fcntl.c (do_prepare): Likewise.
6282         * posix/tst-exec.c (do_prepare): Likewise.
6283         * posix/tst-preadwrite.c (do_prepare): Likewise.
6284         * posix/tst-spawn.c (do_prepare): Likewise.
6285         * posix/tst-truncate.c (do_prepare): Likewise.
6286         * rt/tst-aio.c (do_prepare): Likewise.
6287         * rt/tst-aio64.c (do_prepare): Likewise.
6288         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
6289         size_t.
6290
6291 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
6292
6293         [BZ #2821]
6294         * time/mktime.c (guess_time_tm): Fix overflow detection.
6295         * time/Makefile (tests): Add bug-mktime1.
6296         * time/bug-mktime1.c: New file.
6297
6298         [BZ #3189, #3188]
6299         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
6300         (mremap): Likewise.
6301
6302 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
6303
6304         [BZ #1006]
6305         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
6306         Ensure relocation doesn't clobber any bits outside of the
6307         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
6308         R_SPARC_HI22 and R_SPARC_H44.
6309
6310         [BZ #2775]
6311         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
6312         (long) (MINSIZE + nb - old_size) is positive.
6313
6314         * malloc/arena.c (grow_heap): When growing bail even if new_size
6315         is negative.
6316
6317         [BZ #3155]
6318         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
6319         stack below r1.
6320
6321 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
6322
6323         * posix/regex_internal.c (re_string_reconstruct): Handle
6324         offset < pstr->valid_raw_len && pstr->offsets_needed case.
6325         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
6326         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
6327         re_string_context_at.
6328         * posix/Makefile: Add rules to build and run bug-regex26 test.
6329         * posix/bug-regex26.c: New test.
6330
6331         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
6332         rather than col_sym_free.  Move seqp declaration earlier.
6333
6334         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
6335
6336 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
6337
6338         * nscd/initgrcache.c (addinitgroupsX): Move any_success
6339         decl before first goto out.
6340
6341 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
6342
6343         * Makerules (shlib.lds): If have-hash-style, put .hash section
6344         at the end of the RO segment.
6345
6346 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
6347
6348         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
6349         style hash table format is used.
6350
6351 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
6352
6353         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
6354         randomization rather than before.
6355         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
6356
6357 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
6358
6359         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
6360
6361         * malloc/malloc.c (_int_malloc): Use full list insert and not
6362         shortcut which assumes the list is empty for large requests
6363         too.
6364
6365         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
6366
6367 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
6368
6369         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
6370         and offout arguments to the prototype.
6371         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
6372         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
6373         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
6374         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
6375         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
6376         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
6377         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
6378         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
6379
6380 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
6381
6382         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
6383
6384         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
6385         dlopen parameters.
6386
6387 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
6388
6389         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
6390         only if herrno is NETDB_INTERNAL.  Handle errors other than
6391         ERANGE outside of the loops, handle TRY_AGAIN.
6392
6393         * locale/programs/ld-ctype.c (translit_flatten): Issue error
6394         if other's ctype category was missing.
6395         * locale/programs/ld-collate.c (collate_read): Return if
6396         copy_locale's collate category is missing.
6397
6398 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
6399
6400         [BZ #2684]
6401         * malloc/malloc.c (public_rEALLOc): Try harder by using other
6402         arenas if allocation failed.
6403         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
6404
6405 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
6406
6407         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
6408         waste bins[0..1].
6409         (malloc_state): Reduce bins size by 2.
6410         (_int_malloc): Fix test for large enough buffer for early termination.
6411         When no unsorted block matches perfectly and an exiting block has
6412         to be split, use full list insert and not shortcut which assumes
6413         the list is empty.
6414
6415         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
6416         failure.
6417
6418 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
6419
6420         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
6421         do anything.
6422
6423         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
6424         symbol require exact match (these are PLTs).
6425         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
6426         (_dl_ppc64_addr_sym_match): Likewise.
6427
6428         [BZ #2683]
6429         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
6430         If symbol has a value use it.
6431         * elf/tst-dladdr1.c: New file.
6432         * elf/Makefile: Add rules to build and run tst-addr1.
6433
6434 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
6435
6436         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
6437         keeps failing and heap growth or new heap creation isn't
6438         successful either.
6439         * malloc/tst-malloc.c (main): Add new tests.
6440
6441 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
6442
6443         [BZ #2734]
6444         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
6445         as in the x86-64 code to use bswap.
6446
6447 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
6448
6449         [BZ #2680]
6450         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
6451         __USE_UNIX98.
6452         * posix/bits/unistd.h: Likewise.
6453
6454 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
6455
6456         [BZ #2751]
6457         * string/strchr.c: Add cast to avoid warning.
6458
6459 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
6460
6461         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
6462         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
6463         limit is needed to avoid the exploding of the address space
6464         requirement for secondary heaps.
6465         * malloc/arena.c (HEAP_MAX_SIZE): Define using
6466         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
6467
6468 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
6469
6470         [BZ #3018]
6471         * Makerules (depfiles): Handle extra-test-objs the same as
6472         extra-objs.
6473         (common-mostlyclean): Likewise.
6474         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
6475         instead.
6476         * elf/Makefile (extra-objs): Likewise.
6477         * stdlib/Makefile (extra-objs): Likewise.
6478
6479 2006-08-14  Eric Blake  <ebb9@byu.net>
6480
6481         [BZ #3044]
6482         * misc/error.h: Assume C89 or better.
6483         * misc/error.c: Likewise.
6484
6485 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
6486
6487         [BZ #3040]
6488         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
6489         __ASSUME_ATFCTS is defined.
6490
6491 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
6492
6493         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
6494         to sort in each call.
6495
6496         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
6497         is empty simply return and use next service.
6498         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
6499
6500         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
6501         tells us when not finding a charmap file is an error.
6502         * locale/programs/charmap.h: Adjust charmap_read prototype.
6503         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
6504         cannot find a charmap.
6505         * locale/programs/localedef.c (main): Adjust charmap_read call.
6506
6507 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
6508
6509         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
6510         sysdeps/posix/pause.c implementation instead.
6511
6512 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
6513
6514         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
6515         to EPERM.
6516
6517 2006-08-13  Andreas Schwab  <schwab@suse.de>
6518
6519         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
6520         Don't clobber caller's LRSAVE.
6521         (_dl_prof_resolve): Likewise.
6522
6523 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
6524
6525         [BZ #1996]
6526         * libio/memstream.c (open_memstream): Allocate initial buffer with
6527         calloc.
6528         * libio/wmemstream.c (open_wmemstream): Likewise.
6529         * libio/strops.c: Pretty printing.
6530         (_IO_str_overflow): Clear uninitialized part of the new buffer.
6531         (enlarge_userbuf): New function.
6532         (_IO_str_seekoff): Call it if seek position is larger than current
6533         buffer.
6534         * libio/wstrops.c: Likewise.
6535         * libio/vasprintf.c: Add comment as to why we do not have to use
6536         calloc instead of malloc to allocate initial buffer.
6537         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
6538         * libio/bug-memstream1.c: New file.
6539         * libio/bug-wmemstream1.c: New file.
6540
6541 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
6542
6543         * libio/wstrops.c: Remove dead macro definitions and comments.
6544         * libio/strops.c: Likewise.
6545
6546         [BZ #2764]
6547         * login/utmpname.c (__utmpname): Remove unnecessary test.
6548
6549 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
6550
6551         [BZ #2832]
6552         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
6553         0s from integers.
6554
6555 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
6556
6557         [BZ #2987]
6558         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
6559         for CPU clocks.
6560         * sysdeps/unix/clock_settime.c: Add support for platform-specific
6561         setting of CPU clocks.
6562
6563 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
6564
6565         [BZ #2841]
6566         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
6567         since C99 requires the result to promote to 'int' when uint_least8_t
6568         and uint_least16_t promote to 'int'.
6569
6570 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
6571
6572         [BZ #3013]
6573         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
6574         lenght of one output field, correct bitmask creation.
6575         * locale/programs/ld-time.c: Add alignment.
6576
6577         [BZ #2997]
6578         * misc/error.c: Add space between program name and message if file
6579         name is missing.
6580
6581 2006-08-03  Eric Blake  <ebb9@byu.net>
6582
6583         [BZ #2998]
6584         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
6585
6586 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
6587
6588         * malloc/memusagestat.c: Silence warnings.
6589
6590         * malloc/malloc.c: Dynamically size mmap treshold if the program
6591         frees mmaped blocks.
6592         Patch by Valerie Henson and Arjan van de Ven.
6593
6594 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
6595
6596         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
6597         __USE_GNU.
6598
6599         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
6600         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
6601         (DEF): Don't put the var into .gnu.linkonce.r.* section.
6602         Only provide var definitions in strtol_l (or for *ull*
6603         in strtoll_l).
6604
6605         * stdio-common/bug16.c (tests): New array.
6606         (do_tests): Allow the first hexadecimal digit
6607         to be 1, 2, 4 or 8.  Do 3 additional tests.
6608
6609         * sysdeps/s390/fpu/libm-test-ulps: Update.
6610
6611         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
6612         fchownat syscall if available.
6613         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
6614         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
6615         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
6616
6617 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
6618
6619         * nis/nis_xdr.c: Avoid some function calls.
6620
6621 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
6622             Ulrich Drepper  <drepper@redhat.com>
6623
6624         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
6625         short cut if only one name component is stripped away.
6626
6627 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
6628
6629         * nis/nis_call.c: Minor cleanups throughout.
6630         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
6631         (first_shoot): Add search_parent_first parameter.  Only if it is set
6632         search parent server first.
6633         If directory for table found through cold start cache is not the same
6634         as referenced in the cache, don't use it.
6635         (__nisfind_server): Take additional parameter.  Pass it on to
6636         first_shoot.
6637         (__prepare_niscall): Adjust __nisfind_server call.
6638         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
6639         * nis/nis_table.c: Adjust __nisfind_server call.
6640         * nis/nis_lookup.c: Likewise.
6641         (nis_lookup): Don't loop endlessly if name is reduced to ".".
6642
6643 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
6644
6645         [BZ #2182]
6646         * math/s_cacosh.c: Return values from positive branch.
6647         * math/s_cacoshf.c: Likewise.
6648         * math/s_cacoshl.c: Likewise.
6649
6650         [BZ #2883]
6651         * sysvipc/sys/msg.h: Change return value to ssize_t.
6652         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
6653         * sysvipc/msgrcv.c: Likewise.
6654         * include/sys/msg.h: Likewise.
6655
6656         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
6657         test introduced in patch for bz #661.
6658         (getgrouplist): Simplify code a bit.  Don't allocate one additional
6659         element for NEWGROUPS.
6660
6661         [BZ #2908]
6662         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
6663         'f', use '1' as leading digit not '\1'.
6664         * stdio-common/Makefile (tests): Add bug16.
6665         * stdio-common/bug16.c: New file.
6666
6667         [BZ #2914]
6668         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
6669         and don't try to open it.  The patch introducing the macro
6670         contained a bug and used the same file name as the new file
6671         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
6672         this out completely.
6673
6674         [BZ #2926]
6675         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
6676         Patch by Jerry James <Jerry.James@usu.edu>.
6677
6678         * rt/Makefile (tests): Add tst-clock2.
6679         * rt/tst-clock2.c: New file.
6680
6681         [BZ #2978]
6682         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
6683         function and its parameters and pass it to new thread.
6684         (__gai_notify): Add support for alternative waiting for completion.
6685         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
6686         waiting for completion.
6687         * resolv/getaddrinfo_a.c: Likewise.
6688         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
6689         waiting for completion is used.
6690         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
6691         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
6692         * resolv/gai_error.c: Likewise.
6693         * resolv/gai_sigqueue.c: Likewise.
6694
6695 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
6696
6697         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
6698         errno to EBADF and return MACH_PORT_NULL.
6699
6700 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
6701
6702         [BZ #2980]
6703         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
6704
6705 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
6706
6707         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
6708         walk them instead of the symbol table.
6709
6710 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
6711
6712         [BZ #2098]
6713         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
6714         status of NSS calls, not the number of returned entries.
6715
6716         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
6717         request_key, keyctl.
6718
6719 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
6720
6721         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
6722
6723 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
6724
6725         * elf/tst-auditmod1.c: Fix typo in #error.
6726
6727 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
6728
6729         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
6730
6731         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
6732
6733 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
6734
6735         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
6736         that the directory is empty even on non-POSIX filesystems.
6737
6738 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
6739
6740         * elf/dl-open.c (dl_open_worker): Add branch prediction.
6741
6742         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
6743         the backend NSS module.  If backend setgrent call failed, don't have
6744         internal_setgrent fail.  Just remember this until it is needed.
6745         * nis/nss_compat/compat-pwd.c: Likewise.
6746         * nis/nss_compat/compat-spwd.c: Likewise.
6747
6748 2006-07-30  Roland McGrath  <roland@redhat.com>
6749
6750         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
6751         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
6752         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
6753         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
6754
6755         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
6756         (nanosleep_not_cancel): New macro.
6757         (sigsuspend_not_cancel): new macro.
6758         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
6759         (do_sigsuspend): Define as inline.
6760         (__sigsuspend): Always use do_sigsuspend.
6761         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
6762         * include/signal.h: Declare __sigsuspend_nocancel.
6763         * sysdeps/posix/pause.c
6764         [! NO_CANCELLATION] (__pause_nocancel): New function.
6765
6766         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
6767         * include/time.h (__nanosleep_nocancel): Likewise.
6768
6769 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
6770
6771         * locale/programs/localedef.c (add_to_readlist): Rename local
6772         variables to avoid confusion.
6773
6774         * locale/programs/charmap.c (charmap_read): Emit error message if
6775         charmap couldn't be found or read.
6776
6777 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
6778
6779         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6780         __ASSUME_FUTEX_LOCK_PI.
6781         * include/time.h: Declare __nanosleep_nocancel.
6782         * include/unistd.h: Declare __pause_nocancel.
6783
6784         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
6785         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
6786         get the __stack_chk_fail_local definition when it's needed.
6787
6788 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
6789
6790         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
6791         * dlfcn/bug-atexit3.c: New file.
6792         * dlfcn/bug-atexit3-lib.cc: New file.
6793
6794         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
6795         used when the namespace is not the base namespace.
6796
6797 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
6798
6799         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
6800         (__new_exitfn): Bump it in every successful call.
6801         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
6802         more exit handlers, call them right away.
6803         * stdlib/exit.h: Declare __new_exitfn_called.
6804
6805 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
6806
6807         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
6808         calling registered handler.
6809
6810         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
6811         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
6812         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
6813         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
6814         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
6815         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
6816         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
6817         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
6818
6819 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
6820
6821         * elf/dl-lookup.c (dl_new_hash): New functions.
6822         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
6823         value here.  Compute new-style hash value.  Pass new hash value
6824         and reference to variable with the old value to do_lookup_x.
6825         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
6826         old-style hash table.
6827         (_dl_debug_bindings): Pass new hash value and reference to variable
6828         with the old value to do_lookup_x.
6829         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
6830         new-style hash value and change old-style hash value parameter to
6831         be a reference.  Reoganize functions to determine whether
6832         new-style hash table is available.  Only fall back on old-style
6833         table.  If old-style hash value is needed, compute it here.
6834         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
6835         entry.
6836         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
6837         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
6838         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
6839         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
6840         * Makeconfig: If linker supports --hash-style option add it to all
6841         linker command lines to build DSOs.
6842         * config.make.in: Define have-hash-style.
6843         * configure.in: Test whether linker supports --hash-style option.
6844
6845         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
6846         * sysdeps/generic/ldsodefs.h: Adjust prototype.
6847
6848 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
6849
6850         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
6851         auditing.
6852
6853         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
6854         RPATH of main map twice.
6855
6856 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
6857
6858         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
6859         look further, return original strings.
6860         (_nl_find_msg): Do not return found translation if the conversion
6861         failed.  Either signal the string is unusable or that something went
6862         wrong and the original should be used.
6863
6864 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
6865
6866         * string/_strerror.c (__strerror_r): Add __builtin_expect.
6867
6868 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
6869
6870         [BZ #2766]
6871         * misc/insremque.c (insque): Handle prev == NULL.
6872         * misc/Makefile (tests): Add tst-insremque.
6873         * misc/tst-insremque.c: New test.
6874
6875 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
6876
6877         [BZ #2792]
6878         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
6879         conflict with DL_DST_REQUIRED.
6880
6881 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
6882
6883         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
6884         match what Solaris does.
6885
6886 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
6887
6888         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
6889         local_setegid instead of seteuid and setegid.
6890         * sysdeps/generic/local-setxid.h: New file.
6891         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
6892
6893         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
6894
6895         * string/Makefile (tests): Add bug-envz1.
6896         * string/bug-envz1.c: New file.
6897
6898 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
6899
6900         * posix/regex_internal.c (re_string_skip_chars): If no character has
6901         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
6902         to the byte which couldn't be converted.
6903         (re_string_reconstruct): Don't clear valid_raw_len before calling
6904         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
6905         tip_context using re_string_context_at.
6906         * posix/Makefile: Add rules to build and run bug-regex25 test.
6907         * posix/bug-regex25.c: New test.
6908
6909 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
6910
6911         [BZ #2703]
6912         * string/envz.c (envz_strip): Correct erroneously reversed src
6913         and dest parameters to memmove() invocation.
6914
6915 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
6916
6917         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
6918         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
6919         to make sure the database has been already invalidated.
6920         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
6921         after the cache has been invalidated.  Use pthread_mutex_lock rather
6922         than pthread_mutex_trylock if fd != -1.
6923         * nscd/connections.c (invalidate_cache): Add fd argument, write
6924         response to fd if not calling prune_cache, pass fd to prune_cache.
6925         (handle_request): Adjust invalidate_cache caller.
6926         (nscd_run): Pass -1 as fd to prune_cache.
6927
6928 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
6929
6930         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
6931         the correct place.
6932
6933 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
6934
6935         * nscd/nscd.h (struct database_dyn): Add prunelock field.
6936         * nscd/cache.c (prune_cache): Take prunelock before starting the
6937         work.  Just return in case it is already taken.
6938         * nscd/connections.c (dbs): Initialize .prunelock.
6939
6940 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
6941
6942         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
6943         copying.  No need to allocate new array for group members.  Just
6944         move the pointers and update the size.
6945
6946         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
6947         Avoid memory leak in case realloc fails.  Simplification for
6948         better code generation.
6949
6950         Avoid deprecation warning because of libc_hidden_proto for
6951         inet6_option_alloc.
6952         * inet/inet6_option.c (option_alloc): Renamed from
6953         inet6_option_alloc.  Made static.
6954         (inet6_option_alloc): Now a simple wrapper around option_alloc.
6955         (inet6_option_append): Call option_alloc.
6956         * include/netinet/in.h: Remove libc_hidden_proto for
6957         inet6_option_alloc.
6958
6959         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
6960         for cleanup when cb!=NULL [Coverity CID 233].
6961
6962 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
6963
6964         [BZ #2693]
6965         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
6966         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
6967         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
6968         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
6969         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
6970         and inet6_rth_getaddr.
6971         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
6972         array.
6973         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
6974         Mark inet6_option_* interfaces as deprecated.
6975         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
6976         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
6977         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
6978         inet6_rth_segments, and inet6_rth_getaddr.
6979         * inet/inet6_opt.c: New file.
6980         * inet/inet6_rth.c: New file.
6981
6982         * inet/netinet/icmp6.h: Pretty printing.
6983
6984         [BZ #2683]
6985         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
6986
6987 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
6988
6989         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
6990         doing it all here.  When server does not know the answer do not
6991         fail immediate, try parent first.
6992
6993         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
6994         overflow test.
6995
6996 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
6997
6998         * nis/nis_call.c (__prepare_niscall): New function.  Split out
6999         from __do_niscall.
7000         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
7001         and exported.
7002         (__follow_path): New function.  Split out from nis_list.
7003         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
7004         _xdr_nis_result.
7005         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
7006         _xdr_nis_result.
7007         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
7008         and __follow_path.
7009         * nis/Versions: Export __prepare_niscall, __create_ib_request,
7010         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
7011         from libnsl for version GLIBC_PRIVATE.
7012         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
7013         Remove entry parameter from _nss_nisplus_parse_pwent and
7014         _nss_nisplus_parse_grent.
7015         * nis/nss_nisplus/nisplus-parser.c: Likewise.
7016         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
7017         again.  Rewrite getpwent handling to not use nis_first_entry and
7018         nis_next_entry.  Roll out own niscall handling.
7019         * nis/nss_nisplus/nisplus-grp.c: Likewise.
7020
7021         * sunrpc/xdr_rec.c: Fix typo in comment.
7022
7023 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
7024
7025         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
7026         handling.
7027
7028         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
7029         to allocate memory for my_pollfd.  Better initialization of
7030         cb_is_running.  Use TEMP_FAILURE_RETRY.
7031
7032         * malloc/memusage.sh (memusageso): Add quotes.
7033         (memusagestat): Likewise.
7034         * debug/xtrace.sh (pcprofileso): Likewise.
7035         (pcprofiledump): Likewise.
7036         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
7037         replacement.
7038         * malloc/Makefile ($(objpfx)memusage): Likewise.
7039
7040         * nis/nis_callback.c (__nis_create_callback): Calls to
7041         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
7042         asprintf call fails.
7043
7044         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
7045         no uninitialized memory is passed to sendto.
7046
7047 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
7048
7049         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
7050         of snprintf+strdup.  Handle OOM.
7051         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
7052         cb->serv together.  Remove now obsolete free calls.
7053         (__nis_destroy_callback): Remove now obsolete free call.
7054
7055 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
7056
7057         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
7058         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
7059         and ULA respectively). Set precedence for IPv4 address to 10 as
7060         defined in RFC3484 for preferring IPv6.
7061         * posix/gai.conf: Update to match the new default tables.
7062
7063 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
7064
7065         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
7066         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
7067         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
7068         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
7069
7070         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
7071         Removed.
7072         (init_nss_interface): Remove initialization of these variables.
7073
7074 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
7075
7076         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
7077         nis_free_directory forward to avoid duplication.
7078
7079 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
7080
7081         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
7082         rec_dirsearch returning NULL.
7083         (first_shoot): Handle __nis_finddirectory returning NULL.
7084         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
7085
7086         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
7087         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
7088
7089 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
7090
7091         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
7092         pid changed.
7093
7094 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
7095
7096         * include/rpc/pmap_prot.h: Mark all functions as hidden.
7097
7098         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
7099         * nscd/nscd_getgr_r.c: Likewise.
7100
7101         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
7102
7103         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
7104         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
7105
7106         * stdlib/longlong.h (__clz_tab): Mark as hidden.
7107
7108         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
7109
7110         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
7111
7112         * include/rpc/auth.h: Mark xdr_des_block_internal and
7113         xdr_opaque_auth_internal as hidden.
7114
7115         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
7116         hidden.
7117
7118         * include/rpc/xdr.h: Mark all _internal functions as hidden.
7119
7120         * misc/getusershell.c (okshells): Don't use static initializers,
7121         do it dynamically.
7122
7123         * stdlib/fmtmsg.c (keywords): Change type of len element to
7124         uint32_t to not waste space on 64bit machines.
7125
7126         * locale/setlocale.c: Change _nl_category_names into a string.
7127         Add new _nl_category_name_idxs.  Change all users.
7128         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
7129         Declare _nl_category_name_idxs.
7130         * locale/findlocale.c: Adjust for _nl_category_names change.
7131         * locale/loadlocale.c: Likewise.
7132         * locale/newlocale.c: Likewise.
7133         * intl/dcigettext.c: Likewise.
7134
7135         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
7136         (add_alias2): ...here.  New function.
7137         (__gconv_read_conf): Simplify builtin alias handling.
7138         (builtin_aliases): Convert to string to avoid relocations.
7139         * iconv/gconv_builtin.h: Add comment about correct formatting.
7140
7141 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
7142
7143         * resolv/res_debug.c (loc_ntoa): Make error const.
7144
7145 2006-05-14  Andreas Schwab  <schwab@suse.de>
7146
7147         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
7148
7149 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
7150
7151         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
7152         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
7153         sizeof (cpu_set_t).
7154
7155 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
7156
7157         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
7158
7159         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
7160
7161         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
7162         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
7163
7164         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
7165         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
7166
7167         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
7168         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
7169         xdr_cback_data.
7170
7171         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
7172         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
7173         xdr_ypupdate_args.
7174
7175         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
7176         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
7177
7178         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
7179         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
7180
7181         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
7182         * include/rpcsvc/nis_callback.h: New file.
7183
7184         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
7185         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
7186
7187         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
7188         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
7189
7190         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
7191         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
7192
7193         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
7194         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
7195
7196         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
7197         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
7198         xdr_ypdelete_args.
7199
7200         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
7201         __BEGIN_DECLS and __END_DECLS, the header is not installed.
7202
7203         * nis/nis_error.c: Remove table of strings.  Use position
7204         independent mechanism.
7205         * nis/nis_error.h: New file.
7206
7207 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
7208
7209         * locale/programs/ld-time.c (time_finish): If wide era name or
7210         format aren't provided, set both wname and wformat to L"".
7211
7212 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
7213
7214         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
7215         results if the call was succesful.
7216
7217         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
7218
7219         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
7220         as hidden.
7221
7222 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
7223
7224         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
7225
7226 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
7227
7228         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
7229         caller makes sure this is not the case.
7230         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
7231
7232 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
7233
7234         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
7235         calls.
7236
7237         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
7238         [Coverity CID 229, 230]
7239
7240         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
7241         DGETTEXT calls.
7242         (hol_help): Likewise.  [Coverity CID 226, 227]
7243
7244         * string/argz-replace.c (__argz_replace): Unconditionally call
7245         free on SRC.  [Coverity CID 225]
7246
7247         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
7248         the return value of __nis_default_owner and __nis_default_group,
7249         it has been especially allocated.  [Coverity CID 224]
7250
7251         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
7252         searchgroup and searchowner.  Significantly simplified.
7253         (__nis_default_owner): Remove duplication.  Do not locally copy the
7254         string before duplicating it.
7255         (__nis_default_group): Likewise.
7256
7257         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
7258         we must clear the variable before calling __nisfind_server.
7259
7260         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
7261         nis_getnames.  [Coverity CID 223]
7262
7263         * locale/programs/locfile.c (locfile_read): Use alloca instead of
7264         xmalloc to allocate local repertoire name.  [Coverity CID 222]
7265
7266         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
7267         allocate memory for the input to add_bytes.  [Coverity CID 221]
7268
7269         * posix/wordexp.c (w_addword): Free word if realloc fails and it
7270         was allocated here.  [Coverity CID 219, 220]
7271
7272         * posix/getconf.c (print_all): Free confstr data after printing.
7273         [Coverity CID 218]
7274
7275         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
7276         list allocation fails.  [Coverity CID 215]
7277
7278         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
7279         [Coverity CID 213]
7280
7281         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
7282         string is NULL.  [Coverity CID 212]
7283         * argp/Makefile: Add rules to build and run bug-argp1.
7284         * argp/bug-argp1.c: New file.
7285
7286         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
7287         end of string.
7288         * stdlib/canonicalize.c (__realpath): Likewise.
7289
7290         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
7291         pointer.  [Coverity CID 206]
7292
7293         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
7294         in statically linked code.
7295         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
7296         statically built code, be prepared to have no link map.
7297         [Coverity CID 205]
7298
7299         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
7300         dgettext calls. [Coverity CID 204]
7301
7302         * argp/argp-help.c (struct uparams): Remove valid member.  Change
7303         the one user.
7304         (uparam_names): Reduce size.  Avoid relative relocations.
7305         Moved to read-only segment.
7306         (fill_in_uparams): Update for new layout.
7307
7308         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
7309         assumed to always be != NULL. [Coverity CID 202]
7310
7311         * argp/argp-help.c (hol_entry_help): Remove some dead code
7312         [Coverity CID 200].
7313
7314         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
7315         away a few more unconditional yperr2nss calls.
7316         (_nss_nis_getservbyname_r): Likewise.
7317
7318 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
7319
7320         * sysdeps/generic/ldsodefs.h: Remove support for non-core
7321         architectures.
7322
7323         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
7324         that unused memory passed to sendto is nevertheless initialized.
7325
7326         [BZ #2499]
7327         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
7328         possibly unaligned memory accesses.
7329
7330         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
7331         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
7332         and __putlong respectively.  Correct buffer overflow check for
7333         NS_NOTIFY_OP.
7334
7335         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
7336
7337         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
7338         (send_dg): Rewrite error handling to be more compact and avoid
7339         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
7340
7341         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
7342
7343         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
7344         instead of ns_get16.
7345         (res_queriesmatch): Likewise.  Minor optimization.
7346
7347         [BZ #2499]
7348         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
7349         __libc_res_nsend might reallocate the buffer for the answer.  In
7350         this case we have to reload the HP pointer.
7351
7352 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
7353
7354         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
7355         some branch prediction hints.
7356
7357         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
7358         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
7359         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
7360         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
7361         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
7362         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
7363         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
7364         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
7365
7366 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
7367
7368         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
7369         by a GOT relocation to make Scrt1.o position independent.
7370         * sysdeps/s390/s390-64/elf/start.S: Likewise.
7371
7372         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
7373         six system call parameters.
7374         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
7375
7376 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
7377
7378         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
7379         malloc&bzero.
7380
7381         * sunrpc/svc_udp.c (BZERO): Remove definition.
7382         (CALLOC): Define.
7383         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
7384
7385         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
7386         (des_SPtrans): Use uint32_t type.
7387         (des_skb): Likewise.
7388
7389         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
7390
7391 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
7392
7393         [BZ #2509]
7394         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
7395         on 32-bit arches.
7396
7397 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
7398
7399         * locale/programs/ld-address.c (address_finish): Fix one more
7400         place where the iso639 array might be accessed beyond the limits.
7401
7402 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
7403
7404         * nis/nis_table.c (nis_list): Avoid clearing res twice before
7405         filling it for the first time.
7406
7407         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
7408         Adjust all callers.
7409         Free res object content before returning.
7410
7411         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
7412
7413         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
7414         client->cl_auth.
7415
7416         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
7417         cleanup for initial thread, just the free call on TVP.
7418
7419         * nscd/gai.c (__getline): Define.
7420
7421
7422 See ChangeLog.16 for earlier changes.