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