wha*_*hat 7 c unix permissions named-pipes
我的C程序中的以下行应提供All/Group/Owner读写权限
mkfifo("/tmp/dumbPipe", 0666)
Run Code Online (Sandbox Code Playgroud)
但是一旦我执行了代码并检查了写入位的权限,我就会结束
prw-r--r--
Run Code Online (Sandbox Code Playgroud)
所有者是相同的,这是一个问题,因为我在tmp目录中创建管道?当我从cmd行运行chmod 666时,所有权限都被正确设置.
这是一篇没有评论的帖子,只是引用手册.Brievity等
从男人3 mkfifo引用:
它以通常的方式由进程的umask修改:创建的文件的权限是(mode&~umask).
从男人2 umask引用
进程umask的典型默认值是S_IWGRP | S_IWOTH(八进制022).在通常情况下,open(2)的mode参数指定为:
Run Code Online (Sandbox Code Playgroud)S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH (octal 0666) when creating a new file, the permissions on the resulting file will be: S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH (because 0666 & ~022 = 0644; i.e., rw-r--r--).
| 归档时间: |
|
| 查看次数: |
12344 次 |
| 最近记录: |