c++ - 以编程方式从 Unix 中的用户名获取 UID 和 GID?

标签 c++ c unix privileges system-calls

我正在尝试使用 setuid() 和 setgid() 来设置程序的相应 id 以从 root 中删除权限,但是要使用它们,我需要知道我想要更改的用户的 uid 和 gid到。

是否有系统调用来执行此操作?我不想硬编码它或从/etc/passwd 解析。

我也想以编程方式而不是使用:

id -u 用户名

任何帮助将不胜感激

最佳答案

看看getpwnam()getgrnam()功能。

关于c++ - 以编程方式从 Unix 中的用户名获取 UID 和 GID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1009254/

相关文章:

c++ - 在 TTree(cern 根)中写入/读取字符串

代码未执行

将 int 连接到字符串或在 C 中转换

linux - 求和列取决于 linux 中的另一列

c++ - 如何在 C++ 中简化多个 if-else-if 语句

c++ - 内存错误及相关

C 套接字 : recv() blocks when all data is downloaded

linux - 将base64数据转换为十进制

c++ - 从原始数据生成 BSP 树

c - 我的出列功能无法正常工作,我的错误是什么?