在 Linux 中写入命名管道的最佳、安全方式是什么?或者,如何使命名管道安全?
下面是我在 Linux 上使用 PHP 写入管道的方法:
$con = fopen("/tmp/myFIFO", "w");
fwrite($con, "UP\n");
fclose($con);
我希望让它更安全。
这就是我在 C 中创建管道的方式:
int pc;
char mode[] = "0777";
int i = strtol(mode, 0, 8);
pc = mkfifo(FIFO, 0);
if(pc < 0) {
printf("Failed in creating a pipe\n");
printf("Exiting...\n");
exit(1);
}
else {
printf("Success in Creating Pipe\n");
chmod("/tmp/myFIFO", i);
}
最佳答案
您可以使用 umask
控制您创建的文件的权限。你还有chmod
在 PHP 中也是如此。
但是,您还有posix_mkfifo
可用,这完全符合您的目的:
bool posix_mkfifo ( string $pathname , int $mode )
关于php - 在 Linux 中写入命名管道的最佳、最安全的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16052750/