seteuid.c

来自「ucLinux is a very good embeded sytem. Mo」· C语言 代码 · 共 29 行

C
29
字号
#define _GNU_SOURCE#include <unistd.h>#include <stdio.h>#include <errno.h>#include <pwd.h>#include <sys/types.h>#include <sys/syscall.h>int seteuid(uid_t uid){    int result;    if (uid == (uid_t) ~0)    {	__set_errno (EINVAL);	return -1;    }#ifdef __NR_setresuid    result = setresuid(-1, uid, -1);    if (result == -1 && errno == ENOSYS)	/* Will also set the saved user ID if euid != uid,	 * making it impossible to switch back...*/#endif	result = setreuid(-1, uid);    return result;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?