diff options
Diffstat (limited to 'resource')
-rw-r--r-- | resource/Makefile | 3 | ||||
-rw-r--r-- | resource/sys/resource.h | 18 | ||||
-rw-r--r-- | resource/ulimit.h | 49 |
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 */ |