.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2008-07-28  Ulrich Drepper  <drepper@redhat.com>
2
3         * resolv/res_send.c (__libc_res_nsend): Take additional parameter.
4         Use it instead of locally defined resplen2 variable.
5         (res_nsend): Adjust for __libc_res_nsend interface change.
6         (send_vc): Initialize *resplen2 if necessary.  Read length of
7         package into an appropriately aligned variable.  Store converted length
8         in new variable and use it appropriately.
9         Add branch prediction help.
10         * resolv/res_query.c (__libc_res_nquery): Take additional parameter
11         and pass it on to __libc_res_nsend.  Adjust all callers.
12         (__libc_res_nsearch): Likewise.
13         (__libc_res_nqeurydomain): Likewise.
14         * resolv/nss_dns/dns-host.c: Adjust for __libc_res_nsearch interface
15         change.
16         (_nss_dns_gethostbyname4): Don't unconditionally allocate tmp array.
17         Define resplen2 variable and pass it to __libc_res_nsearch and then
18         to gaih_getanswer.
19         (getanswer_r): In case of incorrect DNS data don't overread buffer.
20         Add branch prediction.
21         (gaih_getanswer_slice): Likewise.  Check for invalid data types.
22         (gaih_getanswer): Don't decode second slice if first one failed due
23         to a too small buffer.  Don't let not found status of second
24         decoder shadow results of the first.
25         * resolv/gethnamaddr.c (gethostbyname2): Adjust for __libc_res_nsearch
26         and __libc_res_nquery interface changes
27         (gethostbyaddr): Adjust for __libc_res_nquery interface change.
28         * include/resolv.h: Adjust prototypes for __libc_res_nquery,
29         __libc_res_nsearch, and __libc_res_nsend.
30         * resolv/nss_dns/dns-canon.c: Adjust for __libc_res_nquery interface
31         change.
32         * resolv/nss_dns/dns-network.c: Adjust for __libc_res_nquery and
33         __libc_res_nsearch interface changes.
34
35 2008-07-27  Ulrich Drepper  <drepper@redhat.com>
36
37         * libio/iopopen.c (_IO_new_proc_open): Remove unnecessary volatile.
38
39         * posix/wordexp.c (exec_comm): Use pipe2 if possible to create
40         file descriptors with close-on-exec set.
41         (exec_comm_child): Fix the case where the write end of the pipe is
42         STDOUT_FILENO already.  In case it is, clear close-on-exec.
43
44         * sysdeps/unix/sysv/linux/syscalls.list: Add __pipe2 alias.
45         * io/pipe2.c: Likewise.
46         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PIPE2
47         instead of __ASSUME_PACCEPT.
48         * include/unistd.h: Declare __have_pipe2.
49         * libio/iopopen.c: Implement "e" flag.
50         * libio/Makefile (tests): Add tst-popen1.
51         * libio/tst-popen1.c: New file.
52
53         * sysdeps/unix/sysv/linux/bits/socket.h: Define PF_ISDN and AF_ISDN.
54         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
55
56 2008-07-26  Ulrich Drepper  <drepper@redhat.com>
57
58         [BZ #6771]
59         * libio/fileops.c (_IO_new_file_attach): Preserve errno around
60         success call of _IO_SEEKOFF or calls which failed because the
61         descriptor is for a pipe.
62
63         * sunrpc/key_call.c (getkeyserv_handle): Use FD_CLOEXEC instead of
64         magic number.
65
66         * misc/syslog.c (openlog_internal): Use SOCK_CLOEXEC if possible.
67
68         * malloc/mtrace.c (mtrace): Use 'e' flag in fopen call.  Drop
69         F_SETFD use if we know fopen set the flag.
70
71         * login/utmp_file.c (setutent_file): Minor optimization in case
72         O_CLOEXEC is available.
73
74 2008-07-24  Tom "spot" Callaway  <tcallawa@redhat.com>
75
76         * Makeconfig: Define pie-ccflag and PIE-ccflag variables.
77         * elf/Makefile: Use pie-ccflag variable.
78         * nscd/Makefile: Likewise.
79         * sysdeps/sparc/Makefile: Set $(pie-ccflag) to -fPIE.
80
81 2008-07-21  Andreas Krebbel  <krebbel1@de.ibm.com>
82
83         [BZ #6724]
84         * Versions.def: Add GLIBC_2.9 version tag for libutil.
85         * sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of
86         gnu/bits/utmp.h.  Check for __WORDSIZE_COMPAT32 removed.
87         * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of
88         gnu/bits/utmpx.h.  Check for __WORDSIZE_COMPAT32 removed.
89         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files
90         utmp32, utmpx32 and login32.
91         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9
92         versions of struct utmp functions to libc and libutil.
93         * sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file.
94         * sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file.
95         * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file.
96         * sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file.
97         * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file.
98         * sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file.
99         * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file.
100         * sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file.
101         * sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file.
102         * sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file.
103         * sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file.
104         * sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file.
105         * sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file.
106         * sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file.
107         * sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file.
108         * sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file.
109         * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file.
110         * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file.
111         * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file.
112         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file.
113         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file.
114         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file.
115
116 2008-07-26  Ulrich Drepper  <drepper@redhat.com>
117
118         * scripts/gen-as-const.awk: Generate more widely usable code by
119         using 64-bit arithmetic.
120
121         * stdio-common/printf_fp.c (___printf_fp): Give wide outout code
122         the same treatment as narrow output code in last patch.
123
124         * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Namespace cleanup.
125
126         [BZ #6763]
127         * elf/dl-load.c (local_strdup): Remove inline.
128         (_dl_map_object_from_fd): Don't allocate l_symbolic_searchlist.r_list.
129         * elf/dl-object.c (_dl_new_object): Allocate symbolic searchlist as
130         part of the object.
131
132         * sysdeps/unix/sysv/linux/dl-origin.c: Add const to avoid warning.
133
134 2008-07-25  Ulrich Drepper  <drepper@redhat.com>
135
136         * sysdeps/unix/sysv/linux/kernel-features.h: IA-64 and SPARC have
137         the new syscalls, too.
138
139         * sysdeps/i386/i686/memcmp.S: Fix unwind information.
140         Reported by Paul Pluzhnikov <ppluzhnikov@google.com>.
141
142         [BZ #6698]
143         * stdio-common/_i18n_number.h (_i18n_number_rewrite): Take additional
144         parameter for end of buffer.  If temporary copy is too large use
145         malloc.
146         * stdio-common/vfprintf.c: Adjust for _i18n_number_rewrite
147         interface change.
148         * stdio-common/printf_fp.c (__printf_fp): Likewise..  Account for
149         string rewrite when allocating buffer.
150
151         * sysdeps/unix/sysv/linux/kernel-features.h: PPC has the new
152         syscalls, too.
153
154         * nscd/connections.c (nscd_init): Clean up fcntl call.
155
156         * nscd/nscd_helper.c (open_socket): Use SOCK_CLOEXEC and
157         SOCK_NONBLOCK if possible.
158
159         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Use
160         SOCK_CLOEXEC if available.
161
162         * include/rpc/clnt.h: Declare __libc_clntudp_bufcreate and
163         __libc_clntudp_bufcreate_internal.
164         * include/sys/socket.h: Declare __have_sock_cloexec.
165         * socket/Makefile (aux): Add have_sock_cloexec.
166         * socket/have_sock_cloexec.c: New file.
167         * sunrpc/clnt_udp.h (clntudp_bufcreate): Now a wrapper around
168         __libc_clntudp_bufcreate.
169         (__libc_clntudp_bufcreate): Former implementation of clntudp_bufcreate
170         which takes an additional parameter.  Create socket with non-blocking
171         mode and close-on-exec flag set, if wanted.
172         * sunrpc/Versions: Export __libc_clntudp_bufcreate@GLIBC_PRIVATE.
173         * nis/ypclnt.c (yp_bind_client_create): Use __libc_clntpudp_bufcreate
174         instead of clntudp_create.  The socket has already the close-on-exec
175         flag set if SOCK_CLOEXEC is defined.
176
177 2008-07-24  Ulrich Drepper  <drepper@redhat.com>
178
179         * sysdeps/unix/sysv/linux/kernel-features.h: Define
180         __ASSUME_PACCEPT, __ASSUME_IN_NONBLOCK, and __ASSUME_PACCEPT if
181         appropriate.
182         * nscd/connections.c: Avoid fcntl calls to set close-on-exec flag and
183         non-blocking mode by using socket, paccept, and inotify_init1.
184
185         * Versions.def (glibc): Add GLIBC_2.9.
186         * io/Makefile (routines): Add dup3 and pipe2.
187         * io/Versions [glibc] (GLIBC_2.9): Add dup3 and pipe2.
188         * io/dup3.c: New file.
189         * io/pipe2.c: New file.
190         * posix/unistd.h: Declare dup3 and pipe2.
191         * socket/Makefile (routines): Add paccept.
192         * socket/Versions [glibc] (GLIBC_2.9): Add paccept.
193         * socket/paccept.c: New file.
194         * socket/sys/socket.h: Declare paccept.
195         * sysdeps/unix/syscalls.list: Add entry for dup3.
196         * sysdeps/unix/sysv/linux/Versions [glibc] (GLIBC_2.9): Add
197         epoll_create2 and inotify_init1.
198         * sysdeps/unix/sysv/linux/eventfd.c: Use eventfd1 syscall if possible.
199         * sysdeps/unix/sysv/linux/paccept.c: New file.
200         * sysdeps/unix/sysv/linux/signalfd.c: Use signalfd4 syscall if
201         possible.
202         * sysdeps/unix/sysv/linux/socketcall.h: Add SOCKOP_paccept.
203         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create2,
204         inotify_init1, and pipe2 entries.
205         * sysdeps/unix/sysv/linux/alpha/sys/epoll.h: New file.
206         * sysdeps/unix/sysv/linux/alpha/sys/eventfd.h: New file.
207         * sysdeps/unix/sysv/linux/alpha/sys/inotify.h: New file.
208         * sysdeps/unix/sysv/linux/alpha/sys/signalfd.h: New file.
209         * sysdeps/unix/sysv/linux/alpha/sys/timerfd.h: New file.
210         * sysdeps/unix/sysv/linux/bits/socket.h: Define SOCK_CLOEXEC and
211         SOCK_NONBLOCK.
212         * sysdeps/unix/sysv/linux/i386/paccept.S: New file.
213         * sysdeps/unix/sysv/linux/sparc/sys/epoll.h: New file.
214         * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: New file.
215         * sysdeps/unix/sysv/linux/sparc/sys/inotify.h: New file.
216         * sysdeps/unix/sysv/linux/sparc/sys/signalfd.h: New file.
217         * sysdeps/unix/sysv/linux/sparc/sys/timerfd.h: New file.
218         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: New file.
219         * sysdeps/unix/sysv/linux/sys/epoll.h: Define EPOLL_CLOEXEC and
220         EPOLL_NONBLOCK.  Declare epoll_create2.
221         * sysdeps/unix/sysv/linux/sys/eventfd.h: Define EFD_CLOEXEC and
222         EFD_NONBLOCK.
223         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOEXEC and
224         IN_NONBLOCK.  Declare inotify_init1.
225         * sysdeps/unix/sysv/linux/sys/signalfd.h: Define SFD_CLOEXEC and
226         SFD_NONBLOCK.
227         * sysdeps/unix/sysv/linux/sys/timerfd.h: Define TFD_CLOEXEC and
228         TFD_NONBLOCK.
229
230         * elf/elf.h: Define AT_EXECFN.
231         * elf/rtld.c [!__ASSUME_AT_EXECFN] (process_envvars): Don't handle
232         LD_ORIGIN_PATH.
233         * elf/dl-sysdep.c (_dl_sysdep_start): Handle AT_EXECFN.
234         * elf/dl-support.c: Define _dl_execfn.  Don't define _dl_origin_path
235         if __ASSUME_AT_EXECFN is defined.
236         (_dl_aux_init): Handle AT_EXECFN.
237         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_EXECFN
238         for 2.6.27 and up.
239         * sysdeps/generic/ldsodefs.h (rtld_global_ro): Add _dl_execfn.
240         Don't define _dl_origin_path if __ASSUME_AT_EXECFN is defined.
241         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use
242         _dl_execfn if available and avoid compatibility code if
243         __ASSUME_AT_EXECFN is defined.
244
245         * sysdeps/unix/sysv/linux/dl-sysdep.h: Don't declare
246         _dl_discover_osversion only for older kernels.
247
248 2008-07-22  Roland McGrath  <roland@frob.com>
249
250         * hurd/fd-read.c (_hurd_fd_read): Fix last change.
251
252 2008-07-21  Roland McGrath  <roland@frob.com>
253
254         * hurd/fd-read.c (_hurd_fd_read): Return EGRATUITOUS if the server
255         returned too much data out of line.
256
257 2008-07-20  Ulrich Drepper  <drepper@redhat.com>
258
259         * locale/setlocale.c (setname): Remove inline to avoid compiler
260         warning.
261
262         [BZ #6712]
263         * locale/setlocale.c (setlocale): Take the setlocale lock earlier.
264
265 2008-07-15  Ulrich Drepper  <drepper@redhat.com>
266
267         * stdio-common/vfprintf.c (_IO_helper_overflow): In case _IO_sputn
268         doesn't manage to write anything, fail.
269
270         * malloc/hooks.c (__malloc_check_init): Remove printf.
271
272 2008-07-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
273
274         * sysdeps/mach/hurd/bits/fcntl.h: Include <sys/types.h>.
275
276 2008-07-12  Ulrich Drepper  <drepper@redhat.com>
277
278         * nscd/connections.c (main_loop_poll): Fix handling of read errors
279         from inotify.
280         (main_loop_epoll): Likewise.
281
282 2008-07-09  Ulrich Drepper  <drepper@redhat.com>
283
284         * resolv/res_send.c: Remove unnecessary res_pquery prototype.
285
286         * resolv/res_query.c (__libc_res_nquery): Issue debug message only
287         if DEBUG is defined.
288
289         * resolv/res_query.c (__libc_res_nquery): Align buffer for T_AAAA
290         query.  Adjust buffer size computation for padding.
291
292 2008-07-08  Ulrich Drepper  <drepper@redhat.com>
293
294         * stdio-common/Makefile: Add rules to build and run tst-setvbuf1.
295         * stdio-common/tst-setvbuf1.c: New file.
296         * stdio-common/tst-setvbuf1.expect: New file.
297
298         [BZ #6719]
299         * libio/iosetvbuf.c (_IO_setvbuf): Correctly clear buffering flags
300         when selecting fully-buffered stream.
301         Patch by Wang Xin <wxinee@gmail.com>.
302
303 2008-07-06  Samuel Thibault  <samuel.thibault@ens-lyon.org>
304
305         * sysdeps/mach/hurd/open.c: Include <stdio.h>.
306         (__open_2): New function.
307         (__open64_2): New alias to __open_2.
308         * sysdeps/mach/hurd/openat.c: Include <stdio.h>.
309         (__openat_2): New function.
310         (__openat64_2): New alias to __openat_2.
311
312 2008-07-06  Ulrich Drepper  <drepper@redhat.com>
313
314         [BZ #6723]
315         * time/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
316
317 2008-07-01  Samuel Thibault  <samuel.thibault@ens-lyon.org>
318
319         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Define MSG_NOSIGNAL.
320         * hurd/hurd/fd.h (__hurd_sockfail): Add extern inline function.
321         * sysdeps/mach/hurd/recv.c (__recv): Use __hurd_sockfail instead of
322         __hurd_dfail.
323         * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise.
324         * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise.
325         * sysdeps/mach/hurd/send.c (__send): Likewise.
326         * sysdeps/mach/hurd/sendto.c (__sendfrom): Likewise.
327         * sysdeps/mach/hurd/sendmsg.c (__sendmsg): Likewise.
328
329 2008-03-04  Samuel Thibault  <samuel.thibault@ens-lyon.org>
330
331         * sysdeps/mach/hurd/recv.c (__recv): Initialize NPORTS.
332         * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise.
333         * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise.
334         * hurd/fd-read.c (_hurd_fd_read): Initialize NREAD.
335         * hurd/get-host.c (_hurd_get_host_config): Likewise.
336         * sysdeps/mach/hurd/dl-sysdep.c (__libc_read): Likewise.
337
338 2008-06-27  Ulrich Drepper  <drepper@redhat.com>
339
340         [BZ #6657]
341         * time/strptime_l.c: Don't clear s.era_cnt after successful match
342         of %EY.
343         Patch by Petr Baudis.
344
345 2008-06-26  Ulrich Drepper  <drepper@redhat.com>
346
347         * resolv/res_debug.c (__p_type_syms): Add ns_t_dname entry.
348         Patch by Peter Jones <pjones@redhat.com>.
349
350 2008-06-25  Ulrich Drepper  <drepper@redhat.com>
351
352         [BZ #6654]
353         * stdlib/canonicalize.c (__realpath): readlink can write too much
354         into the buffer on platforms without PATH_MAX.
355
356 2008-06-17  Carlos O'Donell  <carlos@codesourcery.com>
357
358         [BZ #6653]
359         * posix/tst-regex.c (main): Rename to...
360         (do_test): ... this. Remove cmdline option processing.
361         (TIMEOUT): Define.
362         (TEST_FUNCTION): Define.
363         (CMDLINE_OPTIONS): Define.
364
365 2008-06-25  Ulrich Drepper  <drepper@redhat.com>
366
367         [BZ #5210]
368         * configure.in: Add -Werror to -fstack-protector test to catch
369         unsupported architectures.
370         Patch by Gilles Esponasse <g.esp@free.fr>.
371
372 2008-06-17  Joseph Myers  <joseph@codesourcery.com>
373
374         * stdlib/tst-setcontext.c: Set back_in_main before exit if
375         getcontext returns ENOSYS.
376
377 2008-06-18  Ulrich Drepper  <drepper@redhat.com>
378
379         * nscd/connections.c (main_loop_poll): Fix test for read error.
380         (main_loop_epoll): Likewise.
381
382 2008-06-13  Ulrich Drepper  <drepper@redhat.com>
383
384         * sysdeps/posix/getaddrinfo.c: Move _res_hconf_init call to a
385         better place so it is not called when nscd is used.
386
387         * nscd/connections.c: Also recognize and handle changes to the
388         resolver configuration file.
389
390 2008-06-12  Ulrich Drepper  <drepper@redhat.com>
391
392         * time/strftime.c: Pass reference to tzset_called around to handle
393         recursive calls.
394
395         [BZ #6612]
396         * time/strftime.c (__strftime_internal): Call tzset() only
397         when printing timezone-dependent values.
398         Based on a patch by Petr Baudis <pasky@suse.cz>.
399
400         * resolv/nss_dns/dns-host.c (gaih_getanswer): Don't
401         unconditionally use second gaih_getanswer_slice result.
402
403         * sysdeps/posix/getaddrinfo.c (gai_inet): Remove unnecessary test.
404         (getaddrinfo): RES must always be non-NULL.
405
406 2008-06-12  Jakub Jelinek  <jakub@redhat.com>
407
408         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Avoid using
409         cr[34] registers.
410         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
411         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
412         Likewise.
413         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Avoid using cr3
414         register.
415
416 2008-06-12  Ulrich Drepper  <drepper@redhat.com>
417
418         * nscd/nscd.h (struct database_dyn): Add inotify_descr and clear_cache
419         fields.
420         * nscd/connections.c (inotify_fd): New variable.
421         (nscd_init): Try to open an inotify descriptor.
422         If successful, watch files for databases using inotify instead of
423         having prune threads stat the files.
424         (nscd_run_prune): Recognize clear_cache flag being set and call
425         prune_cache appropriately.
426         (main_loop_poll): Add inotify descriptor to wait set and handle the
427         reported changes.
428         (main_loop_epoll): Likewise.
429         * nscd/cache.c (prune_cache): Don't stat files for databases if
430         inotify is used.
431         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
432         (CFLAGS-connections.c): Add -DHAVE_INOTIFY.
433
434         * nscd/grpcache.c (cache_addgr): Correctly compute size of
435         fixed-size portion of the record.
436         * nscd/servicescache.c (cache_addserv): Likewise.
437         * nscd/pwdcache.c (cache_addpw): Likewise.
438         * nscd/initgrcache.c (addinitgroupsX): Likewise.
439
440 2008-06-11  Ulrich Drepper  <drepper@redhat.com>
441
442         * nscd/mem.c (gc): Initialize obstack earlier so that if we jump
443         out we don't use uninitialized memory.
444
445         * nscd/hstcache.c (cache_addhst): Send correct number of bytes to
446         the client.
447
448 2008-06-10  Ulrich Drepper  <drepper@redhat.com>
449
450         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Also log and
451         ignore T_DNAME messages.
452         * resolv/arpa/nameser_compat.h (T_DNAME): Define.
453
454 2008-06-05  Jakub Jelinek  <jakub@redhat.com>
455
456         * misc/regexp.h (compile): Use __REPB_PREFIX macro.
457         Avoid segfault if first GETC returns eof/'\0'/'\n'.
458
459 2008-06-03  Jakub Jelinek  <jakub@redhat.com>
460
461         * nscd/nscd_getserv_r.c (__nscd_getservbyport_r): Pass cp
462         instead of portstr to nscd_getserv_r.  Patch by
463         Roman Kagan <rkagan@mail.ru>.
464
465 2008-05-26  Jim Meyering  <meyering@redhat.com>
466
467         Remove more useless "if" tests before "free".
468         * include/inline-hashtab.h (htab_delete): Likewise.
469         * libio/freopen.c (freopen): Likewise.
470         * libio/freopen64.c (freopen64): Likewise.
471         * locale/programs/ld-collate.c (collate_read): Likewise.
472         * misc/fstab.c (libc_freeres_fn): Likewise.
473         * posix/glob.c (globfree): Likewise.
474
475 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
476
477         * string/Makefile (strop-tests): Add memmem.
478         * string/test-memmem.c: New file.
479         * string/test-string.h (BUF1PAGES): Define to 1 if undefined.
480         (test_init): Size buf1 according to BUF1PAGES.
481
482 2008-05-24  Jakub Jelinek  <jakub@redhat.com>
483
484         * libio/stdio.h (vscanf): Fix -std=c99 redirect.
485         * stdio-common/Makefile (tests): Add scanf16 and scanf17.
486         (CFLAGS-scanf17.c): New.
487         * stdio-common/scanf14.c (main): Add fscanf and scanf tests.
488         * stdio-common/scanf15.c (main): Likewise.
489         * stdio-common/scanf16.c: New file.
490         * stdio-common/scanf17.c: New file.
491
492 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
493
494         * resolv/res_send.c (send_dg): If we already have one of two
495         answers and the server reports SERVFAIL, NOTIMP, or REFUSED, then
496         use the one answer insted of failing.
497
498 2008-02-20  Ryan S. Arnold  <rsa@us.ibm.com>
499
500         * math/libm-test.inc (exp_test): Exclude expl(1000.0L) from
501         being executed on PowerPC as the expected result exceeds IBM
502         long double 128 __LDBL_MAX__.
503
504 2008-05-21  Roland McGrath  <roland@redhat.com>
505
506         * shlib-versions (sparc.*-.*-.*, sparc64.*-.*-.*): Add ABI lines.
507
508         * Makefile (check-data): Use $(abi-name) before other guesses.
509         Look in $(add-ons) dirs before scripts/data/.
510         * elf/Makefile (check-data): Likewise.
511
512         * scripts/soversions.awk: Grok ABI line.
513         * Makeconfig ($(common-objpfx)soversions.mk): Likewise.
514         Emit definition for abi-name variable.
515
516 2008-05-21  Ulrich Drepper  <drepper@redhat.com>
517
518         * string/endian.h: Define new fixed-size hto* and *toh macros only
519         if [__USE_BSD].
520
521         * iconvdata/Depend: Add localedata.
522
523 2008-05-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
524
525         * bits/termios.h (ONLCR): Define under [__USE_XOPEN] too.
526
527 2008-05-08  David S. Miller  <davem@davemloft.net>
528
529         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Use
530         HIDDEN_JUMPTARGET.
531         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
532         (__SYSCALL_CLOBBERS): Remove %g* registers.
533         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
534         (__SYSCALL_CLOBBERS): Likewise.
535         * scripts/data/localplt-sparc-linux-gnu.data: New file.
536         * scripts/data/localplt-sparc64-linux-gnu.data: New file.
537
538 2008-05-21  Jakub Jelinek  <jakub@redhat.com>
539
540         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
541         (CALL_ERRNO_LOCATION): Define.
542         (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
543         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
544         (CALL_ERRNO_LOCATION): Define.
545         (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
546         * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S (__brk): Use
547         HIDDEN_JUMPTARGET for __errno_location call in libc.so.
548
549 2008-05-20  Ulrich Drepper  <drepper@redhat.com>
550
551         * include/inline-hashtab.h (higher_prime_number): Fix type of mid
552         variable.
553
554 2008-05-20  Jakub Jelinek  <jakub@redhat.com>
555
556         * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
557         (FIRST_FRAME_POINTER): Define.
558
559 2008-05-09  David S. Miller  <davem@davemloft.net>
560
561         * sysdeps/sparc/sparc64/backtrace.c: New file.
562
563 2008-05-14  David S. Miller  <davem@davemloft.net>
564
565         * sysdeps/sparc/machine-gmon.h: New file.
566         * sysdeps/sparc/sparc-mcount.S: Likewise.
567         * sysdeps/sparc/Makefile: Add sparc-mcount target to
568         sysdep_routines in gmon directory.
569
570 2008-05-19  Jakub Jelinek  <jakub@redhat.com>
571
572         * elf/soinit.c (__EH_FRAME_BEGIN__): Remove.
573
574 2008-05-19  Ulrich Drepper  <drepper@redhat.com>
575
576         * resolv/res_query.c (__libc_res_nquery): In case one of two
577         answer was too short don't try to read that answer's header.
578
579         * resolv/res_send.c (send_dg): In case of timeout and there are
580         two queries and one has been answered, return value indicating
581         success.
582
583 2008-05-18  Ulrich Drepper  <drepper@redhat.com>
584
585         * nscd/cache.c (cache_add): Take additional parameter specifying
586         whether this is in response of a cache refill.  Check alignment
587         of package data.  Revamp waking of pruning thread.
588         (prune_cache): Small optimization.
589         * nscd/nscd.h: Adjust cache_add prototypes.
590         * nscd/aicache.c: Adjust cache_add calls.
591         * nscd/grpcache.c: Likewise.
592         * nscd/hstcache.c: Likewise.
593         * nscd/initgrcache.c: Likewise.
594         * nscd/pwdcache.c: Likewise.
595         * nscd/servicescache.c: Likewise.
596         * nscd/connections.c (restart): Really disable cache use before
597         exec attempt.  If it fails, reenable cache.
598         (nscd_run_prune): Initialize wakeup_time.  After wakeup, set wakeup
599         time to max to be able to notice concurrent cache additions.  Unlock
600         prune_lock while performing gc.  Afterwards compute wakeup time with
601         current wakeup_time value in mind.
602
603 2008-05-17  Ulrich Drepper  <drepper@redhat.com>
604
605         * nscd/mem.c (gc): Avoid stack overflow when allocating move list.
606
607         * nscd/mem.c (gc): Correctly determine highest used array element
608         in mark.
609
610         * nscd/mem.c (markrange): Add assert to check entries are all
611         aligned.  Small cleanup in bitmap use.
612
613         * nscd/nscd.h (mem_in_flight): Replace blockaddr field with
614         blockoff of type nscd_ssize_t.
615         * nscd/mem.c (gc): Simplify markrange call for on-flight blocks.
616         (mempoll_alloc): Record block offset and not address.
617
618         * nscd/mem.c (gc): Fix test for stack overuse.
619
620         * nscd/aicache.c (addhstaiX): Fix a few small problems, cleanups,
621         more asserts.
622
623         * sysdeps/posix/getaddrinfo.c (gaih_inet): If nscd reports no
624         entry is available, believe it.
625
626         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): If there are
627         no answers return NSS_STATUS_NOTFOUND.
628         (gaih_getanswer): Don't call gaih_getanswer_slice if the answer
629         buffer does not have any content.
630
631 2008-05-16  Ulrich Drepper  <drepper@redhat.com>
632
633         * string/strcasestr.c (CMP_FUNC): Use __strncasecmp, not strncasecmp.
634
635         * sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r
636         lookup, don't assign canon unconditionally.
637
638 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
639
640         * string/Makefile (distribute): Add str-two-way.h.
641
642 2008-03-29  Eric Blake  <ebb9@byu.net>
643
644         Rewrite string searches to O(n) rather than O(n^2).
645         * string/str-two-way.h: New file.  For linear fixed-allocation
646         string searching.
647         * string/memmem.c: New implementation.
648         * string/strstr.c: New implementation.
649         * string/strcasestr.c: New implementation.
650
651 2008-04-11  Paolo Bonzini  <bonzini@gnu.org>
652
653         * posix/regcomp.c (optimize_utf8): Add a note on why we test
654         opr.ctx_type.
655         (calc_first): Initialize constraint field.
656         (duplicate_node_closure): Use it instead of special casing ANCHORS.
657         Use search_duplicated_node to avoid loops.  Fix grammar.
658         (duplicate_node): Merge constraint field for all node types.
659         (calc_eclosure_iter): Look at constraint field for all node types.
660         * posix/regex_internal.c (create_cd_newstate): Don't look at
661         create_cd_newstate.
662
663 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
664
665         [BZ #6428]
666         * configure.in: Don't use $CFLAGS when assembling, use $ASFLAGS.
667
668         [BZ #6442]
669         * string/endian.h: Add macros for fixed-size endian conversion.
670         * bits/byteswap.h: Allow inclusion from <endian.h>.
671         * sysdeps/i386/bits/byteswap.h: Likewise.
672         * sysdeps/ia64/bits/byteswap.h: Likewise.
673         * sysdeps/s390/bits/byteswap.h: Likewise.
674         * sysdeps/x86_64/bits/byteswap.h: Likewise.
675         * string/Makefile (tests): Add tst-endian.
676         * string/tst-endian.c: New file.
677
678         * iconvdata/run-iconv-test.sh: Use = instead of == in test.
679         Patch by Reuben Thomas.
680
681 2008-05-14  Joseph Myers  <joseph@codesourcery.com>
682
683         * iconvdata/Makefile (bug-iconv6-ENV, tst-iconv7-ENV): Define.
684
685 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
686
687         * iconvdata/bug-iconv6.c (do_test): Use de_DE.UTF-8 locale.
688
689         [BZ #6461]
690         * iconv/gconv_simple.c (BODY for __gconv_transform_ascii_internal):
691         Add missing braces.
692         (BODY for __gconv_transform_internal_ascii): Likewise.
693
694         [BZ #6472]
695         * sysdeps/posix/getaddrinfo.c (get_scope): Loopback addresses have
696         to be treated like link-local addresses.
697         (match_prefix): Don't treat IPv4 loopback address special when
698         converting to v4 mapped addressed.
699
700         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Call _res_hconf_init
701         if necessary.
702         * posix/tst-rfc3484.c: Add dummy definition of _res_hconf_init.
703         * posix/tst-rfc3484-2.c: Likewise.
704         * posix/tst-rfc3484-3.c: Likewise.
705
706         * sysdeps/posix/getaddrinfo.c: Implement handling of DCCP, UDPlite,
707         and SCTP.
708
709         * nss/getent.c (ahosts_keys_int): Handle all known socket types.
710
711         * inet/netinet/in.h (IPPIPPROTO_DCCP, IPPROTO_UDPLITE): Define.
712
713         * sysdeps/unix/sysv/linux/bits/socket.h (SOCK_DCCP): Define.
714
715 2008-05-13  Ulrich Drepper  <drepper@redhat.com>
716
717         * po/lt.po: New file.  From Lituanian translation team.
718
719 2008-01-30  Alexandre Oliva  <aoliva@redhat.com>
720
721         Introduce TLS descriptors for i386 and x86_64.
722         * include/inline-hashtab.h: New file, copied from 2005's
723         libiberty, with fix for memory leak imported afterwards by
724         Glauber de Oliveira Costa.
725         * elf/tlsdeschtab.h: New file.
726         * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from...
727         (_dl_allocate_static_tls): ... here.  Rearrange failure path.
728         (CHECK_STATIC_TLS): Move to...
729         * elf/dynamic-link.h: ... this file.
730         (TRY_STATIC_TLS): New macro.
731         * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override.
732         * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL,
733         R_386_TLS_DESC): Define.
734         (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from
735         binutils.
736         (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL,
737         R_X86_64_TLSDESC): Define.
738         (R_386_NUM, R_X86_64_NUM): Adjust.
739         * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines,
740         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
741         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
742         * sysdeps/i386/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
743         release tlsdesc_table.
744         * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h.
745         (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class.
746         (elf_machine_rel): Handle R_386_TLS_DESC.
747         (elf_machine_rela): Likewise.
748         (elf_machine_lazy_rel): Likewise.
749         (elf_machine_lazy_rela): Likewise.
750         * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it.
751         * sysdeps/i386/dl-tlsdesc.S: New file.
752         * sysdeps/i386/dl-tlsdesc.h: New file.
753         * sysdeps/i386/tlsdesc.c: New file.
754         * sysdeps/i386/tlsdesc.sym: New file.
755         * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add
756         tlsdesc_table.
757         * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines,
758         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
759         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
760         * sysdeps/x86_64/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
761         release tlsdesc_table.
762         * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h.
763         (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry.
764         (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class.
765         (elf_machine_rel): Handle R_X86_64_TLSDESC.
766         (elf_machine_rela): Likewise.
767         (elf_machine_lazy_rel): Likewise.
768         * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it.
769         (__tls_get_addr): Do not declare for non-shared compiles.
770         * sysdeps/x86_64/dl-tlsdesc.S: New file.
771         * sysdeps/x86_64/dl-tlsdesc.h: New file.
772         * sysdeps/x86_64/tlsdesc.c: New file.
773         * sysdeps/x86_64/tlsdesc.sym: New file.
774         * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add
775         tlsdesc_table for both 32- and 64-bit structs.
776
777 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
778
779         * elf/dl-tls.c (__tls_get_addr): Optimize by moving slow path in
780         its own function.  This reduces the frame setup costs and more.
781
782 2008-02-11  Joseph Myers  <joseph@codesourcery.com>
783
784         [BZ #3406]
785         * sysdeps/ieee754/flt-32/w_expf.c (o_threshold): Correct value.
786         * math/libm-test.inc (exp_test): Test 88.72269439697265625.
787
788 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
789
790         * io/openat.c (__openat_2): Also pass fd to __openat.
791         * io/openat64.c (__openat64_2): Also pass fd to __openat64.
792         Patch by Kristian Van Der Vliet <vanders@liqwyd.com>.
793
794         * string/tester.c (test_memcmp): Add a few more tests.
795         Patch by Mats Erik Andersson <ynglingatal@comhem.se>.
796
797 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
798
799         * nscd/cache.c (cache_add): Before returning with failure and this
800         is the first use of the record, mark it as unusable.
801         * nscd/aicache.c: Don't touch the dataset after cache_add returns
802         reporting a failure.
803         * nscd/grpcache.c: Likewise
804         * nscd/hstcache.c: Likewise.
805         * nscd/initgrcache.c: Likewise.
806         * nscd/pwdcache.c: Likewise.
807         * nscd/servicescache.c: Likewise.
808
809 2008-05-10  Roland McGrath  <roland@redhat.com>
810
811         [BZ #6505]
812         * sysdeps/unix/sysv/linux/sys/user.h: Replace with #error stub.
813
814 2008-05-08  David S. Miller  <davem@davemloft.net>
815
816         * misc/truncate64.c (truncate64): Use __truncate not truncate.
817
818         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee751_j0l): Use __finitel.
819         (__ieee754_y0l): Likewise.
820         * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise.
821         (__ieee754_y1l): Likewise.
822         * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use __ldexpl.
823         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Kill bogus prototypes for
824         frexpl and ldexpl.  math_private.h provides them and the latter
825         is not even used.
826         (__log1pl): Use __frexpl.
827
828 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
829
830         * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend
831         prototypes.
832         * include/arpa/nameser_compat.h: Define T_UNSPEC.
833         * nis/Versions (libnss_nis): Export _nss_nis_gethostbyname4_r.
834         (libnss_nisplus): Export _nss_nisplus_gethostbyname4_r.
835         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Change to also handle
836         af==AF_UNSPEC.
837         (_nss_nis_gethostbyname4_r): New function.
838         * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent):
839         Change to also handle af==AF_UNSPEC.
840         (get_tablename): New function.  Use it to avoid duplication.
841         (_nss_nisplus_gethostbyname4_r): New function.
842         * nscd/aicache.c (addhstaiX): Use gethostbyname4_r function is
843         available.
844         * nss/Versions (libnss_files): Export _nss_files_gethostbyname4_r.
845         * nss/nss.h: Define struct gaih_addrtuple.
846         * nss/nss_files/files-hosts.c (LINE_PARSER): Change to also handle
847         af==AF_UNSPEC.
848         (_nss_files_gethostbyname4_r): New function.
849         * resolv/Versions (libnss_dns): Export _nss_dns_gethostbyname4_r.
850         * resolv/gethnmaddr.c: Adjust __libc_res_nsearch and __libc_res_nquery
851         calls.
852         * resolv/res_query.c (__libc_res_nquery): Take two additional
853         parameters for second answer buffer.  Handle type=T_UNSPEC to mean
854         look up IPv4 and IPv6.
855         Change all callers.
856         * resolv/res_send.c (__libc_res_nsend): Take five aditional parameters
857         for an additional query and answer buffer.  Pass to send_vc and
858         send_dg.
859         (send_vc): Send possibly two requests and receive two answers.
860         (send_dg): Likewise.
861         * resolv/nss_dns/dns-host.c: Adjust calls to __libc_res_nsearch and
862         __libc_res_nquery.
863         (_nss_dns_gethostbyname4_r): New function.
864         (gaih_getanswer_slice): Likewise.
865         (gaih_getanswer): Likewise.
866         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Adjust
867         __libc_res_nquery call.
868         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
869         (_nss_dns_getnetbyname_r): Adjust __libc_res_nsearch call.
870         * sysdeps/posix/getaddrinfo.c: Use gethostbyname4_r function is
871         available.
872
873 2008-05-05  David S. Miller  <davem@davemloft.net>
874
875         * sysdeps/sparc/sparc32/Makefile: Use -mcpu=v7 for initfini.s build.
876         * sysdeps/sparc/sparc64/Makefile: Use -mcpu=v9 for initfini.s build.
877
878 2007-09-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
879
880         Fix termios bit macros.
881         Move *DLY definitions where they belong, in termios.h.
882         Add *[0-3] definitions.
883         Fixes confusion between VT and FF.
884         * sysdeps/mach/hurd/bits/ioctls.h (NL0, NL1, TAB0, TAB1, TAB2, CR0,
885         CR1, CR2, CR3, FF0, FF1, BS0, BS1): Undefine these at start if they
886         are already defined to avoid collision with termios.h.
887         (NLDLY, TABDLY, TAB3, CRDLY, VTDLY, BSDLY): Remove macros.
888         * bits/termios.h [__USE_MISC || __USE_XOPEN] (NL0, NL1, TAB0,
889         TAB1, TAB2, CR0, CR1, CR2, CR3, FF0, FF1, BS0, BS1): Likewise.
890         [__USE_BSD || __USE_XOPEN] (OCRNL, ONOCR, ONLRET): New macros.
891         [__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, TABDLY, TAB0, TAB1, TAB2,
892         TAB3, CRDLY, CR0, CR1, CR2, CR3, FFDLY, FF0, FF1, BSDLY, BS0, BS1,
893         VTDLY, VT0, VT1): New macros.
894         [__USE_GNU] (OLCUC): Change value of macro.
895         [__USE_XOPEN] (OFILL): New macro.
896         [__USE_BSD] (CRTSCTS): Change value.
897         (CRTS_IFLOW, CCTS_OFLOW): Change into compatibility macros.
898         [__USE_BSD] (CDTRCTS, CHWFLOW): New macros.
899         (B7200, B14400, B28800, B76800): New macros.
900
901 2008-05-01  David S. Miller  <davem@davemloft.net>
902
903         * sysdeps/unix/sysv/linux/sparc/sparc32/ucontext_i.sym: New file.
904         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile [$(subdir) = stdlib]:
905         (gen-as-const-headers): Add it.
906         * sysdeps/unix/sysv/linux/sparc/sparc32/getcontext.S: New file.
907         * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c: Likewise.
908         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Likewise.
909         * sysdeps/unix/sysv/linux/sparc/sparc32/swapcontext.S: Likewise.
910
911         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for
912         six system call parameters.
913         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise.
914
915 2008-04-30  Ulrich Drepper  <drepper@redhat.com>
916
917         * sysdeps/unix/sysv/linux/bits/resource.h: Define RUSAGE_THREAD and
918         RUSAGE_LWP.
919         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
920         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
921
922 2008-04-30  Jakub Jelinek  <jakub@redhat.com>
923
924         * stdlib/tst-setcontext.c: Include unistd.h.
925
926 2008-04-25  David S. Miller  <davem@davemloft.net>
927
928         * sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl):
929         Pass "union semun" properly in to sys_ipc, it must be passed
930         by value, not by reference.
931
932 2008-04-22  Jakub Jelinek  <jakub@redhat.com>
933
934         * nscd/Makefile (nscd-cflags): Set back to -fpie.
935         * nscd/nscd.h (mem_in_flight): Add attribute_tls_model_ie.
936         * nscd/connections.c (mem_in_flight): Likewise.
937
938         * nscd/nscd.h (dbs): Make hidden.
939
940         * sysdeps/unix/sysv/linux/times.c (__times): Fix check for EFAULT.
941         Avoid returning -1, return 0 instead.
942
943 2008-04-19  Ulrich Drepper  <drepper@redhat.com>
944
945         * resolv/res_mkquery.c (__res_nopt): Use NS_PUT16 instead of ns_put16.
946
947 2008-04-15  Ulrich Drepper  <drepper@redhat.com>
948
949         [BZ #5209]
950         * sysdeps/unix/sysv/linux/times.c: New file.
951
952         [BZ #5381]
953         * nscd/nscd.h: Define enum in_flight, mem_in_flight, and
954         mem_in_flight_list variables.  Add new parameter to mempool_alloc
955         prototype.
956         * nscd/mem.c (mempool_alloc): Take additional parameter.  Initialize
957         appropriate mem_in_flight element.
958         (gc): Take allocations which have not yet been committed to the
959         database into account.
960         * nscd/cache.c (cache_add): Add new parameter to mempool_alloc call.
961         Reset mem_in_flight before returning.
962         * nscd/connections.c (nscd_run_worker): Initialize mem_in_flight and
963         cue it up in mem_in_flight_list.
964         * nscd/aicache.c: Adjust mempool_alloc call.
965         * nscd/grpcache.c: Likewise.
966         * nscd/hstcache.c: Likewise.
967         * nscd/initgrcache.c: Likewise.
968         * nscd/pwdcache.c: Likewise.
969         * nscd/servicescache.c: Likewise.
970         * nscd/Makefile (nscd-flags): Until ld is fixed, use -fpic instead
971         of -fpie.
972
973         * nscd/connections.c (handle_request): Provide better error message
974         in case SELinux forbids the service.
975
976         * version.h (VERSION): Bump to 2.8.90.
977
978 2008-04-17  Jakub Jelinek  <jakub@redhat.com>
979
980         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include fcntl.h.
981
982 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
983
984         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h (__signbitl):
985         Also use for 32-bit.
986         * sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c (__nearbyintl): Use
987         __nextafter instead of nextafter to avoid local PLT.
988         * sysdeps/powerpc/fpu/e_sqrt.c: Avoid call to fetestexcept.
989         * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
990
991         * scripts/data/localplt-powerpc64-linux-gnu.data: New file.
992
993         * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for
994         __fe_nomask_env.
995         * sysdeps/powerpc/fpu/fe_nomask.c: Add libm_hidden_def.  Include
996         <fenv_libc.h> instead of <fenv.h>.
997         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise.
998         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise.
999
1000         * sysdeps/powerpc/bits/fenv.h: Make safe for C++.
1001
1002         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: New file.
1003         * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Rename
1004         function from fegetexcept and make old name weak alias.
1005         * include/fenv.h: Declare __fegetexcept.
1006         * sysdeps/powerpc/fpu/fedisblxcpt.c: Use __fegetexcept instead of
1007         fegetexcept.
1008         * sysdeps/powerpc/fpu/feenablxcpt.c: Likewise.
1009         * sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Avoid call
1010         to fetestexcept.
1011         * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Use __frexpl
1012         instead of frexpl to avoid local PLT.
1013         * math/s_significandl.c (__significandl): Use __ilogbl instead of
1014         ilogbl to avoid local PLT.
1015         * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __ldexpl
1016         instead of ldexpl to avoid local PLT.
1017         * sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use
1018         __roundl not roundl to avoid local PLT.
1019         * sysdeps/ieee754/ldbl-128/e_j0l.c: Use function names which avoid
1020         local PLTs.  Use __sincosl instead of separate sinl and cosl
1021         calls.
1022         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
1023
1024         * sysdeps/unix/sysv/linux/configure.in: Bump minimal kernel
1025         version for ppc64 to 2.4.21 since without it makecontext will fail.
1026
1027         * elf/tls-macros.h [__powerpc64__] (__TLS_GET_ADDR): Define according
1028         to the ABI in use.
1029         [__powerpc64__] (TLS_LD): Use __TLS_GET_ADDR instead of
1030         .__tls_get_addr.
1031         [__powerpc64__] (TLS_GD): Likewise.
1032
1033 2007-11-20  Ryan S. Arnold  <rsa@us.ibm.com>
1034
1035         [BZ #4997]
1036         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Fixed erroneous
1037         result when x is +/-nextafter(+/-0.5,-/+1) i.e. all 1's in the
1038         mantissa.
1039         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
1040         Likewise.  Also account for when x is an odd number between 2^52
1041         and 2^53-1.
1042         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Likewise.
1043         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
1044         * math/libm-test.inc (lround_test, llround_test): Added test cases to
1045         detect aforementioned erroneous conditions.
1046
1047 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
1048
1049         * configure.in: Check for -fno-section-anchors in addition to
1050         -fno-toplevel-reorder.
1051
1052 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
1053
1054         * include/features.h (__GLIBC_MINOR__): Bump to 8.
1055
1056         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: Remove duplicate comment.
1057         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: Likewise.
1058         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: Likewise.
1059         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: Likewise.
1060         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: Likewise.
1061         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: Likewise.
1062
1063 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
1064
1065         [BZ #5443]
1066         * time/era.c: Transform __libc_setlocale_lock into rwlock.
1067         * time/alt_digit.c: Likewise.
1068         * wcsmbs/wcsmbsload.c: Likewise.
1069
1070 2008-04-10  Ulrich Drepper  <drepper@redhat.com>
1071
1072         * version.h (VERSION): Bump to 2.8.
1073
1074         * timzeone/asia: Update from tzdata2008b.
1075         * timezone/backward: Likewise.
1076         * timezone/europe: Likewise.
1077         * timezone/northamerica: Likewise.
1078         * timezone/southamerica: Likewise.
1079         * timezone/iso3166.tab: Likewise.
1080         * timezone/leapseconds: Likewise.
1081         * timezone/zone.tab: Likewise.
1082         * timezone/private.h: Update from tzcode2008a.
1083         * timezone/zdump.c: Likewise.
1084         * timezone/zic.c: Likewise.
1085
1086 2008-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
1087
1088         [BZ #5741]
1089         * sysdeps/powerpc/powerpc64/dl-machine.h (PPC_DCBT, PPC_DCBF):
1090         Define additonal Data Cache Block instruction macros.
1091         (elf_machine_fixup_plt): Add dcbt for opd and plt entries.
1092         Replace dcbst with dcbf and sync with sync/isync.
1093
1094 2008-02-21  Alan Modra  <amodra@bigpond.net.au>
1095
1096         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_type_class):
1097         Always set ELF_RTYPE_CLASS_PLT.
1098         (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): Delete.
1099
1100 2008-04-03  Steven Munroe  <sjmunroe@us.ibm.com>
1101
1102         * sysdeps/powerpc/powerpc32/power4/hp-timing.c: New file.
1103         * sysdeps/powerpc/powerpc32/power4/hp-timing.h: New file.
1104         * sysdeps/powerpc/powerpc64/hp-timing.h [_ARCH_PWR4] (HP_TIMING_NOW):
1105         For ISA 2.01 and later replace mftb with mfspr 268.
1106
1107 2008-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
1108
1109         [BZ #5768]
1110         * sysdeps/powerpc/fpu/Makefile (libm-tests): Add test-powerpc-snan.
1111         * sysdeps/powerpc/fpu/test-powerpc-snan.c: New file.
1112
1113 2008-02-18  Steven Munroe  <sjmunroe@us.ibm.com>
1114
1115         [BZ #5768]
1116         * sysdeps/powerpc/powerpc32/fpu/s_isnan.S: New file.
1117         * sysdeps/powerpc/powerpc32/fpu/s_isnan.c: Removed.
1118         * sysdeps/powerpc/powerpc64/fpu/s_isnan.S: New file.
1119         * sysdeps/powerpc/powerpc64/fpu/s_isnan.c: Removed.
1120
1121 2008-04-10  Jakub Jelinek  <jakub@redhat.com>
1122
1123         * stdlib/tst-makecontext.c (othervar): New variable.
1124         (cf): Test sign extending the argument to long.
1125
1126 2008-03-03  Steven Munroe  <sjmunroe@us.ibm.com>
1127
1128         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: New file.
1129         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: New file.
1130         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: New file.
1131         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: New file.
1132         * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: New file.
1133         * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: New file.
1134         * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: New file.
1135
1136 2008-02-22  Alan Modra  <amodra@bigpond.net.au>
1137
1138         * elf/Makefile (tests): Substitute tests-vis-yes here.
1139         (tests-vis-yes): Delete.
1140         (modules-name, modules-vis-yes): Similarly.
1141
1142 2008-02-12  Pete Eberlein  <eberlein@us.ibm.com>
1143
1144         [BZ #4407]
1145         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r):
1146         Preserve sign in signgamp when x is zero.
1147
1148 2007-10-26  Steven Munroe  <sjmunroe@us.ibm.com>
1149
1150         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: New File.
1151         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: Removed.
1152         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: New File.
1153         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c: Removed.
1154         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: New File.
1155         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: New File.
1156
1157 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
1158
1159         [BZ #4314]
1160         * sysdeps/i386/i686/memcpy.S: Optimize copying of equally aligned
1161         buffers.
1162
1163         [BZ #5209]
1164         * sysdeps/unix/sysv/syscalls.list: The times syscall doesn't have
1165         a reserved error value.
1166
1167         * stdlib/tst-makecontext.c: Change parameter to cf to negative
1168         value to check for correct sign extension.
1169
1170         [BZ #5436]
1171         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
1172         Copy 64-bit parameter values even though this is not required in
1173         the standard.
1174
1175         * sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
1176         PC save.
1177
1178 2008-02-14  Daniel Jacobowitz  <dan@codesourcery.com>
1179
1180         * sysdeps/unix/sysv/linux/i386/vfork.S (__vfork): Record return
1181         PC save.
1182
1183 2008-04-09  Jakub Jelinek  <jakub@redhat.com>
1184
1185         * nss_files/files-XXX.c (_nss_files_getXXent_r): Restore saved errno.
1186
1187 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
1188
1189         [BZ #5998]
1190         * libio/iofwrite.c (_IO_fwrite): Return correct count if flushing
1191         in line-buffered stream failed.
1192         * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
1193
1194 2008-04-08  Ulrich Drepper  <drepper@redhat.com>
1195
1196         [BZ #6024]
1197         * scripts/abi-versions.awk: If the version specified by
1198         --enable-oldest-abi is older than the first version for this
1199         architecture, use the default version.
1200
1201         * locale/programs/ld-collate.c (collate_read): Ignore script lines
1202         as well when ignoring the whole category.
1203
1204 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
1205
1206         [BZ #6042]
1207         * sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more
1208         ETHERTYPE_* definitions.
1209         Patch partly by Aurelien Jarno <aurelien@aurel32.net>.
1210
1211 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
1212
1213         * stdlib/mbtowc.c (__no_r_state): Remove.
1214         (mbtowc): New static state variable.  Use it instead of
1215         __no_r_state.
1216         * stdlib/wctomb.c (__no_r_state): Remove extern decl.
1217         (__wctomb_state): New hidden variable.
1218         (wctomb): Use __wctomb_state instead of __no_r_state.
1219         * debug/wctomb_chk.c (__no_r_state): Remove extern decl.
1220         (__wctomb_state): New extern decl.
1221         (__wctomb_chk): Use __wctomb_state instead of __no_r_state.
1222
1223 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
1224
1225         [BZ #5475]
1226         * resolv/res_init.c: Handle scope IDs in resolv.conf.
1227
1228 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
1229
1230         * malloc/mtrace.pl: Use $@ instead of $* to keep perl 5.10 quiet.
1231
1232 2008-04-06  Ulrich Drepper  <drepper@redhat.com>
1233
1234         * po/nl.po: Update from translation team.
1235
1236 2008-03-31  Ulrich Drepper  <drepper@redhat.com>
1237
1238         [BZ #6007]
1239         * string/strfry.c: Handle empty strings again.
1240
1241 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
1242
1243         [BZ #5443]
1244         * intl/dcigettext.c (__dcigettext): Get reader lock for locale data
1245         before looking for translation.
1246         * locale/duplocale.c: Transform __libc_setlocale_lock into rwlock.
1247         * locale/freelocale.c: Likewise.
1248         * locale/newlocale.c: Likewise.
1249         * locale/setlocale.c: Likewise.
1250         Based partially on a patch by ryo@np.css.fujitsu.com.
1251
1252 2008-03-30  Jakub Jelinek  <jakub@redhat.com>
1253
1254         * intl/dcigettext.c (_nl_find_msg): Reread nconversions after
1255         acquiring wrlock.  Do conv_tab allocation while holding lock.
1256         * intl/Makefile: Add rules to build and run tst-gettext6.
1257         * intl/tst-gettext6.c: New test.
1258         * intl/tst-gettext6.sh: New file.
1259
1260 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
1261
1262         * po/nl.po: Update from translation team.
1263
1264         * sysdeps/unix/opendir.c (__alloc_dir): If allocation fails for size
1265         provided through st_blksize, try the default size before giving up.
1266
1267 2008-03-29  Ulrich Drepper  <drepper@redhat.com>
1268
1269         * stdio-common/vfprintf.c (vfprintf): Correct overflow test.
1270
1271         [BZ #5939]
1272         * sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection.
1273
1274         * posix/getopt.c (_getopt_internal_r): Remove old POSIX-demanded
1275         error message.  POSIX today does not require the messages to be in
1276         a specific form.  Suggested by Jim Meyering <jim@meyering.net>.
1277
1278         [BZ #5979]
1279         * sunrpc/auth_unix.c: Unify printed strings.
1280         * sunrpc/clnt_tcp.c: Likewise.
1281         * sunrpc/clnt_udp.c: Likewise.
1282         * sunrpc/clnt_unix.c: Likewise.
1283         * sunrpc/svc_tcp.c: Likewise.
1284         * sunrpc/svc_udp.c: Likewise.
1285         * sunrpc/svc_unix.c: Likewise.
1286         * sunrpc/xdr.c: Likewise.
1287         * sunrpc/xdr_array.c: Likewise.
1288         * sunrpc/xdr_rec.c: Likewise.
1289         * sunrpc/xdr_ref.c: Likewise.
1290         * locale/programs/ld-time.c (time_finish): Unify messages.
1291         * locale/programs/locfile.c (handle_copy): Fix typo.
1292         * nscd/nscd.c (options): Fix typo.
1293
1294         [BZ #5995]
1295         * stdlib/strtod_l.c: Use correct sign for result in one more
1296         underflow case.
1297         Patch by Eric Blake <ebb9@byu.net>.
1298
1299 2008-03-27  Jakub Jelinek  <jakub@redhat.com>
1300
1301         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Add open
1302         and creat system calls.
1303         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove open system
1304         call.
1305         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove open and creat
1306         system calls.
1307         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
1308         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1309         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1310
1311 2008-03-27  Ulrich Drepper  <drepper@redhat.com>
1312
1313         * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if
1314         <linux/limits.h> has defined it.
1315         * sysdeps/unix/sysv/linux/sys/param.h: Define NCARGS to the legacy
1316         ARG_MAX value and prevent ARG_MAX from being defined by the kernel
1317         headers.
1318         * sysdeps/unix/sysv/linux/sysconf.c: Define legacy_ARG_MAX and use
1319         it instead of ARG_MAX.
1320
1321 2008-03-25  Jakub Jelinek  <jakub@redhat.com>
1322
1323         * posix/gai.conf: Fix comment for scope nullbits.
1324         * sysdeps/posix/getaddrinfo.c (gaiconf_init): If /bits is not present,
1325         default to 128 bits for v4 mapped addresses.
1326
1327 2008-03-07  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1328
1329         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Remove PTRACE_PEEKUSER
1330         ptrace call to get the ieee_instruction_pointer from the kernel.
1331         * sysdeps/s390/fpu/fesetenv.c (fesetenv): Remove PTRACE_POKEUSER
1332         ptrace call to set the ieee_instructtion_pointer.
1333         * sysdeps/unix/sysv/linux/s390/sys/user.h (struct _user_regs_struct):
1334         Add comment that ieee_instruction_pointer is always 0.
1335
1336 2008-03-09  Andreas Jaeger  <aj@suse.de>
1337
1338         [BZ #5857]
1339         * sysdeps/ieee754/dbl-64/s_rint.c (__rint): Handle j0==18.
1340         * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Likewise.
1341         Patch by Mark Elliott <mark.h.elliott@lmco.com>.
1342
1343         * math/libm-test.inc (nearbyint_test): Add new test cases from #5857.
1344         (rint_test): Likewise.
1345
1346 2008-03-24  Ulrich Drepper  <drepper@redhat.com>
1347
1348         * nis/nis_call.c (nis_server_cache_search): Save errno around stat
1349         call.
1350         (__nisfind_server): Similar for open readColdStartFile call.
1351         Patch partially by Jim Meyering.
1352         * nss/nss_files/files-XXX.c (_nss_files_getXXent_r): Save errno
1353         around internal_setent call.
1354
1355         * po/vi.po: New Vietnamese translation.
1356
1357         * sysdeps/unix/sysv/linux/adjtime.c: Correctly use
1358         ADJ_OFFSET_SS_READ.
1359
1360         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags,
1361         remove CLONE_STOPPED.
1362
1363 2008-02-10  Jim Meyering  <meyering@redhat.com>
1364
1365         Remove useless "if" before "free":
1366         * elf/ldconfig.c (parse_conf_include): Likewise.
1367         * gmon/gmon.c (weak_alias): Likewise.
1368         * iconv/gconv_conf.c (__gconv_get_path): Likewise.
1369         * inet/rcmd.c (__validuser2_sa): Likewise.
1370         * intl/bindtextdom.c (set_binding_values): Likewise.
1371         * intl/loadmsgcat.c (_nl_load_domain, _nl_unload_domain): Likewise.
1372         * libio/genops.c (save_for_backup): Likewise.
1373         * libio/wgenops.c (save_for_wbackup): Likewise.
1374         * locale/programs/ld-collate.c (collate_read): Likewise.
1375         * locale/programs/linereader.c (get_string): Likewise.
1376         * nis/nss_compat/compat-pwd.c (give_pwd_free): Likewise.
1377         * nis/nss_compat/compat-spwd.c (give_spwd_free): Likewise.
1378         * resolv/res_debug.c (do_section): Likewise.
1379         * sunrpc/xdr_sizeof.c (x_inline, xdr_sizeof): Likewise.
1380         * sysdeps/mach/hurd/if_index.c (libc_hidden_def): Likewise.
1381         * sysdeps/posix/sprofil.c (__sprofil): Likewise.
1382         * time/lc-time-cleanup.c (_nl_cleanup_time): Likewise.
1383         * time/tzset.c (tzset_internal): Likewise.
1384
1385 2008-03-18  Jakub Jelinek  <jakub@redhat.com>
1386
1387         * sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead
1388         of ASSEMBLER.
1389
1390 2008-03-11  Ulrich Drepper  <drepper@redhat.com>
1391
1392         [BZ #5903]
1393         * iconv/iconv_charmap.c (charmap_conversion): Pass name of output file
1394         not stream for output file.  Open output file here.
1395         * iconv/iconv_prog.c (process_lock): Take pointer to output stream
1396         and output file name.
1397         (process_fd): Likewise.
1398         (process_file): Likewise.
1399         (main): Adjust callers of changed functions.
1400         * iconv/iconv_prog.h: Adjust prototype.
1401
1402 2008-03-09  Andreas Jaeger  <aj@suse.de>
1403
1404         [BZ #5753]
1405         * sysdeps/ia64/ieee754.h: Use protected namespace
1406         __BIG_ENDIAN/__LITTLE_ENDIAN.
1407         * sysdeps/ieee754/ieee754.h: Likewise.
1408         Patch by Aurelien Jarno <aurelien@aurel32.net>.
1409
1410 2008-03-08  Roland McGrath  <roland@frob.com>
1411
1412         * hurd/hurdsig.c (_hurd_internal_post_signal): When normal rules would
1413         ignore a signal that came from a machine exception, treat it as a
1414         fatal core-dump signal instead.
1415         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
1416
1417         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
1418         Clear DF bit in thread state's eflags.
1419         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
1420
1421 2008-03-08  Ulrich Drepper  <drepper@redhat.com>
1422
1423         [BZ #5774]
1424         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Consume closing brace
1425         of NAN(...) sequence.
1426         * stdlib/Makefile (tests): Add tst-strtod6.
1427         * stdlib/tst-strtod6.c: New file.
1428
1429         * inet/inet6_opt.c (inet6_opt_init): Check extlen for overflow.
1430
1431         [BZ #5762]
1432         * posix/getopt.c (_getopt_internal_r): Clarify error message by
1433         putting offending option character in quotes.  Clean up error
1434         messages.
1435         * po/be.po: Adjust msgstr in translation file.
1436         * po/bg.po: Likewise.
1437         * po/ca.po: Likewise.
1438         * po/cs.po: Likewise.
1439         * po/da.po: Likewise.
1440         * po/de.po: Likewise.
1441         * po/es.po: Likewise.
1442         * po/fr.po: Likewise.
1443         * po/hr.po: Likewise.
1444         * po/ko.po: Likewise.
1445         * po/nl.po: Likewise.
1446         * po/rw.po: Likewise.
1447         * po/sk.po: Likewise.
1448         * po/sv.po: Likewise.
1449         * po/tr.po: Likewise.
1450         * po/zh_CN.po: Likewise.
1451         * po/zh_TW.po: Likewise.
1452
1453         [BZ #5760]
1454         * inet/inet6_opt.c (inet6_opt_init): Fix ip6h_len computation.
1455         Patch by Roland Bless <roland@bless.de>.
1456
1457         * sysdeps/unix/sysv/linux/dl-sysdep.c: Avoid unnecessary code for
1458         .o file.
1459         * elf/Makefile (routines): Add dl-sysdep.
1460         (elide-routines.os): Likewise.
1461
1462 2008-03-07  Ulrich Drepper  <drepper@redhat.com>
1463
1464         [BZ #5786]
1465         * elf/dl-sysdep.c: Undefine ROUND after use.
1466         * sysdeps/generic/ldsodefs.h [HAVE_DL_DISCOVER_OSVERSION]
1467         (struct rtld_global_ro): Add _dl_tls_get_addr_soft element.
1468         * elf/rtld.c (rtld_global_ro): Initialize _dl_discover_osversion.
1469         * sysdeps/unix/sysv/linux/dl-osinfo.h: Move _dl_discover_osversion
1470         to ...
1471         * sysdeps/unix/sysv/linux/dl-sysdep.c: ...here.
1472         * sysdeps/unix/sysv/linux/dl-sysdep.h: Declare _dl_discover_osversion
1473         if necessary.
1474         * sysdeps/unix/sysv/linux/sysconf.c: Handle _SC_ARG_MAX here.
1475
1476         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
1477         _dl_tls_get_addr_soft element.
1478         * elf/rtld.c (rtld_global_ro): Initialize _dl_tls_get_addr_soft.
1479         * elf/Versions (ld): Don't export _dl_tls_get_addr_soft.
1480         * dlfcn/dlinfo.c (dlinfo_doit): Access dl_tls_get_addr_soft through
1481         GLRO.
1482         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
1483         * elf/dl-tls.c (_dl_tls_get_addr_soft): Use attribute_hidden instead
1484         of internal_function.
1485
1486         * stdlib/Makefile (aux): Add tens_in_limb.
1487         * stdlib/strtod_l.c: Move _tens_in_limb definition to...
1488         * stdlib/tens_in_limb.c: ...here.  New file.
1489
1490         [BZ #5778]
1491         * sysdeps/unix/sysv/linux/pathconf.h: Declare
1492         __statfs_chown_restricted.
1493         * sysdeps/unix/sysv/linux/fpathconf.c: Call __statfs_chown_restricted
1494         for _PC_CHOWN_RESTRICTED.
1495         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
1496         Implement __statfs_chown_restricted.
1497         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change
1498         _POSIX_CHOWN_RESTRICTED value to zero.
1499         * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED
1500         defined to zero.
1501
1502         * sysdeps/x86_64/rtld-memset.c: New file.
1503
1504 2008-02-26  Harsha Jagasia  <harsha.jagasia@amd.com>
1505
1506         * sysdeps/x86_64/cacheinfo.c (NOT_USED_RIGHT_NOW): Remove ifdef guards.
1507
1508         * sysdeps/x86_64/memset.S: Rewrite non-SSE code path as tuned for AMD
1509         Barcelona machine.  Make default fall through branch of
1510         __x86_64_preferred_memory_instruction check as the integer code path.
1511
1512 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
1513
1514         * sysdeps/x86_64/cacheinfo.c
1515         (__x86_64_preferred_memory_instruction): New variable.
1516         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
1517
1518         * sysdeps/x86_64/memset.S: Rewrite.
1519
1520 2008-03-04  Jakub Jelinek  <jakub@redhat.com>
1521
1522         * include/stdio.h (__asprintf_chk, __dprintf_chk,
1523         __obstack_printf_chk): New prototypes.
1524         (__vasprintf_chk, __vdprintf_chk,
1525         __obstack_vprintf_chk): Likewise.
1526         Add libc_hidden_proto.
1527         * libio/obprintf.c
1528         (_IO_obstack_jumps): No longer static, add attribute_hidden.
1529         * libio/bits/stdio-ldbl.h (__asprintf_chk, __dprintf_chk,
1530         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
1531         __obstack_vprintf_chk): Add __LDBL_REDIR_DECL.
1532         * libio/bits/stdio2.h (__asprintf_chk, __dprintf_chk,
1533         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
1534         __obstack_vprintf_chk): New prototypes.
1535         (asprintf, __asprintf, dprintf, obstack_printf, vasprintf, vdprintf,
1536         obstack_vprintf): New inlines.
1537         * debug/dprintf_chk.c: New file.
1538         * debug/vdprintf_chk.c: New file.
1539         * debug/asprintf_chk.c: New file.
1540         * debug/vasprintf_chk.c: New file.
1541         * debug/obprintf_chk.c: New file.
1542         * debug/tst-chk1.c (do_test): Add asprintf and obstack_printf tests.
1543         * debug/Versions (__asprintf_chk, __dprintf_chk, __obstack_printf_chk,
1544         __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Export
1545         @@GLIBC_2.8.
1546         * debug/Makefile: Build asprintf_chk, vasprintf_chk, dprintf_chk,
1547         vdprintf_chk and obprintf_chk, set CFLAGS for them.
1548         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vasprintf_chk,
1549         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): Add
1550         libc_hidden_proto.
1551         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl___vasprintf_chk,
1552         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): New prototypes.
1553         * sysdeps/ieee754/ldbl-opt/Versions (__nldbl___asprintf_chk,
1554         __nldbl___vasprintf_chk, __nldbl___dprintf_chk, __nldbl___vdprintf_chk,
1555         __nldbl___obstack_printf_chk, __nldbl___obstack_vprintf_chk): Export
1556         @@GLIBC_2.8.
1557         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add asprintf_chk,
1558         vasprintf_chk, dprintf_chk, vdprintf_chk, obstack_printf_chk and
1559         obstack_vprintf_chk.
1560         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf_chk.c: New file.
1561         * sysdeps/ieee754/ldbl-opt/nldbl-dprintf_chk.c: New file.
1562         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf_chk.c: New file.
1563         * sysdeps/ieee754/ldbl-opt/nldbl-asprintf_chk.c: New file.
1564         * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf_chk.c: New file.
1565         * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf_chk.c: New file.
1566
1567 2008-03-04  Ulrich Drepper  <drepper@redhat.com>
1568
1569         [BZ #5779]
1570         * misc/sys/queue.h: Add STAILQ_CONCAT and TAILQ_CONCAT definitions.
1571         Patch by Roy Marples <roy@marples.name>.
1572
1573         [BZ #5736]
1574         * malloc/malloc.c: Fix typo in comment.
1575
1576         [BZ #5627]
1577         * locale/iso-639.def: Add Shuswap.
1578
1579 2008-02-25  Jakub Jelinek  <jakub@redhat.com>
1580
1581         [BZ #5790]
1582         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Don't
1583         overwrite *h_errnop/*errnop values from getanswer_r in case of
1584         failure.
1585
1586 2008-03-03  Ulrich Drepper  <drepper@redhat.com>
1587
1588         [BZ #5818]
1589         * nscd/connections.c (dbs): Add initializers for .suggested_module.
1590         (verify_persistent_db): Remove one unnecessary test and add a new one
1591         for bad configuration.
1592         (nscd_init): Improve error reported when persistent database cannot
1593         be reused.
1594         * nscd/nscd.h (DEFAULT_SUGGESTED_MODULE): Define.
1595         * nscd/nscd_conf.c (nscd_parse_file): Provide default values for
1596         .suggested_module and .max_db_size and case config file says the
1597         values are zero.
1598         * nscd/nscd_helper.c (get_mapping): Fail if hash table module is zero.
1599
1600         [BZ #5854]
1601         * nis/ypclnt.c (yp_order): Fix handling of return value of
1602         do_ypcall_tr call.
1603         Patch by Jeff Moyer <jmoyer@redhat.com>.
1604
1605         * po/fr.po: Update from translation team.
1606
1607 2008-02-22  Andreas Jaeger  <aj@suse.de>,
1608             Carlos O'Donell <carlos@systemhalted.org>
1609
1610         [BZ #5012]
1611         * FAQ.in: Describe why glibc needs to be compiled with
1612         optimization.
1613
1614 2008-02-19  Roland McGrath  <roland@redhat.com>
1615
1616         * elf/elf.h (SHT_GNU_ATTRIBUTES): New macro.
1617
1618 2008-02-15  Ulrich Drepper  <drepper@redhat.com>
1619
1620         [BZ #5737]
1621         * resolv/netdb.h: Make NI_MAXHOST and NI_MAXSERV available when
1622         __USE_MISC is defined.
1623
1624 2008-02-10  Ulrich Drepper  <drepper@redhat.com>
1625
1626         * sysdeps/unix/sysv/linux/sys/timerfd.h: New file.
1627         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add
1628         sys/timerfd.h.
1629         * sysdeps/unix/sysv/linux/syscalls.list: Add timerfd_create,
1630         timerfd_gettime, timerfd_settime.
1631         * sysdeps/unix/sysv/linux/Versions: Add timerfd_create,
1632         timerfd_gettime, timerfd_settime for GLIBC_2.8.
1633
1634 2008-02-08  Roland McGrath  <roland@redhat.com>
1635
1636         * elf/elf.h (NT_PPC_SPE): New macro.
1637
1638 2008-02-06  Roland McGrath  <roland@redhat.com>
1639
1640         * Makerules ($(common-objpfx)sysd-rules):
1641         Depend on $(sysdep-makeconfigs).
1642
1643 2008-01-31  Roland McGrath  <roland@redhat.com>
1644
1645         [BZ #5442]
1646         * configure.in: Use -print-file-name if it yields a directory,
1647         for each of include and include-fixed.
1648         * configure: Regenerated.
1649
1650         * Makeconfig (sysd-rules-targets): New variable.
1651         * sysdeps/unix/make-syscalls.sh: Use it in the rules emitted.
1652         * sysdeps/unix/Makefile (omit-deps): Append variants for each target.
1653
1654 2008-01-30  Roland McGrath  <roland@redhat.com>
1655
1656         * manual/libc.texinfo: Update back-cover text.
1657
1658         * elf/elf.h (NT_386_TLS): New macro.
1659
1660 2008-01-29  Roland McGrath  <roland@redhat.com>
1661
1662         * Makeconfig (sysd-rules-patterns): New variable.
1663         * Makerules ($(common-objpfx)sysd-rules): Drive the loop from that.
1664         (check-inhibit-asm): New canned sequence, replaces ...
1665         (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed.
1666         * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands.
1667         (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld.
1668         (CFLAGS-rtld): Variable removed.
1669
1670 2008-01-24  Roland McGrath  <roland@redhat.com>
1671
1672         * configure.in: Let configure fragments set base_os.
1673         * configure: Regenerated.
1674
1675 2008-01-22  Ulrich Drepper  <drepper@redhat.com>
1676
1677         * po/ko.po: Update from translation team.
1678
1679 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
1680
1681         * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw.
1682
1683 2008-01-12  Andreas Jaeger  <aj@suse.de>
1684
1685         [BZ #5040]
1686         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS):
1687         Add EPOLLRDHUP.
1688
1689 2008-01-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1690
1691         * hurd/hurdsock.c (_hurd_socket_server): Return the standard
1692         error EAFNOSUPPORT rather than non-standard EPFNOSUPPORT.
1693         * sunrpc/bindrsvprt.c (bindresvport): Likewise.
1694
1695 2007-10-23  Alexandre Oliva  <aoliva@redhat.com>
1696
1697         * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define.
1698         * elf/dl-close.c (_dl_close): Check for it.
1699         * elf/dl-reloc.c (CHECK_STATIC_TLS): Likewise.
1700         (_dl_allocate_static_tls): Likewise.
1701         * elf/dl-tls.c (_dl_allocate_tls_init): Likewise.
1702         (__tls_get_addr): Protect from race conditions in setting l_tls_offset
1703         to it.
1704         * elf/tst-tls16.c: New file.
1705         * elf/tst-tlsmod16a.c: New file.
1706         * elf/tst-tlsmod16b.c: New file.
1707         * elf/Makefile: Add rules to build and run tst-tls16.
1708
1709 2008-01-16  Ulrich Drepper  <drepper@redhat.com>
1710
1711         [BZ #5628]
1712         * bits/shm.h: Fix comment describing shmid_ds.
1713         * sysdeps/gnu/bits/shm.h: Likewise.
1714         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
1715         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1716         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1717         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1718         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1719         * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise.
1720         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1721         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1722         Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>.
1723
1724         [BZ #5607]
1725         * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate
1726         prototypes.
1727         * conform/data/limits.h-data: Adjust limits changed in v6 and add
1728         additional suffixes.
1729         * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry.
1730         Add optional functions mq_timedreceive and mq_timedsend.
1731         * conform/data/netdb.h-data: Add more AI_* and EAI_* constants.
1732         * conform/data/pthread.h-data: Fix prototype of
1733         pthread_condattr_setclock.  pthread_sigmask is not required in v6.
1734         * conform/data/semaphore.h-data: Allow time.h definitions.
1735         * conform/data/signal.h-data: Likewise.
1736         * conform/data/stdio.h-data: getw and putw are not required in v6.
1737         * conform/data/stdlib.h-data: Change setstate prototype.
1738         * conform/data/string.h-data: Fix strerror_r prototype.
1739         * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition.
1740         * conform/data/unistd.h-data: pthread_atfork not required in v6.
1741         Fix readlink prototype.
1742         * conform/data/netinet/in.h-data: Add const to in6addr_any and
1743         in6addr_loopback.
1744         * inet/netinet/in.h: Cleanup namespace.
1745         * posix/regex.h: Likewise.
1746         * resolv/netdb.h: Likewise.
1747         * sysdeps/unix/sysv/linux/bits/in.h: Likewise.
1748         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1749         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
1750         * sysdeps/posix/getaddrinfo.c (default_labels): Adjust for change
1751         of names of in in6_addr.
1752         (default_precedence): Likewise.
1753         * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for
1754         NULL definition.
1755
1756 2008-01-15  Ulrich Drepper  <drepper@redhat.com>
1757
1758         * conform/data/fmtmsg.h-data: Add missing allows.
1759         * conform/data/ftw.h-data: Likewise.
1760         * conform/data/inttypes.h-data: Likewise.
1761         * conform/data/math.h-data: Likewise.
1762         * conform/data/signal.h-data: Likewise.
1763         * conform/data/net/if.h-data: Likewise.
1764         * conform/data/netinet/in.h-data: Likewise.
1765         * conform/data/sys/socket.h-data: Likewise.
1766
1767         [BZ #5614]
1768         * string/bits/string2.h (__strtok_r_1c): Always update *__NEXTP.
1769         (__strtok_r): Simplify.
1770         * string/tester.c (test_strtok_r): Add test case for futile search
1771         with single-character seach string.
1772
1773 2008-01-12  Ulrich Drepper  <drepper@redhat.com>
1774
1775         * po/ko.po: Update from translation team.
1776
1777 2008-01-11  Andreas Jaeger  <aj@suse.de>
1778
1779         [BZ #5600]
1780         * sysdeps/unix/sysv/linux/sys/signalfd.h (struct
1781         signalfd_siginfo): Use 64-bit type for ssi_ptr to sync with Linux
1782         kernel header.
1783
1784 2008-01-10  Ulrich Drepper  <drepper@redhat.com>
1785
1786         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result of
1787         native interface lookup in all the relevant places.
1788
1789 2008-01-10  Jakub Jelinek  <jakub@redhat.com>
1790             Ulrich Drepper  <drepper@redhat.com>
1791
1792         * sysdeps/posix/getaddrinfo.c (sort_results): Remove service_order
1793         field.  Use sockaddr_in6 for source_addr.
1794         (get_scope): Change type of parameter to sockaddr_in6.  Adjust.
1795         (match_prefix): Likewise.
1796         (get_label): Likewise.
1797         (get_precedence): Likewise.
1798         (rfc3484_sort): Change to use indirect access to results array.
1799         Adjust to use of sockaddr_in6.  Replace service_order test with
1800         simple index comparison.
1801         (getaddrinfo): Define order array.  Initialize it.  Don't initialize
1802         service_order field.  Adjust qsort_t calls.  Access sorted result
1803         array indirectly through order array.
1804         * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort.
1805         * posix/tst-rfc3484-2.c: Likewise.
1806         * posix/tst-rfc3484-3.c: Likewise.
1807
1808 2008-01-09  Ulrich Drepper  <drepper@redhat.com>
1809
1810         [BZ #5541]
1811         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Also free xports and
1812         pollfd structures.
1813         Patch by AndrĂ© Cruz.
1814
1815         [BZ #5545]
1816         * sunrpc/clnt_perr.c (clnt_sperror): Don't use fixed size buffer.
1817         (clnt_spcreateerror): Likewise.
1818
1819         [BZ #5553]
1820         * malloc/malloc.c (public_mALLOc): Set ar_ptr when trying main_arena.
1821         (public_mEMALIGn): Likewise.
1822         Patch mostly by Daniel Jacobowitz.
1823
1824 2008-01-09  Jakub Jelinek  <jakub@redhat.com>
1825
1826         * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): Avoid
1827         clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size.
1828         * stdlib/Makefile: Add rules to build and run tst-makecontext2.
1829         * stdlib/tst-makecontext2.c: New test.
1830
1831 2008-01-08  Jakub Jelinek  <jakub@redhat.com>
1832
1833         * iconv/loop.c (UPDATE_PARAMS): Define to empty statement if not
1834         defined.
1835         (REINIT_PARAMS): Likewise.  Undefine before end of file.
1836         (STANDARD_TO_LOOP_ERR_HANDLER): Use UPDATE_PARAMS before calling
1837         transliteration hooks and REINIT_PARAMS afterwards.
1838         * iconvdata/iso-2022-jp.c (BODY): Use a separate variable for
1839         status.
1840         (REINIT_PARAMS): Define.
1841         * iconvdata/ibm1364.c (REINIT_PARAMS): Likewise.
1842         * iconvdata/ibm930.c (REINIT_PARAMS): Likewise.
1843         * iconvdata/ibm933.c (REINIT_PARAMS): Likewise.
1844         * iconvdata/ibm935.c (REINIT_PARAMS): Likewise.
1845         * iconvdata/ibm937.c (REINIT_PARAMS): Likewise.
1846         * iconvdata/ibm939.c (REINIT_PARAMS): Likewise.
1847         * iconvdata/iso-2022-cn.c (REINIT_PARAMS): Likewise.
1848         * iconvdata/iso-2022-cn-ext.c (REINIT_PARAMS): Likewise.
1849         * iconvdata/iso-2022-jp-3.c (REINIT_PARAMS): Likewise.
1850         * iconvdata/iso-2022-kr.c (REINIT_PARAMS): Likewise.
1851         * iconvdata/Makefile: Add rules to build and run tst-iconv7.c.
1852         * iconvdata/tst-iconv7.c: New test.
1853
1854 2008-01-07  Ulrich Drepper  <drepper@redhat.com>
1855
1856         * libio/stdio.h (vscanf): Fix definition for loser compilers.
1857
1858 2008-01-05  Jakub Jelinek  <jakub@redhat.com>
1859
1860         [BZ #5112]
1861         * nscd/connections.c (restart): Fix condition.
1862
1863 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
1864
1865         * ctype/ctype.h (__ctype_b_loc, __ctype_tolower_loc,
1866         __ctype_toupper_loc): Add __THROW.
1867
1868 2008-01-02  Ulrich Drepper  <drepper@redhat.com>
1869
1870         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Fix
1871         recognition of interface family.
1872
1873         * posix/getconf.c: Update copyright year.
1874         * nss/getent.c: Likewise.
1875         * iconv/iconvconfig.c: Likewise.
1876         * iconv/iconv_prog.c: Likewise.
1877         * elf/ldconfig.c: Likewise.
1878         * catgets/gencat.c: Likewise.
1879         * csu/version.c: Likewise.
1880         * elf/ldd.bash.in: Likewise.
1881         * elf/sprof.c (print_version): Likewise.
1882         * locale/programs/locale.c: Likewise.
1883         * locale/programs/localedef.c: Likewise.
1884         * nscd/nscd.c (print_version): Likewise.
1885         * debug/xtrace.sh: Likewise.
1886         * malloc/memusage.sh: Likewise.
1887         * malloc/mtrace.pl: Likewise.
1888         * debug/catchsegv.sh: Likewise.
1889
1890 2007-12-26  Ulrich Drepper  <drepper@redhat.com>
1891
1892         * nss/nsswitch.c (__nss_lookup): Actually use alternative name in
1893         second lookup.
1894
1895 2007-12-23  Ulrich Drepper  <drepper@redhat.com>
1896
1897         * sysdeps/x86_64/cacheinfo.c (intel_02_known): New entry 0x3f.
1898         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1899
1900 2007-12-17  Roland McGrath  <roland@redhat.com>
1901
1902         * inet/ether_line.c (ether_line): Remove unused variable.
1903
1904 2007-12-17  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1905
1906         * login/forkpty.c (forkpty): Add const qualifier to parameters termp
1907         and winp.
1908         * login/openpty.c (openpty): Likewise.
1909         * login/pty.h (openpty, forkpty): Likewise.
1910         * manual/terminal.texi (openpty, forkpty): Likewise.
1911
1912 2007-12-17  Ulrich Drepper  <drepper@redhat.com>
1913
1914         * malloc/malloc.c (public_cALLOc): For arenas other than
1915         main_arena, count all bytes inside the mprotect_size range of the
1916         heap as uninitialized.
1917
1918 2007-12-16  Ulrich Drepper  <drepper@redhat.com>
1919
1920         * elf/tst-execstack.c (do_test): Don't fail if SELinux forbids
1921         executable stacks.
1922
1923         * malloc/malloc.c (public_mTRIm): Iterate over all arenas and call
1924         mTRIm for all of them.
1925         (mTRIm): Additionally iterate over all free blocks and use madvise
1926         to free memory for all those blocks which contain at least one
1927         memory page.
1928         * malloc/tst-trim1.c: New file.
1929         * malloc/Makefile (tests): Add tst-trim1.
1930
1931         * malloc/malloc.c (do_check_malloc_state): Minimal cleanups.
1932
1933 2007-12-14  Ulrich Drepper  <drepper@redhat.com>
1934
1935         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P):
1936         First cast argument to long
1937         * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday):
1938         Return long.
1939         (__vdso_clock_gettime): Likewise.
1940         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions
1941         return long.
1942
1943 2007-12-13  Ulrich Drepper  <drepper@redhat.com>
1944
1945         * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l.
1946         * locale/nl_langinfo_l.c: Real implementation, copied from
1947         nl_langinfo.c.
1948         * include/langinfo.h: Add libc_hidden_proto for __nl_langinfo_l.
1949
1950 2007-12-01  Jim Meyering  <meyering@redhat.com>
1951
1952         * posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
1953         that would inhibit utf8-optimization of a regexp containing line-
1954         or buffer-anchors, e.g., `^', `$'.
1955
1956 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
1957
1958         * time/bug-getdate1.c (do_test): Don't use century values which
1959         aren't valid on 32-bit systems.
1960
1961 2007-12-12  Jakub Jelinek  <jakub@redhat.com>
1962
1963         * sysdeps/i386/i486/bits/string.h (memmove): Define as macro.
1964         (memmove): Rename to __memmove_g, with __asm__ ("memmove").
1965         * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g,
1966         __strcat_g, __strncat_g): Add __asm__.
1967
1968 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
1969
1970         [BZ #5477]
1971         * io/fchmodat.c: Fix typo in stub_warning use.
1972         Patch by Petr Salinger.
1973
1974 2007-12-11  Ulrich Drepper  <drepper@redhat.com>
1975
1976         * iconvdata/hp-thai8.c: New file.
1977         * iconvdata/Makefile: Add rules for hp-thai8.c.
1978         * iconvdata/tst-tables.sh: Add entry for HP-THAI8.
1979         * iconvdata/gconv-modules: Likewise.
1980
1981         [BZ #5464]
1982         * iconvdata/hp-greek8.c: New file.
1983         * iconvdata/Makefile: Add rules for hp-greek8.c.
1984         * iconvdata/tst-tables.sh: Add entry for HP-GREEK8.
1985         * iconvdata/gconv-modules: Likewise.
1986
1987         [BZ #5463]
1988         * iconvdata/hp-turkish8.c: New file.
1989         * iconvdata/Makefile: Add rules for hp-turkish8.c.
1990         * iconvdata/tst-tables.sh: Add entry for HP-TURKISH8.
1991         * iconvdata/gconv-modules: Likewise.
1992
1993         * malloc/arena.c (grow_heap): Split out code to shrink heap into...
1994         (shrink_heap): ... this new function.
1995         (heap_trim): Call shrink_heap instead of grow_heap.
1996
1997         * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this
1998         case don't call alloc_perturb.
1999
2000 2007-12-10  Ulrich Drepper  <drepper@redhat.com>
2001
2002         * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if
2003         possible.
2004         * sysdeps/unix/sysv/linux/kernel-features.h
2005         (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24.
2006         * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define.
2007
2008 2007-12-08  Ulrich Drepper  <drepper@redhat.com>
2009
2010         [BZ #5424]
2011         * stdio-common/vfprintf.c: Do not overflow when adding to done.
2012         * stdio-common/Makefile (tests): Add bug22.
2013         * stdio-common/bug22.c: New file.
2014
2015         [BZ #5451]
2016         * time/getdate.c: Fix filling in default values.
2017         * time/bug-getdate1.c: New file.
2018         * time/Makefile: Add rules to build and run bug-getdate1.
2019
2020         * iconvdata/ebcdic-is-friss.c: Use 8bit-gap instead of 8bit-generic.
2021         * iconvdata/ebcdic-es.c: Likewise.
2022         * iconvdata/ebcdic-es-a.c: Likewise.
2023         * iconvdata/ebcdic-uk.c: Likewise.
2024         * iconvdata/iso8859-16.c: Likewise.
2025         * iconvdata/viscii.c: Likewise.
2026         * iconvdata/iso8859-9e.c: Likewise.
2027         * iconvdata/Makefile: Adjust appropriately.
2028
2029         [BZ #5428]
2030         * wcsmbs/wchar.h: Unconditionally undefine __need_mbstate and
2031         __need_wint_t.
2032
2033 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
2034
2035         [BZ #5427]
2036         * iconvdata/hp-roman9.c: New file.
2037         * iconvdata/Makefile: Add rules for hp-roman9.c.
2038         * iconvdata/tst-tables.sh: Add HP-ROMAN9.
2039         * iconvdata/gconv-modules: Likewise.
2040
2041         * iconvdata/hp-roman8.c: Use 8bit-gap instead of 8bit-generic.
2042         * iconvdata/Makefile: Adjust appropriately.
2043
2044         [BZ #5441]
2045         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free
2046         structure, it's allocated with alloca.
2047         * stdio-common/Makefile (tests): Add bug21.
2048         * stdio-common/bug21.c: New file.
2049
2050 2007-12-06  Aurelien Jarno  <aurelien@aurel32.net>
2051
2052         [BZ #5452]
2053         * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__
2054         keyword for gcc's braced-groups.
2055
2056 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
2057
2058         [BZ #5454]
2059         * inet/ether_line.c: Strip hostname of whitespaces.
2060         * inet/Makefile (tests): Add tst-ether_line.
2061         * inet/tst-ether_line.c: New file.
2062
2063 2007-12-03  Ulrich Drepper  <drepper@redhat.com>
2064
2065         [BZ #5439]
2066         * sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull.
2067
2068         [BZ #5435]
2069         * sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack.
2070
2071         * stdlib/tst-setcontext.c: Catch the case where the links gets
2072         messed up and we do not reach main again.
2073
2074         * po/ca.po: Update from translation team.
2075
2076 2007-11-26  Ulrich Drepper  <drepper@redhat.com>
2077
2078         * posix/unistd.h: Declare fsync also for __USE_XOPEN2K.
2079         * posix/regex.h (REG_ENOSYS): Likewise.
2080         * wcsmbs/wchar.h: Define __need_file also for __USE_XOPEN2K.
2081
2082 2007-11-25  Ulrich Drepper  <drepper@redhat.com>
2083
2084         * nscd/nscd.h (MAX_STACK_USE): Define.
2085         * nscd/mem.c (MAX_STACK_USE): Remove definition here.
2086         (gc): Initialize stack_used based on allocation in prune_cache.
2087         * nscd/cache.c (prune_cache): Use heap for mark array if necessary.
2088         Clear array before use.
2089
2090         * nscd/aicache.c (addhstaiX): Update statistics counter in case
2091         memory allocation failed.
2092         * nscd/hstcache.c (cache_addhst): Likewise.
2093         * nscd/grpcache.c (cache_addgr): Likewise.
2094         * nscd/servicescache.c (cache_addserv): Likewise.
2095         * nscd/pwdcache.c (cache_addpw): Likewise.
2096         * nscd/initgrcache.c (addinitgroupsX): Likewise.
2097
2098 2007-11-23  Ulrich Drepper  <drepper@redhat.com>
2099
2100         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add open
2101         and creat system calls.
2102
2103         * sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>.
2104
2105 2007-11-23  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2106
2107         * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers):
2108         Add netiucv/iucv.h.
2109         * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file.
2110         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV
2111         protocol.
2112         * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise.
2113         * sysdeps/unix/sysv/linux/s390/opensock.c: New file.
2114         * sysdeps/unix/sysv/linux/s390/sa_len.c: New file.
2115
2116 2007-11-22  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2117
2118         * sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat,
2119         strncat): Define as macros to avoid compile errors.
2120
2121         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list:  Add open and
2122         creat entries.
2123
2124 2007-11-22  Ulrich Drepper  <drepper@redhat.com>
2125
2126         [BZ #5382]
2127         * nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define.
2128         * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE.
2129         * nscd/mem.c (gc): Don't allocate arrays on the stack if they can
2130         overflow it.
2131         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
2132
2133         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
2134         Return zero in case the thread library is not NPTL.
2135
2136         [BZ #5375]
2137         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix locking when
2138         initializing interface list.
2139
2140         [BZ #5378]
2141         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
2142         use result of nss_getgrgid_r if nothing was found.  For other
2143         error return with a failure.
2144         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
2145
2146         * locale/programs/ld-collate.c (collate_read): Fix loop to match
2147         macro name.
2148
2149 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
2150
2151         * sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables.
2152         (get_scope): For IPv4 scope, use scopes table.
2153         (fini): Free scopes table if necessary.
2154         (free_scopelist): New function.
2155         (scopecmp): New function.
2156         (gaiconf_init): Also handle scopev4 entries.
2157         * posix/tst-rfc3484.c (do_test): Initialize scopes.
2158         * posix/tst-rfc3484-2.c (do_test): Likewise.
2159         * posix/gai.conf: Document scopev4 defaults.
2160         * posix/Makefile (tests): Add tst-rfc3484-3.
2161         * posix/tst-rfc3484-3.c: New file.
2162
2163         * sysdeps/posix/getaddrinfo.c (default_labels): Describe entry for
2164         Teredo tunnels.
2165         * posix/gai.conf: Update for current default tables.
2166
2167 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
2168
2169         * po/tr.po: Update from translation team.
2170
2171 2007-11-18  Roland McGrath  <roland@frob.com>
2172
2173         * manual/arith.texi (Remainder Functions): Spelling fix.
2174         From Shaun Silk <genix@mysoul.com.au>.
2175
2176         * sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value.
2177
2178 2007-11-17  Ulrich Drepper  <drepper@redhat.com>
2179
2180         * po/zh_CN.po: Update from translation team.
2181
2182         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
2183         Add sys/signalfd.h and sys/eventfd.h.
2184
2185 2007-11-15  Bruno Haible  <bruno@clisp.org>
2186
2187         [BZ #5346]
2188         * intl/dcigettext.c (struct known_translation_t): Turn msgid into a
2189         union.
2190         (transcmp): Use the appropriate part of s1->msgid and s2->msgid.
2191         (DCIGETTEXT): Change the allocation of the 'search' variable so that
2192         it needs only fixed stack space. Delay the initialization of
2193         msgid_len until it is needed.
2194
2195 2007-11-15  Andreas Jaeger  <aj@suse.de>
2196
2197         * sysdeps/ieee754/dbl-64/sincos.tbl: Fix size of union.
2198         Reported by Christoph Quirin Lauter <christoph.lauter@ens-lyon.fr>.
2199
2200 2007-11-15  Ulrich Drepper  <drepper@redhat.com>
2201
2202         * po/ko.po: Update from translation team.
2203
2204 2007-11-14  Ulrich Drepper  <drepper@redhat.com>
2205
2206         * sysdeps/unix/sysv/linux/check_native.c (__check_native): Simplify
2207         significantly.  The device type is also part of the ifinfomsg data.
2208
2209         * po/sv.po: Update from translation team.
2210         * po/nl.po: Likewise.
2211
2212         * nscd/cache.c (prune_cache): If cache is empty, instruct caller
2213         to wake up in 24 hours.
2214
2215         * nscd/gai.c (__ioctl): Define.  Include check_native.c.
2216
2217 2007-11-13  Ulrich Drepper  <drepper@redhat.com>
2218
2219         * po/cs.po: Update from translation team.
2220         * po/pl.po: Likewise.
2221
2222         * include/ifaddrs.h: Remove in6ai_temporary.
2223         (struct in6addrinfo): Add index element.
2224         Declare __check_native.
2225         * inet/Makefile (aux): Add check_native.
2226         * sysdeps/unix/sysv/linux/check_native.c: New file.
2227         * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize
2228         IFA_F_TEMPORARY.  Pass back ifa_index.
2229         * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code.
2230         (rfc3484_sort): Add new parameter.  Implement rule 7 correctly:
2231         call __check_native if necessary.
2232         (getaddrinfo): Fill in index field.  Use qsort_r instead of qsort
2233         to sort addresses.  Pass information about the results.
2234         * posix/tst-rfc3484.c: Adjust for addition of index field and change
2235         of rfc3484_sort interface.
2236         * posix/tst-rfc3484-2.c: Likewise.
2237
2238         * stdlib/stdlib.h: Define __compar_d_fn_t.  Declare qsort_r.
2239         * include/stdlib.h: Add hidden_proto for qsort_t and adjust protoype
2240         for _quicksort.
2241         * stdlib/msort.c (qsort): Now a wrapper around qsort_r.
2242         (qsort_r): Renamed from qsort.  Take additional parameter and pass it
2243         on as third parameter to compare function and _quicksort.
2244         * stdlib/qsort.c (_quicksort): Take additional parameter and pass on
2245         to the compare function.
2246         * stdlib/Versions [libc] (GLIBC_2.8): Add qsort_r.
2247         * Versions.def: Add GLIBC_2.8 for libc.
2248
2249         * posix/tst-rfc3484.c: Adjust for addition of prefixlen field.
2250         * posix/tst-rfc3484-2.c: Likewise.
2251
2252         * include/kernel-features.h: Moved to...
2253         * sysdeps/mach/hurd/kernel-features.h: ...here.
2254
2255 2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>
2256
2257         * sysdeps/i386/i586/memcpy_chk.S: New file.
2258         * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
2259         * sysdeps/i386/i586/memset_chk.S: Likewise.
2260
2261 2007-11-12  Ulrich Drepper  <drepper@redhat.com>
2262
2263         * include/ifaddrs.c (struct in6addrinfo): Add prefixlen field.
2264         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return
2265         list of interfaces.  Also store prefix length.
2266         * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element.
2267         (rfc3484_sort): In rule 9, for IPv4 addresses count only matching
2268         prefix if source and destination address are in the same subnet.
2269         (getaddrinfo): Always call __check_pf.  Fill in prefixlen field.
2270         Always look for matching record in in6ai list.
2271         Correct source_addr_len value for IPv6->IPv4 converted records.
2272
2273 2007-11-11  Roland McGrath  <roland@frob.com>
2274
2275         * include/kernel-features.h: New file.
2276
2277 2007-11-10  Ulrich Drepper  <drepper@redhat.com>
2278
2279         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary
2280         complications for 64-bit platforms.
2281
2282         * sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to..
2283         * sysdeps/unix/sysv/linux/open64_2.c: ...here.  New file.
2284         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add
2285         open64_2.
2286         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat
2287         entries.
2288         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2289         * sysdeps/wordsize-64/alphasort.c: New file.
2290         * sysdeps/wordsize-64/alphasort64.c: New file.
2291         * sysdeps/wordsize-64/fseeko.c: New file.
2292         * sysdeps/wordsize-64/fseeko64.c: New file.
2293         * sysdeps/wordsize-64/ftello.c: New file.
2294         * sysdeps/wordsize-64/ftello64.c: New file.
2295         * sysdeps/wordsize-64/ftw.c: New file.
2296         * sysdeps/wordsize-64/ftw64.c: New file.
2297         * sysdeps/wordsize-64/iofgetpos.c: New file.
2298         * sysdeps/wordsize-64/iofgetpos64.c: New file.
2299         * sysdeps/wordsize-64/iofopen.c: New file.
2300         * sysdeps/wordsize-64/iofopen64.c: New file.
2301         * sysdeps/wordsize-64/iofsetpos.c: New file.
2302         * sysdeps/wordsize-64/iofsetpos64.c: New file.
2303         * sysdeps/wordsize-64/lockf.c: New file.
2304         * sysdeps/wordsize-64/lockf64.c: New file.
2305         * sysdeps/wordsize-64/mkostemp.c: New file.
2306         * sysdeps/wordsize-64/mkostemp64.c: New file.
2307         * sysdeps/wordsize-64/mkstemp.c: New file.
2308         * sysdeps/wordsize-64/mkstemp64.c: New file.
2309         * sysdeps/wordsize-64/scandir.c: New file.
2310         * sysdeps/wordsize-64/scandir64.c: New file.
2311         * sysdeps/wordsize-64/tmpfile.c: New file.
2312         * sysdeps/wordsize-64/tmpfile64.c: New file.
2313         * sysdeps/wordsize-64/versionsort.c: New file.
2314         * sysdeps/wordsize-64/versionsort64.c: New file.
2315         * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file.
2316         * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file.
2317         * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file.
2318         * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file.
2319         * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file.
2320         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file.
2321         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file.
2322         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file.
2323         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file.
2324         * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file.
2325         * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file.
2326         * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file.
2327
2328         * crypt/sha256-crypt.c: Fix a comment.
2329         * crypt/sha512-crypt.c: Likewise.
2330
2331 2007-11-07  H.J. Lu  <hongjiu.lu@intel.com>
2332
2333         * sysdeps/x86_64/memset.S: Add sfence after movnti.
2334
2335 2007-11-07  Ulrich Drepper  <drepper@redhat.com>
2336
2337         [BZ #5277]
2338         * iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed
2339         because output buffer is too small break, don't loop.
2340         * iconvdata/Makefile (tests): Add bug-iconv6.
2341         * iconvdata/bug-iconv6.c: New file.
2342
2343 2007-11-06  Ulrich Drepper  <drepper@redhat.com>
2344
2345         * stdio-common/vfprintf.c (vfprintf): Compute necessary buffer size
2346         with size_t type.
2347         * stdio-common/printf_fp.c (__print_fp): Change chars_needed type to
2348         size_t.  Add casts where needed.
2349
2350         * nscd/selinux.c (nscd_request_avc_has_perm): When compiled with
2351         old headers, don't call avc_has_perm if we don't have the
2352         permission information.
2353
2354 2007-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
2355
2356         * elf/rtld.c (dl_main): Use the page size to find the map start.
2357
2358 2007-11-05  Ulrich Drepper  <drepper@redhat.com>
2359
2360         * time/tzfile.c (__tzfile_read): Fix check for version 0 data files.
2361         Patch by Szymon Siwek <sls@poczta.wp.pl>.
2362
2363         * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup only
2364         when the lookup call failed.
2365
2366         * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock.
2367         Add prune_cond and wakeup_time.
2368         (CACHE_PRUNE_INTERNAL): Define.
2369         Update declarations of prune_cache and setup_thread.
2370         * nscd/connections.c (dbs): Update initializers.
2371         (CACHE_PRUNE_INTERNAL): Moved to nscd.h.
2372         (nscd_init): Default number of threads is now 4.
2373         (invalidate_cache): Take lock before calling prune_cache.
2374         (handle_request): If SELinux forbids the request, say so.
2375         (readylist_cond): Use static initializer.
2376         (nscd_run_prune): New function.  Used only by pruning threads.
2377         (nscd_run_worder): Renamed from nscd_run.  Remove support for pruning
2378         here.
2379         (fd_ready): Update nscd_run reference.
2380         (start_threads): No need to initialize readylist_cond.
2381         Start pruning threads separately.
2382         * nscd/nscd_setup_thread.c: Change return value type to int and always
2383         return 0.
2384         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type
2385         to int and return nonzero value if we can use the TID address hack.
2386         * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for
2387         the database is later than the new entry's timeout, update the
2388         wakeup time and wake the cleanup thread.
2389         (prune_cache): Return seconds the next entry in the database is still
2390         valid.  Remove locking for pruning here.
2391         * nscd/nscd.conf: Document default number of threads.
2392
2393 2007-10-31  Ulrich Drepper  <drepper@redhat.com>
2394
2395         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Make sure
2396         stack is properly aligned for the target function.
2397         Correct unwind info.
2398
2399         * elf/rtld.c (dl_main): Initialize stack and pointer guard early
2400         when using auditing libraries.
2401
2402 2007-10-29  Ulrich Drepper  <drepper@redhat.com>
2403
2404         * resolv/Versions [libresolv] (GLIBC_PRIVATE): Add
2405         _nss_dns_getnetbyaddr2_r.
2406         * resolv/nss_dns/dns-host.c: Define _nss_dns_getnetbyaddr2_r.  Pass
2407         extra parameter to getanswer_r.
2408         (_nss_dns_getnetbyaddr_r): Now a wrapper around
2409         _nss_dns_getnetbyaddr2_r.
2410
2411         * nscd/Makefile (nscd-modules): Replace gethstbynm2_r with
2412         gethstbynm3_r.
2413         * nscd/gethstbynm2_r.c: Remove.
2414         * nscd/gethstbynm3_r.c: New file.
2415         * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of
2416         __gethostbyaddr_r.
2417         * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function.  Define
2418         __gethostbyaddr_r compatibility wrapper.
2419         * nscd/hstcache.c (cache_addhst): Add ttl parameter.  Use it when
2420         determining timeout of entry.
2421         (lookup): Take new parameter and pass it to __gethostbyname3_r and
2422         __gethostbyaddr2_r.
2423         (addhstbyX): Pass reference to variable for TTL to lookup and
2424         cache_addhst.
2425         * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2,
2426         __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2,
2427         and __nss_next2.  Remove __nss_services_lookup.
2428         * nss/XXX-lookup.c: Name function now *_lookup2.  Add new parameter.
2429         Add compat wrapper.
2430         * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and
2431         __nss_next2.
2432         * nss/getXXent_r.c: Likewise.
2433         * nss/getnssent_r.c: Likewise.
2434         * nss/nsswitch.c (__nss_lookup): Add new parameter.  If first function
2435         does not exist in module, try the optional second name.
2436         (__nss_next2): New function.
2437         (__nss_next): Now wrapper around __nss_next2.
2438         * nss/nsswitch.h: Adjust __nss_lookup prototype.
2439         Declare __nss_next2.
2440         Adjust definition of db_lookup_function type.
2441         * nss/service-lookup.c: Define NO_COMPAT.
2442         * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r.
2443         * inet/ether_hton.c: Use __nss_next2 instead of __nss_next.
2444         * inet/ether_ntoh.c: Likewise.
2445         * sunrpc/netname.c: Likewise.
2446         * sunrpc/publickey.c: Likewise.
2447         * inet/getnetgrent.c: Likewise.  Adjust calls to __nss_lookup.
2448         * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2.
2449         * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
2450         * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
2451         * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
2452
2453         * nscd/aicache.c (addhstaiX): Fix default TTL handling.
2454
2455         * inet/getnetgrent.c (setup): Encrypt static pointer.
2456
2457 2007-10-28  Ulrich Drepper  <drepper@redhat.com>
2458
2459         [BZ #5204]
2460         * crypt/sha256c-test.c: Define TIMEOUT to 6 for ancient hardware.
2461         * crypt/sha512c-test.c: Likewise.
2462
2463         [BZ #5225]
2464         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't misuse wp pointer
2465         to keep track of end of %[ format string element.
2466         * stdio-common/Makefile (tests): Add bug20.
2467         * stdio-common/bug20.c: New file.
2468
2469         [BZ #5222]
2470         * elf/dl-load.c (_dl_rtld_di_serinfo): Correct handling of short
2471         path elements in counting mode.
2472
2473 2007-10-27  Andreas Jaeger  <aj@suse.de>
2474
2475         [BZ #5040]
2476         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLRDHUP): Add value.
2477
2478         [BZ #3112]
2479         * sysdeps/ia64/backtrace.c (init): Free shared library if incorrect.
2480         (__cleanup): Free shared library when exiting.
2481         * sysdeps/i386/backtrace.c (init): Free shared library if incorrect.
2482         (__cleanup): Free shared library when exiting.
2483
2484 2006-04-14  H.J. Lu  <hongjiu.lu@intel.com>
2485
2486         [BZ #2549]
2487         * math/libm-test.inc (check_float_internal): Support
2488         denormalized return.
2489
2490 2007-10-23  Andreas Jaeger  <aj@suse.de>
2491
2492         [BZ #5208]
2493         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use
2494         __LONG_LONG_PAIR to handle little endian byte order.
2495         Suggested by abhishekrai@google.com
2496
2497 2007-10-27  Ulrich Drepper  <drepper@redhat.com>
2498
2499         * malloc/arena.c [!NO_THREADS]: Use ATFORK_MEM if defined.
2500
2501 2007-10-26  Ulrich Drepper  <drepper@redhat.com>
2502
2503         * nscd/cache.c (prune_cache): Move test for modified file outside
2504         of locking.
2505
2506 2007-10-21  Andreas Jaeger  <aj@suse.de>
2507
2508         * manual/texinfo.tex: Update to latest version.
2509
2510         * manual/sysinfo.texi (System Parameters): Fix Formatting.
2511
2512         * manual/arith.texi (Status bit operations): Fix formatting.
2513
2514         * manual/errno.texi (Error Messages): Fix formatting.
2515
2516         * manual/sysinfo.texi (System Parameters): Fix formatting.
2517
2518         * manual/libc.texinfo: Update VERSION and UPDATED.
2519
2520 2007-10-19  Roland McGrath  <roland@redhat.com>
2521
2522         * elf/Makefile ($(objpfx)ld.so): Use $(AWK).
2523
2524 2007-10-06  David S. Miller  <davem@davemloft.net>
2525
2526         * configure.in: Add sparcv9v2 and sparc64v2.
2527         * scripts/config.sub: Likewise.
2528         * configure: Regenerate.
2529         * elf/elf.h (HWCAP_SPARC_N2): New.
2530         * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
2531         * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
2532         (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
2533         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
2534         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
2535         * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
2536         * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
2537
2538 2007-10-18  Ulrich Drepper  <drepper@redhat.com>
2539
2540         * sunrpc/clnt_udp.c (clntudp_call): Don't block in recvfrom call
2541         even if the poll result indicates there is data to read.
2542         Patch by Jeff Moyer <jmoyer@redhat.com>.
2543
2544 2007-10-18  Roland McGrath  <roland@redhat.com>
2545
2546         * elf/elf.h (NT_PPC_VMX): New macro.
2547
2548 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2549
2550         * version.h (VERSION): Set to 2.7.90.
2551
2552 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
2553
2554         * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero.  Add
2555         weak_alias.
2556
2557 2007-10-17  Roland McGrath  <roland@frob.com>
2558
2559         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New.
2560         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it.
2561
2562 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2563
2564         * version.h (VERSION): Bump to 2.7.
2565         * include/features.h (__GLIBC_MINOR__): Bump to 7.
2566
2567         [BZ #5186]
2568         * time/tzset.c (__tz_convert): Don't force testing for a change of
2569         TZ if not called from localtime.  But then also see whether the
2570         file changed, in case __use_tzfile is set.
2571
2572         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC.
2573         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2574         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2575         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2576         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2577         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
2578         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h:  Likewise.
2579         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
2580
2581 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
2582
2583         * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses
2584         and admin selects to be able to replace the gai.conf file, lock
2585         data structures around the qsort call.
2586
2587 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2588
2589         * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of
2590         new memset.
2591         * sysdeps/x86_64/memset.S: Revert to old version for now.  The cost is
2592         too high for the improvements.  Implement bzero unconditionally for
2593         use in libc.
2594
2595 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2596             Jakub Jelinek  <jakub@redhat.com>
2597
2598         * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available
2599         even when time_t is 32-bit.
2600         (__tzfile_compute): Override POSIX TZ string STD/DST zone names if
2601         timezone data read by __tzfile_default.  Ensure __tzname[0] is
2602         always set after the search.
2603
2604 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
2605
2606         * time/tzfile.c (__tzfile_read): Help the compiler recognize
2607         unreachable code on 32-bit machines.
2608
2609 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2610
2611         [BZ #5184]
2612         * time/strftime_l.c: Include stdbool.h.
2613         (my_strftime): New wrapper, old function renamed to...
2614         (__strftime_internal): ... new function.  Add tzset_called
2615         argument, pass it down to recursive calls, don't call tzset ()
2616         if already true, set to true after call to tzset ().
2617
2618 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
2619
2620         * time/tzfile.c (__tzfile_read): Take extra memory requested by caller
2621         into account when copying TZ string.
2622
2623 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2624
2625         * time/tzfile.c (__tzfile_compute): For use_last case set i to
2626         num_transition rather than num_transitions - 1.
2627
2628 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2629
2630         * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move
2631         PIC indirect jump.
2632
2633         * sysdeps/x86_64/memset.S: Jump from bzero to memset using
2634         a local label rather than HIDDEN_JUMPTARGET.
2635
2636 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
2637
2638         * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define.
2639         (init_cacheinfo): Initialize it.
2640         * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size.
2641         Always define bzero.
2642         Remove non-glibc code.
2643         * sysdeps/x86_64/bzero.S: Make an empty file.
2644
2645 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
2646
2647         * sysdeps/x86_64/cacheinfo.c
2648         (__x86_64_preferred_memory_instruction): New.
2649         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
2650
2651         * sysdeps/x86_64/memset.S: Rewrite.
2652
2653 2007-10-15  Roland McGrath  <roland@redhat.com>
2654
2655         * po/libc.pot: Regenerated.
2656
2657 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
2658
2659         * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct
2660         pointers.
2661
2662         [BZ #3425]
2663         * resolv/nss_dns/dns-host.c (getanswer_r): Fail with
2664         NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no
2665         address record to T_A/T_AAAA requests.
2666
2667 2007-10-14  Ulrich Drepper  <drepper@redhat.com>
2668
2669         * posix/glob.c: Reimplement link_exists_p to use fstatat64.
2670
2671         * posix/glob.c: Add some branch prediction throughout.
2672
2673         * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful
2674         read from nscd.
2675
2676         * sysdeps/posix/getaddrinfo.c (struct sort_result): Add
2677         service_order.
2678         (rfc3484_sort): Make sure that even if qsort doesn't support
2679         stable sorting out sorting here is stable by comparing service_order.
2680         (getaddrinfo): Initialize service_order.
2681         * posix/tst-rfc3484.c (do_test): Adjust for addition of
2682         service_order field to sorting structure.
2683         * posix/tst-rfc3484-2.c (do_test): Likewise.
2684
2685         * include/time.h: Declare __tzset_parse_tz and __tzset_compute.
2686         * time/tzset.c (tzset_internal): Break TZ string parsing out into
2687         __tzset_parse_tz and updating of daylight, timezone, tzname into
2688         update_vars.
2689         (__tz_compute): Renamed from tz_compute.  Take additional parameters.
2690         (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now
2691         happens in __tz_compute.
2692         * time/tzfile.c (__tzfile_read): Also read TZ string.
2693         (find_transition): Fold into __tzfile_compute.
2694         (__tzfile_compute): For times beyond the last transition try to
2695         use the TZ string.
2696         * timezone/tst-timezone.c: Information in daylight and tzname does
2697         change for Asia/Tokyo timezone with more concrete information.
2698         Remove the test.
2699
2700         * include/stdio.h: Add libc_hidden_proto for ftello.
2701         * libio/ftello.c: Add libc_hidden_def.
2702
2703         [BZ #1140]
2704         * time/tzfile.c (__tzfile_compute): Compute tzname[] values based
2705         on the specified time and not the last entries in the file.  Move
2706         code to determine tzname[] to...
2707         (find_transition): ...here.  Add ugly guess for times before the
2708         first transition.
2709
2710 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
2711
2712         [BZ #3195]
2713         * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found
2714         no entry.
2715         * nscd/nscd_getgr.c (nscd_getgr_r): Likewise.
2716         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2717         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
2718         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
2719
2720         * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler
2721         read mechanism when there are no group members and avoid no-op
2722         read syscall in this case.
2723
2724         [BZ #3242]
2725         * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter.
2726         (__readall): If reading failed due to EAGAIN error wait a bit
2727         and possibly try again.
2728         (__readvall): Likewise.
2729
2730 2007-10-13  Bruno Haible  <bruno@clisp.org>
2731
2732         * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock
2733         when we cannot recode the message.
2734
2735 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
2736
2737         [BZ #4359]
2738         * libio/__freading.c (__freading): Don't return true for
2739         write-only streams.  For read/write streams, check whether we
2740         performed a read operation already.
2741         * libio/Makefile (tests): Add tst-ext2.
2742         * libio/tst-ext2.c: New file.
2743
2744 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2745
2746         * locale/programs/repertoire.c (repertoire_read): Always free
2747         memory for repertoire file name [Coverity CID 270].
2748
2749         * elf/cache.c (save_aux_cache): Free memory allocated for
2750         temporary file name [Coverity CID 267].
2751
2752 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
2753
2754         * misc/Makefile (headers): Add bits/error.h.
2755
2756 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2757
2758         * posix/fnmatch_loop.c: Take rule index returned as part of
2759         findidx return value into account when accessing weights.
2760         * posix/regcomp.c: Likewise.
2761         * posix/regexec.c: Likewise.
2762
2763         * locale/programs/ld-collate.c (collate_read): Optimize a bit.
2764         (skip_to): Fix problems with parameter of elifdef/elifndef.
2765
2766 2007-10-11  Ulrich Drepper  <drepper@redhat.com>
2767
2768         * iconv/gconv_simple.c: Add some branch prediction.
2769
2770 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
2771
2772         * locale/programs/ld-collate.c (collate_read): If ignore_content
2773         and nowtok is tok_define, eat any tok_eol tokens.
2774
2775 2007-10-11  Jakub Jelinek  <jakub@redhat.com>
2776
2777         * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
2778         (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
2779
2780         * inet/netinet/in.h: Don't include bits/socket.h.
2781         * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
2782         macro.
2783         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2784
2785 2007-10-10  Ulrich Drepper  <drepper@redhat.com>
2786
2787         * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
2788         and tok_elifndef.
2789         * locale/programs/locfile-kw.gperf: Likewise.
2790         * locale/programs/ld-collate.c: Implement primitive preprocessor.
2791
2792 2007-10-10  Jakub Jelinek  <jakub@redhat.com>
2793
2794         * stdio-common/printf-parse.h: Include string.h and wchar.h.
2795         (__find_specwc): Change into __extern_always_inline function.
2796         (__find_specmb): Likewise.  Remove ps argument.  Use __strchrnul.
2797         (__parse_one_specmb): Remove ps argument.
2798         * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
2799         Adjust __find_specmb and __parse_one_specmb callers.
2800         * stdio-common/printf-prs.c (parse_printf_format): Likewise.
2801         * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
2802         Removed.
2803         (__parse_one_specmb): Remove ps argument, adjust __find_specmb
2804         caller.
2805
2806 2007-10-09  Ulrich Drepper  <drepper@redhat.com>
2807
2808         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
2809         with some Pentium Ds.
2810
2811 2007-10-08  Ulrich Drepper  <drepper@redhat.com>
2812
2813         * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
2814         __read not read.
2815         * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
2816         __write not write.
2817
2818 2007-10-07  Ulrich Drepper  <drepper@redhat.com>
2819
2820         [BZ #181]
2821         * locale/C-time.c: Set week_1stday data to 19971201.
2822         * locale/programs/ld-time.c (time_finish): Default for
2823         first_workday is Monday.
2824
2825         [BZ #2633]
2826         * wcsmbs/wchar.h: Move many C99 functions into std namespace.
2827
2828         [BZ #5103]
2829         * posix/glob.c (glob): Recognize patterns starting \/.
2830         * posix/tst-gnuglob.c (find_file): Handle absolute path names.
2831         (main): Add test for pattern starting \/.
2832
2833         * misc/error.h: Use __const instead of const.
2834         * misc/bits/error.h: Likewise.
2835
2836 2007-10-07  Andreas Jaeger  <aj@suse.de>
2837
2838         * include/bits/error.h: New file.
2839
2840         * misc/bits/error.h (error_at_line): Fix prototype.
2841
2842 2007-10-06  Ulrich Drepper  <drepper@redhat.com>
2843
2844         [BZ #3924]
2845         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
2846         more little bugs in creating the stack frame when pltexit has to
2847         be called.
2848
2849         * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
2850         * nscd/connections.c (verify_persistent_db): Recognize circular lists.
2851
2852         [BZ #4407]
2853         * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
2854         * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
2855         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
2856         * math/libm-test.inc: Add test for this case.
2857
2858         [BZ #5010]
2859         * sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
2860         (svc_register): Initialize sc_mapped.  Set to TRUE if call to
2861         map service succeeded.
2862         (svc_is_mapped): New function.
2863         (svc_unregister): Use it before trying to unmap service.
2864
2865 2007-10-05  Ulrich Drepper  <drepper@redhat.com>
2866
2867         * timezone/zic.c: Update from tzcode2007h.
2868
2869         [BZ #5063]
2870         * timezone/africa: Update from tzdata2007h.
2871         * timezone/antarctica: Likewise.
2872         * timezone/asia: Likewise.
2873         * timezone/australasia: Likewise.
2874         * timezone/europe: Likewise.
2875         * timezone/leapseconds: Likewise.
2876         * timezone/northamerica: Likewise.
2877         * timezone/southamerica: Likewise.
2878         * timzeone/zone.tab: Likewise.
2879
2880         [BZ #5104]
2881         * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
2882
2883         [BZ #5113]
2884         * string/bits/string2.h (__strdup): Cast parameters to calloc to
2885         avoid warning with -Wconversion.
2886         (__strndup): Likewise.
2887         Half the patch by Christian Iseli <christian.iseli@licr.org>.
2888
2889         [BZ #5112]
2890         * nscd/connections.c (restart): Don't resync if database is
2891         disabled.  Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
2892
2893         * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
2894         struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.
2895
2896         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
2897         evetnfd_read, eventfd_write.
2898         * sysdeps/unix/sysv/linux/eventfd.c: New file.
2899         * sysdeps/unix/sysv/linux/eventfd_read.c: New file.
2900         * sysdeps/unix/sysv/linux/eventfd_write.c: New file.
2901         * sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
2902         * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
2903         eventfd_write for GLIBC_2.7.
2904
2905         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
2906         * sysdeps/unix/sysv/linux/signalfd.c: New file.
2907         * sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
2908         * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
2909
2910 2007-10-04  Jakub Jelinek  <jakub@redhat.com>
2911
2912         * stdlib/msort.c: Include stdint.h.
2913         (struct msort_param): New type.
2914         (msort_with_tmp): Use struct msort_param pointer for unchanging
2915         parameters.  Add optimized handling for several common sizes
2916         and indirect sorting mode.
2917         (qsort): Adjust msort_with_tmp callers.  For big S use indirect
2918         sorting.
2919         Suggested by Belazougui Djamel .
2920
2921         * stdlib/Makefile (tests): Add tst-qsort2.
2922         * stdlib/tst-qsort2.c: New test.
2923
2924 2007-10-04  Ulrich Drepper  <drepper@redhat.com>
2925
2926         * login/login_tty.c (login_tty): The Linux kernel can return EBUSY
2927         for dup2 in case another thread races with the current one.  Retry
2928         in this case.
2929
2930         * misc/error.h: Remove support for use outside of libc.  We have to
2931         include <features.h> now.  Include <bits/error.h> if possible.
2932         * misc/bits/error.h: New file.
2933
2934 2007-10-03  Jakub Jelinek  <jakub@redhat.com>
2935
2936         * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
2937         bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
2938         __extern_always_inline functions unconditionally, drop macros.
2939
2940         * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
2941         * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
2942         __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
2943
2944         * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
2945         add __artificial__ attribute.
2946
2947 2007-10-02  Ulrich Drepper  <drepper@redhat.com>
2948
2949         * string/strcoll_l.c (STRCOLL): Correct handling of switching from
2950         backward to forward direction.
2951
2952         * string/strcoll_l.c (STRCOLL): Correct test for alloca use.
2953
2954         [BZ #645]
2955         * locale/programs/ld-collate.c (collate_finish): Compare against last
2956         used section which is known to have rules defined.
2957         (collate_read): After order_start, correctly record order of sections
2958         and queue sections up.
2959
2960 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
2961
2962         [BZ #5071]
2963         * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
2964         the same number of pages.
2965         Patch by Tomash Brechko <tomash.brechko@gmail.com>.
2966
2967         * locale/programs/ld-collate.c (collate_read): After initial copy
2968         statement, continue in state 0.
2969
2970         * include/stdio_ext.h (__fsetlocking): Define as macro.
2971
2972 2007-09-30  Ulrich Drepper  <drepper@redhat.com>
2973
2974         * locale/programs/ld-collate.c (collate_finish): Compare all bytes
2975         of section order.
2976
2977         * po/pt_BR.po: Fix typo.
2978
2979 2007-09-29  Ulrich Drepper  <drepper@redhat.com>
2980
2981         * iconvdata/Makefile (modules): Add ISO8859-9E.
2982         (distribute): Add iso8859-9e.c.
2983         (gen-8bit-gap-modules): Add iso8859-9e.
2984         * iconvdata/iso8859-9e.c: New file.
2985         * iconvdata/gconv-modules: Add entries for ISO-8859-9E.
2986         * iconvdata/TESTS: Likewise.
2987         * iconvdata/tst-tables.sh: Likewise.
2988
2989         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
2990
2991         * locale/iso-639.def: Add several new entries.
2992
2993 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
2994
2995         * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
2996         void * pointers instead of struct link_map **.
2997         (_dl_scope_free): Change argument type to void *.
2998         * include/link.h (struct link_map): Change type of l_reldeps
2999         to struct link_map_reldeps, move l_reldepsact into that
3000         struct too.
3001         * elf/dl-deps.c: Include atomic.h.
3002         (_dl_map_object_deps): Only change l->l_initfini when it is
3003         fully populated, use _dl_scope_free for freeing it.  Optimize
3004         removal of libs from reldeps by using l_reserved flag, when
3005         some removal is needed, allocate a new list instead of
3006         reallocating and free the old with _dl_scope_free.  Adjust
3007         for l_reldeps and l_reldepsact changes.
3008         * elf/dl-lookup.c (add_dependency): Likewise.  Reorganize to allow
3009         searching in l_initfini and l_reldeps without holding dl_load_lock.
3010         * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
3011         l_reldepsact changes.
3012         * elf/dl-close.c (_dl_close_worker): Likewise.
3013         * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
3014
3015 2007-09-28  Ulrich Drepper  <drepper@redhat.com>
3016
3017         * iconvdata/Makefile (modules): Add KOI8-RU.
3018         (distribute): Add koi8-ru.c.
3019         (gen-8bit-gap-modules): Add koi8-ru.
3020         * iconvdata/koi8-ru.c: New file.
3021         * iconvdata/gconv-modules: Add entries for KOI8-RU.
3022         * iconvdata/TESTS: Likewise.
3023         * iconvdata/tst-tables.sh: Likewise.
3024
3025         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
3026
3027 2007-09-26  Jakub Jelinek  <jakub@redhat.com>
3028
3029         * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
3030         with __warning__/__error__ attributes.
3031         (__warnattr): Define.
3032         * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
3033         __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
3034         __warnattr.
3035         (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
3036         of __*_chk if compile time detectable overflow is found.
3037         * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
3038         __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
3039         with __warnattr.
3040         (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
3041         instead of __*_chk if compile time detectable overflow is found.
3042         (__gets_alias): Rename to...
3043         (__gets_warn): ... this.  Add __warnattr.
3044         (gets): Call __gets_warn instead of __gets_alias.
3045         * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
3046         aliases with __warnattr.
3047         (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
3048         time detectable overflow is found.
3049         * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
3050         __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
3051         __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
3052         __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
3053         __getdomainname_chk_warn): New aliases with __warnattr.
3054         (read, pread, pread64, readlink, readlinkat, getcwd, confstr,
3055         getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
3056         __*_chk_warn instead of __*_chk if compile time detectable overflow
3057         is found.
3058         (__getgroups_chk): Rename argument to __listlen from listlen.
3059         (__getwd_alias): Rename to...
3060         (__getwd_warn): ... this.  Add __warnattr.
3061         (getwd): Call __getwd_warn instead of __getwd_alias.
3062         * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
3063         __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
3064         __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
3065         __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
3066         __wcsnrtombs_chk_warn): New aliases with __warnattr.
3067         (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
3068         mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
3069         compile time detectable overflow is found.
3070         (wcsncpy, wcpncpy): Likewise.  For constant __n fix check whether
3071         to use __*_chk or not.
3072         (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
3073         in comparisons which function should be called and in __*_chk*
3074         arguments.  Call __*_chk_warn instead of __*_chk if compile time
3075         detectable overflow is found.
3076         (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
3077         __*_chk argument.
3078         * debug/tst-chk1.c (do_test): Add a few more tests.
3079
3080 2007-09-24  Ulrich Drepper  <drepper@redhat.com>
3081
3082         [BZ #5058]
3083         * intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
3084         * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
3085         (_nl_unload_domain): Finalize conversions_lock.
3086         * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
3087         handling table of known conversions.
3088
3089 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
3090
3091         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
3092         close_not_cancel_no_status instead of close.
3093
3094 2007-09-13  Aurelien Jarno  <aurelien@aurel32.net>
3095
3096         [BZ #5028]
3097         * posix/regcomp.c (lookup_collation_sequence_value): Check that
3098         nrules != 0 for multibyte chars.
3099
3100 2007-09-23  Ulrich Drepper  <drepper@redhat.com>
3101
3102         * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
3103         Provide better error message in case the type is unknown.
3104
3105         [BZ #4963]
3106         * wcsmbs/wcsnlen.c: Don't reference before checking the length.
3107         * string/stratcliff.c: Make usable to test wide char functions.
3108         * wcsmbs/wcsatcliff.c: New file.
3109         * wcsmbs/Makefiel (tests): Add wcsatcliff.
3110
3111         [BZ #4972]
3112         * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
3113         (distribute): Add mac-centraleurope.c.
3114         (gen-8bit-gap-modules): Add mac-centraleurope.
3115         * iconvdata/mac-centraleurope.c: New file.
3116         * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
3117         * iconvdata/TESTS: Likewise.
3118         * iconvdata/tst-tables.sh: Likewise.
3119
3120         [BZ #5043]
3121         * iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
3122
3123 2007-09-21  Ulrich Drepper  <drepper@redhat.com>
3124
3125         * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
3126         from __x86_64_core_cache_size_half.
3127         (init_cacheinfo): Compute shared cache size for AMD processors with
3128         shared L3 correctly.
3129         * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
3130         name change.
3131         Patch in large parts by Evandro Menezes.
3132
3133 2007-09-19  Ulrich Drepper  <drepper@redhat.com>
3134
3135         * elf/dl-lookup.c (add_dependency): Handle failing memory
3136         allocation for dependency list.  Remove unnecessary check.
3137
3138         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
3139         open/close when determining source addresses.
3140
3141         * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
3142         sha512-crypt, and sha512.
3143         (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
3144         (distribute): Add sha256.h and sha512.h.
3145         * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
3146         and call the appropriate code.
3147         * crypt/sha256-crypt.c: New file.
3148         * crypt/sha256.c: New file.
3149         * crypt/sha256.h: New file.
3150         * crypt/sha256c-test.c: New file.
3151         * crypt/sha256test.c: New file.
3152         * crypt/sha512-crypt.c: New file.
3153         * crypt/sha512.c: New file.
3154         * crypt/sha512.h: New file.
3155         * crypt/sha512c-test.c: New file.
3156         * crypt/sha512test.c: New file.
3157
3158 2007-09-19  Jakub Jelinek  <jakub@redhat.com>
3159
3160         * misc/bits/syslog.h (syslog): Remove extraneous argument from
3161         the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
3162         __syslog_chk.
3163
3164 2007-09-18  Jakub Jelinek  <jakub@redhat.com>
3165
3166         * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
3167         %as in fscanf format strings.
3168
3169         * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
3170         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
3171         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
3172         Likewise.
3173         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
3174         Likewise.
3175
3176         * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
3177         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
3178         DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
3179         * elf/dl-sym.c (do_sym): Likewise.
3180         * include/link.h (struct link_map): Add l_serial field.
3181         * elf/dl-object.c (_dl_new_object): Initialize l_serial.
3182         * elf/dl-lookup.c (add_dependency): Add flags argument.
3183         Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
3184         flags, use THREAD_GSCOPE_RESET_FLAG before and
3185         THREAD_GSCOPE_SET_FLAG after
3186         __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
3187         Don't dereference map until it has been found on some list.
3188         If map->l_serial changed, return -1.
3189
3190 2007-09-17  Jakub Jelinek  <jakub@redhat.com>
3191
3192         * include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
3193         __isoc99_sscanf, __isoc99_vscanf): New prototypes.
3194         (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
3195         libc_hidden_proto.
3196         * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
3197         __isoc99_swscanf, __isoc99_vwscanf): New prototypes.
3198         (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
3199         add libc_hidden_proto.
3200         * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
3201         vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
3202         conformance requested.
3203         * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
3204         vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
3205         conformance requested.
3206         * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
3207         vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
3208         conformance requested.
3209         * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
3210         vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
3211         ISO C99 or POSIX conformance requested.
3212         * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
3213         __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
3214         __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
3215         and __isoc99_vsscanf@@GLIBC_2.7.
3216         * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
3217         isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
3218         (tests): Add scanf14.
3219         (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
3220         CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
3221         CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
3222         CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
3223         CFLAGS-isoc99_scanf.c): Add $(exceptions).
3224         (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
3225         from using internal headers.
3226         * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
3227         __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
3228         __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
3229         and __isoc99_vswscanf@@GLIBC_2.7.
3230         * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
3231         isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
3232         (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
3233         CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
3234         (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
3235         * stdio-common/isoc99_scanf.c: New file.
3236         * stdio-common/isoc99_vsscanf.c: New file.
3237         * stdio-common/isoc99_vscanf.c: New file.
3238         * stdio-common/isoc99_vfscanf.c: New file.
3239         * stdio-common/isoc99_fscanf.c: New file.
3240         * stdio-common/isoc99_sscanf.c: New file.
3241         * wcsmbs/isoc99_fwscanf.c: New file.
3242         * wcsmbs/isoc99_vswscanf.c: New file.
3243         * wcsmbs/isoc99_swscanf.c: New file.
3244         * wcsmbs/isoc99_wscanf.c: New file.
3245         * wcsmbs/isoc99_vwscanf.c: New file.
3246         * wcsmbs/isoc99_vfwscanf.c: New file.
3247         * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
3248         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
3249         clear _IO_FLAGS2_SCANF_STD bit from _flags2.
3250         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
3251         handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
3252         * stdio-common/scanf14.c: New test.
3253         * stdio-common/scanf15.c: New test.
3254         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
3255         isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
3256         isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
3257         isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
3258         isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
3259         * sysdeps/ieee754/ldbl-opt/Versions (libc): Export
3260         __nldbl___isoc99_scanf@@GLIBC_2.7,
3261         __nldbl___isoc99_fscanf@@GLIBC_2.7,
3262         __nldbl___isoc99_sscanf@@GLIBC_2.7,
3263         __nldbl___isoc99_vscanf@@GLIBC_2.7,
3264         __nldbl___isoc99_vfscanf@@GLIBC_2.7,
3265         __nldbl___isoc99_vsscanf@@GLIBC_2.7,
3266         __nldbl___isoc99_wscanf@@GLIBC_2.7,
3267         __nldbl___isoc99_fwscanf@@GLIBC_2.7,
3268         __nldbl___isoc99_swscanf@@GLIBC_2.7,
3269         __nldbl___isoc99_vwscanf@@GLIBC_2.7,
3270         __nldbl___isoc99_vfwscanf@@GLIBC_2.7
3271         and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
3272         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
3273         __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
3274         __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
3275         __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
3276         __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
3277         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c
3278         (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
3279         __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
3280         __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
3281         __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
3282         __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
3283         __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
3284         functions.
3285         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
3286         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
3287         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
3288         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
3289         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
3290         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
3291         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
3292         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
3293         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
3294         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
3295         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
3296         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
3297
3298         * stdio-common/Makefile (tests): Add scanf13.
3299         (scanf13-ENV): New.
3300         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
3301         m modifier followed by l.
3302         (STRING_ARG): Add width argument.
3303         (_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
3304         <case L_('C')>: Handle %mlc and %mC.
3305         <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
3306         arguments.
3307         * stdio-common/scanf13.c: New test.
3308
3309         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
3310         the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
3311
3312 2007-09-18  Ulrich Drepper  <drepper@redhat.com>
3313
3314         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
3315         type and __THROW marker of splice, vmsplice, and tee.
3316         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
3317         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
3318         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
3319         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
3320         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
3321         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
3322         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
3323         * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
3324         as cancellation points.
3325
3326 2003-11-01  Daniel Jacobowitz  <dan@debian.org>
3327
3328         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
3329         parse more than three parts of the version number.
3330
3331 2007-09-15  Ulrich Drepper  <drepper@redhat.com>
3332
3333         * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
3334         modifier.  Patch by Jakub Jelinek.
3335
3336 2007-08-26  Jakub Jelinek  <jakub@redhat.com>
3337
3338         * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
3339         call_fallocate in misc subdir.
3340         * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
3341         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
3342         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
3343         instead of __fallocate64.
3344         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
3345
3346 2007-09-15  Jakub Jelinek  <jakub@redhat.com>
3347
3348         * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
3349         * rt/Makefile (headers): Add bits/mqueue2.h.
3350         * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
3351         optimizing with GCC and __va_arg_pack_len is defined.
3352         * rt/bits/mqueue2.h: New file.
3353         * rt/mq_open.c (__mq_open): Renamed from mq_open.
3354         (mq_open): New strong_alias.
3355         (__mq_open_2): New function.
3356         * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
3357         (mq_open): New strong_alias.
3358         (__mq_open_2): New function.
3359         * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
3360         * Versions.def (librt): Add GLIBC_2.7 version.
3361         * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
3362         * include/stdio.h (__fortify_fail): Add libc_hidden_proto.
3363
3364         * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
3365         * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
3366         is defined rather than when not C++.
3367         * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
3368         __openat64_alias): New redirects.
3369         (__open_too_many_args, __open_missing_mode, __open64_too_many_args,
3370         __open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
3371         __openat64_too_many_args, __openat64_missing_mode): New __errordecls.
3372         (open, open64, openat, openat64): Rewrite as __extern_always_inline
3373         functions instead of function-like macros.
3374
3375 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
3376
3377         * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
3378         * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
3379         * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
3380
3381 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
3382
3383         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
3384         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
3385
3386 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
3387
3388         * inet/tst-network.c: Increment ERRORS for failing tests.
3389
3390 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
3391
3392         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
3393         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
3394         implement as __extern_always_inline function.
3395         (vsyslog): Define as __extern_always_inline function unconditionally.
3396         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
3397         When __va_arg_pack is defined, implement as __extern_always_inline
3398         functions.
3399         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
3400         __extern_always_inline functions unconditionally.
3401         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
3402         bits/stdio2.h will be included.
3403         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
3404         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
3405         implement as __extern_always_inline functions.
3406         (vswprintf, vwprintf, vfwprintf): Define as
3407         __extern_always_inline functions unconditionally.
3408         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
3409
3410 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
3411
3412         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
3413         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
3414         attribute.
3415         * include/features.h (__USE_EXTERN_INLINES): Define only when
3416         __extern_inline is defined.
3417         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
3418         is defined instead of when not __cplusplus.
3419         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
3420         is defined instead of when not __cplusplus.
3421         * socket/sys/socket.h: Include bits/socket2.h when
3422         __extern_always_inline is defined instead of when not __cplusplus.
3423         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
3424         is defined instead of when not __cplusplus.
3425         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
3426         is defined instead of when not __cplusplus.
3427         * string/string.h: Include bits/string3.h when __extern_always_inline
3428         is defined instead of when not __cplusplus.
3429         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
3430         is defined instead of when not __cplusplus.
3431         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
3432         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
3433         is not defined.
3434         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
3435         defined __extern_always_inline instead of !defined __cplusplus.
3436         * libio/bits/stdio-ldbl.h: Likewise.
3437         * wcsmbs/bits/wchar-ldbl.h: Likewise.
3438         * misc/bits/syslog.h (syslog): Don't define for C++.
3439         (vsyslog): Use __extern_always_inline function for C++ instead of
3440         a macro.
3441         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
3442         whenever that macro is defined.
3443         (vprintf): Don't provide the inline for C++.
3444         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
3445         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
3446         define the macros for C++.
3447         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
3448         __extern_always_inline functions for C++.
3449         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
3450         stat64, lstat64, fstat64, fstatat64): Don't define if not
3451         __USE_EXTERN_INLINES.
3452         * wcsmbs/bits/wchar2.h: Fix #error message.
3453         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
3454         (vswprintf, vwprintf, vfwprintf): Define using
3455         __extern_always_inline functions for C++.
3456         * string/bits/string3.h: Don't #undef macros if __cplusplus.
3457         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
3458         strncpy, strcat, strncat): Define as __extern_always_inline
3459         functions instead of macros for C++.
3460         * math/bits/cmathcalls.h: Guard __extern_inline routines with
3461         defined __extern_inline.
3462         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
3463         to __extern_inline whenever that macro is defined.
3464         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3465         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3466         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
3467         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
3468         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3469         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3470         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3471         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3472         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
3473         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
3474         prototypes.  Only provide __extern_inline routines if
3475         __USE_EXTERN_INLINES.
3476         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
3477         tests.
3478         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
3479         For now avoid some *printf tests in C++.  Skip all testing
3480         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
3481         is not.
3482         * debug/tst-chk4.cc: New file.
3483         * debug/tst-chk5.cc: New file.
3484         * debug/tst-chk6.cc: New file.
3485         * debug/tst-lfschk4.cc: New file.
3486         * debug/tst-lfschk5.cc: New file.
3487         * debug/tst-lfschk6.cc: New file.
3488         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
3489         prototypes in C++.
3490         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
3491         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
3492         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
3493
3494 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
3495
3496         * po/cs.po: Update from translation team.
3497
3498 2007-09-11  Roland McGrath  <roland@redhat.com>
3499
3500         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
3501         compiling.
3502
3503 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
3504
3505         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
3506
3507 2007-09-05  Roland McGrath  <roland@redhat.com>
3508
3509         * manual/signal.texi (Signaling Another Process): Typo fix.
3510         From Karl Berry <karl@freefriends.org>.
3511