include/parsec/pdp_aux.h#
Документация по функциям#
function pdpl_session_dir#
Формирование имени каталога для сессии пользователя.
char * pdpl_session_dir (
const char *root,
const char *subdir,
const PDPL_T *l
)
Parameters:
rootуказатель на строку, не NULL. Корневой каталог, в котором будут располагаться остальные каталоги. Может быть пустой строкой ““, в этом случае между между root и subdir будет добавлен ‘/’.subdirуказатель на строку, не NULL. Подкаталог, в котором будут располагаться остальные каталоги. Может быть пустой строкой ““, в этом случае между между subdir и текстовым представлением l будет добавлен ‘/’.lуказатель на метку сессии.
Returns:
строку, содержащую полное имя каталога, строка должна быть освобождена вызовом free(). В случае ошибки возвращается NULL и выставляется errno.
function pdplugm_make_session_dir#
Cоздание каталога для текущей сессии пользователя
char * pdplugm_make_session_dir (
const char *root,
const char *subdir,
const char *slink,
const PDPL_T *l,
uid_t uid,
gid_t gid,
mode_t mode
)
Parameters:
rootимя корневого каталог, в котором будут располагаться остальные каталогиsubdirнеобязательный подкаталог (может быть NULL или ““). Наследует метку с корневого каталогаslinkимя символической ссылки на subdir (если subdir не указан, то dir)lуказатель на метку сессии, преобразуется в текстовый вид и создается подкаталог с таким именем, на который устанавливается данная меткаuidвладелецgidгруппыmodeрежим доступа
Returns:
строку, содержащую полное имя созданного каталога, строка должна быть освобождена вызовом free(). В случае ошибки возвращается NULL и выставляется errno;
function pdplugm_mkdir#
Безопасное создание каталога
int pdplugm_mkdir (
const char *dir,
const PDPL_T *l,
uid_t uid,
gid_t gid,
mode_t mode
)
Parameters:
dirимя создаваемого каталогаlметкаuidвладелецgidгруппыmodeрежим доступа
Returns:
0 в случае успеха, в случае ошибки возвращает -1 и выставляется errno
function pdpml_session_dir#
Формирование имени каталога для сессии пользователя. Выполняется с учетом только мандатной метки
char * pdpml_session_dir (
const char *root,
const char *subdir,
const PDPML_T *ml
)
Parameters:
rootуказатель на строку, не NULL. Коневой каталог, в котором будут располагаться остальные каталоги. Может быть пустой строкой ““, в этом случае между между root и subdir будет добавлен ‘/’subdirуказатель на строку, не NULL, подкаталог, в котором будут располагаться остальные каталоги. Может быть пустой строкой ““, в этом случае между между subdir и текстовым представлением ml будет добавлен ‘/’mlуказатель на мандатную метку сессии.
Returns:
строку, содержащую полное имя каталога, строка должна быть освобождена вызовом free(). В случае ошибки возвращается NULL и выставляется errno.