HPUX setrlimit[2]






 getrlimit(2)                                                   getrlimit(2)





 NAME
      getrlimit, setrlimit - control consumption of system resources

 SYNOPSIS
      #include <sys/resource.h>

      int getrlimit(int resource, struct rlimit *rlp);

      int setrlimit(int resource, const struct rlimit *rlp);

 DESCRIPTION
      setrlimit() sets a limit on consumption of system resources by the
      current process and each process it creates.  getrlimit() is used to
      obtain the value of the current limit.

      Each call to either getrlimit() or setrlimit() identifies a specific
      resource to be operated upon as well as a resource limit.  A resource
      limit is a pair of values: one specifying the current (soft) limit,
      the other a maximum (hard) limit.  Soft limits can be changed by a
      process to any value that is less than or equal to the hard limit.  A
      process can irreversibly lower its hard limit to any value that is
      greater than or equal to the soft limit.  Only users with appropriate
      privileges can raise a hard limit.  Both hard and soft limits can be
      changed in a single call to setrlimit(), subject to the constraints
      described above.

      The resource parameter selects the system resource limits to be set or
      retrieved.  The possible values for resource are defined in
      <sys/resource.h>.  Currently, only the following values are supported:

           RLIMIT_NOFILE         the maximum number of files a process can
                                 have open.  The soft limit for this
                                 resource is the same as the value returned
                                 by sysconf(_SC_OPEN_MAX).

           RLIMIT_OPEN_MAX       defined to be the same as RLIMIT_NOFILE.

      The rlp argument points to an object of type struct rlimit, which is
      defined in <sys/resource.h>, and includes the following members:

           int rlim_cur      Current (soft) limit
           int rlim_max      Hard limit

      For getrlimit(), the system stores the two limits on the specified
      resource in the structure to which rlp points.

      For setrlimit(), the system reads new values for the two limits on the
      specified resource from the structure to which rlp points.

 RETURN VALUE
      Upon successful completion, getrlimit() and setrlimit() return a value



 Hewlett-Packard Company            - 1 -     HP-UX Release 9.0: August 1992






 getrlimit(2)                                                   getrlimit(2)





      of 0.  Otherwise, a value of -1 is returned, the limits on the
      resource and the rlp structure are unchanged, and errno is set to
      indicate the error.

 ERRORS
      getrlimit() and setrlimit() fail if:

           [EFAULT]       The address specified for rlp is invalid.
                          Reliable detection of this error is implementation
                          dependent.

           [EINVAL]       The number specified for resource is invalid.

      setrlimit fails if:

           [EPERM]        The rlp argument specified a hard or soft limit
                          higher than the current hard limit value, and the
                          caller does not have appropriate privileges.

           [EINVAL]       A user with appropriate privileges has attempted
                          to raise rlp->rlim_cur or rlp->rlim_max to a value
                          greater than the system is capable of supporting.

           [EINVAL]       The value of rlp->rlim_cur is less than the number
                          of file descriptors the process already has
                          allocated.

           [EINVAL]       The value of rlp->rlim_max is less than the
                          current soft limit.

 AUTHOR
      getrlimit() and setrlimit() were developed by HP, AT&T, and the
      University of California, Berkeley.

 SEE ALSO
      sysconf(2).


















 Hewlett-Packard Company            - 2 -     HP-UX Release 9.0: August 1992