get_ordered_context_list_with_level(3) — Linux manual page


get_ordered_context_list(3)        SELinux       get_ordered_context_list(3)

NAME         top

       get_ordered_context_list,        get_ordered_context_list_with_level,
       get_default_context, get_default_context_with_level, get_default_con‐
       text_with_role,  get_default_context_with_rolelevel,  query_user_con‐
       text, manual_user_enter_context, get_default_role - determine SELinux
       context(s) for user sessions

SYNOPSIS         top

       #include <selinux/selinux.h>
       #include <selinux/get_context_list.h>

       int get_ordered_context_list(const char *user, char *fromcon, char

       int get_ordered_context_list_with_level(const char *user, const char
       *level, char *fromcon, char ***list);

       int get_default_context(const char *user, char *fromcon, char

       int get_default_context_with_level(const char *user, const char
       *level, char *fromcon, char **newcon);

       int get_default_context_with_role(const char *user, const char *role,
       char *fromcon, char **newcon);

       int get_default_context_with_rolelevel(const char *user, const char
       *role, const char *level, char *fromcon, char **newcon);

       int query_user_context(char **list, char **newcon);

       int manual_user_enter_context(const char *user, char **newcon);

       int get_default_type(const char *role, char **type);

DESCRIPTION         top

       This family of functions can be used to obtain either a prioritized
       list of all reachable security contexts for a given SELinux user or a
       single default (highest priority) context for a given SELinux user
       for use by login-like programs.  These functions takes a SELinux user
       identity that must be defined in the SELinux policy as their input,
       not a Linux username.  Most callers should typically first call
       getseuserbyname(3) to look up the SELinux user identity and level for
       a given Linux username and then invoke one of
       get_ordered_context_list_with_level() or
       get_default_context_with_level() with the returned SELinux user and
       level as inputs.

       get_ordered_context_list() obtains the list of contexts for the
       specified SELinux user identity that are reachable from the specified
       fromcon context based on the global
       /etc/selinux/{SELINUXTYPE}/contexts/default_contexts file and the
       per-user /etc/selinux/{SELINUXTYPE}/contexts/users/<username> file if
       it exists.  The fromcon parameter may be NULL to indicate that the
       current context should be used.  The function returns the number of
       contexts in the list, or -1 upon errors.  The list must be freed
       using the freeconary(3) function.

       get_ordered_context_list_with_level() invokes the
       get_ordered_context_list() function and applies the specified level.

       get_default_context() is the same as get_ordered_context_list() but
       only returns a single context which has to be freed with freecon(3).

       get_default_context_with_level() invokes the get_default_context()
       function and applies the specified level.

       get_default_context_with_role() is the same as get_default_context()
       but only returns a context with the specified role, returning -1 if
       no such context is reachable for the user.

       get_default_context_with_rolelevel() invokes the
       get_default_context_with_role() function and applies the specified

       query_user_context() takes a list of contexts, queries the user via
       stdin/stdout as to which context they want, and returns a new context
       as selected by the user (which has to be freed with freecon(3)).

       manual_user_enter_context() allows the user to manually enter a
       context as a fallback if a list of authorized contexts could not be
       obtained. Caller must free via freecon(3).

       get_default_type() Get the default type (domain) for role and set
       type to refer to it, which has to be freed with free.

RETURN VALUE         top

       get_ordered_context_list() and get_ordered_context_list_with_level()
       return the number of contexts in the list upon success or -1 upon
       errors.  The other functions return 0 for success or -1 for errors.

SEE ALSO         top

       selinux(8), freeconary(3), freecon(3), security_compute_av(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 ⟨⟩.  If you
       have a bug report for this manual page, see
       ⟨⟩.  This
       page was obtained from the project's upstream Git repository
       ⟨⟩ on 2020-09-18.  (At that
       time, the date of the most recent commit that was found in the repos‐
       itory was 2020-09-17.)  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           1 January 2004    get_ordered_context_list(3)

Pages that refer to this page: getseuserbyname(3)default_contexts(5)failsafe_context(5)user_contexts(5)