gpt4 book ai didi

c - 使用 c 以编程方式更改正在运行的外部进程的 uid 和 gid

转载 作者:太空宇宙 更新时间:2023-11-04 03:02:18 25 4
gpt4 key购买 nike

如何使用 c 以编程方式更改正在运行的外部进程的 uid 和 gid?

最佳答案

一个小例子,包括使用现有用户名和组名更改 uid 和 gid 的可能性:

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

// .. snip

// find user and group
struct passwd * pwd = getpwnam("new_user");
struct group * grp = getgrnam("new_group");

// not included : error checking

uid_t uid = pwd->pw_uid;
gid_t gid = grp->gr_gid;

setgid(gid);
setuid(uid);

编辑:这只适用于当前进程

关于c - 使用 c 以编程方式更改正在运行的外部进程的 uid 和 gid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10026866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com