Ejemplo n.º 1
0
static int iconv_access(const char *path, int mask)
{
	struct iconv *ic = iconv_get();
	char *newpath;
	int err = iconv_convpath(ic, path, &newpath, 0);
	if (!err) {
		err = fuse_fs_access(ic->next, newpath, mask);
		free(newpath);
	}
	return err;
}
Ejemplo n.º 2
0
static int subdir_access(const char *path, int mask)
{
	struct subdir *d = subdir_get();
	char *newpath;
	int err = subdir_addpath(d, path, &newpath);
	if (!err) {
		err = fuse_fs_access(d->next, newpath, mask);
		free(newpath);
	}
	return err;
}
Ejemplo n.º 3
0
static int
volicon_access(const char *path, int mask)
{
    if (volicon_is_a_magic_file(path)) {
        if ((mask & W_OK) || (mask & X_OK)) {
            return -EACCES;
        }

        return 0;
    }

    return fuse_fs_access(volicon_get()->next, path, mask);
}