This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.17-179-g3a7ac8a
- From: jsm28 at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 1 Feb 2013 00:06:33 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.17-179-g3a7ac8a
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, master has been updated
via 3a7ac8a0f596bb73093212cd1109c1413777e1f8 (commit)
from f3499f95c8610364264479d42d455a79f15c4c86 (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=3a7ac8a0f596bb73093212cd1109c1413777e1f8
commit 3a7ac8a0f596bb73093212cd1109c1413777e1f8
Author: Joseph Myers <joseph@codesourcery.com>
Date: Fri Feb 1 00:06:18 2013 +0000
Remove bp-start.h and INIT_ARGV_and_ENVIRON.
diff --git a/ChangeLog b/ChangeLog
index 226606a..3f9f1d0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,14 @@
2013-01-31 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
+ * sysdeps/generic/bp-start.h: Remove file.
+ * csu/libc-start.c: Don't include <bp-start.h>.
+ (LIBC_START_MAIN): Set up __environ directly instead of using
+ INIT_ARGV_and_ENVIRON.
+ * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Don't include
+ <bp-start.h>.
+
+ [BZ #13550]
* sysdeps/generic/bp-checks.h (CHECK_IOCTL): Remove both
definitions.
(CHECK_FCNTL): Likewise.
diff --git a/csu/libc-start.c b/csu/libc-start.c
index 3e62b8a..d4a135f 100644
--- a/csu/libc-start.c
+++ b/csu/libc-start.c
@@ -19,7 +19,6 @@
#include <stdio.h>
#include <unistd.h>
#include <ldsodefs.h>
-#include <bp-start.h>
#include <bp-sym.h>
extern void __libc_init_first (int argc, char **argv, char **envp);
@@ -140,7 +139,7 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
#ifndef SHARED
char *__unbounded *__unbounded ubp_ev = &ubp_av[argc + 1];
- INIT_ARGV_and_ENVIRON;
+ __environ = ubp_ev;
/* Store the lowest stack address. This is done in ld.so if this is
the code for the DSO. */
diff --git a/sysdeps/generic/bp-start.h b/sysdeps/generic/bp-start.h
deleted file mode 100644
index 069d616..0000000
--- a/sysdeps/generic/bp-start.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Bounded-pointer checking macros for C.
- Copyright (C) 2000-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Greg McGary <greg@mcgary.org>
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-
-#if __BOUNDED_POINTERS__
-
- /* The command-line arg vector and environment vector come to us from
- the OS as an unbounded pointer to an array of unbounded strings.
- The user's main expects argv and __environ to be bounded pointers
- to arrays of bounded strings. */
-# define INIT_ARGV_and_ENVIRON \
- do { \
- int envc; \
- for (envc = 0; *ubp_ev; ubp_ev++, envc++) \
- ; \
- ubp_ev -= envc; \
- \
- /* GKM FIXME: we could save some space by allocating only enough for \
- the additional low & high words, and destructively rewriting \
- argv in place. */ \
- __ptrvalue (argv) = __ptrlow (argv) \
- = alloca ((argc + envc + 2) * sizeof (*argv)); \
- __ptrhigh (argv) = __ptrvalue (argv) + argc + 1; \
- __ptrvalue (__environ) = __ptrlow (__environ) = __ptrhigh (argv); \
- __ptrhigh (__environ) = __ptrvalue (__environ) + envc + 1; \
- boundify_vector (__environ, ubp_ev); \
- boundify_vector (argv, ubp_av); \
- } while (0)
-
-
-/* Copy an unbounded vector of unbounded strings into a bounded
- counterpart. */
-
-static void
-boundify_vector (char **dest, char *__unbounded *__unbounded src)
-{
- char *__unbounded s;
- for (; *src; src++, dest++)
- {
- __ptrvalue (*dest) = __ptrlow (*dest) = *src;
- __ptrhigh (*dest) = src[1];
- }
- *dest = 0;
- /* The OS lays out strings contiguously in vector order,
- so */
- for (s = __ptrvalue (dest[-1]); *s; s++)
- ;
- __ptrhigh (dest[-1]) = ++s;
-}
-
-#else
-
-# define INIT_ARGV_and_ENVIRON __environ = ubp_ev
-
-#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c
index 5887db0..fb1f9a4 100644
--- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c
+++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c
@@ -19,7 +19,6 @@
#include <unistd.h>
#include <ldsodefs.h>
#include <sysdep.h>
-#include <bp-start.h>
#include <bp-sym.h>
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 8 +++
csu/libc-start.c | 3 +-
sysdeps/generic/bp-start.h | 71 --------------------------
sysdeps/unix/sysv/linux/powerpc/libc-start.c | 1 -
4 files changed, 9 insertions(+), 74 deletions(-)
delete mode 100644 sysdeps/generic/bp-start.h
hooks/post-receive
--
GNU C Library master sources