Commit Graph

96 Commits

Author SHA1 Message Date
pooka
6b7023f08f * support nodetofh and fhtonode callbacks
* use new signature of node_readdir
2007-04-11 21:04:51 +00:00
pooka
f7d8f11391 document the flush routines 2007-04-06 17:55:10 +00:00
pooka
6cc35b910e support page cache flushing 2007-04-06 17:49:11 +00:00
pooka
1e9c4b7026 use range invalidation op also for invalidating entire page cache of a node 2007-04-06 17:06:39 +00:00
pooka
622f8591d4 document puffs_inval_pagecache_node{,_range} 2007-04-06 16:44:01 +00:00
pooka
fa10fe8f9f implement puffs_inval_pagecache_node_range() 2007-04-06 16:38:03 +00:00
pooka
dd4643d880 Remove check against null parameter along with the XXX comment wondering
why the check was there.  CID 4408
2007-03-29 12:54:54 +00:00
pooka
406a946463 document credentials & access control methods 2007-03-22 17:38:09 +00:00
pooka
cfd6dc233f allow kernel creds in addition to superuser creds when checking for access 2007-03-22 17:15:34 +00:00
pooka
d28a42812b unify the location of *pcr in puffs_access_* 2007-03-22 16:57:27 +00:00
pooka
3a93377a23 copy ngroups * sizeof(gid_t) groups instead of just ngroups 2007-03-22 15:48:42 +00:00
pooka
c3a2affb84 * return -1 and set errno instead of returning errno directly
* introduce puffs_cred_isregular() which checks if the cred structure
  has regular uid/gid (i.e. "person" credentials and not kernel creds)
2007-03-22 15:32:22 +00:00
pooka
1d029cc056 remove variable names from header 2007-03-22 14:22:08 +00:00
pooka
0f28e7c1d1 add routiens which check against ufs semantics for permission to
chown, chmod and change a/mtime
2007-03-21 19:55:55 +00:00
pooka
1ba4b810d1 implement counterpart of vaccess() 2007-03-20 18:28:08 +00:00
pooka
a1e98c19f2 match puffs_node_access prototype with reality 2007-03-20 18:25:56 +00:00
pooka
a4143b4298 g/c unused debug variable 2007-03-20 11:28:35 +00:00
pooka
5c0f0bcf80 initial support for cacheops 2007-03-20 10:22:22 +00:00
pooka
2df275c4cd va->va_mode doesn't contain the full argument to the mknod() system call,
so introduce puffs_addvtype2mode() and use that in null.c to generate the
proper syscall argument
2007-03-16 08:14:49 +00:00
pooka
b93b025715 return errno instead of -1 if file is not present in lookup 2007-03-16 07:43:14 +00:00
pooka
ec2d43895a add puffs paper presented at AsiaBSDCon 2007 to "SEE ALSO" 2007-03-13 17:06:10 +00:00
pooka
d695eff80f Create in-memory nodes only per unique inode, not unique pathname.
Solves problem with e.g. cache coherency of hardlinked files.
2007-03-13 17:05:23 +00:00
pooka
8022394bca Until someone can sort non-priviledged mounts and kauth, force
MNT_NOSUID | MNT_NODEV for mounts with geteuid() != 0.  I'm tired
of typing them on the command line every time I test a file system.
2007-02-18 17:38:10 +00:00
pooka
b681c2611b dump return values for operations 2007-02-18 17:36:48 +00:00
pooka
29d5922025 #include <ucontext.h> 2007-02-17 23:00:16 +00:00
pooka
70247c3530 in case rootpath is "/", make dotdot lookup in "/foo" build
a path of "/", not ""
2007-02-15 21:26:50 +00:00
pooka
76fead3a3e Readlink should place the length of the link (without terminating
nul) in the length field.  Make it so.
2007-02-15 19:33:51 +00:00
pooka
09156a1e18 use puffs_path_walkcmp() instead of a homegrown comparison routine 2007-02-15 17:05:25 +00:00
pooka
7fea503eb4 Introduce puffs_path_walkcmp(), which is to be called from nodewalk
and compares the path of the node against the given pathobject.
Also make comparison method take a flag to indicate if it should
check if the second path is a true prefix of the first.

plus some namespace cleanup
2007-02-15 17:04:46 +00:00
pooka
a32e39e624 * get rid of the holy kernel-given ISDOTDOT, and instead define a
macro which does strcmp against ".." and (the untranslated)
  componentname
* make PUFFS_FLAG_BUILDPATH build paths also if dotdot is the case,
  and adapt the regular path objects to this
* make nullfs lookup readable because we can now get rid of dotdot
  processing there
2007-02-15 12:51:45 +00:00
pooka
1427bda45d generic node reclaim, which just puts a puffs_node 2007-02-15 12:51:24 +00:00
pooka
f7a084b3b0 Nm the manual puffs instead of libpuffs 2007-02-08 05:24:36 +00:00
pooka
6c42c843ee make it possible for the root path to be "/" and the next path to
be "/foo" instead of "//foo"
2007-02-06 01:46:41 +00:00
wiz
e6a160bd78 Fix spellos. 2007-01-28 07:58:05 +00:00
agc
9715dfff81 If we can't set the attributes when making the directory, use rmdir to
remove the directory, not unlink.
2007-01-27 11:49:44 +00:00
pooka
f4e2aba8ce document puffs_fs_suspend() 2007-01-26 23:55:27 +00:00
pooka
d83ed90176 add interfaces for suspending the file system 2007-01-26 23:00:33 +00:00
wiz
6d53f7319f New sentence, new line. 2007-01-20 16:49:36 +00:00
pooka
1118cadca7 document puffs_docc 2007-01-20 15:11:02 +00:00
pooka
5581d777a3 xref puffs_req 2007-01-20 15:10:38 +00:00
pooka
2fbe1b2261 document request handling routines 2007-01-20 15:09:34 +00:00
pooka
288823a738 Be consistent with the rest of the framework about the argument
order of puffs_docc and puffs_dopreq
2007-01-20 14:37:06 +00:00
pooka
84e83df1bb be consistent in naming request handlers 2007-01-20 13:52:14 +00:00
pooka
937097aa47 document puffs_getstate() and puffs_setstacksize() 2007-01-20 13:34:35 +00:00
wiz
2b5809387d Sort SEE ALSO. 2007-01-20 13:23:59 +00:00
pooka
809ae5f803 Bring the documentation slightly more into sync with the current
reality.  It's still really a far cry from proper documentation,
though.
2007-01-19 21:10:55 +00:00
pooka
c068d370f2 revoke revoke 2007-01-16 22:37:17 +00:00
pooka
05861b929d Checkpoint some more work in progress: for the benefit those file
system backends which operate purely based on paths, push out more
path management into the library and make path management more
abstract: enable a file system to define a bunch of path management
callbacks, which are used by the framework.  Management of normal
/this/is/a/path type paths is provided by the library.
2007-01-15 00:39:02 +00:00
pooka
5014a4c9c2 For directory renames we need to rename all the child nodes for
the given directory if the file system wants paths (PUFFS_FLAG_BUILDPATH).
Do this by walking the nodelist and adjusting the path prefix of
each matching node.
2007-01-11 18:18:36 +00:00
pooka
a3d07fb3e9 implement fsync 2007-01-11 17:48:21 +00:00