ulimit(2) — SYSTEM CALLS
NAME
ulimit − get and set user limits
SYNOPSIS
#include <ulimit.h>
long ulimit(int cmd, ... /∗ newlimit ∗/ );
DESCRIPTION
This function provides for control over process limits. The cmd values available are:
UL_GETFSIZE Get the regular 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.
UL_SETFSIZE Set the regular file size limit of the process to the value of newlimit, taken as a long. Any process may decrease this limit, but only a process with an effective user ID of super-user may increase the limit.
UL_GMEMLIM Get the maximum possible break value [see brk(2)].
UL_GDESLIM Get the current value of the maximum number of open files per process configured in the system.
The getrlimit system call provides a more general interface for controlling process limits.
ulimit fails if the following is true:
EINVAL The cmd argument is not valid.
EPERM A process with an effective user ID other than super user attempts to increase its file size limit.
SEE ALSO
brk(2), getrlimit(2), write(2)
NOTES
ulimit is effective in limiting the growth of regular files. Pipes are currently limited to {PIPE_MAX}.
DIAGNOSTICS
Upon successful completion, a non-negative value is returned. Otherwise, a value of −1 is returned and errno is set to indicate the error.