getppriv(2) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

getppriv(2)

getppriv(2)                      System Calls                      getppriv(2)

NAME
       getppriv, setppriv - get or set a privilege set

SYNOPSIS
       #include <priv.h>

       int getppriv(priv_ptype_t which, priv_set_t *set);


       int setppriv(priv_op_t op, priv_ptype_t which, priv_set_t *set);

DESCRIPTION
       The  getppriv() function returns the process privilege set specified by
       which in the set pointed to by set. The memory for set  must  first  be
       allocated  with  priv_allocset()  and  later freed with priv_freeset().
       Both functions are documented on the priv_addset(3C) manual page.


       The value of which must be  one  of  PRIV_EFFECTIVE,  PRIV_INHERITABLE,
       PRIV_PERMITTED,  or PRIV_LIMIT, corresponding to the privilege sets de‐
       fined in the privileges(7) manual page.


       The setppriv() function sets or changes the process privilege set.  The
       op argument specifies the operation and can be one of PRIV_OFF, PRIV_ON
       or  PRIV_SET.  The  which  argument specifies the name of the privilege
       set. The set argument specifies the set.


       If op is PRIV_OFF, the privileges in set are removed from  the  process
       privilege set specified by which. There are no restrictions on removing
       privileges from process privileges sets, but the following apply:

           o      Privileges  removed from PRIV_PERMITTED are silently removed
                  from PRIV_EFFECTIVE.


           o      If privileges are removed from PRIV_LIMIT, they are not  re‐
                  moved  from  the  other  sets  until  one  of the exec(2) or
                  spawn(2) functions has successfully completed.



       If op is PRIV_ON, the privileges in set are added to the process privi‐
       lege set specified by which. The following operations are permitted:

           o      Privileges in PRIV_PERMITTED can be added to  PRIV_EFFECTIVE
                  without restriction.


           o      Privileges  in PRIV_PERMITTED can be added to PRIV_INHERITA‐
                  BLE without restriction.


           o      All operations that attempt to add privileges that  are  al‐
                  ready present are permitted.



       If op is PRIV_SET, the privileges in set replace completely the process
       privilege  set  specified by which. PRIV_SET is implemented in terms of
       PRIV_OFF and PRIV_ON. The same restrictions apply.

RETURN VALUES
       Upon successful completion, 0 is returned. Otherwise,  -1  is  returned
       and errno is set to indicate the error.

ERRORS
       The getppriv() and setppriv() functions will fail if:

       EINVAL    The value of op or which is out of range.


       EFAULT    The set argument points to an illegal address.



       The setppriv() function will fail if:

       EPERM    The  application  attempted to add privileges to PRIV_LIMIT or
                PRIV_PERMITTED, or the application attempted to add privileges
                to  PRIV_INHERITABLE  or  PRIV_EFFECTIVE  which  were  not  in
                PRIV_PERMITTED.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe


SEE ALSO
       priv_addset(3C), attributes(7), privileges(7)

HISTORY
       The getppriv() and setppriv() functions were added to  Solaris  in  So‐
       laris 10 3/05.

Oracle Solaris 11.4               30 Jan 2023                      getppriv(2)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3