about summary refs log tree commit diff
path: root/sysdeps/unix
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-09-25 03:04:41 +0000
committerUlrich Drepper <drepper@redhat.com>2001-09-25 03:04:41 +0000
commit61423e13e519c41c49adcdd8d1259a8213a5fded (patch)
treead0accd2407bf0d15e276e1d72caf5132a794177 /sysdeps/unix
parent8db6604d862909a10643e051f73795cbdaa1a8d5 (diff)
downloadglibc-61423e13e519c41c49adcdd8d1259a8213a5fded.tar.gz
glibc-61423e13e519c41c49adcdd8d1259a8213a5fded.tar.xz
glibc-61423e13e519c41c49adcdd8d1259a8213a5fded.zip
Update.
	* sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Handle overflow in
	UL_SETFSIZE computations better.

	* string/Versions: Export __strsep for GLIBC_2.2.5.
	* string/bits/string2.h: Define all __STRING_INLINE functions if
	_FORCE_INLINES is defined.
	Use int instead of char of parameter types.
	(__strsep): Don't use __strsep_g.  Don't define it.
	(__strsep_1c, __strsep_2c, __strsep_3c): Optimize.
	* sysdeps/i386/i486/string.h (__strcpy_a_small): Renamed from
	__strcpy_small.
	(__stpcpy_a_small): Renamed from __stpcpy_small.
	(__strcspn_c1): Don't define if _FORCE_INLINES.
	(__strspn_c1): Likewise.

2001-09-22  Ben Collins  <bcollins@debian.org>

	* sysdeps/sparc/bits/sigaction.h: Define SA_RESTART and friends when
	_UNIX98_SOURCE is defined too.  Matches generic/bits/sigaction.h.
	* sysdeps/ia64/bits/sigaction.h: Likewise.
	* sysdeps/s390/s390-64/bits/sigaction.h: Likewise.

2001-09-24  Andrew Haley  <aph@cambridge.redhat.com>

	* sysdeps/unix/sysv/linux/sh/Makefile (sysdep_headers): Add sys/io.h.

2001-09-24  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-open.c (dl_open_worker): Update l_scope_max.

2001-09-24  Ulrich Drepper  <drepper@redhat.com>
Diffstat (limited to 'sysdeps/unix')
-rw-r--r--sysdeps/unix/sysv/linux/ia64/bits/sigaction.h2
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h2
-rw-r--r--sysdeps/unix/sysv/linux/sh/Makefile1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/sigaction.h2
-rw-r--r--sysdeps/unix/sysv/linux/ulimit.c14
5 files changed, 15 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h b/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
index 9b1aafb02d..c34fcc4037 100644
--- a/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
@@ -50,7 +50,7 @@ struct sigaction
 /* Bits in `sa_flags'.  */
 #define SA_NOCLDSTOP  0x00000001 /* Don't send SIGCHLD when children stop.  */
 #define SA_SIGINFO    0x00000004
-#ifdef __USE_MISC
+#if defined __USE_UNIX98 || defined __USE_MISC
 # define SA_ONSTACK   0x08000000 /* Use signal stack by using `sa_restorer'. */
 # define SA_RESTART   0x10000000 /* Restart syscall on signal return.  */
 # define SA_NODEFER   0x40000000 /* Don't automatically block the signal
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h b/sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h
index 43738b2654..38af8d8654 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h
@@ -53,7 +53,7 @@ struct sigaction
 /* Bits in `sa_flags'.	*/
 #define SA_NOCLDSTOP  0x00000001 /* Don't send SIGCHLD when children stop.  */
 #define SA_SIGINFO    0x00000004
-#ifdef __USE_MISC
+#if defined __USE_UNIX98 || defined __USE_MISC
 # define SA_ONSTACK   0x08000000 /* Use signal stack by using `sa_restorer'. */
 # define SA_RESTART   0x10000000 /* Restart syscall on signal return.  */
 # define SA_NODEFER   0x40000000 /* Don't automatically block the signal
diff --git a/sysdeps/unix/sysv/linux/sh/Makefile b/sysdeps/unix/sysv/linux/sh/Makefile
index 57cd3d9e94..0929c7c324 100644
--- a/sysdeps/unix/sysv/linux/sh/Makefile
+++ b/sysdeps/unix/sysv/linux/sh/Makefile
@@ -4,6 +4,7 @@ endif
 
 ifeq ($(subdir),misc)
 sysdep_routines += setfsgid setfsuid setresgid setresuid
+sysdep_headers += sys/io.h
 endif
 
 ifeq ($(subdir),signal)
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h b/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
index e5cf753c70..ee4196764d 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
@@ -56,7 +56,7 @@ struct sigaction
 #define SA_NOCLDWAIT 0x00000100  /* Don't create zombie on child death.  */
 #define SA_SIGINFO   0x00000200  /* Invoke signal-catching function with
 				    three arguments instead of one.  */
-#ifdef __USE_MISC
+#if defined __USE_UNIX98 || defined __USE_MISC
 # define SA_ONSTACK   0x00000001 /* Use signal stack by using `sa_restorer'. */
 # define SA_RESTART   0x00000002 /* Restart syscall on signal return.  */
 # define SA_INTERRUPT 0x00000010 /* Historical no-op.  */
diff --git a/sysdeps/unix/sysv/linux/ulimit.c b/sysdeps/unix/sysv/linux/ulimit.c
index c2481f5c8a..9c309c371d 100644
--- a/sysdeps/unix/sysv/linux/ulimit.c
+++ b/sysdeps/unix/sysv/linux/ulimit.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1998,2000,2001 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
@@ -55,8 +55,16 @@ __ulimit (int cmd, ...)
       {
 	long int newlimit = va_arg (va, long int);
 
-	limit.rlim_cur = newlimit * 512;
-	limit.rlim_max = newlimit * 512;
+	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);
       }