这些函数便于使用其数值映射权限名称。priv_str_to_set() 是此系列中的典型函数。priv_str_to_set() 具有以下语法:
priv_set_t *priv_str_to_set(const char *buf, const char *set, \ const char **endptr);
priv_str_to_set() 采用 buf 中指定的权限名字符串。priv_str_to_set() 返回可以与四个权限集之一组合的一组权限值。**endptr 可用于调试解析错误。请注意,可以在 buf 中包括以下关键字:
“all” 指示所有已定义的权限。使用 “all,!priv_name,...” 可以指定除指示权限以外的所有权限。
使用 “priv_set, !priv_name,...” 的构造将从指定的权限集中删除指定的权限。如果事先没有指定集,请不要使用 “!priv_name,...”,因为如果没有从中删除权限的权限集,该构造将从空的权限集中删除指定的权限,并有效指示无权限。
“none” 指示无权限。
“basic” 表示执行登录标准 UNIX 操作系统的所有用户一般都可以执行的操作所需的权限集。