NAME | SYNOPSIS | DESCRIPTION | ATTRIBUTES | RETURN VALUES | ERRORS | NOTES | SEE ALSO
#include <tsol/priv.h>priv_t str_to_priv(const char *priv_name);
priv_to_str() returns a pointer to the statically allocated, null-terminated privilege name specified by priv_id. If priv_id is an undefined privilege ID, the integer
ordinal of priv_id is returned. If priv_id is greater than TSOL_MAX_PRIV
, the maximum allowable privilege ID, a NULL
is returned.
str_to_priv() returns the numeric privilege ID specified by the null-terminated privilege name priv_name. Privilege names can be specified in upper or lower case. An integer ordinal in the string is also acceptable.
priv_set_to_str() appends the name of each privilege in priv_set to a string to which the user-supplied buffer of length buflen points. Privilege names are separated by the separator character. Integer ordinals name the undefined privileges found in the privilege set. String none identifies an empty privilege set; and all, a full privilege set. Privilege names in the string are sorted in alphabetical order by localized sort.
Based on the token separators (separators), str_to_priv_set() breaks the priv_names string into tokens to be translated into a privilege set. Token none is translated to an empty privilege set; token all, to a full privilege set. The presence of token none overrides whatever precedes it. For example, the string file_mac_read,file_mac_write,none,proc_nofloat produces the same result as proc_nofloat alone. The constructed privilege set is stored in the priv_set_t buffer to which priv_set points.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Availability | SUNWtsu |
MT-Level | MT-Safe |
Returns a pointer to the statically allocated, null-terminated privilege description text specified by priv_id.
Returns a pointer to the translated privilege name string. The function returns NULL and sets errno on failure.
Returns the numeric privilege ID. The function returns -1 and sets errno on failure.
Returns a pointer to the translated privilege names string. If the passed-in buflen is too small to hold the string, this routine stores the required
buffer size into buflen and returns NULL. The function returns NULL and sets errno on failure. This function returns -1
if the string cannot be translated or if an integer ordinal in the string is greater than TSOL_MAX_PRIV
.
Returns NULL on success. If bad privilege names appear in the priv_names string, the function returns a pointer to the first privilege name that is not recognizable.
priv_to_str() may fail for this reason:
The specified priv_id is greater than TSOL_MAX_PRIV
.
priv_set_to_str() may fail for this reason:
The specified priv_set is an invalid address.
str_to_priv() may fail for one of these reasons:
The specified priv_name does not match any of the defined privilege names.
The specified priv_name is an invalid address.
To use these routines, the program must be loaded with the Trusted Solaris library libtsol or libtsol.so.
NAME | SYNOPSIS | DESCRIPTION | ATTRIBUTES | RETURN VALUES | ERRORS | NOTES | SEE ALSO