ulimit(3)

ulimit3

Get and set process limits

Usage

#include <ulimit.h>

long

ulimit(int cmd, ...);

Library

Standard C Library (libc, -lc)

Overview

The ulimit() function will get and set process limits. Currently, this is limited to the maximum file size. The cmd argument is one of the following:

UL_GETFSIZE

will return the maximum file size of the current process, in units of 512-byte blocks.

UL_SETFSIZE

will attempt to set the maximum file size of the current process and its children, using the second argument (expressed as a long).

Return values

Upon successful completion, ulimit() returns the value requested; otherwise, the value -1 is returned and the global variable errno is set to indicate the error.

Errors

The ulimit() function will fail if:

[EINVAL]

The command specified was invalid.

[EPERM]

The limit specified to ulimit() would have raised the maximum limit value, and the caller is not the super-user.

Releases

145 releases since Mac OS X 10.3; the text changed 1 time.

  1. 10.3–10.4.11
  2. 10.5–26.5

Standards

The ulimit() function conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

History

The ulimit() function first appeared in FreeBSD 5.0.

Bugs

The ulimit() function provides limited precision for setting and retrieving process limits. If there is a need for greater precision than the type long provides, the getrlimit(2) and setrlimit(2) functions should be considered.

From Libc 1752.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.