pcap_dump() 仅对用户降低权限

pcap_dump() lower permission to user only

我正在努力改进给定的代码(不知道是谁写的)

我正在使用 pcap_dump()#include <pcap.h> 捕获文件并将其写入磁盘。 正在写入的文件对组和其他 (-rw-r--r--)

也具有读取权限

有没有办法将其更改为仅限用户 read/write (-rw--------) 或者我必须做一个解决方法。 谢谢

使用当前 umask 的权限创建新文件。 umask 指定哪些权限是 允许的,例如 umask 077 表示 group/other 没有权限,022(默认值)表示 group/other

没有写权限

你可以在你的程序运行之前的shell设置,即

umask 077
./pcap_program

你也可以在程序里面这样设置:

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

 void foo() {
     umask(0077);  
 }

注意:需要开头的 0 才能使数字成为八进制数。

这些都会将新文件的权限设置为 600(= 0666 和 ~0077),或 -rw-------