【发布时间】:2017-08-15 23:38:09
【问题描述】:
我正在改进给定的代码(不知道是谁写的)
我正在使用pcap_dump()和#include <pcap.h> 来捕获文件并将其写入磁盘。
正在写入的文件对组和其他(-rw-r--r--)也具有读取权限
有没有办法将其更改为仅用户读/写(-rw-------) 或者我必须做一个解决方法。 谢谢
【问题讨论】:
标签: c++ linux file-permissions pcap libpcap
我正在改进给定的代码(不知道是谁写的)
我正在使用pcap_dump()和#include <pcap.h> 来捕获文件并将其写入磁盘。
正在写入的文件对组和其他(-rw-r--r--)也具有读取权限
有没有办法将其更改为仅用户读/写(-rw-------) 或者我必须做一个解决方法。 谢谢
【问题讨论】:
标签: c++ linux file-permissions pcap libpcap
使用当前 umask 的权限创建新文件。 umask 指定不允许允许哪些权限,例如 umask 077 表示不允许组/其他权限,022(默认)表示不允许组/其他写入权限
您可以在运行程序之前在shell中设置它,即
umask 077
./pcap_program
你也可以在程序中这样设置:
#include <sys/types.h>
#include <sys/stat.h>
void foo() {
umask(0077);
}
注意:要使数字成为八进制数,需要开头的 0。
这些都将新文件的权限设置为 600 (= 0666 & ~0077) 或 -rw-------
【讨论】: