getresuid(2)

НАИМЕНОВАНИЕ
getresuid, getresgid - получение действительного, эффективного и сохранённого идентификатора пользователя или группы

БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)

ОБЗОР
#define _GNU_SOURCE         /* см. feature_test_macros(7) */
#include <unistd.h>

int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid);
int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid);

ОПИСАНИЕ
getresuid() возвращает действительный (real), эффективный (effective) и сохранённый (saved) set-user-ID идентификатор пользователя вызывающего процесса в аргументах ruid, euid и suid, соответственно. getresgid() выполняет аналогичную задачу для идентификаторов группы процесса.

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

ОШИБКИ

EFAULT
    В одном из аргументов задан адрес вне области адресного пространства вызывающей программы.

СТАНДАРТЫ
None. These calls also appear on HP-UX and some of the BSDs.

ИСТОРИЯ
Linux 2.1.44, glibc 2.3.2.

Первоначальные версии системных вызовов getresuid() и getresgid() в Linux поддерживали только 16-битные идентификаторы пользователей и групп. Позднее в Linux 2.4 были добавлены вызовы getresuid32() и getresgid32(), поддерживающие 32-битные идентификаторы. В glibc обёрточные функции getresuid() и getresgid() работают одинаково вне зависимости от версий ядра.

СМОТРИТЕ ТАКЖЕ
getuid(2), setresuid(2), setreuid(2), setuid(2), credentials(7)

ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков (<debian-l10n-russian@lists.debian.org>).