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-162-g67b3f58
- From: pino at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 23 Jan 2013 16:33:15 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.17-162-g67b3f58
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 67b3f58c83d4ffc29ab939e3d0bbeb9fb38103e7 (commit)
via 92a601b883c7886e33ac53a20139e76e57420a2f (commit)
via 9cbbc4aebe27c84d8e598994e176493f339ab1c1 (commit)
from bc101e2652728d8a6e8ece7c637e095618546a95 (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=67b3f58c83d4ffc29ab939e3d0bbeb9fb38103e7
commit 67b3f58c83d4ffc29ab939e3d0bbeb9fb38103e7
Author: Pino Toscano <toscano.pino@tiscali.it>
Date: Wed Jan 23 17:29:35 2013 +0100
ulimit: remove buggy bsd implementation
The bsd implementation of ulimit produces wrong return values, so remove it
in favour of the posix implementation.
The only regression for non-Linux implementations using bsd sysdeps and not
providing an own ulimit is that the __UL_GETMAXBRK case (which is non-standard)
is left unimplemented (giving EINVAL).
diff --git a/ChangeLog b/ChangeLog
index 2163c24..418b932 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,7 @@
* sysdeps/unix/sysv/linux/ulimit.c: Moved to ...
* sysdeps/posix/ulimit.c: ... this.
Include <limits.h>.
+ * sysdeps/unix/bsd/ulimit.c: Remove file.
2013-01-23 Adam Conrad <adconrad@0c3.net>
diff --git a/sysdeps/unix/bsd/ulimit.c b/sysdeps/unix/bsd/ulimit.c
deleted file mode 100644
index 366488b..0000000
--- a/sysdeps/unix/bsd/ulimit.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Copyright (C) 1991-2013 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
- 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/>. */
-
-#include <errno.h>
-#include <stdarg.h>
-#include <sysdep.h>
-#include <ulimit.h>
-#include <unistd.h>
-#include <sys/resource.h>
-
-
-extern int _etext;
-
-/* Function depends on CMD:
- 1 = Return the limit on the size of a file, in units of 512 bytes.
- 2 = Set the limit on the size of a file to NEWLIMIT. Only the
- super-user can increase the limit.
- 3 = Return the maximum possible address of the data segment.
- 4 = Return the maximum number of files that the calling process
- can open.
- Returns -1 on errors. */
-long int
-ulimit (int cmd, ...)
-{
- struct rlimit limit;
- va_list va;
- long int result = -1;
-
- va_start (va, cmd);
-
- switch (cmd)
- {
- case UL_GETFSIZE:
- /* Get limit on file size. */
- if (getrlimit (RLIMIT_FSIZE, &limit) == 0)
- /* Convert from bytes to 512 byte units. */
- result = limit.rlim_cur / 512;
- break;
-
- case UL_SETFSIZE:
- /* Set limit on file size. */
- {
- long int newlimit = va_arg (va, long int);
-
- if ((rlim_t) newlimit > RLIM_INFINITY / 512)
- {
- limit.rlim_cur = RLIM_INFINITY;
- limit.rlim_max = RLIM_INFINITY;
- }
- else
- {
- limit.rlim_cur = newlimit * 512;
- limit.rlim_max = newlimit * 512;
- }
-
- result = setrlimit (RLIMIT_FSIZE, &limit);
- }
- break;
-
- case __UL_GETMAXBRK:
- /* Get maximum address for `brk'. */
- if (getrlimit (RLIMIT_DATA, &limit) == 0)
- result = ((long int) &_etext) + limit.rlim_cur;
- break;
-
- case __UL_GETOPENMAX:
- result = sysconf (_SC_OPEN_MAX);
- break;
-
- default:
- __set_errno (EINVAL);
- }
-
- va_end (va);
-
- return result;
-}
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=92a601b883c7886e33ac53a20139e76e57420a2f
commit 92a601b883c7886e33ac53a20139e76e57420a2f
Author: Pino Toscano <toscano.pino@tiscali.it>
Date: Wed Jan 23 17:27:45 2013 +0100
ulimit: include <limits.h>
diff --git a/ChangeLog b/ChangeLog
index f74cf10..2163c24 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
* sysdeps/unix/sysv/linux/ulimit.c: Moved to ...
* sysdeps/posix/ulimit.c: ... this.
+ Include <limits.h>.
2013-01-23 Adam Conrad <adconrad@0c3.net>
diff --git a/sysdeps/posix/ulimit.c b/sysdeps/posix/ulimit.c
index 8c382ac..f5ee6bf 100644
--- a/sysdeps/posix/ulimit.c
+++ b/sysdeps/posix/ulimit.c
@@ -20,6 +20,7 @@
#include <sysdep.h>
#include <ulimit.h>
#include <unistd.h>
+#include <limits.h>
#include <sys/resource.h>
/* Function depends on CMD:
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=9cbbc4aebe27c84d8e598994e176493f339ab1c1
commit 9cbbc4aebe27c84d8e598994e176493f339ab1c1
Author: Pino Toscano <toscano.pino@tiscali.it>
Date: Wed Jan 23 17:25:53 2013 +0100
ulimit: move linux implementation as posix
The linux implementation of ulimit works correctly and has nothing specific
to Linux, so move it as general posix implementation.
diff --git a/ChangeLog b/ChangeLog
index d6dad4f..f74cf10 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-01-23 Pino Toscano <toscano.pino@tiscali.it>
+
+ * sysdeps/unix/sysv/linux/ulimit.c: Moved to ...
+ * sysdeps/posix/ulimit.c: ... this.
+
2013-01-23 Adam Conrad <adconrad@0c3.net>
* elf/Makefile (LDFLAGS-tst-array2): Add $(no-as-needed).
diff --git a/sysdeps/unix/sysv/linux/ulimit.c b/sysdeps/posix/ulimit.c
similarity index 100%
rename from sysdeps/unix/sysv/linux/ulimit.c
rename to sysdeps/posix/ulimit.c
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 7 ++
sysdeps/{unix/sysv/linux => posix}/ulimit.c | 1 +
sysdeps/unix/bsd/ulimit.c | 91 ---------------------------
3 files changed, 8 insertions(+), 91 deletions(-)
rename sysdeps/{unix/sysv/linux => posix}/ulimit.c (99%)
delete mode 100644 sysdeps/unix/bsd/ulimit.c
hooks/post-receive
--
GNU C Library master sources