HPUX privgrp[4]






 privgrp(4)                                                       privgrp(4)





 NAME
      privgrp - format of privileged values

 SYNOPSIS
      #include <sys/privgrp.h>

 DESCRIPTION
      setprivgrp() sets a mask of privileges, and getprivgrp() returns an
      array of structures giving privileged group assignments on a per-
      group-ID basis (see setprivgrp(2) and getprivgrp(2)).  <privgrp.h>
      contains the constants and structures needed to deal with these system
      calls, and contains:

           /*
            * Privileged group definitions --
            * the numeric values may vary between implementations.
            */
           #define PRIV_RTPRIO             1
           #define PRIV_MLOCK              2
           #define PRIV_CHOWN              3
           #define PRIV_LOCKRDONLY         4
           #define PRIV_SETRUGID           5

           /* Maximum number of privileged groups in system */
           #define PRIV_MAXGRPS           32

           /*
            .C "* Size of the privilege mask,"
            .C "* based on largest numbered privilege"
            .C "*/"
           #define PRIV_MASKSIZ            1

           /*
            * Structure defining the privilege mask
            */
           struct privgrp_map {
               int            priv_groupno;
               unsigned int   priv_mask[PRIV_MASKSIZ];
           };

      Privileges are as follows:

           PRIV_RTPRIO              Allows access to the rtprio() system
                                    call (see rtprio(2)).
           PRIV_MLOCK               Allows access to the plock() system call
                                    (see plock(2)).
           PRIV_CHOWN               Allows access to the chown() system
                                    calls (see chown(2)).
           PRIV_LOCKRDONLY          Permits the use of the lockf() system
                                    call for setting locks on files open for
                                    reading only (see lockf(2)).



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






 privgrp(4)                                                       privgrp(4)





           PRIV_SETRUGID            Permits the use of the setuid() and
                                    setgid() system calls for changing
                                    respectively the real user ID and real
                                    group ID of a process (see setuid(2) and
                                    setgid(2)).

      Privileges are described in a multi-word mask.  The value of the
      #define for each privilege is interpreted as a bit index (counting
      from 1).  Thus a group-id can have several different privileges
      associated with it by having different bits ORed into the mask.

      The system is configured with a specified maximum number of groups
      with special privileges.  PRIV_MAXGRPS defines this maximum.  Of this
      maximum, one is reserved for global privileges (granted to all
      processes), and the remainder can be assigned to actual group-ids.

      PRIV_MASKSIZ defines the size of the multi-word mask used in defining
      privileges associated with a group-ID.

      Privileges are returned to the user from the getprivgrp() system call
      in an array of structures of type struct privgrp_map.  The structure
      associates a multi-word mask with a group-ID.

 SEE ALSO
      getprivgrp(2).





























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