Updated to fedora-glibc-20080328T1347 fedora-glibc-2_7_90-13
authorjakub <jakub>
Fri, 28 Mar 2008 14:05:57 +0000 (14:05 +0000)
committerjakub <jakub>
Fri, 28 Mar 2008 14:05:57 +0000 (14:05 +0000)
20 files changed:
fedora/branch.mk
fedora/glibc.spec.in
fedora/glibc_post_upgrade.c
nptl/ChangeLog
nptl/sysdeps/unix/sysv/linux/alpha/bits/local_lim.h
nptl/sysdeps/unix/sysv/linux/bits/local_lim.h
nptl/sysdeps/unix/sysv/linux/ia64/bits/local_lim.h
nptl/sysdeps/unix/sysv/linux/powerpc/bits/local_lim.h
nptl/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h
posix/gai.conf
sysdeps/posix/getaddrinfo.c
sysdeps/unix/sysv/linux/alpha/syscalls.list
sysdeps/unix/sysv/linux/bits/local_lim.h
sysdeps/unix/sysv/linux/ia64/syscalls.list
sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
sysdeps/unix/sysv/linux/sys/param.h
sysdeps/unix/sysv/linux/sysconf.c
sysdeps/unix/sysv/linux/wordsize-64/syscalls.list
sysdeps/unix/sysv/linux/x86_64/syscalls.list

index 3a8066a..a5124e4 100644 (file)
@@ -3,5 +3,5 @@ glibc-branch := fedora
 glibc-base := HEAD
 DIST_BRANCH := devel
 COLLECTION := dist-f8
-fedora-sync-date := 2008-03-26 10:41 UTC
-fedora-sync-tag := fedora-glibc-20080326T1041
+fedora-sync-date := 2008-03-28 13:47 UTC
+fedora-sync-tag := fedora-glibc-20080328T1347
index 4763a69..cc6bc39 100644 (file)
@@ -19,7 +19,7 @@
 Summary: The GNU libc libraries
 Name: glibc
 Version: @glibcversion@
-Release: 12
+Release: 13
 # GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
 # Things that are linked directly into dynamically linked programs
 # and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
@@ -976,6 +976,15 @@ rm -f *.filelist*
 %endif
 
 %changelog
+* Fri Mar 28 2008 Jakub Jelinek <jakub@redhat.com> 2.7.90-13
+- update to trunk
+  - don't define ARG_MAX in <limits.h>, as it is no longer
+    constant - use sysconf (_SC_ARG_MAX) to get the current
+    argument size limit
+  - fix build on sparc64
+- only service sshd condrestart if /etc/rc.d/init.d/sshd exists
+  (#428859)
+
 * Wed Mar 26 2008 Jakub Jelinek <jakub@redhat.com> 2.7.90-12
 - update to trunk
   - new CLONE_* flags in <sched.h> (#438542)
index 150b949..d73096c 100644 (file)
@@ -182,6 +182,7 @@ main (void)
   /* Check if we can safely condrestart sshd.  */
   if (access ("/sbin/service", X_OK) == 0
       && access ("/usr/sbin/sshd", X_OK) == 0
+      && access ("/etc/rc.d/init.d/sshd", X_OK) == 0
       && access ("/bin/bash", X_OK) == 0)
     {
       if (check_elf ("/usr/sbin/sshd"))
index 4af4109..528e428 100644 (file)
@@ -1,3 +1,12 @@
+2008-03-27  Ulrich Drepper  <drepper@redhat.com>
+
+       * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if
+       <linux/limits.h> has defined it.
+       * sysdeps/unix/sysv/linux/alpha/bits/local_lim.h: Likewise.
+       * sysdeps/unix/sysv/linux/ia64/bits/local_lim.h: Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/bits/local_lim.h: Likewise.
+       * sysdeps/unix/sysv/linux/sparc/bits/local_lim.h: Likewise.
+
 2008-03-18  Jakub Jelinek  <jakub@redhat.com>
 
        * sysdeps/unix/sysv/linux/ia64/dl-sysdep.h: Use __ASSEMBLER__ instead
index 9b27b1f..a7c9740 100644 (file)
@@ -1,5 +1,5 @@
 /* Minimum guaranteed maximum values for system limits.  Linux/Alpha version.
-   Copyright (C) 1993-1998,2000,2002,2003,2004 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998,2000,2002-2004,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +31,9 @@
 #ifndef OPEN_MAX
 # define __undef_OPEN_MAX
 #endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
 
 /* The kernel sources contain a file with all the needed information.  */
 #include <linux/limits.h>
 # undef OPEN_MAX
 # undef __undef_OPEN_MAX
 #endif
+/* Have to remove ARG_MAX?  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
 
 /* The number of data keys per process.  */
 #define _POSIX_THREAD_KEYS_MAX 128
index 4b7b297..8f0df4f 100644 (file)
@@ -1,5 +1,5 @@
 /* Minimum guaranteed maximum values for system limits.  Linux version.
-   Copyright (C) 1993-1998,2000,2002,2003,2004 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998,2000,2002-2004,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +31,9 @@
 #ifndef OPEN_MAX
 # define __undef_OPEN_MAX
 #endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
 
 /* The kernel sources contain a file with all the needed information.  */
 #include <linux/limits.h>
 # undef OPEN_MAX
 # undef __undef_OPEN_MAX
 #endif
+/* Have to remove ARG_MAX?  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
 
 /* The number of data keys per process.  */
 #define _POSIX_THREAD_KEYS_MAX 128
index 83db31e..4b8a035 100644 (file)
@@ -1,5 +1,5 @@
 /* Minimum guaranteed maximum values for system limits.  Linux/IA-64 version.
-   Copyright (C) 1993-1998,2000,2002,2003,2004 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998,2000,2002-2004,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +31,9 @@
 #ifndef OPEN_MAX
 # define __undef_OPEN_MAX
 #endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
 
 /* The kernel sources contain a file with all the needed information.  */
 #include <linux/limits.h>
 # undef OPEN_MAX
 # undef __undef_OPEN_MAX
 #endif
+/* Have to remove ARG_MAX?  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
 
 /* The number of data keys per process.  */
 #define _POSIX_THREAD_KEYS_MAX 128
index 02e2d17..8b836a9 100644 (file)
@@ -1,5 +1,6 @@
 /* Minimum guaranteed maximum values for system limits.  Linux/PPC version.
-   Copyright (C) 1993-1998,2000,2002-2004,2006 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998,2000,2002-2004,2006,2008
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +32,9 @@
 #ifndef OPEN_MAX
 # define __undef_OPEN_MAX
 #endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
 
 /* The kernel sources contain a file with all the needed information.  */
 #include <linux/limits.h>
 # undef OPEN_MAX
 # undef __undef_OPEN_MAX
 #endif
+/* Have to remove ARG_MAX?  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
 
 /* The number of data keys per process.  */
 #define _POSIX_THREAD_KEYS_MAX 128
index 2576f12..6e35603 100644 (file)
@@ -1,5 +1,5 @@
 /* Minimum guaranteed maximum values for system limits.  Linux/SPARC version.
-   Copyright (C) 1993-1998,2000,2002,2003,2004 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998,2000,2002-2004,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +31,9 @@
 #ifndef OPEN_MAX
 # define __undef_OPEN_MAX
 #endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
 
 /* The kernel sources contain a file with all the needed information.  */
 #include <linux/limits.h>
 # undef OPEN_MAX
 # undef __undef_OPEN_MAX
 #endif
+/* Have to remove ARG_MAX?  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
 
 /* The number of data keys per process.  */
 #define _POSIX_THREAD_KEYS_MAX 128
index b4abfc1..3dba1a9 100644 (file)
@@ -65,4 +65,4 @@
 #scopev4 ::ffff:10.0.0.0/104     5
 #scopev4 ::ffff:172.16.0.0/108   5
 #scopev4 ::ffff:192.168.0.0/112  5
-#scopev4 ::ffff:0.0.0.0          14
+#scopev4 ::ffff:0.0.0.0/96       14
index fb18bba..9a27efd 100644 (file)
@@ -1775,6 +1775,7 @@ gaiconf_init (void)
                    *cp++ = '\0';
                  if (inet_pton (AF_INET6, val1, &prefix))
                    {
+                     bits = 128;
                      if (IN6_IS_ADDR_V4MAPPED (&prefix)
                          && (cp == NULL
                              || (bits = strtoul (cp, &endp, 10)) != ULONG_MAX
index 7b3f233..de2c3ce 100644 (file)
@@ -17,8 +17,6 @@ sigstack      -       sigstack        2       sigstack
 vfork          -       vfork           0       __vfork         vfork
 
 getpriority    -       getpriority     i:ii    __getpriority   getpriority
-open           -       open            Ci:siv  __libc_open     __open open !__libc_open64 __open64 open64
-open64         open    -
 
 # proper socket implementations:
 accept         -       accept          Ci:iBN  __libc_accept   __accept accept
index 54a51ee..ea2cd44 100644 (file)
@@ -1,5 +1,5 @@
 /* Minimum guaranteed maximum values for system limits.  Linux version.
-   Copyright (C) 1993-1998, 2000, 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998,2000,2003,2004,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +31,9 @@
 #ifndef OPEN_MAX
 # define __undef_OPEN_MAX
 #endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
 
 /* The kernel sources contain a file with all the needed information.  */
 #include <linux/limits.h>
 # undef OPEN_MAX
 # undef __undef_OPEN_MAX
 #endif
+/* Have to remove ARG_MAX?  */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
 
 /* Maximum amount by which a process can descrease its asynchronous I/O
    priority level.  */
index 5824927..c55c70e 100644 (file)
@@ -4,9 +4,6 @@ umount2         -       umount          2       __umount2       umount2
 
 getpriority    -       getpriority     i:ii    __getpriority   getpriority
 
-creat          -       creat           Ci:si   __libc_creat    creat creat64
-open           -       open            Ci:siv  __libc_open     __open open __open64 open64
-
 # semaphore and shm system calls
 msgctl         -       msgctl          i:iip   __msgctl        msgctl
 msgget         -       msgget          i:ii    __msgget        msgget
index 320c40d..aee60bf 100644 (file)
@@ -1,5 +1,3 @@
 # File name    Caller  Syscall name    # args  Strong name     Weak names
 
-creat          -       creat           Ci:si   __libc_creat    creat creat64
 getrlimit      -       ugetrlimit      i:ip    __getrlimit     getrlimit getrlimit64
-open           -       open            Ci:siv  __libc_open     __open open __open64 open64
index 6849999..791ab9b 100644 (file)
@@ -2,9 +2,6 @@
 
 vfork          -       vfork           0       __vfork         vfork
 
-creat          -       creat           Ci:si   __libc_creat    creat creat64
-open           -       open            Ci:siv  __libc_open     __open open __open64 open64
-
 # semaphore and shm system calls
 msgctl         -       msgctl          i:iip   __msgctl        msgctl
 msgget         -       msgget          i:ii    __msgget        msgget
index 0b0424e..19c119a 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,2000,2001,2003 Free Software Foundation, Inc.
+/* Copyright (C) 1995-1997,2000,2001,2003,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
 #ifndef _SYS_PARAM_H
 #define _SYS_PARAM_H   1
 
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
+
 #include <limits.h>
 #include <linux/limits.h>
 #include <linux/param.h>
 
+/* The kernel headers defines ARG_MAX.  The value is wrong, though.  */
+#ifndef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
+#endif
+
 /* BSD names for some <limits.h> values.  */
 
 #define        NBBY            CHAR_BIT
 #endif
 #define        MAXSYMLINKS     20
 #define        CANBSIZ         MAX_CANON
-#define        NCARGS          ARG_MAX
 #define MAXPATHLEN     PATH_MAX
-/* The following is not really correct but it is a value we used for a
+/* The following are not really correct but it is a value we used for a
    long time and which seems to be usable.  People should not use NOFILE
-   anyway.  */
+   and NCARGS anyway.  */
 #define NOFILE         256
+#define        NCARGS          131072
 
 
 #include <sys/types.h>
index ab9cddc..f4e36e0 100644 (file)
 #include <not-cancel.h>
 #include <ldsodefs.h>
 
+/* Legacy value of ARG_MAX.  The macro is now not defined since the
+   actual value varies based on the stack size.  */
+#define legacy_ARG_MAX 131072
+
+
 static long int posix_sysconf (int name);
 
 
@@ -83,10 +88,10 @@ __sysconf (int name)
          /* Use getrlimit to get the stack limit.  */
          struct rlimit rlimit;
          if (__getrlimit (RLIMIT_STACK, &rlimit) == 0)
-           return MAX (ARG_MAX, rlimit.rlim_cur / 4);
+           return MAX (legacy_ARG_MAX, rlimit.rlim_cur / 4);
        }
 
-      return ARG_MAX;
+      return legacy_ARG_MAX;
 
     case _SC_NGROUPS_MAX:
       /* Try to read the information from the /proc/sys/kernel/ngroups_max
index d377db9..6091550 100644 (file)
@@ -15,3 +15,5 @@ setrlimit     -       setrlimit       i:ip    __setrlimit     setrlimit setrlimit64
 readahead      -       readahead       i:iii   __readahead     readahead
 sendfile       -       sendfile        i:iipi  sendfile        sendfile64
 sync_file_range        -       sync_file_range i:iiii  sync_file_range
+creat          -       creat           Ci:si   __libc_creat    creat creat64
+open           -       open            Ci:siv  __libc_open     __open open __open64 open64
index a3d3d6c..3e231a0 100644 (file)
@@ -1,13 +1,11 @@
 # File name    Caller  Syscall name    # args  Strong name     Weak names
 
 arch_prctl     EXTRA   arch_prctl      i:ii    __arch_prctl    arch_prctl
-creat          -       creat           Ci:si   __libc_creat    creat creat64
 modify_ldt     EXTRA   modify_ldt      i:ipi   __modify_ldt    modify_ldt
 msgctl         -       msgctl          i:iip   __msgctl        msgctl
 msgget         -       msgget          i:ii    __msgget        msgget
 msgrcv         -       msgrcv          Ci:ibnii __msgrcv       msgrcv
 msgsnd         -       msgsnd          Ci:ibni __msgsnd        msgsnd
-open           -       open            Ci:siv  __libc_open     __open open __open64 open64
 shmat          -       shmat           i:ipi   __shmat         shmat
 shmctl         -       shmctl          i:iip   __shmctl        shmctl
 shmdt          -       shmdt           i:s     __shmdt         shmdt