diff options
author | Jakub Jelinek <jakub@redhat.com> | 2004-11-30 06:33:11 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2004-11-30 06:33:11 +0000 |
commit | c1f8ef75d3ddf687efc5ee23e16075c256fa77be (patch) | |
tree | a3ea2de6f93ff7c1abd4190b14414cf458474436 | |
parent | f94203900a978cda33df395c36827a17d171f98e (diff) |
Updated to fedora-glibc-20041130T0624
28 files changed, 454 insertions, 122 deletions
@@ -1,3 +1,54 @@ +2004-11-29 Roland McGrath <roland@redhat.com> + + * posix/confstr.c: Avoid punctuation in #error text. + +2004-11-27 Ulrich Drepper <drepper@redhat.com> + + * posix/Makefile (tests): Add tst-sysconf. + * posix/tst-sysconf.c: New file. + + * posix/getconf.c (vars): Add support for _SC_IPV6 and + _SC_RAW_SOCKETS. + * sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6 + and _SC_RAW_SOCKETS. + * sysdeps/generic/bits/confname.h: Define _SC_IPV6 and + _SC_RAW_SOCKETS. + +2004-11-26 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR. + +2004-11-26 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if + NO_SGIDEFS_H isn't defined. Don't include sgidefs.h twice. + * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. + * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. + * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. + +2004-11-27 Ulrich Drepper <drepper@redhat.com> + + * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode + parameter. Reported by VY Newsum <newsum@fel.tno.nl>. + +2004-11-10 Daniel Jacobowitz <dan@debian.org> + + * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose, + _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen, + _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal, + _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell, + _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf, + _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal) + _IO_fwrite_internal): Remove incorrect __THROW. + * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn, + _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write, + _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline, + _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal, + _IO_wdo_write_internal, _IO_do_write_internal, + _IO_getline_info_internal, _IO_getline_internal, + _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write, + _IO_close): Likewise. + 2004-11-26 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR. diff --git a/fedora/branch.mk b/fedora/branch.mk index f9802a9166..9b5e669da3 100644 --- a/fedora/branch.mk +++ b/fedora/branch.mk @@ -1,5 +1,5 @@ # This file is updated automatically by Makefile. glibc-branch := fedora glibc-base := HEAD -fedora-sync-date := 2004-11-26 13:18 UTC -fedora-sync-tag := fedora-glibc-20041126T1318 +fedora-sync-date := 2004-11-30 06:24 UTC +fedora-sync-tag := fedora-glibc-20041130T0624 diff --git a/include/dlfcn.h b/include/dlfcn.h index 3ff855a367..bfa1b9041b 100644 --- a/include/dlfcn.h +++ b/include/dlfcn.h @@ -12,7 +12,8 @@ /* Now define the internal interfaces. */ -#define __libc_dlopen(name) __libc_dlopen_mode (name, RTLD_LAZY) +#define __libc_dlopen(name) \ + __libc_dlopen_mode (name, RTLD_LAZY | __RTLD_DLOPEN) extern void *__libc_dlopen_mode (__const char *__name, int __mode); extern void *__libc_dlsym (void *__map, __const char *__name); extern int __libc_dlclose (void *__map); diff --git a/libio/iolibio.h b/libio/iolibio.h index 4b914fc02e..00a4f56c50 100644 --- a/libio/iolibio.h +++ b/libio/iolibio.h @@ -7,36 +7,35 @@ extern "C" { #endif -extern int _IO_fclose (_IO_FILE*) __THROW; -extern int _IO_new_fclose (_IO_FILE*) __THROW; -extern int _IO_old_fclose (_IO_FILE*) __THROW; +extern int _IO_fclose (_IO_FILE*); +extern int _IO_new_fclose (_IO_FILE*); +extern int _IO_old_fclose (_IO_FILE*); extern _IO_FILE *_IO_fdopen (int, const char*) __THROW; extern _IO_FILE *_IO_old_fdopen (int, const char*) __THROW; extern _IO_FILE *_IO_new_fdopen (int, const char*) __THROW; -extern int _IO_fflush (_IO_FILE*) __THROW; -extern int _IO_fgetpos (_IO_FILE*, _IO_fpos_t*) __THROW; -extern int _IO_fgetpos64 (_IO_FILE*, _IO_fpos64_t*) __THROW; -extern char* _IO_fgets (char*, int, _IO_FILE*) __THROW; -extern _IO_FILE *_IO_fopen (const char*, const char*) __THROW; -extern _IO_FILE *_IO_old_fopen (const char*, const char*) __THROW; -extern _IO_FILE *_IO_new_fopen (const char*, const char*) __THROW; -extern _IO_FILE *_IO_fopen64 (const char*, const char*) __THROW; -extern _IO_FILE *__fopen_internal (const char*, const char*, int) __THROW; +extern int _IO_fflush (_IO_FILE*); +extern int _IO_fgetpos (_IO_FILE*, _IO_fpos_t*); +extern int _IO_fgetpos64 (_IO_FILE*, _IO_fpos64_t*); +extern char* _IO_fgets (char*, int, _IO_FILE*); +extern _IO_FILE *_IO_fopen (const char*, const char*); +extern _IO_FILE *_IO_old_fopen (const char*, const char*); +extern _IO_FILE *_IO_new_fopen (const char*, const char*); +extern _IO_FILE *_IO_fopen64 (const char*, const char*); +extern _IO_FILE *__fopen_internal (const char*, const char*, int); extern _IO_FILE *__fopen_maybe_mmap (_IO_FILE *) __THROW; -extern int _IO_fprintf (_IO_FILE*, const char*, ...) __THROW; -extern int _IO_fputs (const char*, _IO_FILE*) __THROW; +extern int _IO_fprintf (_IO_FILE*, const char*, ...); +extern int _IO_fputs (const char*, _IO_FILE*); libc_hidden_proto (_IO_fputs) -extern int _IO_fsetpos (_IO_FILE*, const _IO_fpos_t *) __THROW; -extern int _IO_fsetpos64 (_IO_FILE*, const _IO_fpos64_t *) __THROW; -extern long int _IO_ftell (_IO_FILE*) __THROW; -extern _IO_size_t _IO_fread (void*, _IO_size_t, _IO_size_t, _IO_FILE*) __THROW; -extern _IO_size_t _IO_fwrite (const void*, _IO_size_t, _IO_size_t, _IO_FILE*) - __THROW; -extern char* _IO_gets (char*) __THROW; +extern int _IO_fsetpos (_IO_FILE*, const _IO_fpos_t *); +extern int _IO_fsetpos64 (_IO_FILE*, const _IO_fpos64_t *); +extern long int _IO_ftell (_IO_FILE*); +extern _IO_size_t _IO_fread (void*, _IO_size_t, _IO_size_t, _IO_FILE*); +extern _IO_size_t _IO_fwrite (const void*, _IO_size_t, _IO_size_t, _IO_FILE*); +extern char* _IO_gets (char*); extern void _IO_perror (const char*) __THROW; -extern int _IO_printf (const char*, ...) __THROW; -extern int _IO_puts (const char*) __THROW; -extern int _IO_scanf (const char*, ...) __THROW; +extern int _IO_printf (const char*, ...); +extern int _IO_puts (const char*); +extern int _IO_scanf (const char*, ...); extern void _IO_setbuffer (_IO_FILE *, char*, _IO_size_t) __THROW; extern int _IO_setvbuf (_IO_FILE*, char*, int, _IO_size_t) __THROW; extern int _IO_sscanf (const char*, const char*, ...) __THROW; @@ -89,11 +88,11 @@ extern _IO_size_t _IO_fread_internal (void*, _IO_size_t, _IO_size_t, _IO_FILE*) __THROW; extern _IO_FILE *_IO_fdopen_internal (int, const char*) __THROW; extern int _IO_vsprintf_internal (char*, const char*, _IO_va_list) __THROW; -extern int _IO_fflush_internal (_IO_FILE*) __THROW; +extern int _IO_fflush_internal (_IO_FILE*); extern _IO_size_t _IO_fwrite_internal (const void*, _IO_size_t, - _IO_size_t, _IO_FILE*) __THROW; -extern long int _IO_ftell_internal (_IO_FILE*) __THROW; -extern int _IO_fputs_internal (const char*, _IO_FILE*) __THROW; + _IO_size_t, _IO_FILE*); +extern long int _IO_ftell_internal (_IO_FILE*); +extern int _IO_fputs_internal (const char*, _IO_FILE*); extern int _IO_setvbuf_internal (_IO_FILE*, char*, int, _IO_size_t) __THROW; #ifdef __cplusplus diff --git a/libio/libioP.h b/libio/libioP.h index d11704d028..319b0fd5f3 100644 --- a/libio/libioP.h +++ b/libio/libioP.h @@ -440,18 +440,15 @@ extern void _IO_wdefault_finish (_IO_FILE *, int) __THROW; extern int _IO_default_pbackfail (_IO_FILE *, int) __THROW; extern wint_t _IO_wdefault_pbackfail (_IO_FILE *, wint_t) __THROW; extern _IO_FILE* _IO_default_setbuf (_IO_FILE *, char *, _IO_ssize_t) __THROW; -extern _IO_size_t _IO_default_xsputn (_IO_FILE *, const void *, _IO_size_t) - __THROW; -extern _IO_size_t _IO_wdefault_xsputn (_IO_FILE *, const void *, _IO_size_t) - __THROW; -extern _IO_size_t _IO_default_xsgetn (_IO_FILE *, void *, _IO_size_t) __THROW; -extern _IO_size_t _IO_wdefault_xsgetn (_IO_FILE *, void *, _IO_size_t) __THROW; +extern _IO_size_t _IO_default_xsputn (_IO_FILE *, const void *, _IO_size_t); +extern _IO_size_t _IO_wdefault_xsputn (_IO_FILE *, const void *, _IO_size_t); +extern _IO_size_t _IO_default_xsgetn (_IO_FILE *, void *, _IO_size_t); +extern _IO_size_t _IO_wdefault_xsgetn (_IO_FILE *, void *, _IO_size_t); extern _IO_off64_t _IO_default_seekoff (_IO_FILE *, _IO_off64_t, int, int) __THROW; extern _IO_off64_t _IO_default_seekpos (_IO_FILE *, _IO_off64_t, int) __THROW; -extern _IO_ssize_t _IO_default_write (_IO_FILE *, const void *, _IO_ssize_t) - __THROW; -extern _IO_ssize_t _IO_default_read (_IO_FILE *, void *, _IO_ssize_t) __THROW; +extern _IO_ssize_t _IO_default_write (_IO_FILE *, const void *, _IO_ssize_t); +extern _IO_ssize_t _IO_default_read (_IO_FILE *, void *, _IO_ssize_t); extern int _IO_default_stat (_IO_FILE *, void *) __THROW; extern _IO_off64_t _IO_default_seek (_IO_FILE *, _IO_off64_t, int) __THROW; extern int _IO_default_sync (_IO_FILE *) __THROW; @@ -657,16 +654,14 @@ extern int _IO_vsnprintf (char *string, _IO_size_t maxlen, __const char *format, _IO_va_list args) __THROW; -extern _IO_size_t _IO_getline (_IO_FILE *,char *, _IO_size_t, int, int) - __THROW; +extern _IO_size_t _IO_getline (_IO_FILE *,char *, _IO_size_t, int, int); extern _IO_size_t _IO_getline_info (_IO_FILE *,char *, _IO_size_t, - int, int, int *) __THROW; + int, int, int *); extern _IO_ssize_t _IO_getdelim (char **, _IO_size_t *, int, _IO_FILE *) __THROW; -extern _IO_size_t _IO_getwline (_IO_FILE *,wchar_t *, _IO_size_t, wint_t, int) - __THROW; +extern _IO_size_t _IO_getwline (_IO_FILE *,wchar_t *, _IO_size_t, wint_t, int); extern _IO_size_t _IO_getwline_info (_IO_FILE *,wchar_t *, _IO_size_t, - wint_t, int, wint_t *) __THROW; + wint_t, int, wint_t *); extern double _IO_strtod (const char *, char **) __THROW; extern char *_IO_dtoa (double __d, int __mode, int __ndigits, int *__decpt, int *__sign, char **__rve) __THROW; @@ -718,7 +713,7 @@ extern _IO_FILE* _IO_file_attach_internal (_IO_FILE *, int) __THROW; extern _IO_FILE* _IO_file_fopen_internal (_IO_FILE *, const char *, const char *, int) __THROW; extern _IO_ssize_t _IO_file_read_internal (_IO_FILE *, void *, - _IO_ssize_t) __THROW; + _IO_ssize_t); extern int _IO_file_sync_internal (_IO_FILE *) __THROW; extern _IO_off64_t _IO_file_seek_internal (_IO_FILE *, _IO_off64_t, int) __THROW; @@ -747,20 +742,18 @@ extern void _IO_link_in_internal (struct _IO_FILE_plus *) __THROW; extern int _IO_sputbackc_internal (_IO_FILE *, int) __THROW; extern void _IO_wdoallocbuf_internal (_IO_FILE *) __THROW; -extern _IO_size_t _IO_sgetn_internal (_IO_FILE *, void *, _IO_size_t) __THROW; +extern _IO_size_t _IO_sgetn_internal (_IO_FILE *, void *, _IO_size_t); extern void _IO_flush_all_linebuffered_internal (void) __THROW; extern int _IO_switch_to_wget_mode_internal (_IO_FILE *) __THROW; extern void _IO_unsave_markers_internal (_IO_FILE *) __THROW; extern void _IO_switch_to_main_wget_area_internal (_IO_FILE *) __THROW; -extern int _IO_wdo_write_internal (_IO_FILE *, const wchar_t *, _IO_size_t) - __THROW; -extern int _IO_do_write_internal (_IO_FILE *, const char *, _IO_size_t) - __THROW; +extern int _IO_wdo_write_internal (_IO_FILE *, const wchar_t *, _IO_size_t); +extern int _IO_do_write_internal (_IO_FILE *, const char *, _IO_size_t); extern _IO_ssize_t _IO_padn_internal (_IO_FILE *, int, _IO_ssize_t) __THROW; extern _IO_size_t _IO_getline_info_internal (_IO_FILE *,char *, _IO_size_t, - int, int, int *) __THROW; + int, int, int *); extern _IO_size_t _IO_getline_internal (_IO_FILE *, char *, _IO_size_t, int, - int) __THROW; + int); extern void _IO_free_wbackup_area_internal (_IO_FILE *) __THROW; extern void _IO_free_backup_area_internal (_IO_FILE *) __THROW; extern void _IO_switch_to_wbackup_area_internal (_IO_FILE *) __THROW; @@ -771,7 +764,7 @@ extern int _IO_vfscanf_internal (_IO_FILE * __restrict, const char * __restrict, _IO_va_list, int *__restrict); extern int _IO_vfprintf_internal (_IO_FILE *__restrict, const char *__restrict, - _IO_va_list) __THROW; + _IO_va_list); extern void _IO_doallocbuf_internal (_IO_FILE *) __THROW; extern void _IO_wsetb_internal (_IO_FILE *, wchar_t *, wchar_t *, int) __THROW; @@ -779,7 +772,7 @@ extern _IO_off64_t _IO_seekoff_unlocked (_IO_FILE *, _IO_off64_t, int, int) attribute_hidden __THROW; extern _IO_off64_t _IO_seekpos_unlocked (_IO_FILE *, _IO_off64_t, int) attribute_hidden __THROW; -extern int _IO_putc_internal (int __c, _IO_FILE *__fp) __THROW; +extern int _IO_putc_internal (int __c, _IO_FILE *__fp); extern void _IO_init_internal (_IO_FILE *, int) __THROW; extern void _IO_un_link_internal (struct _IO_FILE_plus *) __THROW; @@ -871,10 +864,10 @@ extern void _IO_un_link_internal (struct _IO_FILE_plus *) __THROW; # define OS_FSTAT fstat #endif struct stat; -extern _IO_ssize_t _IO_read (int, void *, _IO_size_t) __THROW; -extern _IO_ssize_t _IO_write (int, const void *, _IO_size_t) __THROW; +extern _IO_ssize_t _IO_read (int, void *, _IO_size_t); +extern _IO_ssize_t _IO_write (int, const void *, _IO_size_t); extern _IO_off64_t _IO_lseek (int, _IO_off64_t, int) __THROW; -extern int _IO_close (int) __THROW; +extern int _IO_close (int); extern int _IO_fstat (int, struct stat *) __THROW; extern int _IO_vscanf (const char *, _IO_va_list) __THROW; diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 529d03d2e2..ca2f39ee5a 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,22 @@ +2004-11-27 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_PRIORITIZED_IO, + _POSIX2_CHAR_TERM, _POSIX_THREAD_PRIO_INHERIT, + _POSIX_THREAD_PRIO_PROTECT): Define. + * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise. + +2004-11-26 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_ADVISORY_INFO, + _POSIX_SPORADIC_SERVER, _POSIX_THREAD_SPORADIC_SERVER, _POSIX_TRACE, + _POSIX_TRACE_EVENT_FILTER, _POSIX_TRACE_INHERIT, _POSIX_TRACE_LOG, + _POSIX_TYPED_MEMORY_OBJECTS): Define. + * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise. + 2004-11-05 Maciej W. Rozycki <macro@mips.com> * sysdeps/mips/pspinlock.c: Include <sgidefs.h>. Use _ABIO32, diff --git a/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h b/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h index 6a7a8c3532..23baba8915 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h +++ b/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h @@ -93,6 +93,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -144,6 +146,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -157,4 +168,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h b/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h index 98ea45644d..a9b9f098a9 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h +++ b/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h @@ -93,6 +93,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -150,6 +152,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -163,4 +174,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h b/linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h index 4c32379e0e..95728c106f 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h +++ b/linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h @@ -93,6 +93,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -150,6 +152,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -163,4 +174,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/linuxthreads/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h b/linuxthreads/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h index 0e4b565608..8973bc8fdf 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h +++ b/linuxthreads/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h @@ -93,6 +93,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -150,6 +152,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -163,4 +174,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/localedata/ChangeLog b/localedata/ChangeLog index 4467bc16c9..392833f6a0 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,8 @@ +2004-11-27 Ulrich Drepper <drepper@redhat.com> + + * locales/pa_IN: Add some missing fields and fix some spelling + mistakes. Patch by Jatin Nansi <jnansi@redhat.com>. + 2004-10-31 Petter Reinholdtsen <pere@hungry.com> [BZ #337] diff --git a/localedata/README b/localedata/README index 8ce09c16ed..f05bf15ceb 100644 --- a/localedata/README +++ b/localedata/README @@ -2,8 +2,8 @@ and POSIX character set descriptions -Ulrich Drepper Time-stamp: <2000/07/20 13:08:24 aj> -drepper@cygnus.com +Ulrich Drepper Time-stamp: <2004/11/27 13:06:54 drepper> +drepper@redhat.com This directory contains the data needed to build the locale data files @@ -40,22 +40,9 @@ current directory simply use How to use these data files is described in the GNU libc manual, especially in the section describing the `setlocale' function. +All problems should be reported using -The files contained here were originally from - - ftp://dkuug.dk/i18n/WG15-collection - -Keld Jörn Simonsen from the Danish Unix User Group maintains this -archive on behalf of the POSIX working groups. When you find some wrong -data or want to add something please contact - - Keld Jörn Simonsen <keld@dkuug.dk> -and - Ulrich Drepper <drepper@cygnus.com> - -Please make sure your corrections are relative to the originally -distributed files. Consult the CHECKSUMS file which contains the MD5 -sums for all data files. + http://sources.redhat.com/bugzilla/ One more note: the `POSIX' locale definition is not meant to be used diff --git a/localedata/locales/pa_IN b/localedata/locales/pa_IN index a1b49943bf..2a2072837b 100644 --- a/localedata/locales/pa_IN +++ b/localedata/locales/pa_IN @@ -1,11 +1,11 @@ comment_char % escape_char / -% Punjabi language locale for India. -% used hi_IN as guideline, Rajneesh K Saini <rajneeshksaini@yahoo.com> +% Punjabi language locale for Indian Punjabi(Gurmukhi) +% Last update by A Alam <amanlinux@netscape.net> LC_IDENTIFICATION -title "Punjabi language locale for India" -source "IndLinux.org" +title "Punjabi language locale for Indian Punjabi(Gurmukhi)" +source "IndLinux.org" address "" contact "" email "bug-glibc-locales@gnu.org" @@ -13,8 +13,8 @@ tel "" fax "" language "Punjabi" territory "India" -revision "0.01" -date "2002-04-10" +revision "0.2" +date "2004-09-30" % category "pa_IN:2000";LC_IDENTIFICATION category "pa_IN:2000";LC_CTYPE @@ -45,7 +45,7 @@ END LC_COLLATE LC_MONETARY % This is the POSIX Locale definition the LC_MONETARY category. int_curr_symbol "<U0049><U004E><U0052><U0020>" -currency_symbol "<U0A30><U0A42><U0A2A><U0A72><U0A48>" +currency_symbol "<U0A30><U0A41><U0A2A><U0A0F>" mon_decimal_point "<U002E>" mon_thousands_sep "<U002C>" mon_grouping 3 @@ -74,56 +74,56 @@ LC_TIME % for IBM Class for Unicode/Java % % Abbreviated weekday names (%a) -abday "<U0A06><U0A48><U0A24><U0020>";/ +abday "<U0A10><U0A24><U0020>";/ "<U0A38><U0A4B><U0A2E><U0020>";/ "<U0A2E><U0A70><U0A17><U0A32><U0020>";/ "<U0A2C><U0A41><U0A71><U0A27><U0020>";/ "<U0A35><U0A40><U0A30><U0020>";/ - "<U0A36><U0A41><U0A15><U0A30><U0020>";/ - "<U0A36><U0A28><U0A40><U0020>" + "<U0A36><U0A41><U0A71><U0A15><U0A30><U0020>";/ + "<U0A36><U0A28><U0A40><U0A1A><U0A30><U0020>" % % Full weekday names (%A) -day "<U0A06><U0A48><U0A24><U0A35><U0A3E><U0A30><U0020>";/ +day "<U0A10><U0A24><U0A35><U0A3E><U0A30><U0020>";/ "<U0A38><U0A4B><U0A2E><U0A35><U0A3E><U0A30><U0020>";/ "<U0A2E><U0A70><U0A17><U0A32><U0A35><U0A3E><U0A30><U0020>";/ "<U0A2C><U0A41><U0A71><U0A27><U0A35><U0A3E><U0A30><U0020>";/ "<U0A35><U0A40><U0A30><U0A35><U0A3E><U0A30><U0020>";/ - "<U0A36><U0A41><U0A15><U0A30><U0A35><U0A3E><U0A30><U0020>";/ - "<U0A36><U0A28><U0A40><U0A35><U0A3E><U0A30><U0020>" + "<U0A36><U0A41><U0A71><U0A15><U0A30><U0A35><U0A3E><U0A30><U0020>";/ + "<U0A36><U0A28><U0A40><U0A1A><U0A30><U0A35><U0A3E><U0A30><U0020>" % Abbreviated month names (%b) abmon "<U0A1C><U0A28><U0A35><U0A30><U0A40>";/ - "<U0A2B><U0A3C><U0A30><U0A35><U0A30><U0A40>";/ - "<U0A2E><U0A3E><U0A30><U0A1B>";/ - "<U0A05><U0A2A><U0A3C><U0A48><U0A32>";/ - "<U0A2E><U0A72><U0A40>";/ + "<U0A5E><U0A30><U0A35><U0A30><U0A40>";/ + "<U0A2E><U0A3E><U0A30><U0A1A>";/ + "<U0A05><U0A2A><U0A30><U0A48><U0A32>";/ + "<U0A2E><U0A08>";/ "<U0A1C><U0A42><U0A28>";/ - "<U0A1C><U0A41><U0A32><U0A3E><U0A72><U0A40>";/ + "<U0A1C><U0A41><U0A32><U0A3E><U0A08>";/ "<U0A05><U0A17><U0A38><U0A24>";/ - "<U0A38><U0A3F><U0A24><U0A70><U0A2C><U0A30>";/ + "<U0A38><U0A24><U0A70><U0A2C><U0A30>";/ "<U0A05><U0A15><U0A24><U0A42><U0A2C><U0A30>";/ "<U0A28><U0A35><U0A70><U0A2C><U0A30>";/ - "<U0A26><U0A3F><U0A38><U0A70><U0A2C><U0A30>" + "<U0A26><U0A38><U0A70><U0A2C><U0A30>" % % Full month names (%B) mon "<U0A1C><U0A28><U0A35><U0A30><U0A40>";/ - "<U0A2B><U0A3C><U0A30><U0A35><U0A30><U0A40>";/ - "<U0A2E><U0A3E><U0A30><U0A1B>";/ - "<U0A05><U0A2A><U0A3C><U0A48><U0A32>";/ - "<U0A2E><U0A72><U0A40>";/ + "<U0A5E><U0A30><U0A35><U0A30><U0A40>";/ + "<U0A2E><U0A3E><U0A30><U0A1A>";/ + "<U0A05><U0A2A><U0A30><U0A48><U0A32>";/ + "<U0A2E><U0A08>";/ "<U0A1C><U0A42><U0A28>";/ - "<U0A1C><U0A41><U0A32><U0A3E><U0A72><U0A40>";/ + "<U0A1C><U0A41><U0A32><U0A3E><U0A08>";/ "<U0A05><U0A17><U0A38><U0A24>";/ - "<U0A38><U0A3F><U0A24><U0A70><U0A2C><U0A30>";/ + "<U0A38><U0A24><U0A70><U0A2C><U0A30>";/ "<U0A05><U0A15><U0A24><U0A42><U0A2C><U0A30>";/ "<U0A28><U0A35><U0A70><U0A2C><U0A30>";/ - "<U0A26><U0A3F><U0A38><U0A70><U0A2C><U0A30>" + "<U0A26><U0A38><U0A70><U0A2C><U0A30>" % % Equivalent of AM PM -am_pm "<U092A><U0942><U0930><U094D><U0935><U093E><U0939><U094D><U0928>";/ - "<U0905><U092A><U0930><U093E><U0939><U094D><U0928>" +am_pm "<U0A38><U035><U0A47><U0A30><U0A47>";/ + "<U0A36><U0A3E><U02E>" % % Appropriate date and time representation diff --git a/nptl/ChangeLog b/nptl/ChangeLog index a0ece15297..9e193981de 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,22 @@ +2004-11-27 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_PRIORITIZED_IO, + _POSIX2_CHAR_TERM, _POSIX_THREAD_PRIO_INHERIT, + _POSIX_THREAD_PRIO_PROTECT): Define. + * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise. + +2004-11-26 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_ADVISORY_INFO, + _POSIX_SPORADIC_SERVER, _POSIX_THREAD_SPORADIC_SERVER, _POSIX_TRACE, + _POSIX_TRACE_EVENT_FILTER, _POSIX_TRACE_INHERIT, _POSIX_TRACE_LOG, + _POSIX_TYPED_MEMORY_OBJECTS, _POSIX_IPV6, _POSIX_RAW_SOCKETS): Define. + * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise. + 2004-11-24 Ulrich Drepper <drepper@redhat.com> * sysdeps/x86_64/Makefile [nptl]: Define CFLAGS-pthread_create.c. diff --git a/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h index 5d84a25486..8c8c1ed773 100644 --- a/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h +++ b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h @@ -90,6 +90,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -141,6 +143,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -154,4 +165,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection so far. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h index e0f02b0544..7a93ec36b7 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h +++ b/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h @@ -90,6 +90,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -147,6 +149,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -160,4 +171,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection so far. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h index 07753c3535..f46b381406 100644 --- a/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h +++ b/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h @@ -90,6 +90,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -147,6 +149,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -160,4 +171,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection so far. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h index 07753c3535..f46b381406 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h @@ -90,6 +90,8 @@ #define _POSIX_ASYNC_IO 1 /* Alternative name for Unix98. */ #define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200112L /* The LFS support in asynchronous I/O is also available. */ #define _LFS64_ASYNCHRONOUS_IO 1 @@ -147,6 +149,15 @@ /* Advisory information interfaces are available. */ #define _POSIX_ADVISORY_INFO 200112L +/* IPv6 support is available. */ +#define _POSIX_IPV6 200112L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200112L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200112L + /* Neither process nor thread sporadic server interfaces is available. */ #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 @@ -160,4 +171,8 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 +/* No support for priority inheritance or protection so far. */ +#define _POSIX_THREAD_PRIO_INHERIT -1 +#define _POSIX_THREAD_PRIO_PROTECT -1 + #endif /* posix_opt.h */ diff --git a/posix/Makefile b/posix/Makefile index 5a3534a6ad..7f2bcb9d01 100644 --- a/posix/Makefile +++ b/posix/Makefile @@ -83,7 +83,7 @@ tests := tstgetopt testfnm runtests runptests \ tst-nice tst-nanosleep tst-regex2 \ transbug tst-rxspencer tst-pcre tst-boost \ bug-ga1 tst-vfork1 tst-vfork2 tst-waitid \ - tst-getaddrinfo2 bug-glob1 bug-glob2 + tst-getaddrinfo2 bug-glob1 bug-glob2 tst-sysconf xtests := bug-ga2 ifeq (yes,$(build-shared)) test-srcs := globtest diff --git a/posix/confstr.c b/posix/confstr.c index 6b0dcf0c20..da929c25df 100644 --- a/posix/confstr.c +++ b/posix/confstr.c @@ -113,7 +113,7 @@ confstr (name, buf, len) case _CS_POSIX_V6_ILP32_OFF32_CFLAGS: #ifdef __ILP32_OFF32_CFLAGS # if _POSIX_V6_ILP32_OFF32 == -1 -# error __ILP32_OFF32_CFLAGS shouldn't be defined +# error __ILP32_OFF32_CFLAGS should not be defined # elif !defined _POSIX_V6_ILP32_OFF32 if (__sysconf (_SC_V6_ILP32_OFF32) < 0) break; @@ -127,7 +127,7 @@ confstr (name, buf, len) case _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: #ifdef __ILP32_OFFBIG_CFLAGS # if _POSIX_V6_ILP32_OFFBIG == -1 -# error __ILP32_OFFBIG_CFLAGS shouldn't be defined +# error __ILP32_OFFBIG_CFLAGS should not be defined # elif !defined _POSIX_V6_ILP32_OFFBIG if (__sysconf (_SC_V6_ILP32_OFFBIG) < 0) break; @@ -141,7 +141,7 @@ confstr (name, buf, len) case _CS_POSIX_V6_LP64_OFF64_CFLAGS: #ifdef __LP64_OFF64_CFLAGS # if _POSIX_V6_LP64_OFF64 == -1 -# error __LP64_OFF64_CFLAGS shouldn't be defined +# error __LP64_OFF64_CFLAGS should not be defined # elif !defined _POSIX_V6_LP64_OFF64 if (__sysconf (_SC_V6_LP64_OFF64) < 0) break; @@ -155,7 +155,7 @@ confstr (name, buf, len) case _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: #ifdef __ILP32_OFF32_LDFLAGS # if _POSIX_V6_ILP32_OFF32 == -1 -# error __ILP32_OFF32_LDFLAGS shouldn't be defined +# error __ILP32_OFF32_LDFLAGS should not be defined # elif !defined _POSIX_V6_ILP32_OFF32 if (__sysconf (_SC_V6_ILP32_OFF32) < 0) break; @@ -169,7 +169,7 @@ confstr (name, buf, len) case _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: #ifdef __ILP32_OFFBIG_LDFLAGS # if _POSIX_V6_ILP32_OFFBIG == -1 -# error __ILP32_OFFBIG_LDFLAGS shouldn't be defined +# error __ILP32_OFFBIG_LDFLAGS should not be defined # elif !defined _POSIX_V6_ILP32_OFFBIG if (__sysconf (_SC_V6_ILP32_OFFBIG) < 0) break; @@ -183,7 +183,7 @@ confstr (name, buf, len) case _CS_POSIX_V6_LP64_OFF64_LDFLAGS: #ifdef __LP64_OFF64_LDFLAGS # if _POSIX_V6_LP64_OFF64 == -1 -# error __LP64_OFF64_LDFLAGS shouldn't be defined +# error __LP64_OFF64_LDFLAGS should not be defined # elif !defined _POSIX_V6_LP64_OFF64 if (__sysconf (_SC_V6_LP64_OFF64) < 0) break; diff --git a/posix/getconf.c b/posix/getconf.c index 6175dfec26..5aac25e4ca 100644 --- a/posix/getconf.c +++ b/posix/getconf.c @@ -912,6 +912,12 @@ static const struct conf vars[] = { "LEVEL4_CACHE_ASSOC", _SC_LEVEL4_CACHE_ASSOC, SYSCONF }, #endif +#ifdef _SC_IPV6 + { "IPV6", _SC_IPV6, SYSCONF }, +#endif +#ifdef _SC_RAW_SOCKETS + { "RAW_SOCKETS", _SC_RAW_SOCKETS, SYSCONF }, +#endif { NULL, 0, SYSCONF } }; diff --git a/posix/tst-sysconf.c b/posix/tst-sysconf.c new file mode 100644 index 0000000000..e9ff06a8da --- /dev/null +++ b/posix/tst-sysconf.c @@ -0,0 +1,114 @@ +#include <stdbool.h> +#include <stdio.h> +#include <unistd.h> + +static struct +{ + long int _P_val; + const char *name; + int _SC_val; + bool positive; + bool posix2; +} posix_options[] = + { +#define N_(name, pos) { _POSIX_##name, #name, _SC_##name, pos, false } +#define NP(name) N_ (name, true) +#define N(name) N_ (name, false) +#define N2(name) { _POSIX2_##name, #name, _SC_2_##name, false, true } + N (ADVISORY_INFO), + N (ASYNCHRONOUS_IO), + N (BARRIERS), + N (CLOCK_SELECTION), + N (CPUTIME), + N (FSYNC), + N (IPV6), + NP (JOB_CONTROL), + N (MAPPED_FILES), + N (MEMLOCK), + N (MEMLOCK_RANGE), + N (MEMORY_PROTECTION), + N (MESSAGE_PASSING), + N (MONOTONIC_CLOCK), + N (PRIORITIZED_IO), + N (PRIORITY_SCHEDULING), + N (RAW_SOCKETS), + N (READER_WRITER_LOCKS), + N (REALTIME_SIGNALS), + NP (REGEXP), + NP (SAVED_IDS), + N (SEMAPHORES), + N (SHARED_MEMORY_OBJECTS), + NP (SHELL), + N (SPAWN), + N (SPIN_LOCKS), + N (SPORADIC_SERVER), + N (SYNCHRONIZED_IO), + N (THREAD_ATTR_STACKADDR), + N (THREAD_ATTR_STACKSIZE), + N (THREAD_CPUTIME), + N (THREAD_PRIO_INHERIT), + N (THREAD_PRIO_PROTECT), + N (THREAD_PRIORITY_SCHEDULING), + N (THREAD_PROCESS_SHARED), + N (THREAD_SAFE_FUNCTIONS), + N (THREAD_SPORADIC_SERVER), + N (THREADS), + N (TIMEOUTS), + N (TIMERS), + N (TRACE), + N (TRACE_EVENT_FILTER), + N (TRACE_INHERIT), + N (TRACE_LOG), + N (TYPED_MEMORY_OBJECTS), + N2 (C_BIND), + N2 (C_DEV), + N2 (CHAR_TERM) + }; +#define nposix_options (sizeof (posix_options) / sizeof (posix_options[0])) + +static int +do_test (void) +{ + int result = 0; + + for (int i = 0; i < nposix_options; ++i) + { + long int scret = sysconf (posix_options[i]._SC_val); + + if (scret == 0) + { + printf ("sysconf(_SC_%s%s) returned zero\n", + posix_options[i].posix2 ? "2_" : "", posix_options[i].name); + result = 1; + } + if (posix_options[i]._P_val != 0 && posix_options[i]._P_val != scret) + { + printf ("sysconf(_SC_%s%s) = %ld does not match _POSIX%s_%s = %ld\n", + posix_options[i].posix2 ? "2_" : "", posix_options[i].name, + scret, + posix_options[i].posix2 ? "2" : "", posix_options[i].name, + posix_options[i]._P_val); + result = 1; + } + else if (posix_options[i].positive && scret < 0) + { + printf ("sysconf(_SC_%s%s) must be > 0\n", + posix_options[i].posix2 ? "2_" : "", posix_options[i].name); + result = 1; + } + +#define STDVER 200112L + if (scret > 0 && scret != STDVER && !posix_options[i].positive) + { + printf ("sysconf(_SC_%s%s) must be %ldL\n", + posix_options[i].posix2 ? "2_" : "", posix_options[i].name, + STDVER); + result = 1; + } + } + + return result; +} + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c" diff --git a/sysdeps/generic/bits/confname.h b/sysdeps/generic/bits/confname.h index d097a4ba1a..8947d48ed7 100644 --- a/sysdeps/generic/bits/confname.h +++ b/sysdeps/generic/bits/confname.h @@ -492,9 +492,14 @@ enum #define _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_ASSOC, #define _SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_ASSOC - _SC_LEVEL4_CACHE_LINESIZE + _SC_LEVEL4_CACHE_LINESIZE, #define _SC_LEVEL4_CACHE_LINESIZE _SC_LEVEL4_CACHE_LINESIZE /* Leave room here, maybe we need a few more cache levels some day. */ + + _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, +#define _SC_IPV6 _SC_IPV6 + _SC_RAW_SOCKETS +#define _SC_RAW_SOCKETS _SC_RAW_SOCKETS }; /* Values for the NAME argument to `confstr'. */ diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c index de81c2120b..a4bc2e78b1 100644 --- a/sysdeps/posix/sysconf.c +++ b/sysdeps/posix/sysconf.c @@ -1189,6 +1189,20 @@ __sysconf (name) return zero which indicates that no information is available. */ return 0; + + case _SC_IPV6: +#ifdef _POSIX_IPV6 + return _POSIX_IPV6; +#else + return -1; +#endif + + case _SC_RAW_SOCKETS: +#ifdef _POSIX_RAW_SOCKETS + return _POSIX_RAW_SOCKETS; +#else + return -1; +#endif } } diff --git a/sysdeps/unix/sysv/linux/mips/pread.c b/sysdeps/unix/sysv/linux/mips/pread.c index d0947bea42..eff7d473d0 100644 --- a/sysdeps/unix/sysv/linux/mips/pread.c +++ b/sysdeps/unix/sysv/linux/mips/pread.c @@ -20,7 +20,9 @@ #include <assert.h> #include <errno.h> +#ifndef NO_SGIDEFS_H #include <sgidefs.h> +#endif #include <unistd.h> #include <endian.h> @@ -29,9 +31,6 @@ #include <bp-checks.h> #include <kernel-features.h> -#ifndef NO_SGIDEFS_H -#include <sgidefs.h> -#endif #ifdef __NR_pread64 /* Newer kernels renamed but it's the same. */ # ifdef __NR_pread diff --git a/sysdeps/unix/sysv/linux/mips/pread64.c b/sysdeps/unix/sysv/linux/mips/pread64.c index e8a45da5b1..d8763acabb 100644 --- a/sysdeps/unix/sysv/linux/mips/pread64.c +++ b/sysdeps/unix/sysv/linux/mips/pread64.c @@ -19,7 +19,9 @@ 02111-1307 USA. */ #include <errno.h> +#ifndef NO_SGIDEFS_H #include <sgidefs.h> +#endif #include <unistd.h> #include <endian.h> @@ -28,9 +30,6 @@ #include <bp-checks.h> #include <kernel-features.h> -#ifndef NO_SGIDEFS_H -#include <sgidefs.h> -#endif #ifdef __NR_pread64 /* Newer kernels renamed but it's the same. */ # ifdef __NR_pread diff --git a/sysdeps/unix/sysv/linux/mips/pwrite.c b/sysdeps/unix/sysv/linux/mips/pwrite.c index 130515af6d..4378ebc859 100644 --- a/sysdeps/unix/sysv/linux/mips/pwrite.c +++ b/sysdeps/unix/sysv/linux/mips/pwrite.c @@ -20,7 +20,9 @@ #include <assert.h> #include <errno.h> +#ifndef NO_SGIDEFS_H #include <sgidefs.h> +#endif #include <unistd.h> #include <endian.h> @@ -29,9 +31,6 @@ #include <bp-checks.h> #include <kernel-features.h> -#ifndef NO_SGIDEFS_H -#include <sgidefs.h> -#endif #ifdef __NR_pwrite64 /* Newer kernels renamed but it's the same. */ # ifdef __NR_pwrite diff --git a/sysdeps/unix/sysv/linux/mips/pwrite64.c b/sysdeps/unix/sysv/linux/mips/pwrite64.c index e4908fa779..e5853e432e 100644 --- a/sysdeps/unix/sysv/linux/mips/pwrite64.c +++ b/sysdeps/unix/sysv/linux/mips/pwrite64.c @@ -19,7 +19,9 @@ 02111-1307 USA. */ #include <errno.h> +#ifndef NO_SGIDEFS_H #include <sgidefs.h> +#endif #include <unistd.h> #include <endian.h> |