> Linux Reviews > man >

seteuid

seteuid


  1. seteuid.2.man


1. seteuid.2.man

Manpage of SETEUID

SETEUID

Section: Руководство программиста Linux (2)
Updated: 2009-10-17
Index Return to Main Contents
 

ИМЯ

seteuid, setegid - устанавливает эффективный идентификатор пользователя или группы  

ОБЗОР

#include <sys/types.h>
#include <unistd.h>

int seteuid(uid_t euid);
int setegid(gid_t egid);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

seteuid(), setegid():

_BSD_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >=600
 

ОПИСАНИЕ

seteuid() устанавливает эффективный идентификатор пользователя вызывающего процесса. Непривилегированные пользовательские процессы могут менять эффективный идентификатор пользователя только на действительный, эффективный или сохранённый идентификатор пользователя.

Тоже самое справедливо при работе setegid() с "групповым" идентификатором, а не "пользовательским".  

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.  

ОШИБКИ

EPERM
Вызывающий процесс не имеет прав (Linux: не имеет мандата CAP_SETUID, если вызывает seteuid(), или CAP_SETGID, если вызывает setegid()) и euid (и, соответственно, egid) не является действительным, эффективным или сохранённым идентификатором пользователя (группы).
 

СООТВЕТСТВИЕ СТАНДАРТАМ

4.3BSD, POSIX.1-2001.  

ЗАМЕЧАНИЯ

Установка эффективного идентификатора пользователя (группы) в сохранённый идентификатор пользователя (группы) возможна с версии Linux 1.1.37 (1.1.38). В других системах надо проверять _POSIX_SAVED_IDS.

В libc4, libc5 и glibc 2.0 seteuid(euid) эквивалентен setreuid(-1, euid), и поэтому может изменить сохранённый идентификатор пользователя. В glibc2.1 и новее он эквивалентен setresuid(-1, euid, -1) и поэтому изменить сохранённый идентификатор пользователя не может. Аналогичные замечания относятся и к setegid().

Согласно POSIX.1, seteuid() (setegid()) необходимо запрещать euid (egid) равный текущему эффективному идентификатору пользователя (группе), и некоторые реализации не позволяют этого.  

СМОТРИТЕ ТАКЖЕ

geteuid(2), setresuid(2), setreuid(2), setuid(2), capabilities(7), credentials(7)


 

Index

ИМЯ
ОБЗОР
ОПИСАНИЕ
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
ОШИБКИ
СООТВЕТСТВИЕ СТАНДАРТАМ
ЗАМЕЧАНИЯ
СМОТРИТЕ ТАКЖЕ

This document was created by man2html using the manual pages.
Time: 17:41:58 GMT, May 11, 2012

SVENSKA - SVENSKA - SVENSKA - SVENSKA - ja - nl