summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2004-11-30 06:33:11 +0000
committerJakub Jelinek <jakub@redhat.com>2004-11-30 06:33:11 +0000
commitc1f8ef75d3ddf687efc5ee23e16075c256fa77be (patch)
treea3ea2de6f93ff7c1abd4190b14414cf458474436
parentf94203900a978cda33df395c36827a17d171f98e (diff)
Updated to fedora-glibc-20041130T0624
-rw-r--r--ChangeLog51
-rw-r--r--fedora/branch.mk4
-rw-r--r--include/dlfcn.h3
-rw-r--r--libio/iolibio.h55
-rw-r--r--libio/libioP.h49
-rw-r--r--linuxthreads/ChangeLog19
-rw-r--r--linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h15
-rw-r--r--linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h15
-rw-r--r--linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h15
-rw-r--r--linuxthreads/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h15
-rw-r--r--localedata/ChangeLog5
-rw-r--r--localedata/README21
-rw-r--r--localedata/locales/pa_IN58
-rw-r--r--nptl/ChangeLog19
-rw-r--r--nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h15
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h15
-rw-r--r--nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h15
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h15
-rw-r--r--posix/Makefile2
-rw-r--r--posix/confstr.c12
-rw-r--r--posix/getconf.c6
-rw-r--r--posix/tst-sysconf.c114
-rw-r--r--sysdeps/generic/bits/confname.h7
-rw-r--r--sysdeps/posix/sysconf.c14
-rw-r--r--sysdeps/unix/sysv/linux/mips/pread.c5
-rw-r--r--sysdeps/unix/sysv/linux/mips/pread64.c5
-rw-r--r--sysdeps/unix/sysv/linux/mips/pwrite.c5
-rw-r--r--sysdeps/unix/sysv/linux/mips/pwrite64.c2
28 files changed, 454 insertions, 122 deletions
diff --git a/ChangeLog b/ChangeLog
index 46387f69ff..67012de252 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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>