This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch, release/2.11/master, updated. glibc-2.11-33-g1db8b35


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, release/2.11/master has been updated
       via  1db8b35487c8c3842f81176c25e72e4cf0948f00 (commit)
       via  bc207ace446b2e0fc4a474a2a4cf945d9cca6573 (commit)
       via  65a27b0b41a8ec07407ad0415fd0963917c59941 (commit)
       via  4f9d265e05056df279186d033af75352a679685f (commit)
       via  b15f34af1c3b6f2658d3f73c331db8e94fa47b0a (commit)
       via  ede3f7ef5c553fc81efe6cf7ddf383f081bfd7e6 (commit)
       via  360f6f3a2522731cfdeedc959b21200d325952b1 (commit)
       via  93721a641a55a943363149ed6a77eea4668878ce (commit)
      from  8d7c09b162cd1687e21549f9aaaa3d4a9b39735c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=1db8b35487c8c3842f81176c25e72e4cf0948f00

commit 1db8b35487c8c3842f81176c25e72e4cf0948f00
Author: Andreas Schwab <schwab@redhat.com>
Date:   Fri Nov 27 21:37:30 2009 -0800

    Fix infloop in __pthread_disable_asynccancel on x86_64
    
    (cherry picked from commit b55ec98c6490b944593243c7da54dda1796e3f84)

diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 0aaaa3f..08a55ee 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,8 @@
+2009-11-27  Andreas Schwab  <schwab@redhat.com>
+
+	* sysdeps/unix/sysv/linux/x86_64/cancellation.S: Reload
+	THREAD_SELF->cancelhandling after returning from futex call.
+
 2009-11-03  Andreas Schwab  <schwab@linux-m68k.org>
 
 	[BZ #4457]
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S b/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S
index 0d48ec6..6806962 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S
@@ -96,8 +96,8 @@ ENTRY(__pthread_disable_asynccancel)
 	cmpxchgl %r11d, %fs:CANCELHANDLING
 	jnz	2b
 
-3:	movl	%r11d, %eax
-	andl	$(TCB_CANCELING_BITMASK|TCB_CANCELED_BITMASK), %eax
+	movl	%r11d, %eax
+3:	andl	$(TCB_CANCELING_BITMASK|TCB_CANCELED_BITMASK), %eax
 	cmpl	$TCB_CANCELING_BITMASK, %eax
 	je	4f
 1:	ret
@@ -111,5 +111,6 @@ ENTRY(__pthread_disable_asynccancel)
 	addq	$CANCELHANDLING, %rdi
 	LOAD_PRIVATE_FUTEX_WAIT (%esi)
 	syscall
+	movl	%fs:CANCELHANDLING, %eax
 	jmp	3b
 END(__pthread_disable_asynccancel)

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=bc207ace446b2e0fc4a474a2a4cf945d9cca6573

commit bc207ace446b2e0fc4a474a2a4cf945d9cca6573
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Tue Nov 24 18:47:26 2009 -0800

    Avoid local PLTs.
    
    (cherry picked from commit 0f622686af3ae5a8f03dae886b08c260b38bda16)

diff --git a/sysdeps/unix/sysv/linux/grantpt.c b/sysdeps/unix/sysv/linux/grantpt.c
index 6305ed4..f2fc60f 100644
--- a/sysdeps/unix/sysv/linux/grantpt.c
+++ b/sysdeps/unix/sysv/linux/grantpt.c
@@ -15,11 +15,11 @@
 static void
 close_all_fds (void)
 {
-  DIR *dir = opendir ("/proc/self/fd");
+  DIR *dir = __opendir ("/proc/self/fd");
   if (dir != NULL)
     {
       struct dirent64 *d;
-      while ((d = readdir64 (dir)) != NULL)
+      while ((d = __readdir64 (dir)) != NULL)
 	if (isdigit (d->d_name[0]))
 	  {
 	    char *endp;
@@ -28,7 +28,7 @@ close_all_fds (void)
 	      close_not_cancel_no_status (fd);
 	  }
 
-      closedir (dir);
+      __closedir (dir);
 
       int nullfd = open_not_cancel_2 (_PATH_DEVNULL, O_RDONLY);
       assert (nullfd == STDIN_FILENO);

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=65a27b0b41a8ec07407ad0415fd0963917c59941

commit 65a27b0b41a8ec07407ad0415fd0963917c59941
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Tue Nov 24 18:24:14 2009 -0800

    Prevent unintended file desriptor leak in grantpt.
    
    The pt_chown program is completely transparently called.  It might
    not be able to live with the various file descriptors the program
    has open at the time of the call (e.g., under SELinux).  Close all
    but the needed descriptor and connect stdin, stdout, and stderr
    with /dev/null.  pt_chown shouldn't print anything when called to
    do real work.
    
    (cherry picked from commit 139ee080b6b428240bf49f3e6361f3ac729f891a)

diff --git a/ChangeLog b/ChangeLog
index 962d609..25b96ae 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2009-11-24  Ulrich Drepper  <drepper@redhat.com>
 
+	* sysdeps/unix/grantpt.c (grantpt): Use CLOSE_ALL_FDS is available
+	before the exec.
+	* sysdeps/unix/sysv/linux/grantpt.c: New file.
+	* login/programs/pt_chown.c (main): Don't print message on errors
+	when doing real work.
+
 	* csu/elf-init.c (__libc_csu_irel): New function.  Code to perform
 	irel relocations split out from...
 	(__libc_csu_init): ...here.
diff --git a/login/programs/pt_chown.c b/login/programs/pt_chown.c
index 7e279a5..4c36f2c 100644
--- a/login/programs/pt_chown.c
+++ b/login/programs/pt_chown.c
@@ -154,8 +154,7 @@ main (int argc, char *argv[])
 # define ncap_list (sizeof (cap_list) / sizeof (cap_list[0]))
 	  cap_t caps = cap_init ();
 	  if (caps == NULL)
-	    error (FAIL_ENOMEM, errno,
-		   _("Failed to initialize drop of capabilities"));
+	    return FAIL_ENOMEM;
 
 	  /* There is no reason why these should not work.  */
 	  cap_set_flag (caps, CAP_PERMITTED, ncap_list, cap_list, CAP_SET);
@@ -166,7 +165,7 @@ main (int argc, char *argv[])
 	  cap_free (caps);
 
 	  if (__builtin_expect (res != 0, 0))
-	    error (FAIL_EXEC, errno, _("cap_set_proc failed"));
+	    return FAIL_EXEC;
 	}
 #endif
 
diff --git a/sysdeps/unix/grantpt.c b/sysdeps/unix/grantpt.c
index 8c299e9..b02bf7c 100644
--- a/sysdeps/unix/grantpt.c
+++ b/sysdeps/unix/grantpt.c
@@ -190,6 +190,10 @@ grantpt (int fd)
 	if (__dup2 (fd, PTY_FILENO) < 0)
 	  _exit (FAIL_EBADF);
 
+#ifdef CLOSE_ALL_FDS
+      CLOSE_ALL_FDS ();
+#endif
+
       execle (_PATH_PT_CHOWN, basename (_PATH_PT_CHOWN), NULL, NULL);
       _exit (FAIL_EXEC);
     }
diff --git a/sysdeps/unix/sysv/linux/grantpt.c b/sysdeps/unix/sysv/linux/grantpt.c
new file mode 100644
index 0000000..6305ed4
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/grantpt.c
@@ -0,0 +1,42 @@
+#include <assert.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <paths.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+#include "not-cancel.h"
+#include "pty-private.h"
+
+
+/* Close all file descriptors except the one specified.  */
+static void
+close_all_fds (void)
+{
+  DIR *dir = opendir ("/proc/self/fd");
+  if (dir != NULL)
+    {
+      struct dirent64 *d;
+      while ((d = readdir64 (dir)) != NULL)
+	if (isdigit (d->d_name[0]))
+	  {
+	    char *endp;
+	    long int fd = strtol (d->d_name, &endp, 10);
+	    if (*endp == '\0' && fd != PTY_FILENO && fd != dirfd (dir))
+	      close_not_cancel_no_status (fd);
+	  }
+
+      closedir (dir);
+
+      int nullfd = open_not_cancel_2 (_PATH_DEVNULL, O_RDONLY);
+      assert (nullfd == STDIN_FILENO);
+      nullfd = open_not_cancel_2 (_PATH_DEVNULL, O_WRONLY);
+      assert (nullfd == STDOUT_FILENO);
+      __dup2 (STDOUT_FILENO, STDERR_FILENO);
+    }
+}
+#define CLOSE_ALL_FDS() close_all_fds()
+
+#include <sysdeps/unix/grantpt.c>

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=4f9d265e05056df279186d033af75352a679685f

commit 4f9d265e05056df279186d033af75352a679685f
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Tue Nov 24 11:17:06 2009 -0800

    Fix startup to security-relevant statically linked binaries.
    
    Before the change they crash on startup.  Perform IREL relocations
    earlier to prevent this.
    
    (cherry picked from commit 1c3c269b55c84c29ec1e2c70f122c5e33fef4257)

diff --git a/ChangeLog b/ChangeLog
index 143c45a..962d609 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-11-24  Ulrich Drepper  <drepper@redhat.com>
+
+	* csu/elf-init.c (__libc_csu_irel): New function.  Code to perform
+	irel relocations split out from...
+	(__libc_csu_init): ...here.
+	* csu/libc-start.c [!SHARED]: Call __libc_csu_irel early.
+
 2009-11-22  Ulrich Drepper  <drepper@redhat.com>
 
 	* sunrpc/create_xid.c (_create_xid): Reinitialize state after fork.
diff --git a/csu/elf-init.c b/csu/elf-init.c
index 1d2df62..1e3d6d6 100644
--- a/csu/elf-init.c
+++ b/csu/elf-init.c
@@ -72,15 +72,14 @@ extern void _fini (void);
 /* These functions are passed to __libc_start_main by the startup code.
    These get statically linked into each program.  For dynamically linked
    programs, this module will come from libc_nonshared.a and differs from
-   the libc.a module in that it doesn't call the preinit array.  */
+   the libc.a module in that it doesn't call the preinit array and performs
+   explicit IREL{,A} relocations.  */
 
-void
-__libc_csu_init (int argc, char **argv, char **envp)
-{
-  /* For dynamically linked executables the preinit array is executed by
-     the dynamic linker (before initializing any shared object.  */
 
 #ifndef LIBC_NONSHARED
+void
+__libc_csu_irel (void)
+{
 # ifdef USE_MULTIARCH
 #  ifdef ELF_MACHINE_IRELA
   {
@@ -98,7 +97,17 @@ __libc_csu_init (int argc, char **argv, char **envp)
   }
 #  endif
 # endif
+}
+#endif
 
+
+void
+__libc_csu_init (int argc, char **argv, char **envp)
+{
+  /* For dynamically linked executables the preinit array is executed by
+     the dynamic linker (before initializing any shared object.  */
+
+#ifndef LIBC_NONSHARED
   /* For static executables, preinit happens right before init.  */
   {
     const size_t size = __preinit_array_end - __preinit_array_start;
diff --git a/csu/libc-start.c b/csu/libc-start.c
index 80b672f..dc7ca55 100644
--- a/csu/libc-start.c
+++ b/csu/libc-start.c
@@ -24,6 +24,9 @@
 #include <bp-sym.h>
 
 extern void __libc_init_first (int argc, char **argv, char **envp);
+#ifndef SHARED
+extern void __libc_csu_irel (void);
+#endif
 
 extern int __libc_multiple_libcs;
 
@@ -134,6 +137,9 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
     }
 # endif
 
+  /* Performe IREL{,A} relocations.  */
+  __libc_csu_irel ();
+
   /* Initialize the thread library at least a bit since the libgcc
      functions are using thread functions if these are available and
      we need to setup errno.  */

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=b15f34af1c3b6f2658d3f73c331db8e94fa47b0a

commit b15f34af1c3b6f2658d3f73c331db8e94fa47b0a
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Tue Nov 24 10:00:28 2009 -0800

    Define week, first_weekday, and first_workday for hsb_DE locale.
    
    (cherry picked from commit ee5a5ba6725ee949483f043cd0cf2a1579b6b509)

diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 077182b..8828426 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-24  Ulrich Drepper  <drepper@redhat.com>
+
+	* locales/hsb_DE: Define week, first_weekday, and first_workday.
+
 2009-11-23  Ulrich Drepper  <drepper@redhat.com>
 
 	* locales/en_DK: Define week, first_weekday, and first_workday.
diff --git a/localedata/locales/hsb_DE b/localedata/locales/hsb_DE
index 50355af..0929897 100644
--- a/localedata/locales/hsb_DE
+++ b/localedata/locales/hsb_DE
@@ -197,7 +197,7 @@ collating-symbol <SPECIAL>
 % letter;accent;case;specials
 
 order_start forward;backward/
-            ;forward;position
+	    ;forward;position
 
 % <CAPITAL> or <SMALL> letters first:
 
@@ -2136,16 +2136,16 @@ END LC_NUMERIC
 
 LC_TIME
 abday   "<U004E><U006A>";"<U0050><U00F3>";/
-        "<U0057><U0075>";"<U0053><U0072>";/
-        "<U0160><U0074>";"<U0050><U006A>";/
-        "<U0053><U006F>"
+	"<U0057><U0075>";"<U0053><U0072>";/
+	"<U0160><U0074>";"<U0050><U006A>";/
+	"<U0053><U006F>"
 day     "<U004E><U006A><U0065><U0064><U017A><U0065><U006C><U0061>";/
-        "<U0050><U00F3><U006E><U0064><U017A><U0065><U006C><U0061>";/
-        "<U0057><U0075><U0074><U006F><U0072><U0061>";/
-        "<U0053><U0072><U006A><U0065><U0064><U0061>";/
-        "<U0160><U0074><U0076><U00F3><U0072><U0074><U006B>";/
-        "<U0050><U006A><U0061><U0074><U006B>";/
-        "<U0053><U006F><U0062><U006F><U0074><U0061>"
+	"<U0050><U00F3><U006E><U0064><U017A><U0065><U006C><U0061>";/
+	"<U0057><U0075><U0074><U006F><U0072><U0061>";/
+	"<U0053><U0072><U006A><U0065><U0064><U0061>";/
+	"<U0160><U0074><U0076><U00F3><U0072><U0074><U006B>";/
+	"<U0050><U006A><U0061><U0074><U006B>";/
+	"<U0053><U006F><U0062><U006F><U0074><U0061>"
 abmon	"<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
 	"<U004D><U011B><U0072>";"<U0041><U0070><U0072>";/
 	"<U004D><U0065><U006A>";"<U004A><U0075><U006E>";/
@@ -2172,6 +2172,10 @@ t_fmt_ampm ""
 date_fmt       "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
 <U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
 <U0025><U005A><U0020><U0025><U0059>"
+
+week    7;19971130;4
+first_weekday 2
+first_workday 2
 END LC_TIME
 
 LC_PAPER

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=ede3f7ef5c553fc81efe6cf7ddf383f081bfd7e6

commit ede3f7ef5c553fc81efe6cf7ddf383f081bfd7e6
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Mon Nov 23 16:16:26 2009 -0800

    Define week, first_weekday, and first_workday for en_DK locale.
    
    (cherry picked from commit 49c7f27194d16976a6bb9c5b7be186662ec7a6e6)

diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index fa5536c..077182b 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-23  Ulrich Drepper  <drepper@redhat.com>
+
+	* locales/en_DK: Define week, first_weekday, and first_workday.
+
 2009-11-22  Ulrich Drepper  <drepper@redhat.com>
 
 	* locales/nl_NL: Define week, first_weekday, and first_workday.
diff --git a/localedata/locales/en_DK b/localedata/locales/en_DK
index aa58763..3ec5170 100644
--- a/localedata/locales/en_DK
+++ b/localedata/locales/en_DK
@@ -85,34 +85,34 @@ END LC_NUMERIC
 
 LC_TIME
 abday    "<U0053><U0075><U006E>";"<U004D><U006F><U006E>";/
-         "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/
-         "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/
-         "<U0053><U0061><U0074>"
+	 "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/
+	 "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/
+	 "<U0053><U0061><U0074>"
 day      "<U0053><U0075><U006E><U0064><U0061><U0079>";/
-         "<U004D><U006F><U006E><U0064><U0061><U0079>";/
-         "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";/
-         "<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/
-         "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";/
-         "<U0046><U0072><U0069><U0064><U0061><U0079>";/
-         "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>"
+	 "<U004D><U006F><U006E><U0064><U0061><U0079>";/
+	 "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";/
+	 "<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/
+	 "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";/
+	 "<U0046><U0072><U0069><U0064><U0061><U0079>";/
+	 "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>"
 abmon    "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
-         "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
-         "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/
-         "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
-         "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/
-         "<U004E><U006F><U0076>";"<U0044><U0065><U0063>"
+	 "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
+	 "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/
+	 "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
+	 "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/
+	 "<U004E><U006F><U0076>";"<U0044><U0065><U0063>"
 mon      "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/
-         "<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/
-         "<U004D><U0061><U0072><U0063><U0068>";/
-         "<U0041><U0070><U0072><U0069><U006C>";/
-         "<U004D><U0061><U0079>";/
-         "<U004A><U0075><U006E><U0065>";/
-         "<U004A><U0075><U006C><U0079>";/
-         "<U0041><U0075><U0067><U0075><U0073><U0074>";/
-         "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
-         "<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/
-         "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
-         "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
+	 "<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/
+	 "<U004D><U0061><U0072><U0063><U0068>";/
+	 "<U0041><U0070><U0072><U0069><U006C>";/
+	 "<U004D><U0061><U0079>";/
+	 "<U004A><U0075><U006E><U0065>";/
+	 "<U004A><U0075><U006C><U0079>";/
+	 "<U0041><U0075><U0067><U0075><U0073><U0074>";/
+	 "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
+	 "<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/
+	 "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
+	 "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
 % date formats following ISO 8601-1988
 d_t_fmt  "<U0025><U0059><U002D><U0025><U006D><U002D><U0025><U0064><U0054><U0025><U0054><U0020><U0025><U005A>"
 d_fmt    "<U0025><U0059><U002D><U0025><U006D><U002D><U0025><U0064>"
@@ -122,6 +122,9 @@ t_fmt_ampm  ""
 date_fmt	"<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
 <U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
 <U0025><U005A><U0020><U0025><U0059>"
+week    7;19971130;4
+first_weekday 2
+first_workday 2
 END LC_TIME
 
 LC_MESSAGES

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=360f6f3a2522731cfdeedc959b21200d325952b1

commit 360f6f3a2522731cfdeedc959b21200d325952b1
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Sun Nov 22 16:54:45 2009 -0800

    Fix week information for nl_NL locale.
    
    (cherry picked from commit 6503cfe2de2105e83456fb04fdeb5d4e2323e9b4)

diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 4ddd35d..fa5536c 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-22  Ulrich Drepper  <drepper@redhat.com>
+
+	* locales/nl_NL: Define week, first_weekday, and first_workday.
+
 2009-10-30  Ulrich Drepper  <drepper@redhat.com>
 
 	* locales/it_CH: Fix typos in last change.
diff --git a/localedata/locales/nl_NL b/localedata/locales/nl_NL
index 9719cec..6f83292 100644
--- a/localedata/locales/nl_NL
+++ b/localedata/locales/nl_NL
@@ -88,33 +88,33 @@ END LC_NUMERIC
 
 LC_TIME
 abday   "<U007A><U006F>";"<U006D><U0061>";"<U0064><U0069>";/
-        "<U0077><U006F>";"<U0064><U006F>";"<U0076><U0072>";/
-        "<U007A><U0061>"
+	"<U0077><U006F>";"<U0064><U006F>";"<U0076><U0072>";/
+	"<U007A><U0061>"
 day     "<U007A><U006F><U006E><U0064><U0061><U0067>";/
-        "<U006D><U0061><U0061><U006E><U0064><U0061><U0067>";/
-        "<U0064><U0069><U006E><U0073><U0064><U0061><U0067>";/
-        "<U0077><U006F><U0065><U006E><U0073><U0064><U0061><U0067>";/
-        "<U0064><U006F><U006E><U0064><U0065><U0072><U0064><U0061><U0067>";/
-        "<U0076><U0072><U0069><U006A><U0064><U0061><U0067>";/
-        "<U007A><U0061><U0074><U0065><U0072><U0064><U0061><U0067>"
+	"<U006D><U0061><U0061><U006E><U0064><U0061><U0067>";/
+	"<U0064><U0069><U006E><U0073><U0064><U0061><U0067>";/
+	"<U0077><U006F><U0065><U006E><U0073><U0064><U0061><U0067>";/
+	"<U0064><U006F><U006E><U0064><U0065><U0072><U0064><U0061><U0067>";/
+	"<U0076><U0072><U0069><U006A><U0064><U0061><U0067>";/
+	"<U007A><U0061><U0074><U0065><U0072><U0064><U0061><U0067>"
 abmon   "<U006A><U0061><U006E>";"<U0066><U0065><U0062>";/
-        "<U006D><U0072><U0074>";"<U0061><U0070><U0072>";/
-        "<U006D><U0065><U0069>";"<U006A><U0075><U006E>";/
-        "<U006A><U0075><U006C>";"<U0061><U0075><U0067>";/
-        "<U0073><U0065><U0070>";"<U006F><U006B><U0074>";/
-        "<U006E><U006F><U0076>";"<U0064><U0065><U0063>"
+	"<U006D><U0072><U0074>";"<U0061><U0070><U0072>";/
+	"<U006D><U0065><U0069>";"<U006A><U0075><U006E>";/
+	"<U006A><U0075><U006C>";"<U0061><U0075><U0067>";/
+	"<U0073><U0065><U0070>";"<U006F><U006B><U0074>";/
+	"<U006E><U006F><U0076>";"<U0064><U0065><U0063>"
 mon     "<U006A><U0061><U006E><U0075><U0061><U0072><U0069>";/
-        "<U0066><U0065><U0062><U0072><U0075><U0061><U0072><U0069>";/
-        "<U006D><U0061><U0061><U0072><U0074>";/
-        "<U0061><U0070><U0072><U0069><U006C>";/
-        "<U006D><U0065><U0069>";/
-        "<U006A><U0075><U006E><U0069>";/
-        "<U006A><U0075><U006C><U0069>";/
-        "<U0061><U0075><U0067><U0075><U0073><U0074><U0075><U0073>";/
-        "<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
-        "<U006F><U006B><U0074><U006F><U0062><U0065><U0072>";/
-        "<U006E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
-        "<U0064><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
+	"<U0066><U0065><U0062><U0072><U0075><U0061><U0072><U0069>";/
+	"<U006D><U0061><U0061><U0072><U0074>";/
+	"<U0061><U0070><U0072><U0069><U006C>";/
+	"<U006D><U0065><U0069>";/
+	"<U006A><U0075><U006E><U0069>";/
+	"<U006A><U0075><U006C><U0069>";/
+	"<U0061><U0075><U0067><U0075><U0073><U0074><U0075><U0073>";/
+	"<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
+	"<U006F><U006B><U0074><U006F><U0062><U0065><U0072>";/
+	"<U006E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
+	"<U0064><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
 d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
 d_fmt   "<U0025><U0064><U002D><U0025><U006D><U002D><U0025><U0079>"
 t_fmt   "<U0025><U0054>"
@@ -123,6 +123,10 @@ t_fmt_ampm ""
 date_fmt       "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
 <U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
 <U0025><U005A><U0020><U0025><U0059>"
+
+week    7;19971130;4
+first_weekday 2
+first_workday 2
 END LC_TIME
 
 LC_PAPER

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=93721a641a55a943363149ed6a77eea4668878ce

commit 93721a641a55a943363149ed6a77eea4668878ce
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Sun Nov 22 11:43:57 2009 -0800

    Reinitialize _create_xid state after fork.
    
    Programs forking and using RPC in the forks would use the same XIDs.
    
    (cherry picked from commit c5a8b997e2de005697a992d8db5c54995bd361a8)

diff --git a/ChangeLog b/ChangeLog
index e0fd11c..143c45a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-22  Ulrich Drepper  <drepper@redhat.com>
+
+	* sunrpc/create_xid.c (_create_xid): Reinitialize state after fork.
+
 2009-11-18  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #10162]
diff --git a/sunrpc/create_xid.c b/sunrpc/create_xid.c
index 4e76918..c247568 100644
--- a/sunrpc/create_xid.c
+++ b/sunrpc/create_xid.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (c) 1998, 2000, 2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1998.
 
@@ -27,7 +27,7 @@
 
 __libc_lock_define_initialized (static, createxid_lock)
 
-static int is_initialized;
+static pid_t is_initialized;
 static struct drand48_data __rpc_lrand48_data;
 
 unsigned long
@@ -37,13 +37,15 @@ _create_xid (void)
 
   __libc_lock_lock (createxid_lock);
 
-  if (!is_initialized)
+  pid_t pid = getpid ();
+  if (is_initialized != pid)
     {
       struct timeval now;
 
       __gettimeofday (&now, (struct timezone *) 0);
-      __srand48_r (now.tv_sec ^ now.tv_usec, &__rpc_lrand48_data);
-      is_initialized = 1;
+      __srand48_r (now.tv_sec ^ now.tv_usec ^ pid,
+		   &__rpc_lrand48_data);
+      is_initialized = pid;
     }
 
   lrand48_r (&__rpc_lrand48_data, &res);

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                          |   17 ++++++
 csu/elf-init.c                                     |   21 ++++++--
 csu/libc-start.c                                   |    6 ++
 localedata/ChangeLog                               |   12 +++++
 localedata/locales/en_DK                           |   53 ++++++++++---------
 localedata/locales/hsb_DE                          |   24 +++++----
 localedata/locales/nl_NL                           |   52 ++++++++++---------
 login/programs/pt_chown.c                          |    5 +-
 nptl/ChangeLog                                     |    5 ++
 nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S |    5 +-
 sunrpc/create_xid.c                                |   12 +++--
 sysdeps/unix/grantpt.c                             |    4 ++
 sysdeps/unix/sysv/linux/grantpt.c                  |   42 +++++++++++++++
 13 files changed, 183 insertions(+), 75 deletions(-)
 create mode 100644 sysdeps/unix/sysv/linux/grantpt.c


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]