OpenSCADAWiki: Roman Savochenko/C Short All/part2/part14 ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 

2.14 Функции управления безопасностью

chmod, fchmod (POSIX) <sys/types.h, sys/stat.h>
int chmod(const char *path, mode_t mode);
int fchmod(int fildes, mode_t mode);
Изменяют режим доступа к файлу, заданному параметром <path> или описателем файла <fildes>.


chown, fchown, lchown (POSIX) <sys/types.h, unistd.h>
int chown(const char *path, uid_t owner, gid_t group);
int fchown(int fd, uid_t owner, gid_t group);
int lchown(const char *path, uid_t owner, gid_t group);
Смена владельца файла, или ссылки (lchown) на <owner> и группу <group>.


getgrnam, getgrnam_r (POSIX) <sys/types.h, pwd.h>
struct group *getgrnam(const char *name);
int getgrnam_r(const char *name, struct group *gbuf, char *buf, size_t buflen, struct group **gbufp);
Запрос записи про группу пользователей по её имени.


getgrgid, getgrgid_r (POSIX) <sys/types.h, pwd.h>
struct group *getgrgid(gid_t gid);
int getgrgid_r(gid_t gid, struct group *gbuf, char *buf, size_t buflen, struct group **gbufp);
Запрос записи про группу пользователей по её идентификатору.


getlogin, getlogin_r (POSIX) <unistd.h>
char *getlogin(void);
int getlogin_r(char *buf, size_t bufsize);
Получение имени пользователя управляющим терминалом (текущего пользователя).


getpwnam, getpwnam_r (POSIX) <sys/types.h, pwd.h>
struct passwd *getpwnam(const char *name);
int getpwnam_r(const char *name, struct passwd *pwbuf, char *buf, size_t buflen, struct passwd **pwbufp);
Запрос записи про пользователя по его имени.


getpwuid, getpwuid_r (POSIX) <sys/types.h, pwd.h>
struct passwd *getpwuid(uid_t uid);
int getpwuid_r(uid_t uid, struct passwd *pwbuf, char *buf, size_t buflen, struct passwd **pwbufp);
Запрос записи про пользователя по его идентификатору.


getuid, geteuid (POSIX) <unistd.h, sys/types.h>
uid_t getuid(void);
uid_t geteuid(void);
Возвращает идентификатор действительного/эффективного пользователя текущего процесса.


getgid, getegid (POSIX) <unistd.h, sys/types.h>
gid_t getgid(void);
gid_t getegid(void);
Возвращает идентификатор действительной/эффективной группы текущего процесса.


setreuid, setregid (BSD) <sys/types.h, unistd.h>
int setreuid(uid_t ruid, uid_t euid);
int setregid(gid_t rgid, gid_t egid);
Устанавливает действительный и действующий идентификатор пользователя/группы текущего процесса


setgid (SVID) <sys/types.h, unistd.h>
int setgid(gid_t gid);
Устанавливает идентификатор эффективной группы текущего процесса.


setuid (POSIX) <sys/types.h, unistd.h>
int setuid(uid_t uid);
Устанавливает фактический идентификатор владельца текущего процесса.


 
Files[Hide files/form]
There is no comment on this page. [Display comments/form]