Документация по LinuxLinuxDoc.Ru 🔍

capget, capset - функции, устанавливающие/получающие возможности процесса

НАЗВАНИЕ
capget, capset - функции, устанавливающие/получающие
возможности процесса

СИНТАКСИС

#undef _POSIX_SOURCE
#include

int capget(cap_user_header_t header, cap_user_data_t
data);

int capset(cap_user_header_t header, const cap_user_data_t
data);

ОПИСАНИЕ
В версии Linux 2.2 возможности пользователя root
разделены. Каждый процесс имеет несколько возможностей,
которые предопределяют остальные. Процесс наследует
возможности, которые передаются через execve(2) и которые
он может передать своему дочернему процессу.

Эти две функции являются непосредственным интерфейсом ядра
для установления и получения возможностей процесса. Эти
системные вызовы работают не только с Linux: ядро API
может использовать и изменять эти функции (в частности, в
формате типа cap_user_*_t) в каждой последующей его
версии.

Интерфейсы cap_set_proc(3) и cap_get_proc(3) являются
совместимыми с другими системами; используйте их по
возможности в приложениях. Если Вы предпочитаете работать
с расширениями Linux в приложениях, то для этого
существуют другие интерфейсы: capsetp(3) и capgetp(3).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При удачном исполнении возвращаемое значение равно нулю.
При ошибке оно равно -1, а errno принимает соответствующее
значение.

КОДЫ ОШИБОК
EINVAL Один из аргументов был неправильным.

EPERM Была попытка добавить возможность в разрешенный
набор, или добавить возможность, не являющуюся
разрешенной, в действующие или наследуемые наборы.

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
Переносной интерфейс для запроса возможностей и
установления функций предоставлен библиотекой libcap,
которую можно отыскать по адресу:
ftp://linux.kernel.org/pub/linux/libs/security/linux-privs
Читать новости Linux в Telegram
Linux - capget, capset - функции, устанавливающие/получающие возможности процесса
Мы в соцсетях ✉