getkeycreatecon(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO | COLOPHON

getkeycreatecon(3)      SELinux API documentation     getkeycreatecon(3)

NAME         top

       getkeycreatecon, setkeycreatecon - get or set the SELinux
       security context used for creating a new kernel keyrings

SYNOPSIS         top

       #include <selinux/selinux.h>

       int getkeycreatecon(char **con);

       int getkeycreatecon_raw(char **con);

       int setkeycreatecon(char *context);

       int setkeycreatecon_raw(char *context);

DESCRIPTION         top

       getkeycreatecon() retrieves the context used for creating a new
       kernel keyring.  This returned context should be freed with
       freecon(3) if non-NULL.  getkeycreatecon() sets *con to NULL if
       no keycreate context has been explicitly set by the program (i.e.
       using the default policy behavior).

       setkeycreatecon() sets the context used for creating a new kernel
       keyring.  NULL can be passed to setkeycreatecon() to reset to the
       default policy behavior.  The keycreate context is automatically
       reset after the next execve(2), so a program doesn't need to
       explicitly sanitize it upon startup.

       setkeycreatecon() can be applied prior to library functions that
       internally perform an file creation, in order to set an file
       context on the objects.

       getkeycreatecon_raw() and setkeycreatecon_raw() behave
       identically to their non-raw counterparts but do not perform
       context translation.

       Note: Signal handlers that perform a setkeycreatecon() must take
       care to save, reset, and restore the keycreate context to avoid
       unexpected behavior.

       Note: Contexts are thread specific.

RETURN VALUE         top

       On error -1 is returned.  On success 0 is returned.

SEE ALSO         top

       selinux(8), freecon(3), getcon(3), getexeccon(3)

COLOPHON         top

       This page is part of the selinux (Security-Enhanced Linux user-
       space libraries and tools) project.  Information about the
       project can be found at 
       ⟨https://github.com/SELinuxProject/selinux/wiki⟩.  If you have a
       bug report for this manual page, see
       ⟨https://github.com/SELinuxProject/selinux/wiki/Contributing⟩.
       This page was obtained from the project's upstream Git repository
       ⟨https://github.com/SELinuxProject/selinux⟩ on 2023-12-22.  (At
       that time, the date of the most recent commit that was found in
       the repository was 2023-05-11.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       man-pages@man7.org

dwalsh@redhat.com           9 September 2008          getkeycreatecon(3)