* elf/soinit.c (__EH_FRAME_BEGIN__): Remove.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2008-05-19  Jakub Jelinek  <jakub@redhat.com>
2
3         * elf/soinit.c (__EH_FRAME_BEGIN__): Remove.
4
5 2008-05-19  Ulrich Drepper  <drepper@redhat.com>
6
7         * resolv/res_query.c (__libc_res_nquery): In case one of two
8         answer was too short don't try to read that answer's header.
9
10         * resolv/res_send.c (send_dg): In case of timeout and there are
11         two queries and one has been answered, return value indicating
12         success.
13
14 2008-05-18  Ulrich Drepper  <drepper@redhat.com>
15
16         * nscd/cache.c (cache_add): Take additional parameter specifying
17         whether this is in response of a cache refill.  Check alignment
18         of package data.  Revamp waking of pruning thread.
19         (prune_cache): Small optimization.
20         * nscd/nscd.h: Adjust cache_add prototypes.
21         * nscd/aicache.c: Adjust cache_add calls.
22         * nscd/grpcache.c: Likewise.
23         * nscd/hstcache.c: Likewise.
24         * nscd/initgrcache.c: Likewise.
25         * nscd/pwdcache.c: Likewise.
26         * nscd/servicescache.c: Likewise.
27         * nscd/connections.c (restart): Really disable cache use before
28         exec attempt.  If it fails, reenable cache.
29         (nscd_run_prune): Initialize wakeup_time.  After wakeup, set wakeup
30         time to max to be able to notice concurrent cache additions.  Unlock
31         prune_lock while performing gc.  Afterwards compute wakeup time with
32         current wakeup_time value in mind.
33
34 2008-05-17  Ulrich Drepper  <drepper@redhat.com>
35
36         * nscd/mem.c (gc): Avoid stack overflow when allocating move list.
37
38         * nscd/mem.c (gc): Correctly determine highest used array element
39         in mark.
40
41         * nscd/mem.c (markrange): Add assert to check entries are all
42         aligned.  Small cleanup in bitmap use.
43
44         * nscd/nscd.h (mem_in_flight): Replace blockaddr field with
45         blockoff of type nscd_ssize_t.
46         * nscd/mem.c (gc): Simplify markrange call for on-flight blocks.
47         (mempoll_alloc): Record block offset and not address.
48
49         * nscd/mem.c (gc): Fix test for stack overuse.
50
51         * nscd/aicache.c (addhstaiX): Fix a few small problems, cleanups,
52         more asserts.
53
54         * sysdeps/posix/getaddrinfo.c (gaih_inet): If nscd reports no
55         entry is available, believe it.
56
57         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): If there are
58         no answers return NSS_STATUS_NOTFOUND.
59         (gaih_getanswer): Don't call gaih_getanswer_slice if the answer
60         buffer does not have any content.
61
62 2008-05-16  Ulrich Drepper  <drepper@redhat.com>
63
64         * string/strcasestr.c (CMP_FUNC): Use __strncasecmp, not strncasecmp.
65
66         * sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r
67         lookup, don't assign canon unconditionally.
68
69 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
70
71         * string/Makefile (distribute): Add str-two-way.h.
72
73 2008-03-29  Eric Blake  <ebb9@byu.net>
74
75         Rewrite string searches to O(n) rather than O(n^2).
76         * string/str-two-way.h: New file.  For linear fixed-allocation
77         string searching.
78         * string/memmem.c: New implementation.
79         * string/strstr.c: New implementation.
80         * string/strcasestr.c: New implementation.
81
82 2008-04-11  Paolo Bonzini  <bonzini@gnu.org>
83
84         * posix/regcomp.c (optimize_utf8): Add a note on why we test
85         opr.ctx_type.
86         (calc_first): Initialize constraint field.
87         (duplicate_node_closure): Use it instead of special casing ANCHORS.
88         Use search_duplicated_node to avoid loops.  Fix grammar.
89         (duplicate_node): Merge constraint field for all node types.
90         (calc_eclosure_iter): Look at constraint field for all node types.
91         * posix/regex_internal.c (create_cd_newstate): Don't look at
92         create_cd_newstate.
93
94 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
95
96         [BZ #6428]
97         * configure.in: Don't use $CFLAGS when assembling, use $ASFLAGS.
98
99         [BZ #6442]
100         * string/endian.h: Add macros for fixed-size endian conversion.
101         * bits/byteswap.h: Allow inclusion from <endian.h>.
102         * sysdeps/i386/bits/byteswap.h: Likewise.
103         * sysdeps/ia64/bits/byteswap.h: Likewise.
104         * sysdeps/s390/bits/byteswap.h: Likewise.
105         * sysdeps/x86_64/bits/byteswap.h: Likewise.
106         * string/Makefile (tests): Add tst-endian.
107         * string/tst-endian.c: New file.
108
109         * iconvdata/run-iconv-test.sh: Use = instead of == in test.
110         Patch by Reuben Thomas.
111
112 2008-05-14  Joseph Myers  <joseph@codesourcery.com>
113
114         * iconvdata/Makefile (bug-iconv6-ENV, tst-iconv7-ENV): Define.
115
116 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
117
118         * iconvdata/bug-iconv6.c (do_test): Use de_DE.UTF-8 locale.
119
120         [BZ #6461]
121         * iconv/gconv_simple.c (BODY for __gconv_transform_ascii_internal):
122         Add missing braces.
123         (BODY for __gconv_transform_internal_ascii): Likewise.
124
125         [BZ #6472]
126         * sysdeps/posix/getaddrinfo.c (get_scope): Loopback addresses have
127         to be treated like link-local addresses.
128         (match_prefix): Don't treat IPv4 loopback address special when
129         converting to v4 mapped addressed.
130
131         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Call _res_hconf_init
132         if necessary.
133         * posix/tst-rfc3484.c: Add dummy definition of _res_hconf_init.
134         * posix/tst-rfc3484-2.c: Likewise.
135         * posix/tst-rfc3484-3.c: Likewise.
136
137         * sysdeps/posix/getaddrinfo.c: Implement handling of DCCP, UDPlite,
138         and SCTP.
139
140         * nss/getent.c (ahosts_keys_int): Handle all known socket types.
141
142         * inet/netinet/in.h (IPPIPPROTO_DCCP, IPPROTO_UDPLITE): Define.
143
144         * sysdeps/unix/sysv/linux/bits/socket.h (SOCK_DCCP): Define.
145
146 2008-05-13  Ulrich Drepper  <drepper@redhat.com>
147
148         * po/lt.po: New file.  From Lituanian translation team.
149
150 2008-01-30  Alexandre Oliva  <aoliva@redhat.com>
151
152         Introduce TLS descriptors for i386 and x86_64.
153         * include/inline-hashtab.h: New file, copied from 2005's
154         libiberty, with fix for memory leak imported afterwards by
155         Glauber de Oliveira Costa.
156         * elf/tlsdeschtab.h: New file.
157         * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from...
158         (_dl_allocate_static_tls): ... here.  Rearrange failure path.
159         (CHECK_STATIC_TLS): Move to...
160         * elf/dynamic-link.h: ... this file.
161         (TRY_STATIC_TLS): New macro.
162         * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override.
163         * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL,
164         R_386_TLS_DESC): Define.
165         (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from
166         binutils.
167         (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL,
168         R_X86_64_TLSDESC): Define.
169         (R_386_NUM, R_X86_64_NUM): Adjust.
170         * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines,
171         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
172         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
173         * sysdeps/i386/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
174         release tlsdesc_table.
175         * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h.
176         (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class.
177         (elf_machine_rel): Handle R_386_TLS_DESC.
178         (elf_machine_rela): Likewise.
179         (elf_machine_lazy_rel): Likewise.
180         (elf_machine_lazy_rela): Likewise.
181         * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it.
182         * sysdeps/i386/dl-tlsdesc.S: New file.
183         * sysdeps/i386/dl-tlsdesc.h: New file.
184         * sysdeps/i386/tlsdesc.c: New file.
185         * sysdeps/i386/tlsdesc.sym: New file.
186         * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add
187         tlsdesc_table.
188         * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines,
189         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
190         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
191         * sysdeps/x86_64/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
192         release tlsdesc_table.
193         * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h.
194         (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry.
195         (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class.
196         (elf_machine_rel): Handle R_X86_64_TLSDESC.
197         (elf_machine_rela): Likewise.
198         (elf_machine_lazy_rel): Likewise.
199         * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it.
200         (__tls_get_addr): Do not declare for non-shared compiles.
201         * sysdeps/x86_64/dl-tlsdesc.S: New file.
202         * sysdeps/x86_64/dl-tlsdesc.h: New file.
203         * sysdeps/x86_64/tlsdesc.c: New file.
204         * sysdeps/x86_64/tlsdesc.sym: New file.
205         * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add
206         tlsdesc_table for both 32- and 64-bit structs.
207
208 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
209
210         * elf/dl-tls.c (__tls_get_addr): Optimize by moving slow path in
211         its own function.  This reduces the frame setup costs and more.
212
213 2008-02-11  Joseph Myers  <joseph@codesourcery.com>
214
215         [BZ #3406]
216         * sysdeps/ieee754/flt-32/w_expf.c (o_threshold): Correct value.
217         * math/libm-test.inc (exp_test): Test 88.72269439697265625.
218
219 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
220
221         * io/openat.c (__openat_2): Also pass fd to __openat.
222         * io/openat64.c (__openat64_2): Also pass fd to __openat64.
223         Patch by Kristian Van Der Vliet <vanders@liqwyd.com>.
224
225         * string/tester.c (test_memcmp): Add a few more tests.
226         Patch by Mats Erik Andersson <ynglingatal@comhem.se>.
227
228 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
229
230         * nscd/cache.c (cache_add): Before returning with failure and this
231         is the first use of the record, mark it as unusable.
232         * nscd/aicache.c: Don't touch the dataset after cache_add returns
233         reporting a failure.
234         * nscd/grpcache.c: Likewise
235         * nscd/hstcache.c: Likewise.
236         * nscd/initgrcache.c: Likewise.
237         * nscd/pwdcache.c: Likewise.
238         * nscd/servicescache.c: Likewise.
239
240 2008-05-10  Roland McGrath  <roland@redhat.com>
241
242         [BZ #6505]
243         * sysdeps/unix/sysv/linux/sys/user.h: Replace with #error stub.
244
245 2008-05-08  David S. Miller  <davem@davemloft.net>
246
247         * misc/truncate64.c (truncate64): Use __truncate not truncate.
248
249         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee751_j0l): Use __finitel.
250         (__ieee754_y0l): Likewise.
251         * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise.
252         (__ieee754_y1l): Likewise.
253         * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use __ldexpl.
254         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Kill bogus prototypes for
255         frexpl and ldexpl.  math_private.h provides them and the latter
256         is not even used.
257         (__log1pl): Use __frexpl.
258
259 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
260
261         * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend
262         prototypes.
263         * include/arpa/nameser_compat.h: Define T_UNSPEC.
264         * nis/Versions (libnss_nis): Export _nss_nis_gethostbyname4_r.
265         (libnss_nisplus): Export _nss_nisplus_gethostbyname4_r.
266         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Change to also handle
267         af==AF_UNSPEC.
268         (_nss_nis_gethostbyname4_r): New function.
269         * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent):
270         Change to also handle af==AF_UNSPEC.
271         (get_tablename): New function.  Use it to avoid duplication.
272         (_nss_nisplus_gethostbyname4_r): New function.
273         * nscd/aicache.c (addhstaiX): Use gethostbyname4_r function is
274         available.
275         * nss/Versions (libnss_files): Export _nss_files_gethostbyname4_r.
276         * nss/nss.h: Define struct gaih_addrtuple.
277         * nss/nss_files/files-hosts.c (LINE_PARSER): Change to also handle
278         af==AF_UNSPEC.
279         (_nss_files_gethostbyname4_r): New function.
280         * resolv/Versions (libnss_dns): Export _nss_dns_gethostbyname4_r.
281         * resolv/gethnmaddr.c: Adjust __libc_res_nsearch and __libc_res_nquery
282         calls.
283         * resolv/res_query.c (__libc_res_nquery): Take two additional
284         parameters for second answer buffer.  Handle type=T_UNSPEC to mean
285         look up IPv4 and IPv6.
286         Change all callers.
287         * resolv/res_send.c (__libc_res_nsend): Take five aditional parameters
288         for an additional query and answer buffer.  Pass to send_vc and
289         send_dg.
290         (send_vc): Send possibly two requests and receive two answers.
291         (send_dg): Likewise.
292         * resolv/nss_dns/dns-host.c: Adjust calls to __libc_res_nsearch and
293         __libc_res_nquery.
294         (_nss_dns_gethostbyname4_r): New function.
295         (gaih_getanswer_slice): Likewise.
296         (gaih_getanswer): Likewise.
297         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Adjust
298         __libc_res_nquery call.
299         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
300         (_nss_dns_getnetbyname_r): Adjust __libc_res_nsearch call.
301         * sysdeps/posix/getaddrinfo.c: Use gethostbyname4_r function is
302         available.
303
304 2008-05-05  David S. Miller  <davem@davemloft.net>
305
306         * sysdeps/sparc/sparc32/Makefile: Use -mcpu=v7 for initfini.s build.
307         * sysdeps/sparc/sparc64/Makefile: Use -mcpu=v9 for initfini.s build.
308
309 2007-09-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
310
311         Fix termios bit macros.
312         Move *DLY definitions where they belong, in termios.h.
313         Add *[0-3] definitions.
314         Fixes confusion between VT and FF.
315         * sysdeps/mach/hurd/bits/ioctls.h (NL0, NL1, TAB0, TAB1, TAB2, CR0,
316         CR1, CR2, CR3, FF0, FF1, BS0, BS1): Undefine these at start if they
317         are already defined to avoid collision with termios.h.
318         (NLDLY, TABDLY, TAB3, CRDLY, VTDLY, BSDLY): Remove macros.
319         * bits/termios.h [__USE_MISC || __USE_XOPEN] (NL0, NL1, TAB0,
320         TAB1, TAB2, CR0, CR1, CR2, CR3, FF0, FF1, BS0, BS1): Likewise.
321         [__USE_BSD || __USE_XOPEN] (OCRNL, ONOCR, ONLRET): New macros.
322         [__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, TABDLY, TAB0, TAB1, TAB2,
323         TAB3, CRDLY, CR0, CR1, CR2, CR3, FFDLY, FF0, FF1, BSDLY, BS0, BS1,
324         VTDLY, VT0, VT1): New macros.
325         [__USE_GNU] (OLCUC): Change value of macro.
326         [__USE_XOPEN] (OFILL): New macro.
327         [__USE_BSD] (CRTSCTS): Change value.
328         (CRTS_IFLOW, CCTS_OFLOW): Change into compatibility macros.
329         [__USE_BSD] (CDTRCTS, CHWFLOW): New macros.
330         (B7200, B14400, B28800, B76800): New macros.
331
332 2008-05-01  David S. Miller  <davem@davemloft.net>
333
334         * sysdeps/unix/sysv/linux/sparc/sparc32/ucontext_i.sym: New file.
335         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile [$(subdir) = stdlib]:
336         (gen-as-const-headers): Add it.
337         * sysdeps/unix/sysv/linux/sparc/sparc32/getcontext.S: New file.
338         * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c: Likewise.
339         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Likewise.
340         * sysdeps/unix/sysv/linux/sparc/sparc32/swapcontext.S: Likewise.
341
342         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for
343         six system call parameters.
344         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise.
345
346 2008-04-30  Ulrich Drepper  <drepper@redhat.com>
347
348         * sysdeps/unix/sysv/linux/bits/resource.h: Define RUSAGE_THREAD and
349         RUSAGE_LWP.
350         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
351         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
352
353 2008-04-30  Jakub Jelinek  <jakub@redhat.com>
354
355         * stdlib/tst-setcontext.c: Include unistd.h.
356
357 2008-04-25  David S. Miller  <davem@davemloft.net>
358
359         * sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl):
360         Pass "union semun" properly in to sys_ipc, it must be passed
361         by value, not by reference.
362
363 2008-04-22  Jakub Jelinek  <jakub@redhat.com>
364
365         * nscd/Makefile (nscd-cflags): Set back to -fpie.
366         * nscd/nscd.h (mem_in_flight): Add attribute_tls_model_ie.
367         * nscd/connections.c (mem_in_flight): Likewise.
368
369         * nscd/nscd.h (dbs): Make hidden.
370
371         * sysdeps/unix/sysv/linux/times.c (__times): Fix check for EFAULT.
372         Avoid returning -1, return 0 instead.
373
374 2008-04-19  Ulrich Drepper  <drepper@redhat.com>
375
376         * resolv/res_mkquery.c (__res_nopt): Use NS_PUT16 instead of ns_put16.
377
378 2008-04-15  Ulrich Drepper  <drepper@redhat.com>
379
380         [BZ #5209]
381         * sysdeps/unix/sysv/linux/times.c: New file.
382
383         [BZ #5381]
384         * nscd/nscd.h: Define enum in_flight, mem_in_flight, and
385         mem_in_flight_list variables.  Add new parameter to mempool_alloc
386         prototype.
387         * nscd/mem.c (mempool_alloc): Take additional parameter.  Initialize
388         appropriate mem_in_flight element.
389         (gc): Take allocations which have not yet been committed to the
390         database into account.
391         * nscd/cache.c (cache_add): Add new parameter to mempool_alloc call.
392         Reset mem_in_flight before returning.
393         * nscd/connections.c (nscd_run_worker): Initialize mem_in_flight and
394         cue it up in mem_in_flight_list.
395         * nscd/aicache.c: Adjust mempool_alloc call.
396         * nscd/grpcache.c: Likewise.
397         * nscd/hstcache.c: Likewise.
398         * nscd/initgrcache.c: Likewise.
399         * nscd/pwdcache.c: Likewise.
400         * nscd/servicescache.c: Likewise.
401         * nscd/Makefile (nscd-flags): Until ld is fixed, use -fpic instead
402         of -fpie.
403
404         * nscd/connections.c (handle_request): Provide better error message
405         in case SELinux forbids the service.
406
407         * version.h (VERSION): Bump to 2.8.90.
408
409 2008-04-17  Jakub Jelinek  <jakub@redhat.com>
410
411         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include fcntl.h.
412
413 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
414
415         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h (__signbitl):
416         Also use for 32-bit.
417         * sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c (__nearbyintl): Use
418         __nextafter instead of nextafter to avoid local PLT.
419         * sysdeps/powerpc/fpu/e_sqrt.c: Avoid call to fetestexcept.
420         * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
421
422         * scripts/data/localplt-powerpc64-linux-gnu.data: New file.
423
424         * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for
425         __fe_nomask_env.
426         * sysdeps/powerpc/fpu/fe_nomask.c: Add libm_hidden_def.  Include
427         <fenv_libc.h> instead of <fenv.h>.
428         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise.
429         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise.
430
431         * sysdeps/powerpc/bits/fenv.h: Make safe for C++.
432
433         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: New file.
434         * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Rename
435         function from fegetexcept and make old name weak alias.
436         * include/fenv.h: Declare __fegetexcept.
437         * sysdeps/powerpc/fpu/fedisblxcpt.c: Use __fegetexcept instead of
438         fegetexcept.
439         * sysdeps/powerpc/fpu/feenablxcpt.c: Likewise.
440         * sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Avoid call
441         to fetestexcept.
442         * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Use __frexpl
443         instead of frexpl to avoid local PLT.
444         * math/s_significandl.c (__significandl): Use __ilogbl instead of
445         ilogbl to avoid local PLT.
446         * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __ldexpl
447         instead of ldexpl to avoid local PLT.
448         * sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use
449         __roundl not roundl to avoid local PLT.
450         * sysdeps/ieee754/ldbl-128/e_j0l.c: Use function names which avoid
451         local PLTs.  Use __sincosl instead of separate sinl and cosl
452         calls.
453         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
454
455         * sysdeps/unix/sysv/linux/configure.in: Bump minimal kernel
456         version for ppc64 to 2.4.21 since without it makecontext will fail.
457
458         * elf/tls-macros.h [__powerpc64__] (__TLS_GET_ADDR): Define according
459         to the ABI in use.
460         [__powerpc64__] (TLS_LD): Use __TLS_GET_ADDR instead of
461         .__tls_get_addr.
462         [__powerpc64__] (TLS_GD): Likewise.
463
464 2007-11-20  Ryan S. Arnold  <rsa@us.ibm.com>
465
466         [BZ #4997]
467         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Fixed erroneous
468         result when x is +/-nextafter(+/-0.5,-/+1) i.e. all 1's in the
469         mantissa.
470         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
471         Likewise.  Also account for when x is an odd number between 2^52
472         and 2^53-1.
473         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Likewise.
474         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
475         * math/libm-test.inc (lround_test, llround_test): Added test cases to
476         detect aforementioned erroneous conditions.
477
478 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
479
480         * configure.in: Check for -fno-section-anchors in addition to
481         -fno-toplevel-reorder.
482
483 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
484
485         * include/features.h (__GLIBC_MINOR__): Bump to 8.
486
487         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: Remove duplicate comment.
488         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: Likewise.
489         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: Likewise.
490         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: Likewise.
491         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: Likewise.
492         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: Likewise.
493
494 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
495
496         [BZ #5443]
497         * time/era.c: Transform __libc_setlocale_lock into rwlock.
498         * time/alt_digit.c: Likewise.
499         * wcsmbs/wcsmbsload.c: Likewise.
500
501 2008-04-10  Ulrich Drepper  <drepper@redhat.com>
502
503         * version.h (VERSION): Bump to 2.8.
504
505         * timzeone/asia: Update from tzdata2008b.
506         * timezone/backward: Likewise.
507         * timezone/europe: Likewise.
508         * timezone/northamerica: Likewise.
509         * timezone/southamerica: Likewise.
510         * timezone/iso3166.tab: Likewise.
511         * timezone/leapseconds: Likewise.
512         * timezone/zone.tab: Likewise.
513         * timezone/private.h: Update from tzcode2008a.
514         * timezone/zdump.c: Likewise.
515         * timezone/zic.c: Likewise.
516
517 2008-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
518
519         [BZ #5741]
520         * sysdeps/powerpc/powerpc64/dl-machine.h (PPC_DCBT, PPC_DCBF):
521         Define additonal Data Cache Block instruction macros.
522         (elf_machine_fixup_plt): Add dcbt for opd and plt entries.
523         Replace dcbst with dcbf and sync with sync/isync.
524
525 2008-02-21  Alan Modra  <amodra@bigpond.net.au>
526
527         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_type_class):
528         Always set ELF_RTYPE_CLASS_PLT.
529         (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): Delete.
530
531 2008-04-03  Steven Munroe  <sjmunroe@us.ibm.com>
532
533         * sysdeps/powerpc/powerpc32/power4/hp-timing.c: New file.
534         * sysdeps/powerpc/powerpc32/power4/hp-timing.h: New file.
535         * sysdeps/powerpc/powerpc64/hp-timing.h [_ARCH_PWR4] (HP_TIMING_NOW):
536         For ISA 2.01 and later replace mftb with mfspr 268.
537
538 2008-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
539
540         [BZ #5768]
541         * sysdeps/powerpc/fpu/Makefile (libm-tests): Add test-powerpc-snan.
542         * sysdeps/powerpc/fpu/test-powerpc-snan.c: New file.
543
544 2008-02-18  Steven Munroe  <sjmunroe@us.ibm.com>
545
546         [BZ #5768]
547         * sysdeps/powerpc/powerpc32/fpu/s_isnan.S: New file.
548         * sysdeps/powerpc/powerpc32/fpu/s_isnan.c: Removed.
549         * sysdeps/powerpc/powerpc64/fpu/s_isnan.S: New file.
550         * sysdeps/powerpc/powerpc64/fpu/s_isnan.c: Removed.
551
552 2008-04-10  Jakub Jelinek  <jakub@redhat.com>
553
554         * stdlib/tst-makecontext.c (othervar): New variable.
555         (cf): Test sign extending the argument to long.
556
557 2008-03-03  Steven Munroe  <sjmunroe@us.ibm.com>
558
559         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: New file.
560         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: New file.
561         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: New file.
562         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: New file.
563         * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: New file.
564         * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: New file.
565         * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: New file.
566
567 2008-02-22  Alan Modra  <amodra@bigpond.net.au>
568
569         * elf/Makefile (tests): Substitute tests-vis-yes here.
570         (tests-vis-yes): Delete.
571         (modules-name, modules-vis-yes): Similarly.
572
573 2008-02-12  Pete Eberlein  <eberlein@us.ibm.com>
574
575         [BZ #4407]
576         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r):
577         Preserve sign in signgamp when x is zero.
578
579 2007-10-26  Steven Munroe  <sjmunroe@us.ibm.com>
580
581         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: New File.
582         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: Removed.
583         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: New File.
584         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c: Removed.
585         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: New File.
586         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: New File.
587
588 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
589
590         [BZ #4314]
591         * sysdeps/i386/i686/memcpy.S: Optimize copying of equally aligned
592         buffers.
593
594         [BZ #5209]
595         * sysdeps/unix/sysv/syscalls.list: The times syscall doesn't have
596         a reserved error value.
597
598         * stdlib/tst-makecontext.c: Change parameter to cf to negative
599         value to check for correct sign extension.
600
601         [BZ #5436]
602         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
603         Copy 64-bit parameter values even though this is not required in
604         the standard.
605
606         * sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
607         PC save.
608
609 2008-02-14  Daniel Jacobowitz  <dan@codesourcery.com>
610
611         * sysdeps/unix/sysv/linux/i386/vfork.S (__vfork): Record return
612         PC save.
613
614 2008-04-09  Jakub Jelinek  <jakub@redhat.com>
615
616         * nss_files/files-XXX.c (_nss_files_getXXent_r): Restore saved errno.
617
618 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
619
620         [BZ #5998]
621         * libio/iofwrite.c (_IO_fwrite): Return correct count if flushing
622         in line-buffered stream failed.
623         * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
624
625 2008-04-08  Ulrich Drepper  <drepper@redhat.com>
626
627         [BZ #6024]
628         * scripts/abi-versions.awk: If the version specified by
629         --enable-oldest-abi is older than the first version for this
630         architecture, use the default version.
631
632         * locale/programs/ld-collate.c (collate_read): Ignore script lines
633         as well when ignoring the whole category.
634
635 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
636
637         [BZ #6042]
638         * sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more
639         ETHERTYPE_* definitions.
640         Patch partly by Aurelien Jarno <aurelien@aurel32.net>.
641
642 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
643
644         * stdlib/mbtowc.c (__no_r_state): Remove.
645         (mbtowc): New static state variable.  Use it instead of
646         __no_r_state.
647         * stdlib/wctomb.c (__no_r_state): Remove extern decl.
648         (__wctomb_state): New hidden variable.
649         (wctomb): Use __wctomb_state instead of __no_r_state.
650         * debug/wctomb_chk.c (__no_r_state): Remove extern decl.
651         (__wctomb_state): New extern decl.
652         (__wctomb_chk): Use __wctomb_state instead of __no_r_state.
653
654 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
655
656         [BZ #5475]
657         * resolv/res_init.c: Handle scope IDs in resolv.conf.
658
659 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
660
661         * malloc/mtrace.pl: Use $@ instead of $* to keep perl 5.10 quiet.
662
663 2008-04-06  Ulrich Drepper  <drepper@redhat.com>
664
665         * po/nl.po: Update from translation team.
666
667 2008-03-31  Ulrich Drepper  <drepper@redhat.com>
668
669         [BZ #6007]
670         * string/strfry.c: Handle empty strings again.
671
672 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
673
674         [BZ #5443]
675         * intl/dcigettext.c (__dcigettext): Get reader lock for locale data
676         before looking for translation.
677         * locale/duplocale.c: Transform __libc_setlocale_lock into rwlock.
678         * locale/freelocale.c: Likewise.
679         * locale/newlocale.c: Likewise.
680         * locale/setlocale.c: Likewise.
681         Based partially on a patch by ryo@np.css.fujitsu.com.
682
683 2008-03-30  Jakub Jelinek  <jakub@redhat.com>
684
685         * intl/dcigettext.c (_nl_find_msg): Reread nconversions after
686         acquiring wrlock.  Do conv_tab allocation while holding lock.
687         * intl/Makefile: Add rules to build and run tst-gettext6.
688         * intl/tst-gettext6.c: New test.
689         * intl/tst-gettext6.sh: New file.
690
691 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
692
693         * po/nl.po: Update from translation team.
694
695         * sysdeps/unix/opendir.c (__alloc_dir): If allocation fails for size
696         provided through st_blksize, try the default size before giving up.
697
698 2008-03-29  Ulrich Drepper  <drepper@redhat.com>
699
700         * stdio-common/vfprintf.c (vfprintf): Correct overflow test.
701
702         [BZ #5939]
703         * sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection.
704
705         * posix/getopt.c (_getopt_internal_r): Remove old POSIX-demanded
706         error message.  POSIX today does not require the messages to be in
707         a specific form.  Suggested by Jim Meyering <jim@meyering.net>.
708
709         [BZ #5979]
710         * sunrpc/auth_unix.c: Unify printed strings.
711         * sunrpc/clnt_tcp.c: Likewise.
712         * sunrpc/clnt_udp.c: Likewise.
713         * sunrpc/clnt_unix.c: Likewise.
714         * sunrpc/svc_tcp.c: Likewise.
715         * sunrpc/svc_udp.c: Likewise.
716         * sunrpc/svc_unix.c: Likewise.
717         * sunrpc/xdr.c: Likewise.
718         * sunrpc/xdr_array.c: Likewise.
719         * sunrpc/xdr_rec.c: Likewise.
720         * sunrpc/xdr_ref.c: Likewise.
721         * locale/programs/ld-time.c (time_finish): Unify messages.
722         * locale/programs/locfile.c (handle_copy): Fix typo.
723         * nscd/nscd.c (options): Fix typo.
724
725         [BZ #5995]
726         * stdlib/strtod_l.c: Use correct sign for result in one more
727         underflow case.
728         Patch by Eric Blake <ebb9@byu.net>.
729
730 2008-03-27  Jakub Jelinek  <jakub@redhat.com>
731
732         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Add open
733         and creat system calls.
734         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove open system
735         call.
736         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove open and creat
737         system calls.
738         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
739         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
740         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
741
742 2008-03-27  Ulrich Drepper  <drepper@redhat.com>
743
744         * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if
745         <linux/limits.h> has defined it.
746         * sysdeps/unix/sysv/linux/sys/param.h: Define NCARGS to the legacy
747         ARG_MAX value and prevent ARG_MAX from being defined by the kernel
748         headers.
749         * sysdeps/unix/sysv/linux/sysconf.c: Define legacy_ARG_MAX and use
750         it instead of ARG_MAX.
751
752 2008-03-25  Jakub Jelinek  <jakub@redhat.com>
753
754         * posix/gai.conf: Fix comment for scope nullbits.
755         * sysdeps/posix/getaddrinfo.c (gaiconf_init): If /bits is not present,
756         default to 128 bits for v4 mapped addresses.
757
758 2008-03-07  Martin Schwidefsky  <schwidefsky@de.ibm.com>
759
760         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Remove PTRACE_PEEKUSER
761         ptrace call to get the ieee_instruction_pointer from the kernel.
762         * sysdeps/s390/fpu/fesetenv.c (fesetenv): Remove PTRACE_POKEUSER
763         ptrace call to set the ieee_instructtion_pointer.
764         * sysdeps/unix/sysv/linux/s390/sys/user.h (struct _user_regs_struct):
765         Add comment that ieee_instruction_pointer is always 0.
766
767 2008-03-09  Andreas Jaeger  <aj@suse.de>
768
769         [BZ #5857]
770         * sysdeps/ieee754/dbl-64/s_rint.c (__rint): Handle j0==18.
771         * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Likewise.
772         Patch by Mark Elliott <mark.h.elliott@lmco.com>.
773
774         * math/libm-test.inc (nearbyint_test): Add new test cases from #5857.
775         (rint_test): Likewise.
776
777 2008-03-24  Ulrich Drepper  <drepper@redhat.com>
778
779         * nis/nis_call.c (nis_server_cache_search): Save errno around stat
780         call.
781         (__nisfind_server): Similar for open readColdStartFile call.
782         Patch partially by Jim Meyering.
783         * nss/nss_files/files-XXX.c (_nss_files_getXXent_r): Save errno
784         around internal_setent call.
785
786         * po/vi.po: New Vietnamese translation.
787
788         * sysdeps/unix/sysv/linux/adjtime.c: Correctly use
789         ADJ_OFFSET_SS_READ.
790
791         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags,
792         remove CLONE_STOPPED.
793
794 2008-02-10  Jim Meyering  <meyering@redhat.com>
795
796         Remove useless "if" before "free":
797         * elf/ldconfig.c (parse_conf_include): Likewise.
798         * gmon/gmon.c (weak_alias): Likewise.
799         * iconv/gconv_conf.c (__gconv_get_path): Likewise.
800         * inet/rcmd.c (__validuser2_sa): Likewise.
801         * intl/bindtextdom.c (set_binding_values): Likewise.
802         * intl/loadmsgcat.c (_nl_load_domain, _nl_unload_domain): Likewise.
803         * libio/genops.c (save_for_backup): Likewise.
804         * libio/wgenops.c (save_for_wbackup): Likewise.
805         * locale/programs/ld-collate.c (collate_read): Likewise.
806         * locale/programs/linereader.c (get_string): Likewise.
807         * nis/nss_compat/compat-pwd.c (give_pwd_free): Likewise.
808         * nis/nss_compat/compat-spwd.c (give_spwd_free): Likewise.
809         * resolv/res_debug.c (do_section): Likewise.
810         * sunrpc/xdr_sizeof.c (x_inline, xdr_sizeof): Likewise.
811         * sysdeps/mach/hurd/if_index.c (libc_hidden_def): Likewise.
812         * sysdeps/posix/sprofil.c (__sprofil): Likewise.
813         * time/lc-time-cleanup.c (_nl_cleanup_time): Likewise.
814         * time/tzset.c (tzset_internal): Likewise.
815
816 2008-03-18  Jakub Jelinek  <jakub@redhat.com>
817
818         * sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead
819         of ASSEMBLER.
820
821 2008-03-11  Ulrich Drepper  <drepper@redhat.com>
822
823         [BZ #5903]
824         * iconv/iconv_charmap.c (charmap_conversion): Pass name of output file
825         not stream for output file.  Open output file here.
826         * iconv/iconv_prog.c (process_lock): Take pointer to output stream
827         and output file name.
828         (process_fd): Likewise.
829         (process_file): Likewise.
830         (main): Adjust callers of changed functions.
831         * iconv/iconv_prog.h: Adjust prototype.
832
833 2008-03-09  Andreas Jaeger  <aj@suse.de>
834
835         [BZ #5753]
836         * sysdeps/ia64/ieee754.h: Use protected namespace
837         __BIG_ENDIAN/__LITTLE_ENDIAN.
838         * sysdeps/ieee754/ieee754.h: Likewise.
839         Patch by Aurelien Jarno <aurelien@aurel32.net>.
840
841 2008-03-08  Roland McGrath  <roland@frob.com>
842
843         * hurd/hurdsig.c (_hurd_internal_post_signal): When normal rules would
844         ignore a signal that came from a machine exception, treat it as a
845         fatal core-dump signal instead.
846         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
847
848         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
849         Clear DF bit in thread state's eflags.
850         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
851
852 2008-03-08  Ulrich Drepper  <drepper@redhat.com>
853
854         [BZ #5774]
855         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Consume closing brace
856         of NAN(...) sequence.
857         * stdlib/Makefile (tests): Add tst-strtod6.
858         * stdlib/tst-strtod6.c: New file.
859
860         * inet/inet6_opt.c (inet6_opt_init): Check extlen for overflow.
861
862         [BZ #5762]
863         * posix/getopt.c (_getopt_internal_r): Clarify error message by
864         putting offending option character in quotes.  Clean up error
865         messages.
866         * po/be.po: Adjust msgstr in translation file.
867         * po/bg.po: Likewise.
868         * po/ca.po: Likewise.
869         * po/cs.po: Likewise.
870         * po/da.po: Likewise.
871         * po/de.po: Likewise.
872         * po/es.po: Likewise.
873         * po/fr.po: Likewise.
874         * po/hr.po: Likewise.
875         * po/ko.po: Likewise.
876         * po/nl.po: Likewise.
877         * po/rw.po: Likewise.
878         * po/sk.po: Likewise.
879         * po/sv.po: Likewise.
880         * po/tr.po: Likewise.
881         * po/zh_CN.po: Likewise.
882         * po/zh_TW.po: Likewise.
883
884         [BZ #5760]
885         * inet/inet6_opt.c (inet6_opt_init): Fix ip6h_len computation.
886         Patch by Roland Bless <roland@bless.de>.
887
888         * sysdeps/unix/sysv/linux/dl-sysdep.c: Avoid unnecessary code for
889         .o file.
890         * elf/Makefile (routines): Add dl-sysdep.
891         (elide-routines.os): Likewise.
892
893 2008-03-07  Ulrich Drepper  <drepper@redhat.com>
894
895         [BZ #5786]
896         * elf/dl-sysdep.c: Undefine ROUND after use.
897         * sysdeps/generic/ldsodefs.h [HAVE_DL_DISCOVER_OSVERSION]
898         (struct rtld_global_ro): Add _dl_tls_get_addr_soft element.
899         * elf/rtld.c (rtld_global_ro): Initialize _dl_discover_osversion.
900         * sysdeps/unix/sysv/linux/dl-osinfo.h: Move _dl_discover_osversion
901         to ...
902         * sysdeps/unix/sysv/linux/dl-sysdep.c: ...here.
903         * sysdeps/unix/sysv/linux/dl-sysdep.h: Declare _dl_discover_osversion
904         if necessary.
905         * sysdeps/unix/sysv/linux/sysconf.c: Handle _SC_ARG_MAX here.
906
907         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
908         _dl_tls_get_addr_soft element.
909         * elf/rtld.c (rtld_global_ro): Initialize _dl_tls_get_addr_soft.
910         * elf/Versions (ld): Don't export _dl_tls_get_addr_soft.
911         * dlfcn/dlinfo.c (dlinfo_doit): Access dl_tls_get_addr_soft through
912         GLRO.
913         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
914         * elf/dl-tls.c (_dl_tls_get_addr_soft): Use attribute_hidden instead
915         of internal_function.
916
917         * stdlib/Makefile (aux): Add tens_in_limb.
918         * stdlib/strtod_l.c: Move _tens_in_limb definition to...
919         * stdlib/tens_in_limb.c: ...here.  New file.
920
921         [BZ #5778]
922         * sysdeps/unix/sysv/linux/pathconf.h: Declare
923         __statfs_chown_restricted.
924         * sysdeps/unix/sysv/linux/fpathconf.c: Call __statfs_chown_restricted
925         for _PC_CHOWN_RESTRICTED.
926         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
927         Implement __statfs_chown_restricted.
928         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change
929         _POSIX_CHOWN_RESTRICTED value to zero.
930         * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED
931         defined to zero.
932
933         * sysdeps/x86_64/rtld-memset.c: New file.
934
935 2008-02-26  Harsha Jagasia  <harsha.jagasia@amd.com>
936
937         * sysdeps/x86_64/cacheinfo.c (NOT_USED_RIGHT_NOW): Remove ifdef guards.
938
939         * sysdeps/x86_64/memset.S: Rewrite non-SSE code path as tuned for AMD
940         Barcelona machine.  Make default fall through branch of
941         __x86_64_preferred_memory_instruction check as the integer code path.
942
943 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
944
945         * sysdeps/x86_64/cacheinfo.c
946         (__x86_64_preferred_memory_instruction): New variable.
947         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
948
949         * sysdeps/x86_64/memset.S: Rewrite.
950
951 2008-03-04  Jakub Jelinek  <jakub@redhat.com>
952
953         * include/stdio.h (__asprintf_chk, __dprintf_chk,
954         __obstack_printf_chk): New prototypes.
955         (__vasprintf_chk, __vdprintf_chk,
956         __obstack_vprintf_chk): Likewise.
957         Add libc_hidden_proto.
958         * libio/obprintf.c
959         (_IO_obstack_jumps): No longer static, add attribute_hidden.
960         * libio/bits/stdio-ldbl.h (__asprintf_chk, __dprintf_chk,
961         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
962         __obstack_vprintf_chk): Add __LDBL_REDIR_DECL.
963         * libio/bits/stdio2.h (__asprintf_chk, __dprintf_chk,
964         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
965         __obstack_vprintf_chk): New prototypes.
966         (asprintf, __asprintf, dprintf, obstack_printf, vasprintf, vdprintf,
967         obstack_vprintf): New inlines.
968         * debug/dprintf_chk.c: New file.
969         * debug/vdprintf_chk.c: New file.
970         * debug/asprintf_chk.c: New file.
971         * debug/vasprintf_chk.c: New file.
972         * debug/obprintf_chk.c: New file.
973         * debug/tst-chk1.c (do_test): Add asprintf and obstack_printf tests.
974         * debug/Versions (__asprintf_chk, __dprintf_chk, __obstack_printf_chk,
975         __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Export
976         @@GLIBC_2.8.
977         * debug/Makefile: Build asprintf_chk, vasprintf_chk, dprintf_chk,
978         vdprintf_chk and obprintf_chk, set CFLAGS for them.
979         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vasprintf_chk,
980         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): Add
981         libc_hidden_proto.
982         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl___vasprintf_chk,
983         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): New prototypes.
984         * sysdeps/ieee754/ldbl-opt/Versions (__nldbl___asprintf_chk,
985         __nldbl___vasprintf_chk, __nldbl___dprintf_chk, __nldbl___vdprintf_chk,
986         __nldbl___obstack_printf_chk, __nldbl___obstack_vprintf_chk): Export
987         @@GLIBC_2.8.
988         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add asprintf_chk,
989         vasprintf_chk, dprintf_chk, vdprintf_chk, obstack_printf_chk and
990         obstack_vprintf_chk.
991         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf_chk.c: New file.
992         * sysdeps/ieee754/ldbl-opt/nldbl-dprintf_chk.c: New file.
993         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf_chk.c: New file.
994         * sysdeps/ieee754/ldbl-opt/nldbl-asprintf_chk.c: New file.
995         * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf_chk.c: New file.
996         * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf_chk.c: New file.
997
998 2008-03-04  Ulrich Drepper  <drepper@redhat.com>
999
1000         [BZ #5779]
1001         * misc/sys/queue.h: Add STAILQ_CONCAT and TAILQ_CONCAT definitions.
1002         Patch by Roy Marples <roy@marples.name>.
1003
1004         [BZ #5736]
1005         * malloc/malloc.c: Fix typo in comment.
1006
1007         [BZ #5627]
1008         * locale/iso-639.def: Add Shuswap.
1009
1010 2008-02-25  Jakub Jelinek  <jakub@redhat.com>
1011
1012         [BZ #5790]
1013         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Don't
1014         overwrite *h_errnop/*errnop values from getanswer_r in case of
1015         failure.
1016
1017 2008-03-03  Ulrich Drepper  <drepper@redhat.com>
1018
1019         [BZ #5818]
1020         * nscd/connections.c (dbs): Add initializers for .suggested_module.
1021         (verify_persistent_db): Remove one unnecessary test and add a new one
1022         for bad configuration.
1023         (nscd_init): Improve error reported when persistent database cannot
1024         be reused.
1025         * nscd/nscd.h (DEFAULT_SUGGESTED_MODULE): Define.
1026         * nscd/nscd_conf.c (nscd_parse_file): Provide default values for
1027         .suggested_module and .max_db_size and case config file says the
1028         values are zero.
1029         * nscd/nscd_helper.c (get_mapping): Fail if hash table module is zero.
1030
1031         [BZ #5854]
1032         * nis/ypclnt.c (yp_order): Fix handling of return value of
1033         do_ypcall_tr call.
1034         Patch by Jeff Moyer <jmoyer@redhat.com>.
1035
1036         * po/fr.po: Update from translation team.
1037
1038 2008-02-22  Andreas Jaeger  <aj@suse.de>,
1039             Carlos O'Donell <carlos@systemhalted.org>
1040
1041         [BZ #5012]
1042         * FAQ.in: Describe why glibc needs to be compiled with
1043         optimization.
1044
1045 2008-02-19  Roland McGrath  <roland@redhat.com>
1046
1047         * elf/elf.h (SHT_GNU_ATTRIBUTES): New macro.
1048
1049 2008-02-15  Ulrich Drepper  <drepper@redhat.com>
1050
1051         [BZ #5737]
1052         * resolv/netdb.h: Make NI_MAXHOST and NI_MAXSERV available when
1053         __USE_MISC is defined.
1054
1055 2008-02-10  Ulrich Drepper  <drepper@redhat.com>
1056
1057         * sysdeps/unix/sysv/linux/sys/timerfd.h: New file.
1058         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add
1059         sys/timerfd.h.
1060         * sysdeps/unix/sysv/linux/syscalls.list: Add timerfd_create,
1061         timerfd_gettime, timerfd_settime.
1062         * sysdeps/unix/sysv/linux/Versions: Add timerfd_create,
1063         timerfd_gettime, timerfd_settime for GLIBC_2.8.
1064
1065 2008-02-08  Roland McGrath  <roland@redhat.com>
1066
1067         * elf/elf.h (NT_PPC_SPE): New macro.
1068
1069 2008-02-06  Roland McGrath  <roland@redhat.com>
1070
1071         * Makerules ($(common-objpfx)sysd-rules):
1072         Depend on $(sysdep-makeconfigs).
1073
1074 2008-01-31  Roland McGrath  <roland@redhat.com>
1075
1076         [BZ #5442]
1077         * configure.in: Use -print-file-name if it yields a directory,
1078         for each of include and include-fixed.
1079         * configure: Regenerated.
1080
1081         * Makeconfig (sysd-rules-targets): New variable.
1082         * sysdeps/unix/make-syscalls.sh: Use it in the rules emitted.
1083         * sysdeps/unix/Makefile (omit-deps): Append variants for each target.
1084
1085 2008-01-30  Roland McGrath  <roland@redhat.com>
1086
1087         * manual/libc.texinfo: Update back-cover text.
1088
1089         * elf/elf.h (NT_386_TLS): New macro.
1090
1091 2008-01-29  Roland McGrath  <roland@redhat.com>
1092
1093         * Makeconfig (sysd-rules-patterns): New variable.
1094         * Makerules ($(common-objpfx)sysd-rules): Drive the loop from that.
1095         (check-inhibit-asm): New canned sequence, replaces ...
1096         (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed.
1097         * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands.
1098         (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld.
1099         (CFLAGS-rtld): Variable removed.
1100
1101 2008-01-24  Roland McGrath  <roland@redhat.com>
1102
1103         * configure.in: Let configure fragments set base_os.
1104         * configure: Regenerated.
1105
1106 2008-01-22  Ulrich Drepper  <drepper@redhat.com>
1107
1108         * po/ko.po: Update from translation team.
1109
1110 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
1111
1112         * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw.
1113
1114 2008-01-12  Andreas Jaeger  <aj@suse.de>
1115
1116         [BZ #5040]
1117         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS):
1118         Add EPOLLRDHUP.
1119
1120 2008-01-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1121
1122         * hurd/hurdsock.c (_hurd_socket_server): Return the standard
1123         error EAFNOSUPPORT rather than non-standard EPFNOSUPPORT.
1124         * sunrpc/bindrsvprt.c (bindresvport): Likewise.
1125
1126 2007-10-23  Alexandre Oliva  <aoliva@redhat.com>
1127
1128         * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define.
1129         * elf/dl-close.c (_dl_close): Check for it.
1130         * elf/dl-reloc.c (CHECK_STATIC_TLS): Likewise.
1131         (_dl_allocate_static_tls): Likewise.
1132         * elf/dl-tls.c (_dl_allocate_tls_init): Likewise.
1133         (__tls_get_addr): Protect from race conditions in setting l_tls_offset
1134         to it.
1135         * elf/tst-tls16.c: New file.
1136         * elf/tst-tlsmod16a.c: New file.
1137         * elf/tst-tlsmod16b.c: New file.
1138         * elf/Makefile: Add rules to build and run tst-tls16.
1139
1140 2008-01-16  Ulrich Drepper  <drepper@redhat.com>
1141
1142         [BZ #5628]
1143         * bits/shm.h: Fix comment describing shmid_ds.
1144         * sysdeps/gnu/bits/shm.h: Likewise.
1145         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
1146         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1147         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1148         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1149         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1150         * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise.
1151         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1152         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1153         Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>.
1154
1155         [BZ #5607]
1156         * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate
1157         prototypes.
1158         * conform/data/limits.h-data: Adjust limits changed in v6 and add
1159         additional suffixes.
1160         * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry.
1161         Add optional functions mq_timedreceive and mq_timedsend.
1162         * conform/data/netdb.h-data: Add more AI_* and EAI_* constants.
1163         * conform/data/pthread.h-data: Fix prototype of
1164         pthread_condattr_setclock.  pthread_sigmask is not required in v6.
1165         * conform/data/semaphore.h-data: Allow time.h definitions.
1166         * conform/data/signal.h-data: Likewise.
1167         * conform/data/stdio.h-data: getw and putw are not required in v6.
1168         * conform/data/stdlib.h-data: Change setstate prototype.
1169         * conform/data/string.h-data: Fix strerror_r prototype.
1170         * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition.
1171         * conform/data/unistd.h-data: pthread_atfork not required in v6.
1172         Fix readlink prototype.
1173         * conform/data/netinet/in.h-data: Add const to in6addr_any and
1174         in6addr_loopback.
1175         * inet/netinet/in.h: Cleanup namespace.
1176         * posix/regex.h: Likewise.
1177         * resolv/netdb.h: Likewise.
1178         * sysdeps/unix/sysv/linux/bits/in.h: Likewise.
1179         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1180         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
1181         * sysdeps/posix/getaddrinfo.c (default_labels): Adjust for change
1182         of names of in in6_addr.
1183         (default_precedence): Likewise.
1184         * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for
1185         NULL definition.
1186
1187 2008-01-15  Ulrich Drepper  <drepper@redhat.com>
1188
1189         * conform/data/fmtmsg.h-data: Add missing allows.
1190         * conform/data/ftw.h-data: Likewise.
1191         * conform/data/inttypes.h-data: Likewise.
1192         * conform/data/math.h-data: Likewise.
1193         * conform/data/signal.h-data: Likewise.
1194         * conform/data/net/if.h-data: Likewise.
1195         * conform/data/netinet/in.h-data: Likewise.
1196         * conform/data/sys/socket.h-data: Likewise.
1197
1198         [BZ #5614]
1199         * string/bits/string2.h (__strtok_r_1c): Always update *__NEXTP.
1200         (__strtok_r): Simplify.
1201         * string/tester.c (test_strtok_r): Add test case for futile search
1202         with single-character seach string.
1203
1204 2008-01-12  Ulrich Drepper  <drepper@redhat.com>
1205
1206         * po/ko.po: Update from translation team.
1207
1208 2008-01-11  Andreas Jaeger  <aj@suse.de>
1209
1210         [BZ #5600]
1211         * sysdeps/unix/sysv/linux/sys/signalfd.h (struct
1212         signalfd_siginfo): Use 64-bit type for ssi_ptr to sync with Linux
1213         kernel header.
1214
1215 2008-01-10  Ulrich Drepper  <drepper@redhat.com>
1216
1217         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result of
1218         native interface lookup in all the relevant places.
1219
1220 2008-01-10  Jakub Jelinek  <jakub@redhat.com>
1221             Ulrich Drepper  <drepper@redhat.com>
1222
1223         * sysdeps/posix/getaddrinfo.c (sort_results): Remove service_order
1224         field.  Use sockaddr_in6 for source_addr.
1225         (get_scope): Change type of parameter to sockaddr_in6.  Adjust.
1226         (match_prefix): Likewise.
1227         (get_label): Likewise.
1228         (get_precedence): Likewise.
1229         (rfc3484_sort): Change to use indirect access to results array.
1230         Adjust to use of sockaddr_in6.  Replace service_order test with
1231         simple index comparison.
1232         (getaddrinfo): Define order array.  Initialize it.  Don't initialize
1233         service_order field.  Adjust qsort_t calls.  Access sorted result
1234         array indirectly through order array.
1235         * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort.
1236         * posix/tst-rfc3484-2.c: Likewise.
1237         * posix/tst-rfc3484-3.c: Likewise.
1238
1239 2008-01-09  Ulrich Drepper  <drepper@redhat.com>
1240
1241         [BZ #5541]
1242         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Also free xports and
1243         pollfd structures.
1244         Patch by AndrĂ© Cruz.
1245
1246         [BZ #5545]
1247         * sunrpc/clnt_perr.c (clnt_sperror): Don't use fixed size buffer.
1248         (clnt_spcreateerror): Likewise.
1249
1250         [BZ #5553]
1251         * malloc/malloc.c (public_mALLOc): Set ar_ptr when trying main_arena.
1252         (public_mEMALIGn): Likewise.
1253         Patch mostly by Daniel Jacobowitz.
1254
1255 2008-01-09  Jakub Jelinek  <jakub@redhat.com>
1256
1257         * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): Avoid
1258         clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size.
1259         * stdlib/Makefile: Add rules to build and run tst-makecontext2.
1260         * stdlib/tst-makecontext2.c: New test.
1261
1262 2008-01-08  Jakub Jelinek  <jakub@redhat.com>
1263
1264         * iconv/loop.c (UPDATE_PARAMS): Define to empty statement if not
1265         defined.
1266         (REINIT_PARAMS): Likewise.  Undefine before end of file.
1267         (STANDARD_TO_LOOP_ERR_HANDLER): Use UPDATE_PARAMS before calling
1268         transliteration hooks and REINIT_PARAMS afterwards.
1269         * iconvdata/iso-2022-jp.c (BODY): Use a separate variable for
1270         status.
1271         (REINIT_PARAMS): Define.
1272         * iconvdata/ibm1364.c (REINIT_PARAMS): Likewise.
1273         * iconvdata/ibm930.c (REINIT_PARAMS): Likewise.
1274         * iconvdata/ibm933.c (REINIT_PARAMS): Likewise.
1275         * iconvdata/ibm935.c (REINIT_PARAMS): Likewise.
1276         * iconvdata/ibm937.c (REINIT_PARAMS): Likewise.
1277         * iconvdata/ibm939.c (REINIT_PARAMS): Likewise.
1278         * iconvdata/iso-2022-cn.c (REINIT_PARAMS): Likewise.
1279         * iconvdata/iso-2022-cn-ext.c (REINIT_PARAMS): Likewise.
1280         * iconvdata/iso-2022-jp-3.c (REINIT_PARAMS): Likewise.
1281         * iconvdata/iso-2022-kr.c (REINIT_PARAMS): Likewise.
1282         * iconvdata/Makefile: Add rules to build and run tst-iconv7.c.
1283         * iconvdata/tst-iconv7.c: New test.
1284
1285 2008-01-07  Ulrich Drepper  <drepper@redhat.com>
1286
1287         * libio/stdio.h (vscanf): Fix definition for loser compilers.
1288
1289 2008-01-05  Jakub Jelinek  <jakub@redhat.com>
1290
1291         [BZ #5112]
1292         * nscd/connections.c (restart): Fix condition.
1293
1294 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
1295
1296         * ctype/ctype.h (__ctype_b_loc, __ctype_tolower_loc,
1297         __ctype_toupper_loc): Add __THROW.
1298
1299 2008-01-02  Ulrich Drepper  <drepper@redhat.com>
1300
1301         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Fix
1302         recognition of interface family.
1303
1304         * posix/getconf.c: Update copyright year.
1305         * nss/getent.c: Likewise.
1306         * iconv/iconvconfig.c: Likewise.
1307         * iconv/iconv_prog.c: Likewise.
1308         * elf/ldconfig.c: Likewise.
1309         * catgets/gencat.c: Likewise.
1310         * csu/version.c: Likewise.
1311         * elf/ldd.bash.in: Likewise.
1312         * elf/sprof.c (print_version): Likewise.
1313         * locale/programs/locale.c: Likewise.
1314         * locale/programs/localedef.c: Likewise.
1315         * nscd/nscd.c (print_version): Likewise.
1316         * debug/xtrace.sh: Likewise.
1317         * malloc/memusage.sh: Likewise.
1318         * malloc/mtrace.pl: Likewise.
1319         * debug/catchsegv.sh: Likewise.
1320
1321 2007-12-26  Ulrich Drepper  <drepper@redhat.com>
1322
1323         * nss/nsswitch.c (__nss_lookup): Actually use alternative name in
1324         second lookup.
1325
1326 2007-12-23  Ulrich Drepper  <drepper@redhat.com>
1327
1328         * sysdeps/x86_64/cacheinfo.c (intel_02_known): New entry 0x3f.
1329         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1330
1331 2007-12-17  Roland McGrath  <roland@redhat.com>
1332
1333         * inet/ether_line.c (ether_line): Remove unused variable.
1334
1335 2007-12-17  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1336
1337         * login/forkpty.c (forkpty): Add const qualifier to parameters termp
1338         and winp.
1339         * login/openpty.c (openpty): Likewise.
1340         * login/pty.h (openpty, forkpty): Likewise.
1341         * manual/terminal.texi (openpty, forkpty): Likewise.
1342
1343 2007-12-17  Ulrich Drepper  <drepper@redhat.com>
1344
1345         * malloc/malloc.c (public_cALLOc): For arenas other than
1346         main_arena, count all bytes inside the mprotect_size range of the
1347         heap as uninitialized.
1348
1349 2007-12-16  Ulrich Drepper  <drepper@redhat.com>
1350
1351         * elf/tst-execstack.c (do_test): Don't fail if SELinux forbids
1352         executable stacks.
1353
1354         * malloc/malloc.c (public_mTRIm): Iterate over all arenas and call
1355         mTRIm for all of them.
1356         (mTRIm): Additionally iterate over all free blocks and use madvise
1357         to free memory for all those blocks which contain at least one
1358         memory page.
1359         * malloc/tst-trim1.c: New file.
1360         * malloc/Makefile (tests): Add tst-trim1.
1361
1362         * malloc/malloc.c (do_check_malloc_state): Minimal cleanups.
1363
1364 2007-12-14  Ulrich Drepper  <drepper@redhat.com>
1365
1366         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P):
1367         First cast argument to long
1368         * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday):
1369         Return long.
1370         (__vdso_clock_gettime): Likewise.
1371         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions
1372         return long.
1373
1374 2007-12-13  Ulrich Drepper  <drepper@redhat.com>
1375
1376         * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l.
1377         * locale/nl_langinfo_l.c: Real implementation, copied from
1378         nl_langinfo.c.
1379         * include/langinfo.h: Add libc_hidden_proto for __nl_langinfo_l.
1380
1381 2007-12-01  Jim Meyering  <meyering@redhat.com>
1382
1383         * posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
1384         that would inhibit utf8-optimization of a regexp containing line-
1385         or buffer-anchors, e.g., `^', `$'.
1386
1387 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
1388
1389         * time/bug-getdate1.c (do_test): Don't use century values which
1390         aren't valid on 32-bit systems.
1391
1392 2007-12-12  Jakub Jelinek  <jakub@redhat.com>
1393
1394         * sysdeps/i386/i486/bits/string.h (memmove): Define as macro.
1395         (memmove): Rename to __memmove_g, with __asm__ ("memmove").
1396         * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g,
1397         __strcat_g, __strncat_g): Add __asm__.
1398
1399 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
1400
1401         [BZ #5477]
1402         * io/fchmodat.c: Fix typo in stub_warning use.
1403         Patch by Petr Salinger.
1404
1405 2007-12-11  Ulrich Drepper  <drepper@redhat.com>
1406
1407         * iconvdata/hp-thai8.c: New file.
1408         * iconvdata/Makefile: Add rules for hp-thai8.c.
1409         * iconvdata/tst-tables.sh: Add entry for HP-THAI8.
1410         * iconvdata/gconv-modules: Likewise.
1411
1412         [BZ #5464]
1413         * iconvdata/hp-greek8.c: New file.
1414         * iconvdata/Makefile: Add rules for hp-greek8.c.
1415         * iconvdata/tst-tables.sh: Add entry for HP-GREEK8.
1416         * iconvdata/gconv-modules: Likewise.
1417
1418         [BZ #5463]
1419         * iconvdata/hp-turkish8.c: New file.
1420         * iconvdata/Makefile: Add rules for hp-turkish8.c.
1421         * iconvdata/tst-tables.sh: Add entry for HP-TURKISH8.
1422         * iconvdata/gconv-modules: Likewise.
1423
1424         * malloc/arena.c (grow_heap): Split out code to shrink heap into...
1425         (shrink_heap): ... this new function.
1426         (heap_trim): Call shrink_heap instead of grow_heap.
1427
1428         * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this
1429         case don't call alloc_perturb.
1430
1431 2007-12-10  Ulrich Drepper  <drepper@redhat.com>
1432
1433         * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if
1434         possible.
1435         * sysdeps/unix/sysv/linux/kernel-features.h
1436         (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24.
1437         * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define.
1438
1439 2007-12-08  Ulrich Drepper  <drepper@redhat.com>
1440
1441         [BZ #5424]
1442         * stdio-common/vfprintf.c: Do not overflow when adding to done.
1443         * stdio-common/Makefile (tests): Add bug22.
1444         * stdio-common/bug22.c: New file.
1445
1446         [BZ #5451]
1447         * time/getdate.c: Fix filling in default values.
1448         * time/bug-getdate1.c: New file.
1449         * time/Makefile: Add rules to build and run bug-getdate1.
1450
1451         * iconvdata/ebcdic-is-friss.c: Use 8bit-gap instead of 8bit-generic.
1452         * iconvdata/ebcdic-es.c: Likewise.
1453         * iconvdata/ebcdic-es-a.c: Likewise.
1454         * iconvdata/ebcdic-uk.c: Likewise.
1455         * iconvdata/iso8859-16.c: Likewise.
1456         * iconvdata/viscii.c: Likewise.
1457         * iconvdata/iso8859-9e.c: Likewise.
1458         * iconvdata/Makefile: Adjust appropriately.
1459
1460         [BZ #5428]
1461         * wcsmbs/wchar.h: Unconditionally undefine __need_mbstate and
1462         __need_wint_t.
1463
1464 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
1465
1466         [BZ #5427]
1467         * iconvdata/hp-roman9.c: New file.
1468         * iconvdata/Makefile: Add rules for hp-roman9.c.
1469         * iconvdata/tst-tables.sh: Add HP-ROMAN9.
1470         * iconvdata/gconv-modules: Likewise.
1471
1472         * iconvdata/hp-roman8.c: Use 8bit-gap instead of 8bit-generic.
1473         * iconvdata/Makefile: Adjust appropriately.
1474
1475         [BZ #5441]
1476         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free
1477         structure, it's allocated with alloca.
1478         * stdio-common/Makefile (tests): Add bug21.
1479         * stdio-common/bug21.c: New file.
1480
1481 2007-12-06  Aurelien Jarno  <aurelien@aurel32.net>
1482
1483         [BZ #5452]
1484         * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__
1485         keyword for gcc's braced-groups.
1486
1487 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
1488
1489         [BZ #5454]
1490         * inet/ether_line.c: Strip hostname of whitespaces.
1491         * inet/Makefile (tests): Add tst-ether_line.
1492         * inet/tst-ether_line.c: New file.
1493
1494 2007-12-03  Ulrich Drepper  <drepper@redhat.com>
1495
1496         [BZ #5439]
1497         * sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull.
1498
1499         [BZ #5435]
1500         * sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack.
1501
1502         * stdlib/tst-setcontext.c: Catch the case where the links gets
1503         messed up and we do not reach main again.
1504
1505         * po/ca.po: Update from translation team.
1506
1507 2007-11-26  Ulrich Drepper  <drepper@redhat.com>
1508
1509         * posix/unistd.h: Declare fsync also for __USE_XOPEN2K.
1510         * posix/regex.h (REG_ENOSYS): Likewise.
1511         * wcsmbs/wchar.h: Define __need_file also for __USE_XOPEN2K.
1512
1513 2007-11-25  Ulrich Drepper  <drepper@redhat.com>
1514
1515         * nscd/nscd.h (MAX_STACK_USE): Define.
1516         * nscd/mem.c (MAX_STACK_USE): Remove definition here.
1517         (gc): Initialize stack_used based on allocation in prune_cache.
1518         * nscd/cache.c (prune_cache): Use heap for mark array if necessary.
1519         Clear array before use.
1520
1521         * nscd/aicache.c (addhstaiX): Update statistics counter in case
1522         memory allocation failed.
1523         * nscd/hstcache.c (cache_addhst): Likewise.
1524         * nscd/grpcache.c (cache_addgr): Likewise.
1525         * nscd/servicescache.c (cache_addserv): Likewise.
1526         * nscd/pwdcache.c (cache_addpw): Likewise.
1527         * nscd/initgrcache.c (addinitgroupsX): Likewise.
1528
1529 2007-11-23  Ulrich Drepper  <drepper@redhat.com>
1530
1531         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add open
1532         and creat system calls.
1533
1534         * sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>.
1535
1536 2007-11-23  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1537
1538         * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers):
1539         Add netiucv/iucv.h.
1540         * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file.
1541         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV
1542         protocol.
1543         * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise.
1544         * sysdeps/unix/sysv/linux/s390/opensock.c: New file.
1545         * sysdeps/unix/sysv/linux/s390/sa_len.c: New file.
1546
1547 2007-11-22  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1548
1549         * sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat,
1550         strncat): Define as macros to avoid compile errors.
1551
1552         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list:  Add open and
1553         creat entries.
1554
1555 2007-11-22  Ulrich Drepper  <drepper@redhat.com>
1556
1557         [BZ #5382]
1558         * nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define.
1559         * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE.
1560         * nscd/mem.c (gc): Don't allocate arrays on the stack if they can
1561         overflow it.
1562         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
1563
1564         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1565         Return zero in case the thread library is not NPTL.
1566
1567         [BZ #5375]
1568         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix locking when
1569         initializing interface list.
1570
1571         [BZ #5378]
1572         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
1573         use result of nss_getgrgid_r if nothing was found.  For other
1574         error return with a failure.
1575         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
1576
1577         * locale/programs/ld-collate.c (collate_read): Fix loop to match
1578         macro name.
1579
1580 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
1581
1582         * sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables.
1583         (get_scope): For IPv4 scope, use scopes table.
1584         (fini): Free scopes table if necessary.
1585         (free_scopelist): New function.
1586         (scopecmp): New function.
1587         (gaiconf_init): Also handle scopev4 entries.
1588         * posix/tst-rfc3484.c (do_test): Initialize scopes.
1589         * posix/tst-rfc3484-2.c (do_test): Likewise.
1590         * posix/gai.conf: Document scopev4 defaults.
1591         * posix/Makefile (tests): Add tst-rfc3484-3.
1592         * posix/tst-rfc3484-3.c: New file.
1593
1594         * sysdeps/posix/getaddrinfo.c (default_labels): Describe entry for
1595         Teredo tunnels.
1596         * posix/gai.conf: Update for current default tables.
1597
1598 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
1599
1600         * po/tr.po: Update from translation team.
1601
1602 2007-11-18  Roland McGrath  <roland@frob.com>
1603
1604         * manual/arith.texi (Remainder Functions): Spelling fix.
1605         From Shaun Silk <genix@mysoul.com.au>.
1606
1607         * sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value.
1608
1609 2007-11-17  Ulrich Drepper  <drepper@redhat.com>
1610
1611         * po/zh_CN.po: Update from translation team.
1612
1613         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1614         Add sys/signalfd.h and sys/eventfd.h.
1615
1616 2007-11-15  Bruno Haible  <bruno@clisp.org>
1617
1618         [BZ #5346]
1619         * intl/dcigettext.c (struct known_translation_t): Turn msgid into a
1620         union.
1621         (transcmp): Use the appropriate part of s1->msgid and s2->msgid.
1622         (DCIGETTEXT): Change the allocation of the 'search' variable so that
1623         it needs only fixed stack space. Delay the initialization of
1624         msgid_len until it is needed.
1625
1626 2007-11-15  Andreas Jaeger  <aj@suse.de>
1627
1628         * sysdeps/ieee754/dbl-64/sincos.tbl: Fix size of union.
1629         Reported by Christoph Quirin Lauter <christoph.lauter@ens-lyon.fr>.
1630
1631 2007-11-15  Ulrich Drepper  <drepper@redhat.com>
1632
1633         * po/ko.po: Update from translation team.
1634
1635 2007-11-14  Ulrich Drepper  <drepper@redhat.com>
1636
1637         * sysdeps/unix/sysv/linux/check_native.c (__check_native): Simplify
1638         significantly.  The device type is also part of the ifinfomsg data.
1639
1640         * po/sv.po: Update from translation team.
1641         * po/nl.po: Likewise.
1642
1643         * nscd/cache.c (prune_cache): If cache is empty, instruct caller
1644         to wake up in 24 hours.
1645
1646         * nscd/gai.c (__ioctl): Define.  Include check_native.c.
1647
1648 2007-11-13  Ulrich Drepper  <drepper@redhat.com>
1649
1650         * po/cs.po: Update from translation team.
1651         * po/pl.po: Likewise.
1652
1653         * include/ifaddrs.h: Remove in6ai_temporary.
1654         (struct in6addrinfo): Add index element.
1655         Declare __check_native.
1656         * inet/Makefile (aux): Add check_native.
1657         * sysdeps/unix/sysv/linux/check_native.c: New file.
1658         * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize
1659         IFA_F_TEMPORARY.  Pass back ifa_index.
1660         * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code.
1661         (rfc3484_sort): Add new parameter.  Implement rule 7 correctly:
1662         call __check_native if necessary.
1663         (getaddrinfo): Fill in index field.  Use qsort_r instead of qsort
1664         to sort addresses.  Pass information about the results.
1665         * posix/tst-rfc3484.c: Adjust for addition of index field and change
1666         of rfc3484_sort interface.
1667         * posix/tst-rfc3484-2.c: Likewise.
1668
1669         * stdlib/stdlib.h: Define __compar_d_fn_t.  Declare qsort_r.
1670         * include/stdlib.h: Add hidden_proto for qsort_t and adjust protoype
1671         for _quicksort.
1672         * stdlib/msort.c (qsort): Now a wrapper around qsort_r.
1673         (qsort_r): Renamed from qsort.  Take additional parameter and pass it
1674         on as third parameter to compare function and _quicksort.
1675         * stdlib/qsort.c (_quicksort): Take additional parameter and pass on
1676         to the compare function.
1677         * stdlib/Versions [libc] (GLIBC_2.8): Add qsort_r.
1678         * Versions.def: Add GLIBC_2.8 for libc.
1679
1680         * posix/tst-rfc3484.c: Adjust for addition of prefixlen field.
1681         * posix/tst-rfc3484-2.c: Likewise.
1682
1683         * include/kernel-features.h: Moved to...
1684         * sysdeps/mach/hurd/kernel-features.h: ...here.
1685
1686 2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>
1687
1688         * sysdeps/i386/i586/memcpy_chk.S: New file.
1689         * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
1690         * sysdeps/i386/i586/memset_chk.S: Likewise.
1691
1692 2007-11-12  Ulrich Drepper  <drepper@redhat.com>
1693
1694         * include/ifaddrs.c (struct in6addrinfo): Add prefixlen field.
1695         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return
1696         list of interfaces.  Also store prefix length.
1697         * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element.
1698         (rfc3484_sort): In rule 9, for IPv4 addresses count only matching
1699         prefix if source and destination address are in the same subnet.
1700         (getaddrinfo): Always call __check_pf.  Fill in prefixlen field.
1701         Always look for matching record in in6ai list.
1702         Correct source_addr_len value for IPv6->IPv4 converted records.
1703
1704 2007-11-11  Roland McGrath  <roland@frob.com>
1705
1706         * include/kernel-features.h: New file.
1707
1708 2007-11-10  Ulrich Drepper  <drepper@redhat.com>
1709
1710         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary
1711         complications for 64-bit platforms.
1712
1713         * sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to..
1714         * sysdeps/unix/sysv/linux/open64_2.c: ...here.  New file.
1715         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add
1716         open64_2.
1717         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat
1718         entries.
1719         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1720         * sysdeps/wordsize-64/alphasort.c: New file.
1721         * sysdeps/wordsize-64/alphasort64.c: New file.
1722         * sysdeps/wordsize-64/fseeko.c: New file.
1723         * sysdeps/wordsize-64/fseeko64.c: New file.
1724         * sysdeps/wordsize-64/ftello.c: New file.
1725         * sysdeps/wordsize-64/ftello64.c: New file.
1726         * sysdeps/wordsize-64/ftw.c: New file.
1727         * sysdeps/wordsize-64/ftw64.c: New file.
1728         * sysdeps/wordsize-64/iofgetpos.c: New file.
1729         * sysdeps/wordsize-64/iofgetpos64.c: New file.
1730         * sysdeps/wordsize-64/iofopen.c: New file.
1731         * sysdeps/wordsize-64/iofopen64.c: New file.
1732         * sysdeps/wordsize-64/iofsetpos.c: New file.
1733         * sysdeps/wordsize-64/iofsetpos64.c: New file.
1734         * sysdeps/wordsize-64/lockf.c: New file.
1735         * sysdeps/wordsize-64/lockf64.c: New file.
1736         * sysdeps/wordsize-64/mkostemp.c: New file.
1737         * sysdeps/wordsize-64/mkostemp64.c: New file.
1738         * sysdeps/wordsize-64/mkstemp.c: New file.
1739         * sysdeps/wordsize-64/mkstemp64.c: New file.
1740         * sysdeps/wordsize-64/scandir.c: New file.
1741         * sysdeps/wordsize-64/scandir64.c: New file.
1742         * sysdeps/wordsize-64/tmpfile.c: New file.
1743         * sysdeps/wordsize-64/tmpfile64.c: New file.
1744         * sysdeps/wordsize-64/versionsort.c: New file.
1745         * sysdeps/wordsize-64/versionsort64.c: New file.
1746         * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file.
1747         * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file.
1748         * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file.
1749         * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file.
1750         * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file.
1751         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file.
1752         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file.
1753         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file.
1754         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file.
1755         * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file.
1756         * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file.
1757         * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file.
1758
1759         * crypt/sha256-crypt.c: Fix a comment.
1760         * crypt/sha512-crypt.c: Likewise.
1761
1762 2007-11-07  H.J. Lu  <hongjiu.lu@intel.com>
1763
1764         * sysdeps/x86_64/memset.S: Add sfence after movnti.
1765
1766 2007-11-07  Ulrich Drepper  <drepper@redhat.com>
1767
1768         [BZ #5277]
1769         * iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed
1770         because output buffer is too small break, don't loop.
1771         * iconvdata/Makefile (tests): Add bug-iconv6.
1772         * iconvdata/bug-iconv6.c: New file.
1773
1774 2007-11-06  Ulrich Drepper  <drepper@redhat.com>
1775
1776         * stdio-common/vfprintf.c (vfprintf): Compute necessary buffer size
1777         with size_t type.
1778         * stdio-common/printf_fp.c (__print_fp): Change chars_needed type to
1779         size_t.  Add casts where needed.
1780
1781         * nscd/selinux.c (nscd_request_avc_has_perm): When compiled with
1782         old headers, don't call avc_has_perm if we don't have the
1783         permission information.
1784
1785 2007-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
1786
1787         * elf/rtld.c (dl_main): Use the page size to find the map start.
1788
1789 2007-11-05  Ulrich Drepper  <drepper@redhat.com>
1790
1791         * time/tzfile.c (__tzfile_read): Fix check for version 0 data files.
1792         Patch by Szymon Siwek <sls@poczta.wp.pl>.
1793
1794         * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup only
1795         when the lookup call failed.
1796
1797         * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock.
1798         Add prune_cond and wakeup_time.
1799         (CACHE_PRUNE_INTERNAL): Define.
1800         Update declarations of prune_cache and setup_thread.
1801         * nscd/connections.c (dbs): Update initializers.
1802         (CACHE_PRUNE_INTERNAL): Moved to nscd.h.
1803         (nscd_init): Default number of threads is now 4.
1804         (invalidate_cache): Take lock before calling prune_cache.
1805         (handle_request): If SELinux forbids the request, say so.
1806         (readylist_cond): Use static initializer.
1807         (nscd_run_prune): New function.  Used only by pruning threads.
1808         (nscd_run_worder): Renamed from nscd_run.  Remove support for pruning
1809         here.
1810         (fd_ready): Update nscd_run reference.
1811         (start_threads): No need to initialize readylist_cond.
1812         Start pruning threads separately.
1813         * nscd/nscd_setup_thread.c: Change return value type to int and always
1814         return 0.
1815         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type
1816         to int and return nonzero value if we can use the TID address hack.
1817         * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for
1818         the database is later than the new entry's timeout, update the
1819         wakeup time and wake the cleanup thread.
1820         (prune_cache): Return seconds the next entry in the database is still
1821         valid.  Remove locking for pruning here.
1822         * nscd/nscd.conf: Document default number of threads.
1823
1824 2007-10-31  Ulrich Drepper  <drepper@redhat.com>
1825
1826         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Make sure
1827         stack is properly aligned for the target function.
1828         Correct unwind info.
1829
1830         * elf/rtld.c (dl_main): Initialize stack and pointer guard early
1831         when using auditing libraries.
1832
1833 2007-10-29  Ulrich Drepper  <drepper@redhat.com>
1834
1835         * resolv/Versions [libresolv] (GLIBC_PRIVATE): Add
1836         _nss_dns_getnetbyaddr2_r.
1837         * resolv/nss_dns/dns-host.c: Define _nss_dns_getnetbyaddr2_r.  Pass
1838         extra parameter to getanswer_r.
1839         (_nss_dns_getnetbyaddr_r): Now a wrapper around
1840         _nss_dns_getnetbyaddr2_r.
1841
1842         * nscd/Makefile (nscd-modules): Replace gethstbynm2_r with
1843         gethstbynm3_r.
1844         * nscd/gethstbynm2_r.c: Remove.
1845         * nscd/gethstbynm3_r.c: New file.
1846         * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of
1847         __gethostbyaddr_r.
1848         * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function.  Define
1849         __gethostbyaddr_r compatibility wrapper.
1850         * nscd/hstcache.c (cache_addhst): Add ttl parameter.  Use it when
1851         determining timeout of entry.
1852         (lookup): Take new parameter and pass it to __gethostbyname3_r and
1853         __gethostbyaddr2_r.
1854         (addhstbyX): Pass reference to variable for TTL to lookup and
1855         cache_addhst.
1856         * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2,
1857         __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2,
1858         and __nss_next2.  Remove __nss_services_lookup.
1859         * nss/XXX-lookup.c: Name function now *_lookup2.  Add new parameter.
1860         Add compat wrapper.
1861         * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and
1862         __nss_next2.
1863         * nss/getXXent_r.c: Likewise.
1864         * nss/getnssent_r.c: Likewise.
1865         * nss/nsswitch.c (__nss_lookup): Add new parameter.  If first function
1866         does not exist in module, try the optional second name.
1867         (__nss_next2): New function.
1868         (__nss_next): Now wrapper around __nss_next2.
1869         * nss/nsswitch.h: Adjust __nss_lookup prototype.
1870         Declare __nss_next2.
1871         Adjust definition of db_lookup_function type.
1872         * nss/service-lookup.c: Define NO_COMPAT.
1873         * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r.
1874         * inet/ether_hton.c: Use __nss_next2 instead of __nss_next.
1875         * inet/ether_ntoh.c: Likewise.
1876         * sunrpc/netname.c: Likewise.
1877         * sunrpc/publickey.c: Likewise.
1878         * inet/getnetgrent.c: Likewise.  Adjust calls to __nss_lookup.
1879         * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2.
1880         * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
1881         * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
1882         * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
1883
1884         * nscd/aicache.c (addhstaiX): Fix default TTL handling.
1885
1886         * inet/getnetgrent.c (setup): Encrypt static pointer.
1887
1888 2007-10-28  Ulrich Drepper  <drepper@redhat.com>
1889
1890         [BZ #5204]
1891         * crypt/sha256c-test.c: Define TIMEOUT to 6 for ancient hardware.
1892         * crypt/sha512c-test.c: Likewise.
1893
1894         [BZ #5225]
1895         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't misuse wp pointer
1896         to keep track of end of %[ format string element.
1897         * stdio-common/Makefile (tests): Add bug20.
1898         * stdio-common/bug20.c: New file.
1899
1900         [BZ #5222]
1901         * elf/dl-load.c (_dl_rtld_di_serinfo): Correct handling of short
1902         path elements in counting mode.
1903
1904 2007-10-27  Andreas Jaeger  <aj@suse.de>
1905
1906         [BZ #5040]
1907         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLRDHUP): Add value.
1908
1909         [BZ #3112]
1910         * sysdeps/ia64/backtrace.c (init): Free shared library if incorrect.
1911         (__cleanup): Free shared library when exiting.
1912         * sysdeps/i386/backtrace.c (init): Free shared library if incorrect.
1913         (__cleanup): Free shared library when exiting.
1914
1915 2006-04-14  H.J. Lu  <hongjiu.lu@intel.com>
1916
1917         [BZ #2549]
1918         * math/libm-test.inc (check_float_internal): Support
1919         denormalized return.
1920
1921 2007-10-23  Andreas Jaeger  <aj@suse.de>
1922
1923         [BZ #5208]
1924         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use
1925         __LONG_LONG_PAIR to handle little endian byte order.
1926         Suggested by abhishekrai@google.com
1927
1928 2007-10-27  Ulrich Drepper  <drepper@redhat.com>
1929
1930         * malloc/arena.c [!NO_THREADS]: Use ATFORK_MEM if defined.
1931
1932 2007-10-26  Ulrich Drepper  <drepper@redhat.com>
1933
1934         * nscd/cache.c (prune_cache): Move test for modified file outside
1935         of locking.
1936
1937 2007-10-21  Andreas Jaeger  <aj@suse.de>
1938
1939         * manual/texinfo.tex: Update to latest version.
1940
1941         * manual/sysinfo.texi (System Parameters): Fix Formatting.
1942
1943         * manual/arith.texi (Status bit operations): Fix formatting.
1944
1945         * manual/errno.texi (Error Messages): Fix formatting.
1946
1947         * manual/sysinfo.texi (System Parameters): Fix formatting.
1948
1949         * manual/libc.texinfo: Update VERSION and UPDATED.
1950
1951 2007-10-19  Roland McGrath  <roland@redhat.com>
1952
1953         * elf/Makefile ($(objpfx)ld.so): Use $(AWK).
1954
1955 2007-10-06  David S. Miller  <davem@davemloft.net>
1956
1957         * configure.in: Add sparcv9v2 and sparc64v2.
1958         * scripts/config.sub: Likewise.
1959         * configure: Regenerate.
1960         * elf/elf.h (HWCAP_SPARC_N2): New.
1961         * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
1962         * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
1963         (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
1964         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
1965         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
1966         * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
1967         * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
1968
1969 2007-10-18  Ulrich Drepper  <drepper@redhat.com>
1970
1971         * sunrpc/clnt_udp.c (clntudp_call): Don't block in recvfrom call
1972         even if the poll result indicates there is data to read.
1973         Patch by Jeff Moyer <jmoyer@redhat.com>.
1974
1975 2007-10-18  Roland McGrath  <roland@redhat.com>
1976
1977         * elf/elf.h (NT_PPC_VMX): New macro.
1978
1979 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
1980
1981         * version.h (VERSION): Set to 2.7.90.
1982
1983 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
1984
1985         * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero.  Add
1986         weak_alias.
1987
1988 2007-10-17  Roland McGrath  <roland@frob.com>
1989
1990         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New.
1991         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it.
1992
1993 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
1994
1995         * version.h (VERSION): Bump to 2.7.
1996         * include/features.h (__GLIBC_MINOR__): Bump to 7.
1997
1998         [BZ #5186]
1999         * time/tzset.c (__tz_convert): Don't force testing for a change of
2000         TZ if not called from localtime.  But then also see whether the
2001         file changed, in case __use_tzfile is set.
2002
2003         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC.
2004         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2005         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2006         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2007         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2008         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
2009         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h:  Likewise.
2010         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
2011
2012 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
2013
2014         * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses
2015         and admin selects to be able to replace the gai.conf file, lock
2016         data structures around the qsort call.
2017
2018 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2019
2020         * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of
2021         new memset.
2022         * sysdeps/x86_64/memset.S: Revert to old version for now.  The cost is
2023         too high for the improvements.  Implement bzero unconditionally for
2024         use in libc.
2025
2026 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2027             Jakub Jelinek  <jakub@redhat.com>
2028
2029         * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available
2030         even when time_t is 32-bit.
2031         (__tzfile_compute): Override POSIX TZ string STD/DST zone names if
2032         timezone data read by __tzfile_default.  Ensure __tzname[0] is
2033         always set after the search.
2034
2035 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
2036
2037         * time/tzfile.c (__tzfile_read): Help the compiler recognize
2038         unreachable code on 32-bit machines.
2039
2040 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2041
2042         [BZ #5184]
2043         * time/strftime_l.c: Include stdbool.h.
2044         (my_strftime): New wrapper, old function renamed to...
2045         (__strftime_internal): ... new function.  Add tzset_called
2046         argument, pass it down to recursive calls, don't call tzset ()
2047         if already true, set to true after call to tzset ().
2048
2049 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
2050
2051         * time/tzfile.c (__tzfile_read): Take extra memory requested by caller
2052         into account when copying TZ string.
2053
2054 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2055
2056         * time/tzfile.c (__tzfile_compute): For use_last case set i to
2057         num_transition rather than num_transitions - 1.
2058
2059 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2060
2061         * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move
2062         PIC indirect jump.
2063
2064         * sysdeps/x86_64/memset.S: Jump from bzero to memset using
2065         a local label rather than HIDDEN_JUMPTARGET.
2066
2067 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
2068
2069         * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define.
2070         (init_cacheinfo): Initialize it.
2071         * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size.
2072         Always define bzero.
2073         Remove non-glibc code.
2074         * sysdeps/x86_64/bzero.S: Make an empty file.
2075
2076 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
2077
2078         * sysdeps/x86_64/cacheinfo.c
2079         (__x86_64_preferred_memory_instruction): New.
2080         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
2081
2082         * sysdeps/x86_64/memset.S: Rewrite.
2083
2084 2007-10-15  Roland McGrath  <roland@redhat.com>
2085
2086         * po/libc.pot: Regenerated.
2087
2088 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
2089
2090         * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct
2091         pointers.
2092
2093         [BZ #3425]
2094         * resolv/nss_dns/dns-host.c (getanswer_r): Fail with
2095         NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no
2096         address record to T_A/T_AAAA requests.
2097
2098 2007-10-14  Ulrich Drepper  <drepper@redhat.com>
2099
2100         * posix/glob.c: Reimplement link_exists_p to use fstatat64.
2101
2102         * posix/glob.c: Add some branch prediction throughout.
2103
2104         * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful
2105         read from nscd.
2106
2107         * sysdeps/posix/getaddrinfo.c (struct sort_result): Add
2108         service_order.
2109         (rfc3484_sort): Make sure that even if qsort doesn't support
2110         stable sorting out sorting here is stable by comparing service_order.
2111         (getaddrinfo): Initialize service_order.
2112         * posix/tst-rfc3484.c (do_test): Adjust for addition of
2113         service_order field to sorting structure.
2114         * posix/tst-rfc3484-2.c (do_test): Likewise.
2115
2116         * include/time.h: Declare __tzset_parse_tz and __tzset_compute.
2117         * time/tzset.c (tzset_internal): Break TZ string parsing out into
2118         __tzset_parse_tz and updating of daylight, timezone, tzname into
2119         update_vars.
2120         (__tz_compute): Renamed from tz_compute.  Take additional parameters.
2121         (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now
2122         happens in __tz_compute.
2123         * time/tzfile.c (__tzfile_read): Also read TZ string.
2124         (find_transition): Fold into __tzfile_compute.
2125         (__tzfile_compute): For times beyond the last transition try to
2126         use the TZ string.
2127         * timezone/tst-timezone.c: Information in daylight and tzname does
2128         change for Asia/Tokyo timezone with more concrete information.
2129         Remove the test.
2130
2131         * include/stdio.h: Add libc_hidden_proto for ftello.
2132         * libio/ftello.c: Add libc_hidden_def.
2133
2134         [BZ #1140]
2135         * time/tzfile.c (__tzfile_compute): Compute tzname[] values based
2136         on the specified time and not the last entries in the file.  Move
2137         code to determine tzname[] to...
2138         (find_transition): ...here.  Add ugly guess for times before the
2139         first transition.
2140
2141 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
2142
2143         [BZ #3195]
2144         * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found
2145         no entry.
2146         * nscd/nscd_getgr.c (nscd_getgr_r): Likewise.
2147         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2148         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
2149         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
2150
2151         * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler
2152         read mechanism when there are no group members and avoid no-op
2153         read syscall in this case.
2154
2155         [BZ #3242]
2156         * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter.
2157         (__readall): If reading failed due to EAGAIN error wait a bit
2158         and possibly try again.
2159         (__readvall): Likewise.
2160
2161 2007-10-13  Bruno Haible  <bruno@clisp.org>
2162
2163         * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock
2164         when we cannot recode the message.
2165
2166 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
2167
2168         [BZ #4359]
2169         * libio/__freading.c (__freading): Don't return true for
2170         write-only streams.  For read/write streams, check whether we
2171         performed a read operation already.
2172         * libio/Makefile (tests): Add tst-ext2.
2173         * libio/tst-ext2.c: New file.
2174
2175 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2176
2177         * locale/programs/repertoire.c (repertoire_read): Always free
2178         memory for repertoire file name [Coverity CID 270].
2179
2180         * elf/cache.c (save_aux_cache): Free memory allocated for
2181         temporary file name [Coverity CID 267].
2182
2183 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
2184
2185         * misc/Makefile (headers): Add bits/error.h.
2186
2187 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2188
2189         * posix/fnmatch_loop.c: Take rule index returned as part of
2190         findidx return value into account when accessing weights.
2191         * posix/regcomp.c: Likewise.
2192         * posix/regexec.c: Likewise.
2193
2194         * locale/programs/ld-collate.c (collate_read): Optimize a bit.
2195         (skip_to): Fix problems with parameter of elifdef/elifndef.
2196
2197 2007-10-11  Ulrich Drepper  <drepper@redhat.com>
2198
2199         * iconv/gconv_simple.c: Add some branch prediction.
2200
2201 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
2202
2203         * locale/programs/ld-collate.c (collate_read): If ignore_content
2204         and nowtok is tok_define, eat any tok_eol tokens.
2205
2206 2007-10-11  Jakub Jelinek  <jakub@redhat.com>
2207
2208         * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
2209         (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
2210
2211         * inet/netinet/in.h: Don't include bits/socket.h.
2212         * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
2213         macro.
2214         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2215
2216 2007-10-10  Ulrich Drepper  <drepper@redhat.com>
2217
2218         * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
2219         and tok_elifndef.
2220         * locale/programs/locfile-kw.gperf: Likewise.
2221         * locale/programs/ld-collate.c: Implement primitive preprocessor.
2222
2223 2007-10-10  Jakub Jelinek  <jakub@redhat.com>
2224
2225         * stdio-common/printf-parse.h: Include string.h and wchar.h.
2226         (__find_specwc): Change into __extern_always_inline function.
2227         (__find_specmb): Likewise.  Remove ps argument.  Use __strchrnul.
2228         (__parse_one_specmb): Remove ps argument.
2229         * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
2230         Adjust __find_specmb and __parse_one_specmb callers.
2231         * stdio-common/printf-prs.c (parse_printf_format): Likewise.
2232         * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
2233         Removed.
2234         (__parse_one_specmb): Remove ps argument, adjust __find_specmb
2235         caller.
2236
2237 2007-10-09  Ulrich Drepper  <drepper@redhat.com>
2238
2239         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
2240         with some Pentium Ds.
2241
2242 2007-10-08  Ulrich Drepper  <drepper@redhat.com>
2243
2244         * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
2245         __read not read.
2246         * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
2247         __write not write.
2248
2249 2007-10-07  Ulrich Drepper  <drepper@redhat.com>
2250
2251         [BZ #181]
2252         * locale/C-time.c: Set week_1stday data to 19971201.
2253         * locale/programs/ld-time.c (time_finish): Default for
2254         first_workday is Monday.
2255
2256         [BZ #2633]
2257         * wcsmbs/wchar.h: Move many C99 functions into std namespace.
2258
2259         [BZ #5103]
2260         * posix/glob.c (glob): Recognize patterns starting \/.
2261         * posix/tst-gnuglob.c (find_file): Handle absolute path names.
2262         (main): Add test for pattern starting \/.
2263
2264         * misc/error.h: Use __const instead of const.
2265         * misc/bits/error.h: Likewise.
2266
2267 2007-10-07  Andreas Jaeger  <aj@suse.de>
2268
2269         * include/bits/error.h: New file.
2270
2271         * misc/bits/error.h (error_at_line): Fix prototype.
2272
2273 2007-10-06  Ulrich Drepper  <drepper@redhat.com>
2274
2275         [BZ #3924]
2276         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
2277         more little bugs in creating the stack frame when pltexit has to
2278         be called.
2279
2280         * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
2281         * nscd/connections.c (verify_persistent_db): Recognize circular lists.
2282
2283         [BZ #4407]
2284         * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
2285         * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
2286         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
2287         * math/libm-test.inc: Add test for this case.
2288
2289         [BZ #5010]
2290         * sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
2291         (svc_register): Initialize sc_mapped.  Set to TRUE if call to
2292         map service succeeded.
2293         (svc_is_mapped): New function.
2294         (svc_unregister): Use it before trying to unmap service.
2295
2296 2007-10-05  Ulrich Drepper  <drepper@redhat.com>
2297
2298         * timezone/zic.c: Update from tzcode2007h.
2299
2300         [BZ #5063]
2301         * timezone/africa: Update from tzdata2007h.
2302         * timezone/antarctica: Likewise.
2303         * timezone/asia: Likewise.
2304         * timezone/australasia: Likewise.
2305         * timezone/europe: Likewise.
2306         * timezone/leapseconds: Likewise.
2307         * timezone/northamerica: Likewise.
2308         * timezone/southamerica: Likewise.
2309         * timzeone/zone.tab: Likewise.
2310
2311         [BZ #5104]
2312         * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
2313
2314         [BZ #5113]
2315         * string/bits/string2.h (__strdup): Cast parameters to calloc to
2316         avoid warning with -Wconversion.
2317         (__strndup): Likewise.
2318         Half the patch by Christian Iseli <christian.iseli@licr.org>.
2319
2320         [BZ #5112]
2321         * nscd/connections.c (restart): Don't resync if database is
2322         disabled.  Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
2323
2324         * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
2325         struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.
2326
2327         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
2328         evetnfd_read, eventfd_write.
2329         * sysdeps/unix/sysv/linux/eventfd.c: New file.
2330         * sysdeps/unix/sysv/linux/eventfd_read.c: New file.
2331         * sysdeps/unix/sysv/linux/eventfd_write.c: New file.
2332         * sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
2333         * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
2334         eventfd_write for GLIBC_2.7.
2335
2336         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
2337         * sysdeps/unix/sysv/linux/signalfd.c: New file.
2338         * sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
2339         * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
2340
2341 2007-10-04  Jakub Jelinek  <jakub@redhat.com>
2342
2343         * stdlib/msort.c: Include stdint.h.
2344         (struct msort_param): New type.
2345         (msort_with_tmp): Use struct msort_param pointer for unchanging
2346         parameters.  Add optimized handling for several common sizes
2347         and indirect sorting mode.
2348         (qsort): Adjust msort_with_tmp callers.  For big S use indirect
2349         sorting.
2350         Suggested by Belazougui Djamel .
2351
2352         * stdlib/Makefile (tests): Add tst-qsort2.
2353         * stdlib/tst-qsort2.c: New test.
2354
2355 2007-10-04  Ulrich Drepper  <drepper@redhat.com>
2356
2357         * login/login_tty.c (login_tty): The Linux kernel can return EBUSY
2358         for dup2 in case another thread races with the current one.  Retry
2359         in this case.
2360
2361         * misc/error.h: Remove support for use outside of libc.  We have to
2362         include <features.h> now.  Include <bits/error.h> if possible.
2363         * misc/bits/error.h: New file.
2364
2365 2007-10-03  Jakub Jelinek  <jakub@redhat.com>
2366
2367         * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
2368         bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
2369         __extern_always_inline functions unconditionally, drop macros.
2370
2371         * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
2372         * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
2373         __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
2374
2375         * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
2376         add __artificial__ attribute.
2377
2378 2007-10-02  Ulrich Drepper  <drepper@redhat.com>
2379
2380         * string/strcoll_l.c (STRCOLL): Correct handling of switching from
2381         backward to forward direction.
2382
2383         * string/strcoll_l.c (STRCOLL): Correct test for alloca use.
2384
2385         [BZ #645]
2386         * locale/programs/ld-collate.c (collate_finish): Compare against last
2387         used section which is known to have rules defined.
2388         (collate_read): After order_start, correctly record order of sections
2389         and queue sections up.
2390
2391 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
2392
2393         [BZ #5071]
2394         * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
2395         the same number of pages.
2396         Patch by Tomash Brechko <tomash.brechko@gmail.com>.
2397
2398         * locale/programs/ld-collate.c (collate_read): After initial copy
2399         statement, continue in state 0.
2400
2401         * include/stdio_ext.h (__fsetlocking): Define as macro.
2402
2403 2007-09-30  Ulrich Drepper  <drepper@redhat.com>
2404
2405         * locale/programs/ld-collate.c (collate_finish): Compare all bytes
2406         of section order.
2407
2408         * po/pt_BR.po: Fix typo.
2409
2410 2007-09-29  Ulrich Drepper  <drepper@redhat.com>
2411
2412         * iconvdata/Makefile (modules): Add ISO8859-9E.
2413         (distribute): Add iso8859-9e.c.
2414         (gen-8bit-gap-modules): Add iso8859-9e.
2415         * iconvdata/iso8859-9e.c: New file.
2416         * iconvdata/gconv-modules: Add entries for ISO-8859-9E.
2417         * iconvdata/TESTS: Likewise.
2418         * iconvdata/tst-tables.sh: Likewise.
2419
2420         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
2421
2422         * locale/iso-639.def: Add several new entries.
2423
2424 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
2425
2426         * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
2427         void * pointers instead of struct link_map **.
2428         (_dl_scope_free): Change argument type to void *.
2429         * include/link.h (struct link_map): Change type of l_reldeps
2430         to struct link_map_reldeps, move l_reldepsact into that
2431         struct too.
2432         * elf/dl-deps.c: Include atomic.h.
2433         (_dl_map_object_deps): Only change l->l_initfini when it is
2434         fully populated, use _dl_scope_free for freeing it.  Optimize
2435         removal of libs from reldeps by using l_reserved flag, when
2436         some removal is needed, allocate a new list instead of
2437         reallocating and free the old with _dl_scope_free.  Adjust
2438         for l_reldeps and l_reldepsact changes.
2439         * elf/dl-lookup.c (add_dependency): Likewise.  Reorganize to allow
2440         searching in l_initfini and l_reldeps without holding dl_load_lock.
2441         * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
2442         l_reldepsact changes.
2443         * elf/dl-close.c (_dl_close_worker): Likewise.
2444         * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
2445
2446 2007-09-28  Ulrich Drepper  <drepper@redhat.com>
2447
2448         * iconvdata/Makefile (modules): Add KOI8-RU.
2449         (distribute): Add koi8-ru.c.
2450         (gen-8bit-gap-modules): Add koi8-ru.
2451         * iconvdata/koi8-ru.c: New file.
2452         * iconvdata/gconv-modules: Add entries for KOI8-RU.
2453         * iconvdata/TESTS: Likewise.
2454         * iconvdata/tst-tables.sh: Likewise.
2455
2456         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
2457
2458 2007-09-26  Jakub Jelinek  <jakub@redhat.com>
2459
2460         * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
2461         with __warning__/__error__ attributes.
2462         (__warnattr): Define.
2463         * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
2464         __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
2465         __warnattr.
2466         (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
2467         of __*_chk if compile time detectable overflow is found.
2468         * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
2469         __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
2470         with __warnattr.
2471         (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
2472         instead of __*_chk if compile time detectable overflow is found.
2473         (__gets_alias): Rename to...
2474         (__gets_warn): ... this.  Add __warnattr.
2475         (gets): Call __gets_warn instead of __gets_alias.
2476         * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
2477         aliases with __warnattr.
2478         (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
2479         time detectable overflow is found.
2480         * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
2481         __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
2482         __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
2483         __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
2484         __getdomainname_chk_warn): New aliases with __warnattr.
2485         (read, pread, pread64, readlink, readlinkat, getcwd, confstr,
2486         getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
2487         __*_chk_warn instead of __*_chk if compile time detectable overflow
2488         is found.
2489         (__getgroups_chk): Rename argument to __listlen from listlen.
2490         (__getwd_alias): Rename to...
2491         (__getwd_warn): ... this.  Add __warnattr.
2492         (getwd): Call __getwd_warn instead of __getwd_alias.
2493         * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
2494         __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
2495         __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
2496         __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
2497         __wcsnrtombs_chk_warn): New aliases with __warnattr.
2498         (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
2499         mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
2500         compile time detectable overflow is found.
2501         (wcsncpy, wcpncpy): Likewise.  For constant __n fix check whether
2502         to use __*_chk or not.
2503         (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
2504         in comparisons which function should be called and in __*_chk*
2505         arguments.  Call __*_chk_warn instead of __*_chk if compile time
2506         detectable overflow is found.
2507         (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
2508         __*_chk argument.
2509         * debug/tst-chk1.c (do_test): Add a few more tests.
2510
2511 2007-09-24  Ulrich Drepper  <drepper@redhat.com>
2512
2513         [BZ #5058]
2514         * intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
2515         * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
2516         (_nl_unload_domain): Finalize conversions_lock.
2517         * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
2518         handling table of known conversions.
2519
2520 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
2521
2522         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
2523         close_not_cancel_no_status instead of close.
2524
2525 2007-09-13  Aurelien Jarno  <aurelien@aurel32.net>
2526
2527         [BZ #5028]
2528         * posix/regcomp.c (lookup_collation_sequence_value): Check that
2529         nrules != 0 for multibyte chars.
2530
2531 2007-09-23  Ulrich Drepper  <drepper@redhat.com>
2532
2533         * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
2534         Provide better error message in case the type is unknown.
2535
2536         [BZ #4963]
2537         * wcsmbs/wcsnlen.c: Don't reference before checking the length.
2538         * string/stratcliff.c: Make usable to test wide char functions.
2539         * wcsmbs/wcsatcliff.c: New file.
2540         * wcsmbs/Makefiel (tests): Add wcsatcliff.
2541
2542         [BZ #4972]
2543         * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
2544         (distribute): Add mac-centraleurope.c.
2545         (gen-8bit-gap-modules): Add mac-centraleurope.
2546         * iconvdata/mac-centraleurope.c: New file.
2547         * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
2548         * iconvdata/TESTS: Likewise.
2549         * iconvdata/tst-tables.sh: Likewise.
2550
2551         [BZ #5043]
2552         * iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
2553
2554 2007-09-21  Ulrich Drepper  <drepper@redhat.com>
2555
2556         * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
2557         from __x86_64_core_cache_size_half.
2558         (init_cacheinfo): Compute shared cache size for AMD processors with
2559         shared L3 correctly.
2560         * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
2561         name change.
2562         Patch in large parts by Evandro Menezes.
2563
2564 2007-09-19  Ulrich Drepper  <drepper@redhat.com>
2565
2566         * elf/dl-lookup.c (add_dependency): Handle failing memory
2567         allocation for dependency list.  Remove unnecessary check.
2568
2569         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
2570         open/close when determining source addresses.
2571
2572         * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
2573         sha512-crypt, and sha512.
2574         (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
2575         (distribute): Add sha256.h and sha512.h.
2576         * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
2577         and call the appropriate code.
2578         * crypt/sha256-crypt.c: New file.
2579         * crypt/sha256.c: New file.
2580         * crypt/sha256.h: New file.
2581         * crypt/sha256c-test.c: New file.
2582         * crypt/sha256test.c: New file.
2583         * crypt/sha512-crypt.c: New file.
2584         * crypt/sha512.c: New file.
2585         * crypt/sha512.h: New file.
2586         * crypt/sha512c-test.c: New file.
2587         * crypt/sha512test.c: New file.
2588
2589 2007-09-19  Jakub Jelinek  <jakub@redhat.com>
2590
2591         * misc/bits/syslog.h (syslog): Remove extraneous argument from
2592         the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
2593         __syslog_chk.
2594
2595 2007-09-18  Jakub Jelinek  <jakub@redhat.com>
2596
2597         * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
2598         %as in fscanf format strings.
2599
2600         * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
2601         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2602         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
2603         Likewise.
2604         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
2605         Likewise.
2606
2607         * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
2608         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
2609         DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
2610         * elf/dl-sym.c (do_sym): Likewise.
2611         * include/link.h (struct link_map): Add l_serial field.
2612         * elf/dl-object.c (_dl_new_object): Initialize l_serial.
2613         * elf/dl-lookup.c (add_dependency): Add flags argument.
2614         Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
2615         flags, use THREAD_GSCOPE_RESET_FLAG before and
2616         THREAD_GSCOPE_SET_FLAG after
2617         __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
2618         Don't dereference map until it has been found on some list.
2619         If map->l_serial changed, return -1.
2620
2621 2007-09-17  Jakub Jelinek  <jakub@redhat.com>
2622
2623         * include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
2624         __isoc99_sscanf, __isoc99_vscanf): New prototypes.
2625         (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
2626         libc_hidden_proto.
2627         * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
2628         __isoc99_swscanf, __isoc99_vwscanf): New prototypes.
2629         (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
2630         add libc_hidden_proto.
2631         * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
2632         vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
2633         conformance requested.
2634         * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
2635         vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
2636         conformance requested.
2637         * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
2638         vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
2639         conformance requested.
2640         * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
2641         vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
2642         ISO C99 or POSIX conformance requested.
2643         * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
2644         __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
2645         __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
2646         and __isoc99_vsscanf@@GLIBC_2.7.
2647         * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
2648         isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
2649         (tests): Add scanf14.
2650         (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
2651         CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
2652         CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
2653         CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
2654         CFLAGS-isoc99_scanf.c): Add $(exceptions).
2655         (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
2656         from using internal headers.
2657         * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
2658         __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
2659         __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
2660         and __isoc99_vswscanf@@GLIBC_2.7.
2661         * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
2662         isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
2663         (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
2664         CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
2665         (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
2666         * stdio-common/isoc99_scanf.c: New file.
2667         * stdio-common/isoc99_vsscanf.c: New file.
2668         * stdio-common/isoc99_vscanf.c: New file.
2669         * stdio-common/isoc99_vfscanf.c: New file.
2670         * stdio-common/isoc99_fscanf.c: New file.
2671         * stdio-common/isoc99_sscanf.c: New file.
2672         * wcsmbs/isoc99_fwscanf.c: New file.
2673         * wcsmbs/isoc99_vswscanf.c: New file.
2674         * wcsmbs/isoc99_swscanf.c: New file.
2675         * wcsmbs/isoc99_wscanf.c: New file.
2676         * wcsmbs/isoc99_vwscanf.c: New file.
2677         * wcsmbs/isoc99_vfwscanf.c: New file.
2678         * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
2679         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
2680         clear _IO_FLAGS2_SCANF_STD bit from _flags2.
2681         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
2682         handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
2683         * stdio-common/scanf14.c: New test.
2684         * stdio-common/scanf15.c: New test.
2685         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
2686         isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
2687         isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
2688         isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
2689         isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
2690         * sysdeps/ieee754/ldbl-opt/Versions (libc): Export
2691         __nldbl___isoc99_scanf@@GLIBC_2.7,
2692         __nldbl___isoc99_fscanf@@GLIBC_2.7,
2693         __nldbl___isoc99_sscanf@@GLIBC_2.7,
2694         __nldbl___isoc99_vscanf@@GLIBC_2.7,
2695         __nldbl___isoc99_vfscanf@@GLIBC_2.7,
2696         __nldbl___isoc99_vsscanf@@GLIBC_2.7,
2697         __nldbl___isoc99_wscanf@@GLIBC_2.7,
2698         __nldbl___isoc99_fwscanf@@GLIBC_2.7,
2699         __nldbl___isoc99_swscanf@@GLIBC_2.7,
2700         __nldbl___isoc99_vwscanf@@GLIBC_2.7,
2701         __nldbl___isoc99_vfwscanf@@GLIBC_2.7
2702         and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
2703         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
2704         __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
2705         __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
2706         __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
2707         __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
2708         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c
2709         (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
2710         __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
2711         __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
2712         __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
2713         __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
2714         __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
2715         functions.
2716         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
2717         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
2718         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
2719         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
2720         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
2721         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
2722         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
2723         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
2724         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
2725         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
2726         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
2727         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
2728
2729         * stdio-common/Makefile (tests): Add scanf13.
2730         (scanf13-ENV): New.
2731         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
2732         m modifier followed by l.
2733         (STRING_ARG): Add width argument.
2734         (_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
2735         <case L_('C')>: Handle %mlc and %mC.
2736         <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
2737         arguments.
2738         * stdio-common/scanf13.c: New test.
2739
2740         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
2741         the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
2742
2743 2007-09-18  Ulrich Drepper  <drepper@redhat.com>
2744
2745         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
2746         type and __THROW marker of splice, vmsplice, and tee.
2747         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2748         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2749         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2750         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2751         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
2752         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
2753         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
2754         * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
2755         as cancellation points.
2756
2757 2003-11-01  Daniel Jacobowitz  <dan@debian.org>
2758
2759         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
2760         parse more than three parts of the version number.
2761
2762 2007-09-15  Ulrich Drepper  <drepper@redhat.com>
2763
2764         * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
2765         modifier.  Patch by Jakub Jelinek.
2766
2767 2007-08-26  Jakub Jelinek  <jakub@redhat.com>
2768
2769         * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
2770         call_fallocate in misc subdir.
2771         * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
2772         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
2773         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
2774         instead of __fallocate64.
2775         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
2776
2777 2007-09-15  Jakub Jelinek  <jakub@redhat.com>
2778
2779         * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
2780         * rt/Makefile (headers): Add bits/mqueue2.h.
2781         * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
2782         optimizing with GCC and __va_arg_pack_len is defined.
2783         * rt/bits/mqueue2.h: New file.
2784         * rt/mq_open.c (__mq_open): Renamed from mq_open.
2785         (mq_open): New strong_alias.
2786         (__mq_open_2): New function.
2787         * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
2788         (mq_open): New strong_alias.
2789         (__mq_open_2): New function.
2790         * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
2791         * Versions.def (librt): Add GLIBC_2.7 version.
2792         * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
2793         * include/stdio.h (__fortify_fail): Add libc_hidden_proto.
2794
2795         * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
2796         * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
2797         is defined rather than when not C++.
2798         * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
2799         __openat64_alias): New redirects.
2800         (__open_too_many_args, __open_missing_mode, __open64_too_many_args,
2801         __open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
2802         __openat64_too_many_args, __openat64_missing_mode): New __errordecls.
2803         (open, open64, openat, openat64): Rewrite as __extern_always_inline
2804         functions instead of function-like macros.
2805
2806 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
2807
2808         * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
2809         * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
2810         * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
2811
2812 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
2813
2814         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
2815         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
2816
2817 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
2818
2819         * inet/tst-network.c: Increment ERRORS for failing tests.
2820
2821 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
2822
2823         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
2824         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
2825         implement as __extern_always_inline function.
2826         (vsyslog): Define as __extern_always_inline function unconditionally.
2827         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
2828         When __va_arg_pack is defined, implement as __extern_always_inline
2829         functions.
2830         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
2831         __extern_always_inline functions unconditionally.
2832         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
2833         bits/stdio2.h will be included.
2834         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
2835         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
2836         implement as __extern_always_inline functions.
2837         (vswprintf, vwprintf, vfwprintf): Define as
2838         __extern_always_inline functions unconditionally.
2839         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
2840
2841 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
2842
2843         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
2844         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
2845         attribute.
2846         * include/features.h (__USE_EXTERN_INLINES): Define only when
2847         __extern_inline is defined.
2848         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
2849         is defined instead of when not __cplusplus.
2850         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
2851         is defined instead of when not __cplusplus.
2852         * socket/sys/socket.h: Include bits/socket2.h when
2853         __extern_always_inline is defined instead of when not __cplusplus.
2854         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
2855         is defined instead of when not __cplusplus.
2856         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
2857         is defined instead of when not __cplusplus.
2858         * string/string.h: Include bits/string3.h when __extern_always_inline
2859         is defined instead of when not __cplusplus.
2860         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
2861         is defined instead of when not __cplusplus.
2862         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
2863         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
2864         is not defined.
2865         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
2866         defined __extern_always_inline instead of !defined __cplusplus.
2867         * libio/bits/stdio-ldbl.h: Likewise.
2868         * wcsmbs/bits/wchar-ldbl.h: Likewise.
2869         * misc/bits/syslog.h (syslog): Don't define for C++.
2870         (vsyslog): Use __extern_always_inline function for C++ instead of
2871         a macro.
2872         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
2873         whenever that macro is defined.
2874         (vprintf): Don't provide the inline for C++.
2875         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
2876         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
2877         define the macros for C++.
2878         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
2879         __extern_always_inline functions for C++.
2880         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
2881         stat64, lstat64, fstat64, fstatat64): Don't define if not
2882         __USE_EXTERN_INLINES.
2883         * wcsmbs/bits/wchar2.h: Fix #error message.
2884         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
2885         (vswprintf, vwprintf, vfwprintf): Define using
2886         __extern_always_inline functions for C++.
2887         * string/bits/string3.h: Don't #undef macros if __cplusplus.
2888         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
2889         strncpy, strcat, strncat): Define as __extern_always_inline
2890         functions instead of macros for C++.
2891         * math/bits/cmathcalls.h: Guard __extern_inline routines with
2892         defined __extern_inline.
2893         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
2894         to __extern_inline whenever that macro is defined.
2895         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
2896         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
2897         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
2898         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
2899         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
2900         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
2901         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
2902         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
2903         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
2904         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
2905         prototypes.  Only provide __extern_inline routines if
2906         __USE_EXTERN_INLINES.
2907         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
2908         tests.
2909         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
2910         For now avoid some *printf tests in C++.  Skip all testing
2911         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
2912         is not.
2913         * debug/tst-chk4.cc: New file.
2914         * debug/tst-chk5.cc: New file.
2915         * debug/tst-chk6.cc: New file.
2916         * debug/tst-lfschk4.cc: New file.
2917         * debug/tst-lfschk5.cc: New file.
2918         * debug/tst-lfschk6.cc: New file.
2919         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
2920         prototypes in C++.
2921         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
2922         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
2923         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
2924
2925 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
2926
2927         * po/cs.po: Update from translation team.
2928
2929 2007-09-11  Roland McGrath  <roland@redhat.com>
2930
2931         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
2932         compiling.
2933
2934 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
2935
2936         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
2937
2938 2007-09-05  Roland McGrath  <roland@redhat.com>
2939
2940         * manual/signal.texi (Signaling Another Process): Typo fix.
2941         From Karl Berry <karl@freefriends.org>.
2942
2943 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
2944
2945         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
2946         zero if not defined.
2947         (make_request): Recognize optimistic addresses and treat them like
2948         deprecated addresses.
2949         Reported by Neil Horman <nhorman@redhat.com>.
2950
2951 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
2952
2953         * nscd/connections.c (send_ro_fd): Also transfer file size.
2954         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
2955         file size don't call fstat.
2956
2957         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
2958         ahead and map the file.  This should always be correct and we can
2959         catch problems later.
2960
2961 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
2962
2963         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
2964         prototypes.
2965         (__fread_alias, __fread_unlocked_alias): New aliases.
2966         (fread): New extern inline.
2967         (fread_unlocked): Likewise.  Undef macro before definition of
2968         the inline function.
2969         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
2970         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
2971         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
2972         and __fread_unlocked_chk@@GLIBC_2.7.
2973         * debug/fread_chk.c: New file.
2974         * debug/fread_u_chk.c: New file.
2975         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
2976
2977 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
2978
2979         * sysdeps/unix/sysv/linux/syscalls.list
2980         (personality): Change caller to EXTRA.
2981
2982 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
2983
2984         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
2985         to keep gcc quiet.
2986         * iconvdata/iso-2022-cn.c (BODY): Likewise.
2987
2988         * locale/programs/ld-collate.c (collate_output): Avoid warning if
2989         NDEBUG is defined.
2990
2991         * Makerules: Use -p option with mkdir.
2992
2993         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
2994         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
2995         (_xdr_directory_obj): Likewise.
2996         (xdr_entry_obj): Likewise.
2997         (xdr_group_obj): Likewise.
2998         (xdr_link_obj): Likewise.
2999         (xdr_table_obj): Likewise.
3000         (_xdr_nis_result): Likewise.
3001         (_xdr_ns_request): Likewise.
3002         (_xdr_ib_request): Likewise.
3003         (_xdr_nis_taglist): Likewise.
3004         (xdr_cback_data): Likewise.
3005         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
3006         (xdr_ypresp_maplist): Likewise.
3007
3008         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
3009
3010         * posix/regex_internal.h: Prevent some declarations and definitions
3011         to be seen when used in tests.
3012
3013         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
3014         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
3015
3016         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
3017
3018         * config.make.in (datarootdir): Add to shut up configure.
3019
3020         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
3021         associativity for fully-associative caches.
3022
3023         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
3024         requests.  Fill on more associativity values for L2.
3025         Patch mostly by Evandro Menezes.
3026
3027 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
3028
3029         * sysdeps/unix/sysv/linux/x86_64/init-first.c
3030         (_libc_vdso_platform_setup): Avoid using exported variable by using
3031         alias.
3032
3033         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
3034
3035         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
3036         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
3037         defined.
3038
3039 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
3040
3041         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
3042         align stack for call if pltexit is to be used.
3043
3044         [BZ #3924]
3045         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
3046         align for function call in case pltexit has to be called later.
3047
3048         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
3049         implicit atomic operation when storing function pointer.
3050         (_dl_runtime_profile): Likewise.
3051
3052 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
3053
3054         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
3055         NIS_NOTFOUND.
3056
3057 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
3058
3059         [BZ #4566]
3060         * string/strtok.c: Fix typo in comment.
3061
3062         [BZ #4582]
3063         * debug/segfault.c: Fix typos in comments.
3064
3065         [BZ #4588]
3066         * stdio-common/tempnam.c: Fix comment, it is not checked that
3067         TMPDIR points to a writable directory.
3068
3069         [BZ #4726]
3070         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
3071         memory allocated for the name server address.
3072
3073         [BZ #4946]
3074         * nscd/connections.c (handle_request): Using sendfile always
3075         requires that mmap is used for the database.
3076         Patch by Petr Baudis <pasky@suse.cz>.
3077
3078         [BZ #4905]
3079         * nscd/hstcache.c (cache_addhst): When reloading an entry which
3080         suddenly has two or more addresses, ignore it and remove the old
3081         entry.
3082
3083         [BZ #4814]
3084         * resolv/res_hconf.c: Prepare for compiling outside libc.
3085         * nscd/res_hconf.c: New file.
3086         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
3087         the new file.
3088         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
3089         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
3090
3091         * nscd/hstcache.c (cache_addhst): Minimal optimization.
3092
3093         [BZ #4925]
3094         * debug/pcprofiledump.c: Turn on internationalization by calling
3095         setlocale.  Patch mostly by Benno Schulenberg.
3096
3097         [BZ #4936]
3098         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
3099         the state.
3100         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
3101         * iconvdata/bug-iconv5.c: New file.
3102
3103 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
3104
3105         [BZ #4896]
3106         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
3107         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
3108         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
3109         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
3110         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
3111         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
3112         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
3113         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
3114
3115 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
3116
3117         [BZ #4937]
3118         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
3119         lookup loop.  Suggested by John Reiser.
3120
3121 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
3122
3123         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
3124
3125 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
3126
3127         * csu/libc-start.c: Don't handle VDSO_SETUP here.
3128         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
3129         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
3130         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
3131         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
3132         to...
3133         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
3134
3135 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
3136
3137         * po/nl.po: Update from translation team.
3138
3139 2007-08-16  Andreas Jaeger  <aj@suse.de>
3140
3141         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
3142         Reported by Peter Festner <peter.festner@ewetel.net>.
3143
3144 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
3145
3146         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
3147
3148 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
3149
3150         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
3151         to check for undefined symbols.
3152
3153         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
3154         If the syscall fails, set errno to the actual returned error number
3155         rather than EINVAL.
3156         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
3157         arguments are incorrect, set errno to EINVAL, if the syscall
3158         fails, set errno to the actual returned error number.
3159
3160         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
3161         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
3162
3163         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
3164         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
3165         file.
3166         (ASI_PNF, ASI_BLK_P): Don't define.
3167         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
3168         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
3169         file.
3170         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
3171         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
3172         file.
3173
3174 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
3175
3176         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
3177         FE_UNDERFLOW on Niagara CPUs.
3178
3179         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
3180         exceptions.
3181
3182 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
3183
3184         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
3185         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
3186         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
3187         flush should be used or not inside of the function.
3188         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
3189
3190         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
3191         __thread_start): Use HIDDEN_JUMPTARGET.
3192         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
3193         __thread_start): Likewise.
3194         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
3195
3196         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
3197         Add libc_hidden_proto.
3198         (STRTOF): Add libc_hidden_proto.
3199         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
3200         (strtold_l, wcstold_l): Use them as second argument for
3201         long_double_symbol.
3202
3203 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
3204
3205         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
3206
3207 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3208
3209         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
3210
3211 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
3212
3213         * po/bg.po: New file.  From the translation team.
3214
3215 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
3216
3217         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
3218         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
3219         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
3220         when each feature was introduced.
3221
3222         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
3223         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
3224         (CHECK_HASH): New macro.
3225         (PREPARE_VERSION): Use it.
3226
3227         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
3228         prototype if not __ASSUME_PSELECT.
3229         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
3230         prototype if not __ASSUME_PPOLL.
3231
3232         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
3233
3234         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
3235         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
3236         is defined.
3237
3238 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
3239
3240         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
3241         (_libc_vdso_platform_setup): If vDSO is not available point
3242         __vdso_gettimeofday to the vsyscall.
3243         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
3244         __vdso_gettimeofday instead of vsyscall.
3245
3246 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
3247
3248         * nscd/servicescache.c: Include kernel-features.h.
3249         * nscd/gai.c: Likewise.
3250         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
3251         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
3252         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
3253         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
3254         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
3255         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
3256         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
3257         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
3258         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
3259
3260 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
3261
3262         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
3263         and _dl_get_origin defines anymore.
3264
3265         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
3266         Build fix for systems which might lack POSIX timer support.
3267
3268         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
3269         (_libc_vdso_platform_setup): Mangle function pointers before storing
3270         them.
3271         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
3272         Demangle vdso pointer before use.
3273         (INTERNAL_VSYSCALL): Likewise.
3274
3275         * elf/cache.c (primes): Mark as const.
3276         Noted by Roland McGrath.
3277
3278 2007-08-01  Andreas Jaeger  <aj@suse.de>
3279             Jakub Jelinek  <jakub@redhat.com>
3280
3281         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
3282         (options): Add option.
3283         (parse_opt): Handle option.
3284         (manual_link): Adjust process_file caller.  Call implicit_soname.
3285         (search_dir): Formatting.  Use and populate auxiliary cache.
3286         (main): Load and save auxiliary cache.
3287         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
3288         stat64 from fstat64 to caller.
3289         (implicit_soname): New function.
3290         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
3291         leave *soname as NULL.
3292         * elf/cache.c: Include libgen.h.
3293         (print_entry, print_cache, compare, save_cache, add_to_cache):
3294         Formatting and cleanups.
3295         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
3296         aux_cache_file): New structures.
3297         (AUX_CACHEMAGIC): Define.
3298         (primes): New array.
3299         (aux_hash_size, aux_hash): New variables.
3300         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
3301         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
3302         load_aux_cache, save_aux_cache): New functions.
3303         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
3304         (init_aux_cache, search_aux_cache, add_to_aux_cache,
3305         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
3306         (process_file): Adjust prototype.
3307
3308 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
3309
3310         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
3311         with __need_size_t.
3312
3313 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
3314
3315         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
3316         r_found_version structure as second parameter.
3317         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
3318         (_dl_vdso_vsym): Change type of second parameter accordingly.
3319         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
3320         (_libc_vdso_platform_setup): Adjust.
3321         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
3322         (_libc_vdso_platform_setup): Likewise.
3323
3324         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
3325         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
3326         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
3327         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
3328         * csu/libc-start.c: Pretty printing.
3329         Use VDSO_SETUP if defined.
3330         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
3331         and let generic code call into _libc_vdso_platform_setup.
3332         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
3333         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
3334         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
3335         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
3336         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
3337         for GLIBC_PRIVATE.
3338         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
3339         (sysdep_rountines): Add dl-vdso.
3340
3341         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
3342         of routines.
3343
3344         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
3345         attribute_hidden to __vdso_gettimeofday prototype.
3346
3347 2007-08-12  Roland McGrath  <roland@redhat.com>
3348
3349         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
3350         From: Karl Berry <karl@freefriends.org>.
3351
3352 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
3353
3354         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
3355         an atime update for the files we read.
3356
3357 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
3358
3359         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
3360
3361         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
3362         instead of mkstemp.
3363
3364         * misc/Makefile (routines): Add mkostemp and mkostemp64.
3365         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
3366         * misc/mkostemp.c: New file.
3367         * misc/mkostemp64.c: New file.
3368         * stdlib/stdlib.h: Declare the new functions.
3369         * sysdeps/posix/tempname.c: Add new parameter which is added to
3370         the flags for open.  Remove __GT_BIGFILE handling.
3371         * stdio-common/tempname.c: Likewise.
3372         * include/stdio.h: Adjust __gen_tempname prototype.
3373         Renumber __GT_* constants.
3374         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
3375         * misc/mkdtemp.c: Likewise.
3376         * misc/mkstemp.c: Likewise.
3377         * misc/mkstemp64.c: Likewise.
3378         * misc/mktemp.c: Likewise.
3379         * stdio-common/tempnam.c: Likewise.
3380         * stdio-common/tmpfile.c: Likewise.
3381         * stdio-common/tmpfile64.c: Likewise.
3382         * stdio-common/tmpnam.c: Likewise.
3383         * stdio-common/tmpnam_r.c: Likewise.
3384
3385 2007-08-10  Roland McGrath  <roland@frob.com>
3386
3387         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
3388         New macros.
3389         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
3390         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
3391
3392 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
3393
3394         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
3395         possible.
3396         * nss/nss_files/files-alias.c (internal_setent): Likewise.
3397         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
3398         * nss/nss_files/files-have_o_cloexec.c: New file.
3399
3400         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
3401         available.
3402
3403 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
3404
3405         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
3406         ___new_wcstold_l): New weak aliases.
3407         (strtold_l, wcstold_l): Use them as second argument for
3408         long_double_symbol.
3409
3410 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
3411
3412         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
3413         register in test for error.
3414
3415         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
3416         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
3417
3418         * po/sv.po: Update from translation team.
3419
3420 2007-08-06  Roland McGrath  <roland@redhat.com>
3421
3422         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
3423         Remove __strto*_l inlines.
3424         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
3425         * stdlib/strtod.c: Add libc_hidden_def.
3426         * stdlib/strtod_l.c: Likewise.
3427         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
3428         for __new_strtold and __new_wcstold.
3429         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
3430         __STRTOF, STRTOF.
3431         * stdlib/strtol.c: Add libc_hidden_def.
3432         * stdlib/strtol_l.c: Likewise.
3433         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
3434         strtoq.
3435
3436         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
3437
3438         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
3439         * scripts/data/localplt-generic.data: ... here.
3440         * elf/Makefile (check-data): Get generic file if no other.
3441         ($(objpfx)check-localplt.out): Make target unconditional.
3442
3443         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
3444         Use ElfW(Nhdr).
3445
3446 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
3447
3448         * po/zh_CN.po: Updated translation from translation team.
3449
3450 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
3451
3452         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
3453         Don't use CGOTSETUP and CGOTRESTORE macros.
3454
3455 2007-08-04  Roland McGrath  <roland@redhat.com>
3456
3457         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
3458
3459 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
3460
3461         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
3462         __extension__ around the whole statement expression.
3463
3464 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
3465
3466         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
3467         elements during initialization.
3468
3469         * po/pl.po: Updated translation from translation team.
3470         * po/tr.po: Likewise.
3471         * po/nl.po: Likewise.
3472
3473 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
3474
3475         * rt/aio.h: Add __nonnull attributes.
3476
3477 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
3478
3479         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
3480         * stdlib/Makefile (tests): Add tst-strtod5.
3481         (tst-strtod5-ENV): New.
3482         * stdlib/tst-strtod5.c: New file.
3483
3484         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
3485         failed.
3486         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
3487         on failure.
3488
3489         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
3490         allocated.
3491
3492 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
3493
3494         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
3495         numbers.
3496
3497 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
3498
3499         * io/Makefile (aux): Add have_o_cloexec.
3500         * include/fcntl.h: Declare __have_o_cloexec.
3501         * io/have_o_cloexec.c: New file.
3502         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
3503         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
3504         fcntl call if not necessary.
3505         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
3506         of local variable.
3507
3508         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
3509         Avoid memset, add explicit initialization.
3510         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
3511         to the end and change into zero-sized array.
3512         Move lock member to fill a hole on 64-bit platforms.
3513
3514         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
3515         inline functions.
3516         * include/stdlib.h: Add __strto*_internal prototypes here.
3517         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
3518         inline functions.
3519         * include/wchar.h: Add __wcsto*_internal prototypes.
3520         * sysdeps/generic/inttypes.h: No need to protect the declaration
3521         of the __strto*_internal and __wcsto*_internal members here.
3522
3523         * rt/mqueue.h: Change const to __const and add nonnull attributes.
3524
3525 2007-08-02  Roland McGrath  <roland@redhat.com>
3526
3527         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
3528         $(inst_bindir)/getconf if possible.
3529
3530         * posix/Makefile ($(objpfx)getconf.speclist): New target.
3531         (generated): Add it.
3532         ($(inst_libexecdir)/getconf): Use it.
3533
3534 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
3535
3536         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
3537         /proc is faster and sufficient.  /sys is still needed for
3538         __get_nprocs_conf.
3539
3540 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
3541
3542         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
3543         syscall as __fallocate64.
3544         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
3545         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
3546
3547 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
3548
3549         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
3550         value.
3551
3552         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
3553         if off_t is different rank from size_t.
3554
3555         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
3556         uw_frame_state_for): Avoid type punning warnings.
3557         * sysdeps/generic/unwind-dw2-fde-glibc.c
3558         (_Unwind_IteratePhdrCallback): Likewise.
3559         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
3560         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
3561         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
3562         pointers.
3563
3564 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
3565
3566         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
3567         total processors using sysfs.
3568         (__get_nprocs): Use sysfs to determine which processors are online.
3569
3570 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
3571
3572         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
3573         syscall arguments count.
3574
3575         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
3576
3577 2007-07-30  Roland McGrath  <roland@redhat.com>
3578
3579         * manual/libc.texinfo: Update copyrights, formatting magic, and
3580         @dircategory.  From Karl Berry <karl@freefriends.org>.
3581
3582 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
3583
3584         [BZ #4860]
3585         * io/Makefile (headers): Add bits/fcntl2.h.
3586
3587         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
3588         using gcc builtin.
3589         (__CPU_EQUAL_S): Likewise.
3590
3591         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
3592         (tests): Add tst-cpuset.
3593         * posix/sched_cpualloc.c: New file.
3594         * posix/sched_cpufree.c: New file.
3595         * posix/tst-cpuset.c: New file.
3596         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
3597         GLIBC_2.7.
3598         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
3599         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
3600         macros.  Define CPU_*_S macros.
3601
3602 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
3603
3604         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
3605         entry.
3606
3607         [BZ #4858]
3608         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
3609         #.0g and value rounded to 1.0.
3610         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
3611
3612 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
3613
3614         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
3615         for int_frac_digits and frac_digits.
3616
3617         * login/logout.c (logout): Avoid aliasing violation.
3618         * login/logwtmp.c (logwtmp): Likewise.
3619
3620         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
3621
3622         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
3623         to avoid warning.
3624         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
3625         warning.
3626         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
3627         warning.
3628         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
3629         to avoid warnings.
3630
3631         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
3632         void **.
3633         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
3634
3635         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
3636         char * to avoid warning.
3637         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
3638
3639         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
3640
3641         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
3642         allocate_arrays): Cast second argument to charmap_find_symbol
3643         to char * to avoid warnings.
3644
3645         * locale/programs/repertoire.c (repertoire_new_char): Change
3646         from_nr, to_nr and cnt to unsigned long, adjust printf format
3647         string.
3648
3649         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
3650         Cast second argument to new_element to char * to avoid warnings.
3651
3652         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
3653
3654         * intl/gettextP.h (struct loaded_domain): Change plural to const
3655         struct expression *.
3656         * intl/plural-eval.c (plural_eval): Change first argument to
3657         const struct expression *.
3658         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
3659         argument to const struct expression **.
3660         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
3661         prototypes.
3662         * intl/loadmsgcat (_nl_unload_domain): Cast away const
3663         in call to __gettext_free_exp.
3664
3665         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
3666         unitialized wstring/wpattern var warnings.
3667
3668         * posix/runtests.c (struct a_test): Make data field const char *.
3669
3670         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
3671         vars if not LDBL_MANT_DIG >= 106.
3672
3673         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
3674
3675         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
3676         __find_specmb to avoid warning.
3677
3678         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
3679
3680         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
3681         to avoid warnings.
3682
3683         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
3684         initializer.
3685
3686         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
3687         tv var when it will be actually used.
3688
3689         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
3690         to avoid warnings.
3691
3692         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
3693         char array resp. pointer.
3694         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
3695         char array.
3696         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
3697         to const unsigned char **.
3698         (ucs4_to_cns11643): Change second argument to unsigned char *.
3699         * iconvdata/euc-tw.c (BODY): Change endp type to
3700         const unsigned char *.
3701         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
3702         to unsigned char *.
3703         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
3704         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
3705         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
3706         types to unsigned char pointers/arrays instead of char.
3707         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
3708         to unsigned char *.
3709         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
3710         * iconvdata/jis0212.h: Include assert.h.
3711         (ucs4_to_jisx0212): Change second argument to unsigned char *.
3712         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
3713         of trying to handle that.
3714         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
3715         shut up a warning.
3716         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
3717         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
3718         two dimensional const unsigned char arrays.
3719         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
3720         Initialize endp to inptr to shut up a warning.
3721
3722 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
3723
3724         [BZ #4772]
3725         * time/strptime_l.c (__strptime_internal): Silently ignore
3726         strftime modifiers and field width in recursive calls.
3727
3728         * include/time.h (enum ptime_locale_status): Remove.
3729         (__strptime_internal): Remove decided and era_cnt arguments,
3730         add statep argument.
3731         * time/strptime_l.c (__strptime_internal): Remove decided
3732         and era_cnt arguments, add statep argument.  Don't recompute
3733         any fields in recursive calls, only update caller's tm
3734         and state, if recursive call fails, don't change tm nor
3735         any state.
3736         (get_alt_number): Adjust.
3737         (recursive): Adjust caller.
3738         (strptime): Likewise.
3739         * time/strptime.c (strptime): Likewise.
3740
3741 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
3742
3743         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
3744         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
3745         if from and to charsets are the same.
3746         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
3747         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
3748         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
3749
3750 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
3751
3752         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
3753         Don't define wint_t when __need_mbstate_t unless it
3754         is necessary.
3755         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
3756         in the typedef if possible.
3757         * wctype/wctype.h (wint_t): Define by including
3758         wchar.h with __need_wint_t instead of including stddef.h
3759         with __need_wint_t and as fallback definining it ourselves.
3760         * iconv/gconv.h (__need_wint_t): Define before including
3761         wchar.h.
3762         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
3763         or _GLIBCPP_USE_WCHAR_T.
3764         (__need_wchar_t): Don't define
3765         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
3766         (__need_wint_t): Don't define before including stddef.h,
3767         define before including wchar.h only if _LIBC or
3768         _GLIBCPP_USE_WCHAR_T.
3769         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
3770         * sysdeps/mach/hurd/_G_config.h: Likewise.
3771         * sysdeps/generic/_G_config.h: Likewise.
3772         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
3773         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
3774         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
3775         if _LIBC or _GLIBCPP_USE_WCHAR_T.
3776
3777 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
3778
3779         * sysdeps/posix/posix_fallocate64.c: Undefine
3780         __posix_fallocate64_l64 before alias handling.
3781         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
3782         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
3783         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
3784         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
3785
3786         * io/tst-posix_fallocate.c: Include <fcntl.h>.
3787
3788 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
3789
3790         * locale/programs/ld-collate.c (atwc): New variable.
3791         (add_to_tablewc): New toplevel function, moved from collate_output.
3792         (collate_output): Remove add_to_tablewc nested function.
3793
3794         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
3795         (name_insert): New function.
3796         (write_output): Remove hash_table and hash_size vars and name_insert
3797         nested function.
3798
3799 2007-07-24  Roland McGrath  <roland@redhat.com>
3800
3801         * Makerules (install-others-programs-nosubdir): New target.
3802         (install-no-libc.a-nosubdir): Depend on it.
3803
3804         * iconv/Makefile (install-others-programs): Set this instead of
3805         install-others.
3806         * login/Makefile (install-others-programs): Likewise.
3807         * posix/Makefile (install-others-programs): Likewise.
3808
3809         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
3810         dependencies.
3811
3812 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
3813
3814         * io/Makefile (tests): Add tst-posix_fallocate.
3815         * io/tst-posix_fallocate.c: New file.
3816
3817         * sysdeps/unix/sysv/linux/kernel-features.h: Define
3818         __ASSUME_FALLOCATE.
3819
3820 2007-07-22  Roland McGrath  <roland@frob.com>
3821
3822         * hurd/getdport.c: Add missing copyright year update.
3823
3824         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
3825         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
3826
3827 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
3828
3829         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
3830
3831         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
3832         O_CLOEXEC is needed.
3833         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
3834         Avoid additional fcntl to set O_CLOEXEC if not needed.
3835         * nis/nss_compat/compat-initgroups.c: Likewise.
3836         * nis/nss_compat/compat-pwd.c: Likewise.
3837         * nis/nss_compat/compat-spwd.c: Likewise.
3838
3839 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
3840
3841         [BZ #3665]
3842         * manual/errno.texi: Change ECANCELED value to 119.
3843
3844         [BZ #4610]
3845         * mach/lock-intern.h: Include <sys/cdefs.h>.
3846
3847         [BZ #4178]
3848         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
3849         reading A.
3850
3851         [BZ #4126]
3852         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
3853         to __sigsuspend.
3854
3855         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
3856
3857 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
3858
3859         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
3860         `__ASSEMBLER__'.
3861         * sysdeps/mach/hurd/i386/tls.h: Likewise.
3862
3863 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
3864
3865         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
3866         descriptor received from nscd.
3867
3868         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
3869
3870         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
3871         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
3872         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
3873         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
3874         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
3875         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
3876
3877 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
3878
3879         [BZ #4816]
3880         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
3881
3882         [BZ #4813]
3883         * login/forkpty.c (forkpty): Close master and slave fds on
3884         fork failure.  Patch by
3885         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
3886
3887 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
3888
3889         * include/features.h (__USE_ISOC95): New define.
3890         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
3891         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
3892         for -std=iso9899:199409.
3893         * CONFORMANCE: Remove comments about unsupported AMD1.
3894
3895 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
3896
3897         * sysdeps/ia64/sched_cpucount.c: New file.
3898         * sysdeps/powerpc/sched_cpucount.c: New file.
3899
3900         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
3901         __BEGIN_DECLS/__END_DECLS around the prototype.
3902         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
3903         pointer to const cpu_set_t.
3904
3905         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
3906         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
3907         __need_size_t and include stddef.h.
3908         * sysvipc/sys/msg.h: Likewise.
3909         * posix/sched.h: Likewise.
3910         * hurd/hurd/signal.h (__need_size_t): Define.
3911
3912         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
3913         neither does signal.h in pedantic ISO C namespaces.  stdio.h
3914         no longer defines wint_t or wchar_t.
3915
3916         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
3917         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
3918         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
3919         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
3920         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
3921         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
3922         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
3923         * debug/printf_chk.c (__printf_chk): Likewise.
3924         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
3925         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
3926
3927         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
3928         Define.
3929
3930         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
3931         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
3932
3933 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
3934
3935         [BZ #4792]
3936         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
3937         * malloc/malloc.h (realloc): Likewise.
3938
3939         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
3940         if one of proc_file_chain streams has that fileno.
3941         * stdio-common/Makefile (tests): Add tst-popen2.
3942         * stdio-common/tst-popen2.c: New test.
3943
3944 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
3945
3946         * elf/ldconfig.c: Allow GPLv2 or any later version.
3947         * elf/readlib.c: Likewise.
3948         * elf/chroot_canon.c: Likewise.
3949         * elf/cache.c: Likewise.
3950         * nscd/mem.c: Likewise.
3951         * nscd/getpwuid_r.c: Likewise.
3952         * nscd/grpcache.c: Likewise.
3953         * nscd/aicache.c: Likewise.
3954         * nscd/getsrvbynm_r.c: Likewise.
3955         * nscd/nscd.c: Likewise.
3956         * nscd/servicescache.c: Likewise.
3957         * nscd/getsrvbypt_r.c: Likewise.
3958         * nscd/initgrcache.c: Likewise.
3959         * nscd/gethstbyad_r.c: Likewise.
3960         * nscd/gethstbynm2_r.c: Likewise.
3961         * nscd/getgrnam_r.c: Likewise.
3962         * nscd/nscd_setup_thread.c: Likewise.
3963         * nscd/getpwnam_r.c: Likewise.
3964         * nscd/gai.c: Likewise.
3965         * nscd/connections.c: Likewise.
3966         * nscd/dbg_log.c: Likewise.
3967         * nscd/cache.c: Likewise.
3968         * nscd/hstcache.c: Likewise.
3969         * nscd/nscd_conf.c: Likewise.
3970         * nscd/getgrgid_r.c: Likewise.
3971         * nscd/pwdcache.c: Likewise.
3972         * catgets/gencat.c: Likewise.
3973         * locale/programs/linereader.h: Likewise.
3974         * locale/programs/locarchive.c: Likewise.
3975         * locale/programs/ld-paper.c: Likewise.
3976         * locale/programs/locfile-kw.h: Likewise.
3977         * locale/programs/ld-address.c: Likewise.
3978         * locale/programs/xmalloc.c: Likewise.
3979         * locale/programs/ld-time.c: Likewise.
3980         * locale/programs/localedef.c: Likewise.
3981         * locale/programs/simple-hash.c: Likewise.
3982         * locale/programs/xstrdup.c: Likewise.
3983         * locale/programs/ld-numeric.c: Likewise.
3984         * locale/programs/locfile-kw.gperf: Likewise.
3985         * locale/programs/ld-collate.c: Likewise.
3986         * locale/programs/charmap-kw.gperf: Likewise.
3987         * locale/programs/charmap.h: Likewise.
3988         * locale/programs/charmap-kw.h: Likewise.
3989         * locale/programs/config.h: Likewise.
3990         * locale/programs/locfile.c: Likewise.
3991         * locale/programs/ld-ctype.c: Likewise.
3992         * locale/programs/charmap.c: Likewise.
3993         * locale/programs/ld-messages.c: Likewise.
3994         * locale/programs/repertoire.h: Likewise.
3995         * locale/programs/locale.c: Likewise.
3996         * locale/programs/ld-name.c: Likewise.
3997         * locale/programs/linereader.c: Likewise.
3998         * locale/programs/locfile.h: Likewise.
3999         * locale/programs/3level.h: Likewise.
4000         * locale/programs/ld-monetary.c: Likewise.
4001         * locale/programs/ld-measurement.c: Likewise.
4002         * locale/programs/charmap-dir.c: Likewise.
4003         * locale/programs/ld-identification.c: Likewise.
4004         * locale/programs/localedef.h: Likewise.
4005         * locale/programs/charmap-dir.h: Likewise.
4006         * locale/programs/repertoire.c: Likewise.
4007         * locale/programs/simple-hash.h: Likewise.
4008         * locale/programs/ld-telephone.c: Likewise.
4009         * locale/programs/locale-spec.c: Likewise.
4010         * locale/programs/locfile-token.h: Likewise.
4011         * posix/getconf.c: Likewise.
4012         * iconv/dummy-repertoire.c: Likewise.
4013         * iconv/iconv_charmap.c: Likewise.
4014         * iconv/iconvconfig.c: Likewise.
4015         * iconv/iconv_prog.c: Likewise.
4016         * malloc/memusagestat.c: Likewise.
4017         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
4018
4019 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4020
4021         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
4022         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
4023         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
4024         check for the first argument.
4025
4026 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
4027
4028         [BZ #4775]
4029         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
4030         (__tgmath_real_type): Fix if expr is const int or other const
4031         qualified integral type.
4032         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
4033         expressions and handle const qualified arguments.
4034         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
4035         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
4036         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
4037         statement expressions.
4038         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
4039         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
4040         (__TGMATH_UNARY_IMAG): Define.
4041         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
4042         * math/Makefile (tests): Add test-tgmath2.
4043         (CFLAGS-test-tgmath2.c): Add.
4044         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
4045         count_cfloat, count_cldouble): New variables.
4046         (NCCALLS): Define.
4047         (main): Check number of complex calls as well.
4048         (F(compile_test)): Add complex tests and tests with const qualified
4049         arguments.
4050         (y, z, ccount): Define.
4051         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
4052         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
4053         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
4054         F(cproj)): New functions.
4055         * math/test-tgmath2.c: New test.
4056
4057 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
4058
4059         [BZ #4776]
4060         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
4061         RPATH etc. as "/" rather than "", don't segfault on empty paths,
4062         instead output ".".
4063         * dlfcn/Makefile (distribute): Add glreflib3.c.
4064         (module-names): Add glreflib3.
4065         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
4066         glreflib1.so.
4067         (LDFLAGS_glreflib3.so): New.
4068         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
4069         glreflib1.so.
4070         * dlfcn/glreflib3.c: New file.
4071
4072         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
4073         returned -1, return NULL.
4074         * intl/explodename.c (_nl_explode_name): Return -1 if
4075         _nl_normalize_codeset failed.
4076
4077 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
4078
4079         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
4080         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
4081         and avoid branch misspredicts for > 31 bytes memset case.
4082         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
4083         Remove toc ref to __cache_line_size.
4084
4085         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
4086         to get ISA-V2.0 branch hints.
4087         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
4088         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
4089         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
4090         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
4091         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
4092         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
4093         Remove toc ref to __cache_line_size.
4094
4095         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
4096         Include math_ldbl_opt.h.
4097
4098 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
4099
4100         [BZ #4773]
4101         * time/strptime_l.c (__strptime_internal): Implement greedy
4102         matching of weekday and month names.
4103
4104 2007-07-09  Roland McGrath  <roland@redhat.com>
4105
4106         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
4107         (ELF_NOTE_ABI): Use it.
4108         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
4109
4110 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
4111
4112         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.