+2002-01-09 Miklos Szeredi <mszeredi@inf.bme.hu>
+
+ * Revaidate all path components not just the last, this means a
+ very small performance penalty for being more up-to-date.
+
+2002-01-08 Miklos Szeredi <mszeredi@inf.bme.hu>
+
+ * Update and fix python interface
+
2002-01-07 Mark Glines <mark@glines.org>
* Added statfs() support to kernel, lib, examples, and perl!
return 0;
/* Must not revaidate too soon, since kernel revalidate logic is
broken, and could return ENOENT */
- else if(!(flags & LOOKUP_CONTINUE) &&
- time_after(jiffies, entry->d_time + FUSE_REVALIDATE_TIME))
+ else if(time_after(jiffies, entry->d_time + FUSE_REVALIDATE_TIME))
return 0;
else
return 1;
free(path);
}
link[PATH_MAX] = '\0';
- send_reply(f, in, res, link, !res ? strlen(link) : 0);
+ send_reply(f, in, res, link, res == 0 ? strlen(link) : 0);
}
static void do_getdir(struct fuse *f, struct fuse_in_header *in)
res = -ENOSYS;
if(f->op.statfs)
res = f->op.statfs(&sbuf);
- if(!res)
+ if(res == 0)
convert_statfs(&sbuf,&arg.st);
+
send_reply(f, in, res, &arg, sizeof(arg));
}
_fusemodule.so: _fusemodule.c
- gcc -g3 -I/usr/include/python1.5 _fusemodule.c -Wl,-shared -o _fusemodule.so -Wimplicit -lfuse && python -c 'import _fuse'
+ gcc -g3 -I/usr/include/python2.1 _fusemodule.c -Wl,-shared -o _fusemodule.so -Wimplicit -lfuse && python -c 'import _fuse'
clean:
rm -f _fusemodule.so *.pyc *.pyo
"mkdir", "unlink", "rmdir", "symlink", "rename",
"link", "chmod", "chown", "truncate", "utime",
"open", "read", "write", "flags", "multithreaded", NULL};
-
+
+ memset(&op, 0, sizeof(op));
+
if (!PyArg_ParseTupleAndKeywords(args, kw, "|OOOOOOOOOOOOOOOOOii",
kwlist, &getattr_cb, &readlink_cb, &getdir_cb, &mknod_cb,
&mkdir_cb, &unlink_cb, &rmdir_cb, &symlink_cb, &rename_cb,
DO_ONE_ATTR(read);
DO_ONE_ATTR(write);
- fuse = fuse_new(0, flags);
- fuse_set_operations(fuse, &op);
+ fuse = fuse_new(0, flags, &op);
if(multithreaded)
pyfuse_loop_mt(fuse);
else