NAME
ulimit — get and set user limits
SYNOPSIS
#include <ulimit.h>
long ulimit(int cmd, ...);
Remarks
The ANSI C ", ..." construct denotes a variable length argument list whose
optional [or required]
members are given in the associated comment
(/* */).
DESCRIPTION
ulimit()
provides for control over process limits.
Available values for
cmd
are:
- UL_GETFSIZE
Get the file size limit of the process.
The limit is in units of 512-byte blocks and is inherited by child processes.
Files of any size can be read.
The optional second argument is not used.
- UL_SETFSIZE
Set the file size limit of the process to the value
of the optional second argument which is taken as a long.
Any process can decrease this limit,
but only a process with an effective user
ID
of
super-user
can increase the limit.
Note that the limit must be specified in units of 512-byte blocks.
- UL_GETMAXBRK
Get the maximum possible break value
(see
brk(2)).
Depending on system resources such as swap space,
this maximum might not be attainable at a given time.
The optional second argument is not used.
ERRORS
ulimit()
fails if one or more of the following conditions is true.
- [EINVAL]
cmd
is not in the correct range.
- [EPERM]
ulimit()
fails and the limit is unchanged if a process
with an effective user
ID
other than super-user
attempts to increase its file size limit.
RETURN VALUE
Upon successful completion, a non-negative value is returned.
Errors return a -1, with
errno
set to indicate the error.
STANDARDS CONFORMANCE
ulimit(): AES, SVID2, SVID3, XPG2, XPG3, XPG4