firebreath npplugin中的文件写入权限被拒绝

时间:2012-06-20 06:59:00

标签: c++ c linux firebreath

源代码已在Fedora 15,16和Ubuntu 10,11,12中测试过,没问题。

但是在Fedora 17中,文件写入功能不起作用。

1)

int fd;
if ( 0 < ( fd = open("/home/test/temp/opentest.html", O_CREAT | O_EXCL, 0777))) {
    write(fd, "test", strlen("test"));
    close(fd);
    return "Success";
} else {
    return "Error";
}

返回值:错误

2)

FILE *pFile;
pFile = fopen("/home/test/temp/opentest.html", "w+");
if (pFile == NULL) {
    return "Pointer is NULL";
} else {
    fputs("fopen test", pFile);
    fclose(pFile);
    return "Success";
}

返回值:“指针为空”

我猜目录的权限会产生错误并设置777权限。 但没有任何改变。

相同的代码在普通的C程序中有效。

为什么它不能用于firebreath npPlugin?

许可有什么不同吗?

1 个答案:

答案 0 :(得分:0)

最有可能的情况是,该目录不存在,或者您无权写入该目录。

这个命令有用吗? echo 123 > /home/test/temp/opentest.html