about summary refs log tree commit diff
path: root/resource
diff options
context:
space:
mode:
Diffstat (limited to 'resource')
-rw-r--r--resource/Makefile3
-rw-r--r--resource/sys/resource.h18
-rw-r--r--resource/ulimit.h49
3 files changed, 56 insertions, 14 deletions
diff --git a/resource/Makefile b/resource/Makefile
index 1ad0bb3bc4..5a4d9603c8 100644
--- a/resource/Makefile
+++ b/resource/Makefile
@@ -18,7 +18,8 @@
 
 subdir := resource
 
-headers	  := sys/resource.h bits/resource.h sys/vlimit.h sys/vtimes.h
+headers	  := sys/resource.h bits/resource.h sys/vlimit.h sys/vtimes.h	\
+	     ulimit.h
 
 routines := getrlimit setrlimit getrlimit64 setrlimit64 getrusage ulimit      \
 	    vlimit vtimes getpriority setpriority nice
diff --git a/resource/sys/resource.h b/resource/sys/resource.h
index f9c6bb2488..488612ffad 100644
--- a/resource/sys/resource.h
+++ b/resource/sys/resource.h
@@ -21,11 +21,14 @@
 
 #include <features.h>
 
-__BEGIN_DECLS
-
 /* Get the system-dependent definitions of structures and bit values.  */
 #include <bits/resource.h>
 
+/* Get the definitions for the `ulimit' function.  */
+#include <ulimit.h>
+
+__BEGIN_DECLS
+
 /* Put the soft and hard limits for RESOURCE in *RLIMITS.
    Returns 0 if successful, -1 if not (and sets errno).  */
 extern int __getrlimit __P ((enum __rlimit_resource __resource,
@@ -62,16 +65,6 @@ extern int setrlimit64 __P ((enum __rlimit_resource __resource,
 extern int __getrusage __P ((enum __rusage_who __who, struct rusage *__usage));
 extern int getrusage __P ((enum __rusage_who __who, struct rusage *__usage));
 
-/* 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.  */
-extern long int __ulimit __P ((int __cmd, long int __newlimit));
-extern long int ulimit __P ((int __cmd, long int __newlimit));
-
 /* Return the highest priority of any process specified by WHICH and WHO
    (see above); if WHO is zero, the current process, process group, or user
    (as specified by WHO) is used.  A lower priority number means higher
@@ -83,7 +76,6 @@ extern int getpriority __P ((enum __priority_which __which, int __who));
 extern int setpriority __P ((enum __priority_which __which, int __who,
 			     int __prio));
 
-
 __END_DECLS
 
 #endif	/* sys/resource.h  */
diff --git a/resource/ulimit.h b/resource/ulimit.h
new file mode 100644
index 0000000000..651e9f4e25
--- /dev/null
+++ b/resource/ulimit.h
@@ -0,0 +1,49 @@
+/* Copyright (C) 1997 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 Library General Public License as
+   published by the Free Software Foundation; either version 2 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
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU C Library; see the file COPYING.LIB.  If not,
+   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#ifndef _ULIMIT_H
+#define _ULIMIT_H	1
+
+#include <features.h>
+
+/* Constants used as the first parameter for `ulimit'.  They denote limits
+   which can be set or retrieved using this function.  */
+enum
+{
+  UL_GETFSIZE = 1,			/* Return limit on the size of a file,
+					   in units of 512 bytes.  */
+#define UL_GETFSIZE	UL_GETFSIZE
+  UL_SETFSIZE,				/* Set limit on the size of a file to
+					   second argument.  */
+#define UL_SETFSIZE	UL_SETFSIZE
+  __UL_GETMAXBRK,			/* Return the maximum possible address
+					   of the data segment.  */
+  __UL_GETOPENMAX			/* Return the maximum number of files
+					   that the calling process can open.*/
+};
+
+
+__BEGIN_DECLS
+
+/* Control process limits according to CMD.  */
+extern long int __ulimit __P ((int __cmd, ...));
+extern long int ulimit __P ((int __cmd, ...));
+
+__END_DECLS
+
+#endif /* ulimit.h */