在Linux中写入命名pipe道的最好,最安全的方法是什么?

在Linux中写入命名pipe道的最好,最安全的方法是什么? 或者,我怎样才能使命名pipe道安全?

以下是我如何使用PHP写入到Linux上的pipe道:

$con = fopen("/tmp/myFIFO", "w"); fwrite($con, "UP\n"); fclose($con); 

我希望使它更安全。

这是我如何创build在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来控制您创建的文件的权限。 你也有PHP的chmod

但是,您也有posix_mkfifo ,这完全符合您的目的:

bool posix_mkfifo (string $ pathname ,int $ mode