aboutsummaryrefslogtreecommitdiff
path: root/time/tzset.c
AgeCommit message (Collapse)Author
2018-05-18Fix year 2039 bug for localtime with 64-bit time_t (bug 22639).Joseph Myers
Bug 22639 reports localtime failing to handle time offset transitions correctly in 2039 and later on platforms with 64-bit time_t. The problem is the use of SECSPERDAY (constant 86400) in calculations such as t = ((year - 1970) * 365 + /* Compute the number of leapdays between 1970 and YEAR (exclusive). There is a leapday every 4th year ... */ + ((year - 1) / 4 - 1970 / 4) /* ... except every 100th year ... */ - ((year - 1) / 100 - 1970 / 100) /* ... but still every 400th year. */ + ((year - 1) / 400 - 1970 / 400)) * SECSPERDAY; where t is of type time_t and year is of type int. Before my commit 92bd70fb85bce57ac47ba5d8af008736832c955a (an update from tzcode, included in 2.26 and later releases), SECSPERDAY was obtained from a file imported from tzcode, where the value included a cast to int_fast32_t. On 64-bit platforms, glibc defines int_fast32_t to be long int, so 64-bit, but my patch resulted in it changing to int. (The bug would probably have existed even before my patch for x32, which has 64-bit time_t but 32-bit int_fast32_t, but I haven't verified that.) This patch fixes the problem by including a cast to time_t in the definition of SECSPERDAY. (64-bit time support for 32-bit systems should move such code that isn't a public interface to using the internal 64-bit version of time_t throughout.) Tested for x86_64 and x86. [BZ #22639] * time/tzset.c (SECSPERDAY): Cast to time_t. * time/tst-y2039.c: New file. * time/Makefile (tests): Add tst-y2039.
2018-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
* All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
2017-08-31time: Remove the internal_function attributeFlorian Weimer
2017-06-16Update timezone code from tzcode 2017b.Joseph Myers
This patch updates files coming from tzcode to the versions in tzcode 2017b. A couple of changes to other glibc code are needed. time/tzset.c was using the SECSPERDAY macro from tzfile.h, which no longer defines that macro, so a local definition is added to tzset.c. Because timezone/private.h now defines the _ macro whenever HAVE_GETTEXT is true, even if it was previously defined, it is also necessary to avoid a conflict with the definition in include/libintl.h. Defining _ISOMAC is the obvious way to avoid such internal definitions being visible, together with defining TZ_DOMAIN so that zic and zdump continue to get the messages from the libc domain as desired. However, zic and zdump rely on PKGVERSION and REPORT_BUGS_TO from config.h, which is not included by default with _ISOMAC, so -include config.h needs adding to the options for these programs as well. Together those changes allow unmodified tzcode 2017b sources to work in glibc. Tested for x86_64. * timezone/private.h: Update from tzcode 2017b. * timezone/tzfile.h: Likewise. * timezone/tzselect.ksh: Likewise. * timezone/zdump.c: Likewise. * timezone/zic.c: Likewise. * timezone/Makefile (tz-cflags): Add -D_ISOMAC -DTZ_DOMAIN='"libc"' -include $(common-objpfx)config.h. * time/tzset.c (SECSPERDAY): New macro.
2017-03-07tzset: Clean up preprocessor macros min, max, signFlorian Weimer
2017-03-07timezone: Remove TZNAME_MAX limit from sysconf [BZ #15576]Florian Weimer
glibc does not impose a limit, and POSIX does not allow a sysconf limit which changes during the lifetime of a process.
2017-03-03tzset: Remove unused NOID macroFlorian Weimer
2017-03-03tzset: Remove __attribute_noinline__ from compute_offsetFlorian Weimer
After commit 42261ad731991df345880b0b509d83b0b9a9b9d8, compute_offset is only called once, so not inlining it increases executable size.
2017-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
2016-01-04Update copyright dates with scripts/update-copyrights.Joseph Myers
2015-10-16Convert 703 function definitions to prototype style.Joseph Myers
This automatically-generated patch converts 703 function definitions in glibc from old-style K&R to prototype-style. This conversion is deliberately simplistic, excluding any tricky cases as even a patch covering only simple cases is still very large. Currently excluded are: sysdeps files (to improve test coverage for the initial patch); files containing assertions (to avoid line number changes so that generated libraries can be compared); any cases where the generated function declaration would involve lines over 79 characters and so need to be wrapped; any cases with array parameters or other cases where parameter declarators don't end with the parameter name; any other cases that my script didn't parse. I didn't try to make the ChangeLog generation indicate when function definitions are conditional; it just lists the functions changed without regard to that. Tested for x86_64 and x86 (testsuite, and that installed stripped shared libraries are unchanged by the patch). * crypt/cert.c (good_bye): Convert to prototype-style function definition. (get8): Likewise. (put8): Likewise. * crypt/crypt-entry.c (crypt): Likewise. (__fcrypt): Likewise. * crypt/crypt_util.c (_ufc_prbits): Likewise. (_ufc_set_bits): Likewise. (_ufc_clearmem): Likewise. (__init_des_r): Likewise. (shuffle_sb): Likewise. (shuffle_sb): Likewise. (_ufc_setup_salt_r): Likewise. (_ufc_mk_keytab_r): Likewise. (_ufc_dofinalperm_r): Likewise. (encrypt): Likewise. (__setkey_r): Likewise. (setkey): Likewise. * crypt/md5.c (md5_init_ctx): Likewise. (md5_read_ctx): Likewise. (md5_finish_ctx): Likewise. (md5_stream): Likewise. (md5_buffer): Likewise. (md5_process_bytes): Likewise. * crypt/sha256.c (__sha256_init_ctx): Likewise. (__sha256_finish_ctx): Likewise. (__sha256_process_bytes): Likewise. * crypt/sha512.c (__sha512_init_ctx): Likewise. (__sha512_finish_ctx): Likewise. (__sha512_process_bytes): Likewise. * ctype/isctype.c (__isctype): Likewise. * debug/backtrace.c (__backtrace): Likewise. * debug/backtracesymsfd.c (__backtrace_symbols_fd): Likewise. * debug/fgets_chk.c (__fgets_chk): Likewise. * debug/fgets_u_chk.c (__fgets_unlocked_chk): Likewise. * debug/memcpy_chk.c (__memcpy_chk): Likewise. * debug/memmove_chk.c (MEMMOVE_CHK): Likewise. * debug/mempcpy_chk.c (__mempcpy_chk): Likewise. * debug/memset_chk.c (__memset_chk): Likewise. * debug/strcat_chk.c (__strcat_chk): Likewise. * debug/strncat_chk.c (__strncat_chk): Likewise. * debug/strncpy_chk.c (__strncpy_chk): Likewise. * debug/vsprintf_chk.c (_IO_str_chk_overflow): Likewise. * dirent/dirfd.c (dirfd): Likewise. * dirent/getdents.c (__getdirentries): Likewise. * dirent/getdents64.c (getdirentries64): Likewise. * dirent/rewinddir.c (__rewinddir): Likewise. * dirent/seekdir.c (seekdir): Likewise. * dirent/telldir.c (telldir): Likewise. * elf/sln.c (makesymlinks): Likewise. (makesymlink): Likewise. * gmon/gmon.c (__moncontrol): Likewise. (__monstartup): Likewise. (write_hist): Likewise. (write_call_graph): Likewise. (write_bb_counts): Likewise. * grp/setgroups.c (setgroups): Likewise. * inet/inet_lnaof.c (inet_lnaof): Likewise. * inet/inet_net.c (inet_network): Likewise. * inet/inet_netof.c (inet_netof): Likewise. * inet/rcmd.c (rresvport_af): Likewise. (rresvport): Likewise. * io/access.c (__access): Likewise. * io/chdir.c (__chdir): Likewise. * io/chmod.c (__chmod): Likewise. * io/chown.c (__chown): Likewise. * io/close.c (__close): Likewise. * io/creat.c (creat): Likewise. * io/creat64.c (creat64): Likewise. * io/dup.c (__dup): Likewise. * io/dup2.c (__dup2): Likewise. * io/dup3.c (__dup3): Likewise. * io/euidaccess.c (__euidaccess): Likewise. * io/faccessat.c (faccessat): Likewise. * io/fchmod.c (__fchmod): Likewise. * io/fchmodat.c (fchmodat): Likewise. * io/fchown.c (__fchown): Likewise. * io/fchownat.c (fchownat): Likewise. * io/fcntl.c (__fcntl): Likewise. * io/flock.c (__flock): Likewise. * io/fts.c (fts_load): Likewise. (fts_close): Likewise. (fts_read): Likewise. (fts_set): Likewise. (fts_children): Likewise. (fts_build): Likewise. (fts_stat): Likewise. (fts_sort): Likewise. (fts_alloc): Likewise. (fts_lfree): Likewise. (fts_palloc): Likewise. (fts_padjust): Likewise. (fts_maxarglen): Likewise. (fts_safe_changedir): Likewise. * io/getwd.c (getwd): Likewise. * io/isatty.c (__isatty): Likewise. * io/lchown.c (__lchown): Likewise. * io/link.c (__link): Likewise. * io/linkat.c (linkat): Likewise. * io/lseek.c (__libc_lseek): Likewise. * io/mkdir.c (__mkdir): Likewise. * io/mkdirat.c (mkdirat): Likewise. * io/mkfifo.c (mkfifo): Likewise. * io/mkfifoat.c (mkfifoat): Likewise. * io/open.c (__libc_open): Likewise. * io/open64.c (__libc_open64): Likewise. * io/readlink.c (__readlink): Likewise. * io/readlinkat.c (readlinkat): Likewise. * io/rmdir.c (__rmdir): Likewise. * io/symlink.c (__symlink): Likewise. * io/symlinkat.c (symlinkat): Likewise. * io/ttyname.c (ttyname): Likewise. * io/ttyname_r.c (__ttyname_r): Likewise. * io/umask.c (__umask): Likewise. * io/unlink.c (__unlink): Likewise. * io/unlinkat.c (unlinkat): Likewise. * io/utime.c (utime): Likewise. * libio/clearerr.c (clearerr): Likewise. * libio/clearerr_u.c (clearerr_unlocked): Likewise. * libio/feof.c (_IO_feof): Likewise. * libio/feof_u.c (feof_unlocked): Likewise. * libio/ferror.c (_IO_ferror): Likewise. * libio/ferror_u.c (ferror_unlocked): Likewise. * libio/filedoalloc.c (_IO_file_doallocate): Likewise. * libio/fileno.c (__fileno): Likewise. * libio/fputc.c (fputc): Likewise. * libio/fputc_u.c (fputc_unlocked): Likewise. * libio/fputwc.c (fputwc): Likewise. * libio/fputwc_u.c (fputwc_unlocked): Likewise. * libio/freopen.c (freopen): Likewise. * libio/freopen64.c (freopen64): Likewise. * libio/fseek.c (fseek): Likewise. * libio/fseeko.c (fseeko): Likewise. * libio/fseeko64.c (fseeko64): Likewise. * libio/ftello.c (__ftello): Likewise. * libio/ftello64.c (ftello64): Likewise. * libio/fwide.c (fwide): Likewise. * libio/genops.c (_IO_un_link): Likewise. (_IO_link_in): Likewise. (_IO_least_marker): Likewise. (_IO_switch_to_main_get_area): Likewise. (_IO_switch_to_backup_area): Likewise. (_IO_switch_to_get_mode): Likewise. (_IO_free_backup_area): Likewise. (_IO_switch_to_put_mode): Likewise. (__overflow): Likewise. (__underflow): Likewise. (__uflow): Likewise. (_IO_setb): Likewise. (_IO_doallocbuf): Likewise. (_IO_default_underflow): Likewise. (_IO_default_uflow): Likewise. (_IO_default_xsputn): Likewise. (_IO_sgetn): Likewise. (_IO_default_xsgetn): Likewise. (_IO_sync): Likewise. (_IO_default_setbuf): Likewise. (_IO_default_seekpos): Likewise. (_IO_default_doallocate): Likewise. (_IO_init): Likewise. (_IO_old_init): Likewise. (_IO_default_sync): Likewise. (_IO_default_finish): Likewise. (_IO_default_seekoff): Likewise. (_IO_sputbackc): Likewise. (_IO_sungetc): Likewise. (_IO_set_column): Likewise. (_IO_set_column): Likewise. (_IO_adjust_column): Likewise. (_IO_get_column): Likewise. (_IO_init_marker): Likewise. (_IO_remove_marker): Likewise. (_IO_marker_difference): Likewise. (_IO_marker_delta): Likewise. (_IO_seekmark): Likewise. (_IO_unsave_markers): Likewise. (_IO_nobackup_pbackfail): Likewise. (_IO_default_pbackfail): Likewise. (_IO_default_seek): Likewise. (_IO_default_stat): Likewise. (_IO_default_read): Likewise. (_IO_default_write): Likewise. (_IO_default_showmanyc): Likewise. (_IO_default_imbue): Likewise. (_IO_iter_next): Likewise. (_IO_iter_file): Likewise. * libio/getc.c (_IO_getc): Likewise. * libio/getwc.c (_IO_getwc): Likewise. * libio/iofclose.c (_IO_new_fclose): Likewise. * libio/iofdopen.c (_IO_new_fdopen): Likewise. * libio/iofflush.c (_IO_fflush): Likewise. * libio/iofflush_u.c (__fflush_unlocked): Likewise. * libio/iofgetpos.c (_IO_new_fgetpos): Likewise. * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise. * libio/iofgets.c (_IO_fgets): Likewise. * libio/iofgets_u.c (__fgets_unlocked): Likewise. * libio/iofgetws.c (fgetws): Likewise. * libio/iofgetws_u.c (fgetws_unlocked): Likewise. * libio/iofopen64.c (_IO_fopen64): Likewise. * libio/iofopncook.c (_IO_cookie_read): Likewise. (_IO_cookie_write): Likewise. (_IO_cookie_seek): Likewise. (_IO_cookie_close): Likewise. (_IO_cookie_seekoff): Likewise. (_IO_old_cookie_seek): Likewise. * libio/iofputs.c (_IO_fputs): Likewise. * libio/iofputs_u.c (__fputs_unlocked): Likewise. * libio/iofputws.c (fputws): Likewise. * libio/iofputws_u.c (fputws_unlocked): Likewise. * libio/iofread.c (_IO_fread): Likewise. * libio/iofread_u.c (__fread_unlocked): Likewise. * libio/iofsetpos.c (_IO_new_fsetpos): Likewise. * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise. * libio/ioftell.c (_IO_ftell): Likewise. * libio/iofwrite.c (_IO_fwrite): Likewise. * libio/iogetdelim.c (_IO_getdelim): Likewise. * libio/iogets.c (_IO_gets): Likewise. * libio/iopadn.c (_IO_padn): Likewise. * libio/iopopen.c (_IO_new_proc_open): Likewise. (_IO_new_popen): Likewise. (_IO_new_proc_close): Likewise. * libio/ioputs.c (_IO_puts): Likewise. * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise. (_IO_seekoff): Likewise. * libio/ioseekpos.c (_IO_seekpos_unlocked): Likewise. (_IO_seekpos): Likewise. * libio/iosetbuffer.c (_IO_setbuffer): Likewise. * libio/iosetvbuf.c (_IO_setvbuf): Likewise. * libio/ioungetc.c (_IO_ungetc): Likewise. * libio/ioungetwc.c (ungetwc): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * libio/iowpadn.c (_IO_wpadn): Likewise. * libio/libc_fatal.c (__libc_fatal): Likewise. * libio/memstream.c (__open_memstream): Likewise. (_IO_mem_sync): Likewise. (_IO_mem_finish): Likewise. * libio/oldfileops.c (_IO_old_file_init): Likewise. (_IO_old_file_close_it): Likewise. (_IO_old_file_finish): Likewise. (_IO_old_file_fopen): Likewise. (_IO_old_file_attach): Likewise. (_IO_old_file_setbuf): Likewise. (_IO_old_do_write): Likewise. (old_do_write): Likewise. (_IO_old_file_underflow): Likewise. (_IO_old_file_overflow): Likewise. (_IO_old_file_sync): Likewise. (_IO_old_file_seekoff): Likewise. (_IO_old_file_write): Likewise. (_IO_old_file_xsputn): Likewise. * libio/oldiofclose.c (_IO_old_fclose): Likewise. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise. * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise. * libio/oldiofopen.c (_IO_old_fopen): Likewise. * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise. * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise. * libio/oldiopopen.c (_IO_old_proc_open): Likewise. (_IO_old_popen): Likewise. (_IO_old_proc_close): Likewise. * libio/oldpclose.c (__old_pclose): Likewise. * libio/pclose.c (__new_pclose): Likewise. * libio/peekc.c (_IO_peekc_locked): Likewise. * libio/putc.c (_IO_putc): Likewise. * libio/putc_u.c (putc_unlocked): Likewise. * libio/putchar.c (putchar): Likewise. * libio/putchar_u.c (putchar_unlocked): Likewise. * libio/putwc.c (putwc): Likewise. * libio/putwc_u.c (putwc_unlocked): Likewise. * libio/putwchar.c (putwchar): Likewise. * libio/putwchar_u.c (putwchar_unlocked): Likewise. * libio/rewind.c (rewind): Likewise. * libio/setbuf.c (setbuf): Likewise. * libio/setlinebuf.c (setlinebuf): Likewise. * libio/vasprintf.c (_IO_vasprintf): Likewise. * libio/vscanf.c (_IO_vscanf): Likewise. * libio/vsnprintf.c (_IO_strn_overflow): Likewise. * libio/vswprintf.c (_IO_wstrn_overflow): Likewise. * libio/wfiledoalloc.c (_IO_wfile_doallocate): Likewise. * libio/wgenops.c (_IO_least_wmarker): Likewise. (_IO_switch_to_main_wget_area): Likewise. (_IO_switch_to_wbackup_area): Likewise. (_IO_wsetb): Likewise. (_IO_wdefault_pbackfail): Likewise. (_IO_wdefault_finish): Likewise. (_IO_wdefault_uflow): Likewise. (__woverflow): Likewise. (__wuflow): Likewise. (__wunderflow): Likewise. (_IO_wdefault_xsputn): Likewise. (_IO_wdefault_xsgetn): Likewise. (_IO_wdoallocbuf): Likewise. (_IO_wdefault_doallocate): Likewise. (_IO_switch_to_wget_mode): Likewise. (_IO_free_wbackup_area): Likewise. (_IO_switch_to_wput_mode): Likewise. (_IO_sputbackwc): Likewise. (_IO_sungetwc): Likewise. (_IO_adjust_wcolumn): Likewise. (_IO_init_wmarker): Likewise. (_IO_wmarker_delta): Likewise. (_IO_seekwmark): Likewise. (_IO_unsave_wmarkers): Likewise. * libio/wmemstream.c (open_wmemstream): Likewise. (_IO_wmem_sync): Likewise. (_IO_wmem_finish): Likewise. * locale/nl_langinfo.c (nl_langinfo): Likewise. * locale/nl_langinfo_l.c (__nl_langinfo_l): Likewise. * locale/programs/simple-hash.c (init_hash): Likewise. (delete_hash): Likewise. (insert_entry): Likewise. (set_entry): Likewise. (next_prime): Likewise. (is_prime): Likewise. * locale/programs/xmalloc.c (fixup_null_alloc): Likewise. (xmalloc): Likewise. (xrealloc): Likewise. * locale/programs/xstrdup.c (xstrdup): Likewise. * localedata/collate-test.c (xstrcoll): Likewise. * localedata/xfrm-test.c (xstrcmp): Likewise. * login/getlogin_r.c (__getlogin_r): Likewise. * login/getpt.c (__posix_openpt): Likewise. * login/login_tty.c (login_tty): Likewise. * login/setlogin.c (setlogin): Likewise. * mach/msg-destroy.c (__mach_msg_destroy): Likewise. (mach_msg_destroy_port): Likewise. (mach_msg_destroy_memory): Likewise. * malloc/mcheck.c (flood): Likewise. * misc/acct.c (acct): Likewise. * misc/brk.c (__brk): Likewise. * misc/chflags.c (chflags): Likewise. * misc/chroot.c (chroot): Likewise. * misc/fchflags.c (fchflags): Likewise. * misc/fstab.c (getfsspec): Likewise. (getfsfile): Likewise. * misc/fsync.c (fsync): Likewise. * misc/ftruncate.c (__ftruncate): Likewise. * misc/ftruncate64.c (__ftruncate64): Likewise. * misc/getdomain.c (getdomainname): Likewise. (getdomainname): Likewise. * misc/gethostname.c (__gethostname): Likewise. * misc/getpass.c (getpass): Likewise. * misc/getttyent.c (skip): Likewise. (value): Likewise. * misc/gtty.c (gtty): Likewise. * misc/hsearch.c (hsearch): Likewise. (hcreate): Likewise. * misc/hsearch_r.c (__hcreate_r): Likewise. (__hdestroy_r): Likewise. * misc/ioctl.c (__ioctl): Likewise. * misc/mkdtemp.c (mkdtemp): Likewise. * misc/mkostemp.c (mkostemp): Likewise. * misc/mkostemp64.c (mkostemp64): Likewise. * misc/mkostemps.c (mkostemps): Likewise. * misc/mkostemps64.c (mkostemps64): Likewise. * misc/mkstemp.c (mkstemp): Likewise. * misc/mkstemp64.c (mkstemp64): Likewise. * misc/mkstemps.c (mkstemps): Likewise. * misc/mkstemps64.c (mkstemps64): Likewise. * misc/mktemp.c (__mktemp): Likewise. * misc/preadv.c (preadv): Likewise. * misc/preadv64.c (preadv64): Likewise. * misc/pwritev.c (pwritev): Likewise. * misc/pwritev64.c (pwritev64): Likewise. * misc/readv.c (__readv): Likewise. * misc/revoke.c (revoke): Likewise. * misc/setdomain.c (setdomainname): Likewise. * misc/setegid.c (setegid): Likewise. * misc/seteuid.c (seteuid): Likewise. * misc/sethostid.c (sethostid): Likewise. * misc/sethostname.c (sethostname): Likewise. * misc/setregid.c (__setregid): Likewise. * misc/setreuid.c (__setreuid): Likewise. * misc/sstk.c (sstk): Likewise. * misc/stty.c (stty): Likewise. * misc/syscall.c (syscall): Likewise. * misc/syslog.c (setlogmask): Likewise. * misc/truncate.c (__truncate): Likewise. * misc/truncate64.c (truncate64): Likewise. * misc/ualarm.c (ualarm): Likewise. * misc/usleep.c (usleep): Likewise. * misc/ustat.c (ustat): Likewise. * misc/writev.c (__writev): Likewise. * nptl/cleanup_compat.c (_pthread_cleanup_pop): Likewise. * nptl/old_pthread_cond_broadcast.c (__pthread_cond_broadcast_2_0): Likewise. * nptl/old_pthread_cond_destroy.c (__pthread_cond_destroy_2_0): Likewise. * nptl/old_pthread_cond_signal.c (__pthread_cond_signal_2_0): Likewise. * nptl/old_pthread_cond_wait.c (__pthread_cond_wait_2_0): Likewise. * nptl/pt-raise.c (raise): Likewise. * nptl/pthread_barrier_destroy.c (pthread_barrier_destroy): Likewise. * nptl/pthread_barrier_wait.c (__pthread_barrier_wait): Likewise. * nptl/pthread_barrierattr_destroy.c (pthread_barrierattr_destroy): Likewise. * nptl/pthread_barrierattr_init.c (pthread_barrierattr_init): Likewise. * nptl/pthread_barrierattr_setpshared.c (pthread_barrierattr_setpshared): Likewise. * nptl/pthread_cond_broadcast.c (__pthread_cond_broadcast): Likewise. * nptl/pthread_cond_destroy.c (__pthread_cond_destroy): Likewise. * nptl/pthread_cond_init.c (__pthread_cond_init): Likewise. * nptl/pthread_cond_signal.c (__pthread_cond_signal): Likewise. * nptl/pthread_condattr_destroy.c (__pthread_condattr_destroy): Likewise. * nptl/pthread_condattr_getclock.c (pthread_condattr_getclock): Likewise. * nptl/pthread_condattr_getpshared.c (pthread_condattr_getpshared): Likewise. * nptl/pthread_condattr_init.c (__pthread_condattr_init): Likewise. * nptl/pthread_condattr_setpshared.c (pthread_condattr_setpshared): Likewise. * nptl/pthread_detach.c (pthread_detach): Likewise. * nptl/pthread_equal.c (__pthread_equal): Likewise. * nptl/pthread_getcpuclockid.c (pthread_getcpuclockid): Likewise. * nptl/pthread_getspecific.c (__pthread_getspecific): Likewise. * nptl/pthread_key_delete.c (pthread_key_delete): Likewise. * nptl/pthread_mutex_consistent.c (pthread_mutex_consistent): Likewise. * nptl/pthread_mutex_destroy.c (__pthread_mutex_destroy): Likewise. * nptl/pthread_mutex_getprioceiling.c (pthread_mutex_getprioceiling): Likewise. * nptl/pthread_mutexattr_destroy.c (__pthread_mutexattr_destroy): Likewise. * nptl/pthread_mutexattr_getprotocol.c (pthread_mutexattr_getprotocol): Likewise. * nptl/pthread_mutexattr_getpshared.c (pthread_mutexattr_getpshared): Likewise. * nptl/pthread_mutexattr_getrobust.c (pthread_mutexattr_getrobust): Likewise. * nptl/pthread_mutexattr_gettype.c (pthread_mutexattr_gettype): Likewise. * nptl/pthread_mutexattr_init.c (__pthread_mutexattr_init): Likewise. * nptl/pthread_mutexattr_setprioceiling.c (pthread_mutexattr_setprioceiling): Likewise. * nptl/pthread_mutexattr_setprotocol.c (pthread_mutexattr_setprotocol): Likewise. * nptl/pthread_mutexattr_setpshared.c (pthread_mutexattr_setpshared): Likewise. * nptl/pthread_mutexattr_setrobust.c (pthread_mutexattr_setrobust): Likewise. * nptl/pthread_mutexattr_settype.c (__pthread_mutexattr_settype): Likewise. * nptl/pthread_rwlock_destroy.c (__pthread_rwlock_destroy): Likewise. * nptl/pthread_rwlockattr_destroy.c (pthread_rwlockattr_destroy): Likewise. * nptl/pthread_rwlockattr_getkind_np.c (pthread_rwlockattr_getkind_np): Likewise. * nptl/pthread_rwlockattr_getpshared.c (pthread_rwlockattr_getpshared): Likewise. * nptl/pthread_rwlockattr_init.c (pthread_rwlockattr_init): Likewise. * nptl/pthread_rwlockattr_setkind_np.c (pthread_rwlockattr_setkind_np): Likewise. * nptl/pthread_rwlockattr_setpshared.c (pthread_rwlockattr_setpshared): Likewise. * nptl/pthread_setcancelstate.c (__pthread_setcancelstate): Likewise. * nptl/pthread_setcanceltype.c (__pthread_setcanceltype): Likewise. * nptl/pthread_setconcurrency.c (pthread_setconcurrency): Likewise. * nptl/pthread_setschedprio.c (pthread_setschedprio): Likewise. * nptl/pthread_setspecific.c (__pthread_setspecific): Likewise. * nptl/pthread_spin_destroy.c (pthread_spin_destroy): Likewise. * nptl/pthread_tryjoin.c (pthread_tryjoin_np): Likewise. * nptl/sem_close.c (sem_close): Likewise. * nptl/sem_destroy.c (__new_sem_destroy): Likewise. * nptl/sem_init.c (__old_sem_init): Likewise. * nptl/sigaction.c (__sigaction): Likewise. * nptl/unregister-atfork.c (__unregister_atfork): Likewise. * posix/_exit.c (_exit): Likewise. * posix/alarm.c (alarm): Likewise. * posix/confstr.c (confstr): Likewise. * posix/fpathconf.c (__fpathconf): Likewise. * posix/getgroups.c (__getgroups): Likewise. * posix/getpgid.c (__getpgid): Likewise. * posix/group_member.c (__group_member): Likewise. * posix/pathconf.c (__pathconf): Likewise. * posix/sched_getaffinity.c (sched_getaffinity): Likewise. * posix/sched_setaffinity.c (sched_setaffinity): Likewise. * posix/setgid.c (__setgid): Likewise. * posix/setpgid.c (__setpgid): Likewise. * posix/setuid.c (__setuid): Likewise. * posix/sleep.c (__sleep): Likewise. * posix/sysconf.c (__sysconf): Likewise. * posix/times.c (__times): Likewise. * posix/uname.c (__uname): Likewise. * posix/waitid.c (__waitid): Likewise. * pwd/getpw.c (__getpw): Likewise. * resolv/base64.c (b64_pton): Likewise. * resolv/gai_sigqueue.c (__gai_sigqueue): Likewise. * resolv/gethnamaddr.c (Dprintf): Likewise. (gethostbyname): Likewise. (gethostbyname2): Likewise. (gethostbyaddr): Likewise. (_sethtent): Likewise. (_gethtbyname): Likewise. (_gethtbyname2): Likewise. (_gethtbyaddr): Likewise. (map_v4v6_address): Likewise. (map_v4v6_hostent): Likewise. (addrsort): Likewise. (ht_sethostent): Likewise. (ht_gethostbyname): Likewise. (ht_gethostbyaddr): Likewise. * resolv/inet_net_ntop.c (inet_net_ntop): Likewise. (inet_net_ntop_ipv4): Likewise. * resolv/inet_neta.c (inet_neta): Likewise. * resolv/inet_ntop.c (inet_ntop): Likewise. (inet_ntop4): Likewise. (inet_ntop6): Likewise. * resolv/inet_pton.c (__inet_pton): Likewise. (inet_pton4): Likewise. (inet_pton6): Likewise. * resolv/res_debug.c (loc_aton): Likewise. (loc_ntoa): Likewise. * resource/getpriority.c (__getpriority): Likewise. * resource/getrusage.c (__getrusage): Likewise. * resource/nice.c (nice): Likewise. * resource/setpriority.c (__setpriority): Likewise. * resource/setrlimit64.c (setrlimit64): Likewise. * resource/vlimit.c (vlimit): Likewise. * resource/vtimes.c (vtimes): Likewise. * rt/aio_error.c (aio_error): Likewise. * rt/aio_return.c (aio_return): Likewise. * rt/aio_sigqueue.c (__aio_sigqueue): Likewise. * signal/kill.c (__kill): Likewise. * signal/killpg.c (killpg): Likewise. * signal/raise.c (raise): Likewise. * signal/sigaction.c (__sigaction): Likewise. * signal/sigaddset.c (sigaddset): Likewise. * signal/sigaltstack.c (sigaltstack): Likewise. * signal/sigandset.c (sigandset): Likewise. * signal/sigblock.c (__sigblock): Likewise. * signal/sigdelset.c (sigdelset): Likewise. * signal/sigempty.c (sigemptyset): Likewise. * signal/sigfillset.c (sigfillset): Likewise. * signal/sighold.c (sighold): Likewise. * signal/sigignore.c (sigignore): Likewise. * signal/sigintr.c (siginterrupt): Likewise. * signal/sigisempty.c (sigisemptyset): Likewise. * signal/sigismem.c (sigismember): Likewise. * signal/signal.c (signal): Likewise. * signal/sigorset.c (sigorset): Likewise. * signal/sigpause.c (__sigpause): Likewise. * signal/sigpending.c (sigpending): Likewise. * signal/sigprocmask.c (__sigprocmask): Likewise. * signal/sigrelse.c (sigrelse): Likewise. * signal/sigreturn.c (__sigreturn): Likewise. * signal/sigset.c (sigset): Likewise. * signal/sigsetmask.c (__sigsetmask): Likewise. * signal/sigstack.c (sigstack): Likewise. * signal/sigsuspend.c (__sigsuspend): Likewise. * signal/sigvec.c (sigvec_wrapper_handler): Likewise. * signal/sysv_signal.c (__sysv_signal): Likewise. * socket/accept.c (accept): Likewise. * socket/accept4.c (__libc_accept4): Likewise. * socket/bind.c (__bind): Likewise. * socket/connect.c (__connect): Likewise. * socket/getpeername.c (getpeername): Likewise. * socket/getsockname.c (__getsockname): Likewise. * socket/getsockopt.c (getsockopt): Likewise. * socket/listen.c (__listen): Likewise. * socket/recv.c (__recv): Likewise. * socket/recvmsg.c (__recvmsg): Likewise. * socket/send.c (__send): Likewise. * socket/sendmsg.c (__sendmsg): Likewise. * socket/shutdown.c (shutdown): Likewise. * socket/sockatmark.c (sockatmark): Likewise. * socket/socket.c (__socket): Likewise. * stdio-common/ctermid.c (ctermid): Likewise. * stdio-common/cuserid.c (cuserid): Likewise. * stdio-common/printf-prs.c (parse_printf_format): Likewise. * stdio-common/remove.c (remove): Likewise. * stdio-common/rename.c (rename): Likewise. * stdio-common/renameat.c (renameat): Likewise. * stdio-common/tempname.c (__gen_tempname): Likewise. * stdio-common/xbug.c (InitBuffer): Likewise. (AppendToBuffer): Likewise. (ReadFile): Likewise. * stdlib/a64l.c (a64l): Likewise. * stdlib/drand48_r.c (drand48_r): Likewise. * stdlib/getcontext.c (getcontext): Likewise. * stdlib/getenv.c (getenv): Likewise. * stdlib/l64a.c (l64a): Likewise. * stdlib/llabs.c (llabs): Likewise. * stdlib/lldiv.c (lldiv): Likewise. * stdlib/lrand48_r.c (lrand48_r): Likewise. * stdlib/mrand48_r.c (mrand48_r): Likewise. * stdlib/putenv.c (putenv): Likewise. * stdlib/random.c (__srandom): Likewise. (__initstate): Likewise. (__setstate): Likewise. * stdlib/random_r.c (__srandom_r): Likewise. (__setstate_r): Likewise. (__random_r): Likewise. * stdlib/secure-getenv.c (__libc_secure_getenv): Likewise. * stdlib/setcontext.c (setcontext): Likewise. * stdlib/setenv.c (setenv): Likewise. (unsetenv): Likewise. * stdlib/srand48.c (srand48): Likewise. * stdlib/srand48_r.c (__srand48_r): Likewise. * stdlib/swapcontext.c (swapcontext): Likewise. * stdlib/system.c (__libc_system): Likewise. * stdlib/tst-strtod.c (expand): Likewise. * stdlib/tst-strtol.c (expand): Likewise. * stdlib/tst-strtoll.c (expand): Likewise. * streams/fattach.c (fattach): Likewise. * streams/fdetach.c (fdetach): Likewise. * streams/getmsg.c (getmsg): Likewise. * streams/isastream.c (isastream): Likewise. * string/ffs.c (__ffs): Likewise. * string/ffsll.c (ffsll): Likewise. * string/memcmp.c (memcmp_common_alignment): Likewise. (memcmp_not_common_alignment): Likewise. (MEMCMP): Likewise. * string/memcpy.c (memcpy): Likewise. * string/memmove.c (MEMMOVE): Likewise. * string/memset.c (memset): Likewise. * string/rawmemchr.c (RAWMEMCHR): Likewise. * string/strchrnul.c (STRCHRNUL): Likewise. * string/strerror.c (strerror): Likewise. * string/strndup.c (__strndup): Likewise. * string/strverscmp.c (__strverscmp): Likewise. * sunrpc/clnt_raw.c (clntraw_freeres): Likewise. * sunrpc/clnt_tcp.c (clnttcp_geterr): Likewise. (clnttcp_freeres): Likewise. * sunrpc/clnt_unix.c (clntunix_freeres): Likewise. * sunrpc/pmap_prot.c (xdr_pmap): Likewise. * sunrpc/pmap_prot2.c (xdr_pmaplist): Likewise. * sunrpc/pmap_rmt.c (xdr_rmtcallres): Likewise. * sunrpc/rpc_prot.c (xdr_replymsg): Likewise. (xdr_callhdr): Likewise. * sunrpc/rpcinfo.c (udpping): Likewise. (tcpping): Likewise. (pstatus): Likewise. (pmapdump): Likewise. (brdcst): Likewise. (deletereg): Likewise. (getprognum): Likewise. (getvers): Likewise. (get_inet_address): Likewise. * sunrpc/svc_raw.c (svcraw_recv): Likewise. * sunrpc/svc_udp.c (svcudp_create): Likewise. (svcudp_stat): Likewise. (svcudp_recv): Likewise. (svcudp_reply): Likewise. (svcudp_getargs): Likewise. (svcudp_freeargs): Likewise. (svcudp_destroy): Likewise. * sunrpc/xdr.c (xdr_bytes): Likewise. (xdr_netobj): Likewise. (xdr_string): Likewise. (xdr_wrapstring): Likewise. * sunrpc/xdr_float.c (xdr_float): Likewise. (xdr_double): Likewise. * sunrpc/xdr_mem.c (xdrmem_setpos): Likewise. * sunrpc/xdr_ref.c (xdr_pointer): Likewise. * sysvipc/ftok.c (ftok): Likewise. * sysvipc/msgctl.c (msgctl): Likewise. * sysvipc/msgget.c (msgget): Likewise. * sysvipc/msgrcv.c (msgrcv): Likewise. * sysvipc/msgsnd.c (msgsnd): Likewise. * sysvipc/semget.c (semget): Likewise. * sysvipc/semop.c (semop): Likewise. * sysvipc/shmat.c (shmat): Likewise. * sysvipc/shmctl.c (shmctl): Likewise. * sysvipc/shmdt.c (shmdt): Likewise. * sysvipc/shmget.c (shmget): Likewise. * termios/cfmakeraw.c (cfmakeraw): Likewise. * termios/speed.c (cfgetospeed): Likewise. (cfgetispeed): Likewise. (cfsetospeed): Likewise. (cfsetispeed): Likewise. * termios/tcflow.c (tcflow): Likewise. * termios/tcflush.c (tcflush): Likewise. * termios/tcgetattr.c (__tcgetattr): Likewise. * termios/tcgetpgrp.c (tcgetpgrp): Likewise. * termios/tcgetsid.c (tcgetsid): Likewise. * termios/tcsendbrk.c (tcsendbreak): Likewise. * termios/tcsetpgrp.c (tcsetpgrp): Likewise. * time/adjtime.c (__adjtime): Likewise. * time/dysize.c (dysize): Likewise. * time/ftime.c (ftime): Likewise. * time/getitimer.c (__getitimer): Likewise. * time/gettimeofday.c (__gettimeofday): Likewise. * time/gmtime.c (__gmtime_r): Likewise. (gmtime): Likewise. * time/localtime.c (__localtime_r): Likewise. (localtime): Likewise. * time/offtime.c (__offtime): Likewise. * time/settimeofday.c (__settimeofday): Likewise. * time/stime.c (stime): Likewise. * time/strftime_l.c (tm_diff): Likewise. (iso_week_days): Likewise. * time/strptime.c (strptime): Likewise. * time/time.c (time): Likewise. * time/timespec_get.c (timespec_get): Likewise. * time/tzset.c (tzset_internal): Likewise. (compute_change): Likewise. (__tz_compute): Likewise. * wcsmbs/btowc.c (__btowc): Likewise. * wcsmbs/mbrlen.c (__mbrlen): Likewise. * wcsmbs/mbsinit.c (__mbsinit): Likewise. * wcsmbs/mbsrtowcs.c (__mbsrtowcs): Likewise. * wcsmbs/wcpcpy.c (__wcpcpy): Likewise. * wcsmbs/wcpncpy.c (__wcpncpy): Likewise. * wcsmbs/wcscat.c (__wcscat): Likewise. * wcsmbs/wcschrnul.c (__wcschrnul): Likewise. * wcsmbs/wcscmp.c (WCSCMP): Likewise. * wcsmbs/wcscpy.c (WCSCPY): Likewise. * wcsmbs/wcscspn.c (wcscspn): Likewise. * wcsmbs/wcsdup.c (wcsdup): Likewise. * wcsmbs/wcslen.c (__wcslen): Likewise. * wcsmbs/wcsncat.c (WCSNCAT): Likewise. * wcsmbs/wcsncmp.c (WCSNCMP): Likewise. * wcsmbs/wcsncpy.c (__wcsncpy): Likewise. * wcsmbs/wcsnlen.c (__wcsnlen): Likewise. * wcsmbs/wcspbrk.c (wcspbrk): Likewise. * wcsmbs/wcsrchr.c (WCSRCHR): Likewise. * wcsmbs/wcsspn.c (wcsspn): Likewise. * wcsmbs/wcsstr.c (wcsstr): Likewise. * wcsmbs/wcstok.c (wcstok): Likewise. * wcsmbs/wctob.c (wctob): Likewise. * wcsmbs/wmemchr.c (__wmemchr): Likewise. * wcsmbs/wmemcmp.c (WMEMCMP): Likewise. * wcsmbs/wmemcpy.c (__wmemcpy): Likewise. * wcsmbs/wmemmove.c (__wmemmove): Likewise. * wcsmbs/wmempcpy.c (__wmempcpy): Likewise. * wcsmbs/wmemset.c (__wmemset): Likewise. * wctype/wcfuncs.c (__towlower): Likewise. (__towupper): Likewise.
2015-09-08Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912).Joseph Myers
It was noted in <https://sourceware.org/ml/libc-alpha/2012-09/msg00305.html> that the bits/*.h naming scheme should only be used for installed headers. This patch renames bits/libc-lock.h to plain libc-lock.h and bits/libc-lockP.h to plain libc-lockP.h to follow that convention. Note that I don't know where libc-lockP.h comes from for Hurd (the Hurd libc-lock.h includes libc-lockP.h, but the only libc-lockP.h in the glibc source tree is for NPTL) - some unmerged patch? - but I updated the #include in the Hurd libc-lock.h anyway. Tested for x86_64 (testsuite, and that installed stripped shared libraries are unchanged by the patch). [BZ #14912] * bits/libc-lock.h: Move to ... * sysdeps/generic/libc-lock.h: ...here. (_BITS_LIBC_LOCK_H): Rename macro to _LIBC_LOCK_H. * sysdeps/mach/hurd/bits/libc-lock.h: Move to ... * sysdeps/mach/hurd/libc-lock.h: ...here. (_BITS_LIBC_LOCK_H): Rename macro to _LIBC_LOCK_H. [_LIBC]: Include <libc-lockP.h> instead of <bits/libc-lockP.h>. * sysdeps/mach/bits/libc-lock.h: Move to ... * sysdeps/mach/libc-lock.h: ...here. (_BITS_LIBC_LOCK_H): Rename macro to _LIBC_LOCK_H. * sysdeps/nptl/bits/libc-lock.h: Move to ... * sysdeps/nptl/libc-lock.h: ...here. (_BITS_LIBC_LOCK_H): Rename macro to _LIBC_LOCK_H. * sysdeps/nptl/bits/libc-lockP.h: Move to ... * sysdeps/nptl/libc-lockP.h: ...here. (_BITS_LIBC_LOCKP_H): Rename macro to _LIBC_LOCKP_H. * crypt/crypt_util.c: Include <libc-lock.h> instead of <bits/libc-lock.h>. * dirent/scandir-tail.c: Likewise. * dlfcn/dlerror.c: Likewise. * elf/dl-close.c: Likewise. * elf/dl-iteratephdr.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-support.c: Likewise. * elf/dl-writev.h: Likewise. * elf/rtld.c: Likewise. * grp/fgetgrent.c: Likewise. * gshadow/fgetsgent.c: Likewise. * gshadow/sgetsgent.c: Likewise. * iconv/gconv_conf.c: Likewise. * iconv/gconv_db.c: Likewise. * iconv/gconv_dl.c: Likewise. * iconv/gconv_int.h: Likewise. * iconv/gconv_trans.c: Likewise. * include/link.h: Likewise. * inet/getnameinfo.c: Likewise. * inet/getnetgrent.c: Likewise. * inet/getnetgrent_r.c: Likewise. * intl/bindtextdom.c: Likewise. * intl/dcigettext.c: Likewise. * intl/finddomain.c: Likewise. * intl/gettextP.h: Likewise. * intl/loadmsgcat.c: Likewise. * intl/localealias.c: Likewise. * intl/textdomain.c: Likewise. * libidn/idn-stub.c: Likewise. * libio/libioP.h: Likewise. * locale/duplocale.c: Likewise. * locale/freelocale.c: Likewise. * locale/newlocale.c: Likewise. * locale/setlocale.c: Likewise. * login/getutent_r.c: Likewise. * login/getutid_r.c: Likewise. * login/getutline_r.c: Likewise. * login/utmp-private.h: Likewise. * login/utmpname.c: Likewise. * malloc/mtrace.c: Likewise. * misc/efgcvt.c: Likewise. * misc/error.c: Likewise. * misc/fstab.c: Likewise. * misc/getpass.c: Likewise. * misc/mntent.c: Likewise. * misc/syslog.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_callback.c: Likewise. * nis/nss-default.c: Likewise. * nis/nss_compat/compat-grp.c: Likewise. * nis/nss_compat/compat-initgroups.c: Likewise. * nis/nss_compat/compat-pwd.c: Likewise. * nis/nss_compat/compat-spwd.c: Likewise. * nis/nss_nis/nis-alias.c: Likewise. * nis/nss_nis/nis-ethers.c: Likewise. * nis/nss_nis/nis-grp.c: Likewise. * nis/nss_nis/nis-hosts.c: Likewise. * nis/nss_nis/nis-network.c: Likewise. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-pwd.c: Likewise. * nis/nss_nis/nis-rpc.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. * nis/nss_nis/nis-spwd.c: Likewise. * nis/nss_nisplus/nisplus-alias.c: Likewise. * nis/nss_nisplus/nisplus-ethers.c: Likewise. * nis/nss_nisplus/nisplus-grp.c: Likewise. * nis/nss_nisplus/nisplus-hosts.c: Likewise. * nis/nss_nisplus/nisplus-initgroups.c: Likewise. * nis/nss_nisplus/nisplus-network.c: Likewise. * nis/nss_nisplus/nisplus-proto.c: Likewise. * nis/nss_nisplus/nisplus-pwd.c: Likewise. * nis/nss_nisplus/nisplus-rpc.c: Likewise. * nis/nss_nisplus/nisplus-service.c: Likewise. * nis/nss_nisplus/nisplus-spwd.c: Likewise. * nis/ypclnt.c: Likewise. * nptl/libc_pthread_init.c: Likewise. * nss/getXXbyYY.c: Likewise. * nss/getXXent.c: Likewise. * nss/getXXent_r.c: Likewise. * nss/nss_db/db-XXX.c: Likewise. * nss/nss_db/db-netgrp.c: Likewise. * nss/nss_db/nss_db.h: Likewise. * nss/nss_files/files-XXX.c: Likewise. * nss/nss_files/files-alias.c: Likewise. * nss/nsswitch.c: Likewise. * posix/regex_internal.h: Likewise. * posix/wordexp.c: Likewise. * pwd/fgetpwent.c: Likewise. * resolv/res_hconf.c: Likewise. * resolv/res_libc.c: Likewise. * shadow/fgetspent.c: Likewise. * shadow/lckpwdf.c: Likewise. * shadow/sgetspent.c: Likewise. * socket/opensock.c: Likewise. * stdio-common/reg-modifier.c: Likewise. * stdio-common/reg-printf.c: Likewise. * stdio-common/reg-type.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/vfscanf.c: Likewise. * stdlib/abort.c: Likewise. * stdlib/cxa_atexit.c: Likewise. * stdlib/fmtmsg.c: Likewise. * stdlib/random.c: Likewise. * stdlib/setenv.c: Likewise. * string/strsignal.c: Likewise. * sunrpc/auth_none.c: Likewise. * sunrpc/bindrsvprt.c: Likewise. * sunrpc/create_xid.c: Likewise. * sunrpc/key_call.c: Likewise. * sunrpc/rpc_thread.c: Likewise. * sysdeps/arm/backtrace.c: Likewise. * sysdeps/generic/ldsodefs.h: Likewise. * sysdeps/generic/stdio-lock.h: Likewise. * sysdeps/generic/unwind-dw2-fde.c: Likewise. * sysdeps/i386/backtrace.c: Likewise. * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Likewise. * sysdeps/m68k/backtrace.c: Likewise. * sysdeps/mach/hurd/cthreads.c: Likewise. * sysdeps/mach/hurd/dirstream.h: Likewise. * sysdeps/mach/hurd/malloc-machine.h: Likewise. * sysdeps/nptl/malloc-machine.h: Likewise. * sysdeps/nptl/stdio-lock.h: Likewise. * sysdeps/posix/dirstream.h: Likewise. * sysdeps/posix/getaddrinfo.c: Likewise. * sysdeps/posix/system.c: Likewise. * sysdeps/pthread/aio_suspend.c: Likewise. * sysdeps/s390/s390-32/backtrace.c: Likewise. * sysdeps/s390/s390-64/backtrace.c: Likewise. * sysdeps/unix/sysv/linux/check_pf.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: Likewise. * sysdeps/unix/sysv/linux/shm-directory.c: Likewise. * sysdeps/unix/sysv/linux/system.c: Likewise. * sysdeps/x86_64/backtrace.c: Likewise. * time/alt_digit.c: Likewise. * time/era.c: Likewise. * time/tzset.c: Likewise. * wcsmbs/wcsmbsload.c: Likewise. * nptl/tst-initializers1.c (do_test): Refer to <libc-lock.h> instead of <bits/libc-lock.h> in comment.
2015-04-27test-skeleton: Support temporary files without memory leaks [BZ#18333]Florian Weimer
add_temp_file now makes a copy which is freed by delete_temp_files. Callers to create_temp_file can now free the returned file name to avoid the memory leak. These changes do not affect the leak behavior of existing code. Also address a NULL pointer derefence in tzset after a memoru allocation failure, found during testing.
2015-04-24Make time zone file parser more robust [BZ #17715]Florian Weimer
2015-02-24Reduce lock contention in __tz_convert() [BZ #16145] (partial fix)Kevin Easton
This patch is an "easy win" partial fix for BZ #16145, which notes the heavy contention on tzset_lock when multiple threads are converting times with localtime_r(). In __tz_convert(), the lock does not need to be held after __tzfile_compute() / __tz_compute() have been called, so we can move the unlock up. At this point there is still significant work to be done in __offtime(), so we see some improvement (in my testing with 8 cores banging on localtime_r(), ~20% improvement in throughput).
2015-01-02Update copyright dates with scripts/update-copyrights.Joseph Myers
2014-02-10Use glibc_likely instead __builtin_expect.Ondřej Bílka
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae
2013-12-17Support TZ transition times < 00:00:00.Paul Eggert
This is needed for version-3 tz-format files; it supports time stamps past 2037 for America/Godthab (the only entry in the tz database for which this change is relevant). * manual/time.texi (TZ Variable): Document transition times from -167:59:59 through -00:00:01. * time/tzset.c (tz_rule): Time of day is now signed. (__tzset_parse_tz): Parse negative time of day.
2013-06-08Use (void) in no-arguments function definitions.Joseph Myers
2013-06-07Avoid use of "register" as optimization hint.Joseph Myers
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2012-05-09Fix daylight time change for the USIan Wienand
[BZ #14080] * time/tzset.c (__tzset_parse_tz): Update default rules for daylight time changes in the Energy Policy Act of 2005.
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert
2009-03-10* time/tzset.c: Optimize a bit for size.cvs/fedora-glibc-20090310T1925Ulrich Drepper
2009-03-10* time/tzset.c (__tzset_parse_tz): Use correct string when parsingUlrich Drepper
DST name. * time/tst-posixtz.c: Add tests for quoted timezone names.
2009-02-24* time/tzset.c (tzset_internal): Correct parsing of TZ envvar.Ulrich Drepper
2009-02-05* time/tzset.c (__tzset_parse_tz): DST offset must also allow hourUlrich Drepper
value of 24.
2008-03-19Remove useless "if" before "free".Ulrich Drepper
2007-10-17[BZ #5186]Ulrich Drepper
* time/tzset.c (__tz_convert): Don't force testing for a change of TZ if not called from localtime. But then also see whether the file changed, in case __use_tzfile is set.
2007-10-14* include/time.h: Declare __tzset_parse_tz and __tzset_compute.Ulrich Drepper
* time/tzset.c (tzset_internal): Break TZ string parsing out into __tzset_parse_tz and updating of daylight, timezone, tzname into update_vars. (__tz_compute): Renamed from tz_compute. Take additional parameters. (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now happens in __tz_compute. * time/tzfile.c (__tzfile_read): Also read TZ string. (find_transition): Fold into __tzfile_compute. (__tzfile_compute): For times beyond the last transition try to use the TZ string. * timezone/tst-timezone.c: Information in daylight and tzname does change for Asia/Tokyo timezone with more concrete information. Remove the test. * include/stdio.h: Add libc_hidden_proto for ftello. * libio/ftello.c: Add libc_hidden_def.
2004-12-06[BZ #601]Ulrich Drepper
Update. 2004-12-06 Jakub Jelinek <jakub@redhat.com> * time/tzset.c (tzset_internal): If + or - is seen, but no offset after it, reset offset to 0. [BZ #601] * libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOFF not
2004-09-14Update.Ulrich Drepper
2004-09-13 Ulrich Drepper <drepper@redhat.com> * misc/sys/cdefs.h: Restore old definition of __P. * csu/munch.awk: Remove uses of __P and __PMT. * gmon/gmon.c: Likewise. * hesiod/hesiod.h: Likewise. * include/stdio.h: Likewise. * io/fts.c: Likewise. * libio/genops.c: Likewise. * libio/libioP.h: Likewise. * libio/fileops.c: Likewise. * libio/iolibio.h: Likewise. * libio/libio.h: Likewise. * libio/memstream.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldstdfiles.c: Likewise. * libio/iopopen.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/vswprintf.c: Likewise. * libio/wgenops.c: Likewise. * libio/oldiopopen.c: Likewise. * locale/programs/xmalloc.c: Likewise. * locale/programs/xstrdup.c: Likewise. * malloc/mtrace.c: Likewise. * misc/getttyent.c: Likewise. * misc/getusershell.c: Likewise. * nis/rpcsvc/ypupd.h: Likewise. * posix/fnmatch.h: Likewise. * posix/glob.h: Likewise. * resolv/arpa/nameser.h: Likewise. * resolv/gethnamaddr.c: Likewise. * resolv/resolv.h: Likewise. * resolv/inet_net_ntop.c: Likewise. * resolv/inet_net_pton.c: Likewise. * resolv/res_init.c: Likewise. * resolv/nss_dns/dns-network.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/reg-printf.c: Likewise. * sysdeps/generic/chflags.c: Likewise. * sysdeps/generic/fchflags.c: Likewise. * sysdeps/generic/glob.c: Likewise. * sysdeps/generic/printf_fphex.c: Likewise. * sysdeps/generic/memcmp.c: Likewise. * sysdeps/generic/memcopy.h: Likewise. * sysdeps/generic/morecore.c: Likewise. * sysdeps/generic/sstk.c: Likewise. * sysdeps/posix/sigvec.c: Likewise. * sysdeps/posix/ttyname_r.c: Likewise. * sysdeps/standalone/arm/bits/errno.h: Likewise. * sysdeps/standalone/standalone.h: Likewise. * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/unix/arm/start.c: Likewise. * sysdeps/unix/bsd/sigaction.c: Likewise. * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise. * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise. * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise. * sysdeps/unix/sparc/start.c: Likewise. * sysdeps/unix/sysv/getdents.c: Likewise. * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise. * sysdeps/unix/sysv/irix4/getgroups.c: Likewise. * sysdeps/unix/sysv/irix4/getpriority.c: Likewise. * sysdeps/unix/sysv/irix4/getrusage.c: Likewise. * sysdeps/unix/sysv/irix4/pathconf.c: Likewise. * sysdeps/unix/sysv/irix4/setgroups.c: Likewise. * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise. * sysdeps/unix/sysv/irix4/start.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise. * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/setsid.c: Likewise. * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise. * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise. * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise. * time/tzset.c: Likewise. * time/strftime_l.c: Likewise. * time/strptime_l.c: Likewise. * crypt/md5.h: Likewise.
2004-08-11(tzset_internal): Add new parameter which is nonzero if called through ↵Ulrich Drepper
tzset. Use TZDEFAULT name including name comparison if the new parameter is zero. This means implicit tzset calls will not cause files to be opened and read by tzfile.c all the time.
2004-08-09[BZ #154]Ulrich Drepper
Update. 2004-08-09 Ulrich Drepper <drepper@redhat.com> * time/tzset.c (tzset_internal): If TZ is not set do not compare old and new tz value since it might be /etc/localtime in both cases although the file changed. [BZ #154] Patch by Christian Franke <franke@computer.org>. * time/tzfile.c (__tzfile_read): Determine dev/ino of file. Compare with values of previously opened file. Don't do anything is they match.
2004-02-09* time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format toRoland McGrath
24, not 23.
2003-02-01Update.Ulrich Drepper
2003-02-01 Ulrich Drepper <drepper@redhat.com> * time/tzfile.c (__tzfile_compute): Change return value type to void. Adjust return statements. * include/time.h (__tzfile_compute): Adjust prototype. 2003-02-01 Jim Meyering <jim@meyering.net> * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute always returns 1. 2003-01-31 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS. 2003-01-31 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub. * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise. 2003-01-31 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel back to 2.4.19 for powerpc64. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64. (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64. 2003-02-01 Ulrich Drepper <drepper@redhat.com> * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for platforms with strange alignment requirements on wchar_t.
2002-11-01* include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):Roland McGrath
New macros. * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove text_set_element. * elf/dl-libc.c (free_mem): Likewise. * iconv/gconv_conf.c (free_mem): Likewise. * iconv/gconv_db.c (free_mem): Likewise. * iconv/gconv_dl.c (free_mem): Likewise. * iconv/gconv_cache.c (free_mem): Likewise. * intl/finddomain.c (free_mem): Likewise. * intl/dcigettext.c (free_mem): Likewise. * locale/setlocale.c (free_mem): Likewise. * misc/fstab.c (fstab_free): Likewise. * nss/nsswitch.c (free_mem): Likewise. * posix/regcomp.c (free_mem): Likewise. * resolv/gai_misc.c (free_res): Likewise. * stdlib/fmtmsg.c (free_mem): Likewise. * sunrpc/clnt_perr.c (free_mem): Likewise. * sysdeps/generic/setenv.c (free_mem): Likewise. * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise. * sysdeps/pthread/aio_misc.c (free_res): Likewise. * time/tzset.c (free_mem): Likewise. * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section. * locale/loadarchive.c (_nl_archive_subfreeres): Likewise. * malloc/set-freeres.c (__libc_freeres): Likewise. * login/getutent.c: Include stdlib.h instead of stddef.h. (buffer): Change into pointer to utmp, add libc_freeres_ptr. (__getutent): Allocate buffer the first time it is run. * login/getutid.c: Include stdlib.h instead of stddef.h. (buffer): Change into pointer to utmp, add libc_freeres_ptr. (__getutid): Allocate buffer the first time it is run. * login/getutline.c: Include stdlib.h instead of stddef.h. (buffer): Change into pointer to utmp, add libc_freeres_ptr. (__getutline): Allocate buffer the first time it is run. * malloc/mtrace.c (malloc_trace_buffer): Change into char *. (mtrace): Allocate malloc_trace_buffer. * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf. * resolv/ns_print.c (ns_sprintrrf): Decrease size of t. * string/strerror.c: Include libintl.h and errno.h. (buf): New variable. (strerror): Only allocate buffer if actually needed (unknown error). * time/tzfile.c (transitions): Add libc_freeres_ptr. (freeres): Remove. 2002-10-25 Jakub Jelinek <jakub@redhat.com> * include/libc-symbols.h (libc_freeres_ptr): New macro. * malloc/set-freeres.c (__libc_freeres_ptrs): Define using symbol_set_define. (__libc_freeres): Free all pointers in that section. * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed commands when creating .lds script. (LDSEDCMD-c.so): New variable. * inet/rcmd.c (ahostbuf): Change into char *. Add libc_freeres_ptr. (rcmd_af): Use strdup to allocate ahostbuf. * inet/rexec.c (ahostbuf): Change into char *. Add libc_freeres_ptr. (rexec_af): Use strdup to allocate ahostbuf. * stdio-common/reg-printf.c (printf_funcs): Remove. (__printf_arginfo_table): Change into printf_arginfo_function **. Add libc_freeres_ptr. (__register_printf_function): Allocate __printf_arginfo_table and __printf_function_table the first time it is called. * stdio-common/printf-parse.h (__printf_arginfo_table): Change into printf_arginfo_function **. (parse_one_spec): Add __builtin_expect. * grp/fgetgrent.c (buffer): Add libc_freeres_ptr. (free_mem): Remove. * inet/getnetgrent.c (buffer): Add libc_freeres_ptr. (free_mem): Remove. * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC. (string_space, map): Add libc_freeres_ptr. (free_mem): Remove. * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr. (free_mem): Remove. * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr. (free_mem): Remove. * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC. (buffer): Add libc_freeres_ptr. (free_mem): Remove for _LIBC. * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr. (free_mem): Remove. * nss/getXXent.c (buffer): Add libc_freeres_ptr. (free_mem): Remove. * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr. (free_mem): Remove. * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr. (free_mem): Remove. * shadow/fgetspent.c (buffer): Add libc_freeres_ptr. (free_mem): Remove. * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr. (free_mem): Remove. * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add libc_freeres_ptr. (free_mem): Remove. * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add libc_freeres_ptr. (free_mem): Remove. 2002-10-30 Jakub Jelinek <jakub@redhat.com> * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias instead of duplicating the whole function in libc.
2002-03-12Update.Ulrich Drepper
2002-03-12 Ulrich Drepper <drepper@redhat.com> * posix/bug-regex5.c (main): Use nl_langinfo instead of _NL_CURRENT. * locale/localeinfo.h: Add attribute_hidden to _nl_current_LC_XXX, _nl_category_names, _nl_category_name_sizes, _nl_current, _nl_C_name, _nl_POSIX_name, _nl_C_codeset, and _nl_C_LC_XXX. * intl/dcigettext.c (_nl_default_default_domain): Define as hidden. (_nl_current_default_domain): Likewise (_nl_state_lock): Likewise. * intl/textdomain.c (_nl_default_default_domain): Declare as hidden. (_nl_current_default_domain): Likewise (_nl_state_lock): Likewise. * intl/bindtextdom.c (_nl_state_lock): Likewise. * stdlib/fpioconst.h (__tens): Add attribute_hidden. (_fpioconst_pow10): Likewise. * include/time.h (_tmbuf): Add attribute_hidden. * time/tzset.c (tzstring_list): Define as static. * include/time.h: Add attribute_hidden to __tzname_cur_max and __use_tzfile declaration. * wcsmbs/wcsmbsload.h: Add attribute_hidden to __wcsmbs_gconv_fcts and __wcsmbs_last_locale declaration.
2002-03-12Update.Ulrich Drepper
2002-03-07 Jakub Jelinek <jakub@redhat.com> * time/tst-posixtz.c (tests): Add new tests. (main): Test whether tzset() sets daylight properly. 2002-03-06 Jakub Jelinek <jakub@redhat.com> * time/tzset.c (tz_compute): Move __daylight, __tzname and __tzname_cur_max setting... (tzset_internal): ...here. 2002-03-06 Jakub Jelinek <jakub@redhat.com> * time/tzset.c (compute_change): Don't return any value. (tz_compute): Likewise. Don't handle southern hemisphere here. (__tz_convert): But here.
2001-07-06Update to LGPL v2.1.Andreas Jaeger
2001-07-06 Paul Eggert <eggert@twinsun.com> * manual/argp.texi: Remove ignored LGPL copyright notice; it's not appropriate for documentation anyway. * manual/libc-texinfo.sh: "Library General Public License" -> "Lesser General Public License". 2001-07-06 Andreas Jaeger <aj@suse.de> * All files under GPL/LGPL version 2: Place under LGPL version 2.1.
2001-01-03Update.Ulrich Drepper
* manual/Makefile (TEXI2PDF): Change to texi2dvi --pdf. Suggested by Minko Markov <mmarkov@home.com>. 2001-01-02 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * sysdeps/powerpc/elf/start.S (__data_start): Make it global. * sysdeps/powerpc/dl-machine.c (dl_reloc_overflow): Print the name of the failing symbol. (__process_machine_rela): Pass symbol to dl_reloc_overflow(). 2001-01-02 Ben Collins <bcollins@debian.org> * time/tzset.c (tzset_internal): Make sure we fall back to UTC if TZ is not set and TZDEFAULT is not present. 2001-01-01 Ben Collins <bcollins@debian.org> * string/strings.h: Make sure we declare our functions even if string.h is already included, based on whether or not __USE_BSD is defined. 2001-01-02 Ulrich Drepper <drepper@redhat.com> * dlfcn/dlerror.c (dlerror): Handle call of dlerror() before any other dlopen() and dlsym(). Based on a patch by Ben Collins <bcollins@debian.org>. 2001-01-02 Andreas Jaeger <aj@suse.de> * dlfcn/errmsg1.c (main): Call dlerror initially. Reported by Ben Collins <bcollins@debian.org>. 2001-01-02 Ulrich Drepper <drepper@redhat.com>
2000-08-24(free_mem): New function. Free allocated memory.Ulrich Drepper
2000-02-22Update.Ulrich Drepper
2000-02-22 Ulrich Drepper <drepper@redhat.com> * locales/mk_MK: New file. Contributed by Damjan Georgievski <gdamjan@freemail.org.mk> * SUPPORTED: Add mk_MK ISO-8859-1.
1999-11-08Update.Ulrich Drepper
1999-11-08 Andreas Jaeger <aj@suse.de> * locale/findlocale.c (_nl_find_locale): Free normalized_codeset; this fixes a memory leak (closes PR libc/1435). * intl/l10nflist.c (_nl_normalize_codeset): Update comment to reflect memory allocation. * intl/loadinfo.h: Comment _nl_normalize_codeset, comment memory allocation in _nl_explode_name. 1999-11-06 Andreas Jaeger <aj@suse.de> * time/tzset.c: Use __libc_lock_define_initialized for tzset_lock to initialize it. Reported by wes@surety.com, closes PR libc/1432. 1999-11-05 Geoff Keating <geoffk@cygnus.com> * sysdeps/powerpc/fpu/bits/fenv.h: Don't put commas at the end of enumerator lists (-pedantic complains). (feraiseexcept): Use i#*X as the constraint. Fix a bug in the test for 'one bit set'. (feclearexcept): Likewise.
1999-09-06Update.Ulrich Drepper
1999-09-06 Andreas Schwab <schwab@suse.de> * time/tzset.c (compute_change): Replace slow loop to compute T by simple algorithm.
1999-04-28Update.Ulrich Drepper
1999-04-28 Ulrich Drepper <drepper@cygnus.com> * argp/argp-ba.c (argp_program_bug_address): Don't initialize with 0. * argp/argp-parse.c (_argp_hang): Likewise. * argp/argp-pv.c (argp_program_version): Likewise. * argp/argp-pvh.c (argp_program_version_hook): Likewise. * inet/ether_hton.c (ether_hton, startp): Likewise. * inet/ether_ntoh.c (ether_ntoh, startp): Likewise. * inet/getnetgrent_r.c (setup, startp): Likewise. * intl/loadmsgcat.c (_nl_msg_cat_cntr): Likewise. * intl/localealias.c (string_space, string_space_act, string_space_max, nmap, maxmap): Likewise. * libio/iopopen.c (proc_file_chain): Likewise. * libio/oldiopopen.c (old_proc_file_chain): Likewise. * locale/lc-collate.c (__collate_table, __collate_extra, __collate_element_hash, __collate_element_strings, __collate_element_values): Likewise. * malloc/mcheck.c (mcheck_used): Likewise. * malloc/mtrace.c (added_atexit_handler): Likewise. * malloc/set-freeres.c (already_called): Likewise. * misc/getpass.c (getpass) [buf, bufsize]: Likewise. * misc/syslog.c (LogStat, LogTag): Likewise. * nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Likewise. * nss/getXXbyYY_r.c (startp): Likewise. * posix/getopt.c (optarg, __getopt_initialized): Likewise. * posix/regex.c (init_syntax_once) [done]: Likewise. (debug): Likewise. * string/strfry.c (init): Likewise. * sunrpc/svc_run.c (svc_top): Likewise. * posix/euidaccess.c (have_ids): Likewise. * sysdeps/unix/sysv/linux/poll.c (must_emulate): Likewise. * sysdeps/unix/sysv/linux/ttyname.c (__ttyname, namelen): Likewise. * time/getdate.c (getdate_err): Likewise. * time/tzfile.c (transitions, type_idxs, types, zone_names, leaps): Likewise. * time/tzset.c (old_tz, is_initialized): Likewise. * inet/getnameinfo.c (nrl_domainname): Rewrite to allow initialization of static data with zero. * signal/allocrtsig.c (init): Likewise. * string/Makefile (routines): Add strchrnul. * string/Versions [GLIBC_2.1.1]: Add strchrnul. * string/string.c: Add strchrnul prototype. * include/string.h: Add __strchrnul prototype. * sysdeps/generic/strchrnul.c: New file. * sysdeps/i386/strchrnul.S: New file. * sysdeps/i386/bits/string.c: Add strchrnul optimization. * sysdeps/i386/i486/bits/string.c: Likewise. * argp/argp-help.c (argp_args_usage): Use __strchrnul. * inet/ether_line.c (ether_line): Likewise. * nscd/nscd_conf.c (nscd_parse_file): Likewise. * nss/nsswitch.c (nss_parse_file): Likewise. * posix/execvp.c (execvp): Likewise. * posix/fnmatch.c (internal_fnmatch): Likewise. * resolv/res_hconf.c (_res_hconv_init): Likewise. * resolv/res_init.c (res_init): Likewise. * stdlib/fmtmsg.c (init): Likewise. * stdlib/getsubopt.c (getsubopt): Likewise. * catgets/catgets.c (catopen): Only allocate one memory block. (catclose): Only one free call necessary. * catgets/open_catalog.c (__open_catalog): Simplify handling of file descriptor. * ctype/ctype-extn.c: Make __toascii_l and __isascii_l alias instead of real functions. Simplify _tolower and _toupper. * grp/initgroups.c (compat_call): Remove unnecessary use of pointer variable. * iconv/gconv.h (struct gconv_info): Change data element from pointer to array of size 0. * iconv/gconv_open.c (__gconv_open): Allocate structures accordingly. * iconv/gconv_close.c (__gconv_close): Don't free data. * iconv/gconv_conf.c (add_alias): Avoid searching in tree twice to insert new alias. * iconv/gconv_db.c (add_derivation): More efficient copying. Check for error while inserting in tree. * include/time.h: Pretty print. * inet/ruserpass.c: Rewrite use of toktab to avoid string pointers in table and lots of relocations. * posix/regex.c (regerror): Rewrite use of re_error_msgid to avoid string pointers in table and lots of relocations. * intl/finddomain.c: Remove definition of strchr macro. * io/ftw.c (nftw_arr, ftw_arr): Make const. * locale/loadlocale.c (_nl_load_locale): Optimize string copying. * locale/localeinfo.h (_nl_category_names): Change into an array with fixed width char string elements. * locale/setlocale.c (_nl_category_names): Likewise. (_nl_current): Make global. * locale/nl_langinfo.c (nldata): Removed. Use _nl_current now. * malloc/Makefile (distribute): Add stackinfo.h. * sysdeps/generic/stackinfo.h: New file. * sysdeps/i386/stackinfo.h: New file. * posix/execl.c: Use stackinfo.h in optimizing alloca use. * posix/execle.c: Likewise. * posix/execlp.c: Likewise. * nis/nis_table.c (__create_ib_request): Always use realloc. * posix/execvp.c (execute): Rename to script_execute and keep only code to execute using shell. (execvp): Call execv directly and only fall back on script_execute. * resolv/inet_net_pton.c (inet_net_pton_ipv4): Remove digits define and always use xdigits instead. * resolv/res_init.c (res_init): Use rawmemchr instead of strchr where appropriate. * stdlib/fpioconst.h (__tens): New declaration. (struct mp_power): Remove array, add arrayoff element. * stdlib/fpioconst.c: Replace definitions of _ten_p* arrays by one __tens array and add in _fpioconst_pow10 offsets into __tens. * stdio-common/printf_fp.c: Rewrite to use new __tens array. * stdlib/strtod.c: Likewise. * stdlib/a64l.c (a64l_table): Avoid unnecessary elements. * stdlib/exit.c: Rewrite to use __exit_funcs being as sign for end of the list. * stdlib/atexit.c (__exit_funcs): Don't initialize. * stdlib/fmtmsg.c (keywords): Make name element fixed width array. * sunrpc/clnt_perr.c: Rewrite clnt_sperrno and auth_errmsg to use a single and an array with offsets. * sunrpc/des_soft.c (partab): Make it const. * sunrpc/key_call.c (trytimeout, tottimeout): Make const. (__key_encryptsession_pk_LOCAL): Don't initialize with 0. (__key_decryptsession_pk_LOCAL): Likewise. (__key_gendes_LOCAL): Likewise. (MESSENGER): Mark const. (key_call_private_main): Don't initialize with 0. (use_keyenvoy): Don't initialize with 0. (key_call): Rewrite to reverse logic of use_doors variable. * sunrpc/netname.c (OPSYS): Define as array, not pointer. (startp): Don't initialize with zero. * sunrpc/openchild.c (_openchild): Make first argument const. * sunrpc/pmap_rmt.c (timeout): Mark const. * sunrpc/xcrypt.c (hex): Likewise. * sysdeps/unix/sysv/linux/getcwd.c: Rewrite to allow omitting initialization of global variables. * sysdeps/unix/sysv/linux/getpt.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c: Likewise. * termios/tcgetsid.c: Likewise. * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (x86_cap_flags): Change fxsr to osfxsr. * time/tzfile.c (__tzfile_read): Rewrite to allocate only one memory block. Add function to free memory if wanted. * time/tzset.c (tzset_internal): Pass extra argument to __tzfile_read. * wcsmbs/wcsmbsload.c (to_wc, to_mb): Correct initializers. * wcsmbs/wmemset.c: Little code optimization.
1998-12-10Update.Ulrich Drepper
1998-12-10 Ulrich Drepper <drepper@cygnus.com> * inet/getnetgrent_r.c (innetgr): Check host and domain name with strcasecmp, not strcmp. [PR libc/894]. 1998-12-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> * posix/regex.h: Declare re_comp, re_exec if compiling for libc to get prototypes. * wctype/wctype.h: Add prototypes for __iswblank_l and iswblank. 1998-12-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/gethostid.c: Include <netdb.h> to get prototype for __gethostbyname_r. * include/time.h: Add declarations of internal interfaces. * time/tzset.c: Remove declarations of internal interfaces. * time/gmtime.c: Likewise. * time/localtime.c: Likewise. * time/offtime.c: Likewise. * time/tzfile.c: Likewise.
1998-11-02Update.Ulrich Drepper
* elf/Versions [libc, GLIBC_2.01]: Add _dl_global_scope_alloc. * elf/dl-open.c (_dl_global_scope_alloc): Move definition to * elf/dl-deps.c: ...here. * elf/dl-open.c (dl_open_worker): Call _dl_map_object_deps with new parameter and expect result. Remove code handling RTLD_GLOBAL. Add return value of _dl_map_object_deps to _dl_main_searchlist->r_nlist. * elf/dl-deps.c (_dl_map_object_deps): Change to return value. If we parameter GLOBAL is nonzero add object and dependencies to the global scope. * elf/ldsodefs.h: Adapt prototype for _dl_map_object_deps. * elf/rtld.c (dl_main): Call _dl_map_object_deps with new parameter. Mark all objects as in global scope. * elf/dl-object.c (_dl_new_object): Initialize l_global to zero. * sysdeps/unix/sysv/linux/bits/sockunion.h: Add Econet support. * sysdeps/unix/sysv/linux/i386/sysdep.h: Add .L prefix to symbols used in macro magic. 1998-11-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/netatalk/at.h: Include <linux/atalk.h> before <sys/socket.h> to make sockaddr_at available to <sys/socket.h>. * posix/glob.h: Remove __P from parameter lists of declarations. 1998-11-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> * time/tzset.c (tz_compute): Remove unused parameter timer. Change caller. 1998-11-02 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/bits/types.h (__ipc_pid_t): New typedef. 1998-11-02 Ulrich Drepper <drepper@cygnus.com>
1998-10-26Update.Ulrich Drepper
1998-10-26 11:09 Ulrich Drepper <drepper@cygnus.com> * time/Makefile (tests): Add tst-posixtz. * time/tst-posixtz.c: New file. 1998-10-24 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * elf/rtld.c (process_envvars): Accept any non-null value of LD_BIND_NOW, as mandated by the ABI. 1998-10-24 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/unix/sysv/linux/pread.c: Rename __syscall_pread64 to __syscall_pread. * sysdeps/unix/sysv/linux/pwrite.c: Rename __syscall_pwrite64 to __syscall_pwrite. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/arm/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. Remove duplicate entries. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Remove s_pread64 and s_pwrite64. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise. 1998-10-24 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/unix/sysv/linux/llseek.c: Use INLINE_SYSCALL. * sysdeps/unix/sysv/linux/arm/syscalls.list: Rename __sys_llseek to __syscall__llseek. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/i386/syscalls.list: Remove entry for __sys_llseek. 1998-10-26 Cristian Gafton <gafton@redhat.com> * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Add s_setfsgid and s_setfsuid. 1998-10-26 Ulrich Drepper <drepper@cygnus.com> * time/tzset.c (tz_compute): Correct last patch and describe this in a comment.