version 1.64, 2007/12/08 19:57:03 |
version 1.65, 2008/01/28 21:06:36 |
|
|
#define PUFFS_TYPELEN (_VFS_NAMELEN - (sizeof(PUFFS_TYPEPREFIX)+1)) |
#define PUFFS_TYPELEN (_VFS_NAMELEN - (sizeof(PUFFS_TYPEPREFIX)+1)) |
#define PUFFS_NAMELEN (_VFS_MNAMELEN-1) |
#define PUFFS_NAMELEN (_VFS_MNAMELEN-1) |
|
|
|
/* |
|
* Just a weak typedef for code clarity. Additionally, we have a |
|
* more appropriate vanity type for puffs: |
|
* <uep> it should be croissant, not cookie. |
|
*/ |
|
typedef void *puffs_cookie_t; |
|
typedef puffs_cookie_t puffs_croissant_t; |
|
|
struct puffs_kargs { |
struct puffs_kargs { |
unsigned int pa_vers; |
unsigned int pa_vers; |
int pa_fd; |
int pa_fd; |
Line 122 struct puffs_kargs { |
|
Line 130 struct puffs_kargs { |
|
size_t pa_fhsize; |
size_t pa_fhsize; |
int pa_fhflags; |
int pa_fhflags; |
|
|
void *pa_root_cookie; |
puffs_cookie_t pa_root_cookie; |
enum vtype pa_root_vtype; |
enum vtype pa_root_vtype; |
voff_t pa_root_vsize; |
voff_t pa_root_vsize; |
dev_t pa_root_rdev; |
dev_t pa_root_rdev; |
Line 156 struct puffs_req { |
|
Line 164 struct puffs_req { |
|
struct putter_hdr preq_pth; |
struct putter_hdr preq_pth; |
|
|
uint64_t preq_id; |
uint64_t preq_id; |
void *preq_cookie; |
puffs_cookie_t preq_cookie; |
|
|
uint16_t preq_opclass; |
uint16_t preq_opclass; |
uint16_t preq_optype; |
uint16_t preq_optype; |
Line 200 struct puffs_req { |
|
Line 208 struct puffs_req { |
|
struct puffs_flush { |
struct puffs_flush { |
struct puffs_req pf_req; |
struct puffs_req pf_req; |
|
|
void *pf_cookie; |
puffs_cookie_t pf_cookie; |
|
|
int pf_op; |
int pf_op; |
off_t pf_start; |
off_t pf_start; |
Line 328 struct puffs_vnmsg_lookup { |
|
Line 336 struct puffs_vnmsg_lookup { |
|
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
void *pvnr_newnode; /* IN */ |
puffs_cookie_t pvnr_newnode; /* IN */ |
enum vtype pvnr_vtype; /* IN */ |
enum vtype pvnr_vtype; /* IN */ |
voff_t pvnr_size; /* IN */ |
voff_t pvnr_size; /* IN */ |
dev_t pvnr_rdev; /* IN */ |
dev_t pvnr_rdev; /* IN */ |
Line 341 struct puffs_vnmsg_create { |
|
Line 349 struct puffs_vnmsg_create { |
|
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
struct vattr pvnr_va; /* OUT */ |
struct vattr pvnr_va; /* OUT */ |
void *pvnr_newnode; /* IN */ |
puffs_cookie_t pvnr_newnode; /* IN */ |
}; |
}; |
|
|
struct puffs_vnmsg_mknod { |
struct puffs_vnmsg_mknod { |
Line 351 struct puffs_vnmsg_mknod { |
|
Line 359 struct puffs_vnmsg_mknod { |
|
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
struct vattr pvnr_va; /* OUT */ |
struct vattr pvnr_va; /* OUT */ |
void *pvnr_newnode; /* IN */ |
puffs_cookie_t pvnr_newnode; /* IN */ |
}; |
}; |
|
|
struct puffs_vnmsg_open { |
struct puffs_vnmsg_open { |
Line 441 struct puffs_vnmsg_remove { |
|
Line 449 struct puffs_vnmsg_remove { |
|
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
void *pvnr_cookie_targ; /* OUT */ |
puffs_cookie_t pvnr_cookie_targ; /* OUT */ |
}; |
}; |
|
|
struct puffs_vnmsg_mkdir { |
struct puffs_vnmsg_mkdir { |
Line 451 struct puffs_vnmsg_mkdir { |
|
Line 459 struct puffs_vnmsg_mkdir { |
|
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
struct vattr pvnr_va; /* OUT */ |
struct vattr pvnr_va; /* OUT */ |
void *pvnr_newnode; /* IN */ |
puffs_cookie_t pvnr_newnode; /* IN */ |
}; |
}; |
|
|
struct puffs_vnmsg_rmdir { |
struct puffs_vnmsg_rmdir { |
Line 460 struct puffs_vnmsg_rmdir { |
|
Line 468 struct puffs_vnmsg_rmdir { |
|
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
void *pvnr_cookie_targ; /* OUT */ |
puffs_cookie_t pvnr_cookie_targ; /* OUT */ |
}; |
}; |
|
|
struct puffs_vnmsg_link { |
struct puffs_vnmsg_link { |
Line 469 struct puffs_vnmsg_link { |
|
Line 477 struct puffs_vnmsg_link { |
|
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcn pvnr_cn; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
void *pvnr_cookie_targ; /* OUT */ |
puffs_cookie_t pvnr_cookie_targ; /* OUT */ |
}; |
}; |
|
|
struct puffs_vnmsg_rename { |
struct puffs_vnmsg_rename { |
Line 480 struct puffs_vnmsg_rename { |
|
Line 488 struct puffs_vnmsg_rename { |
|
struct puffs_kcn pvnr_cn_targ; /* OUT */ |
struct puffs_kcn pvnr_cn_targ; /* OUT */ |
struct puffs_kcred pvnr_cn_targ_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_targ_cred; /* OUT */ |
|
|
void *pvnr_cookie_src; /* OUT */ |
puffs_cookie_t pvnr_cookie_src; /* OUT */ |
void *pvnr_cookie_targ; /* OUT */ |
puffs_cookie_t pvnr_cookie_targ; /* OUT */ |
void *pvnr_cookie_targdir; /* OUT */ |
puffs_cookie_t pvnr_cookie_targdir; /* OUT */ |
}; |
}; |
|
|
struct puffs_vnmsg_symlink { |
struct puffs_vnmsg_symlink { |
Line 492 struct puffs_vnmsg_symlink { |
|
Line 500 struct puffs_vnmsg_symlink { |
|
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
struct puffs_kcred pvnr_cn_cred; /* OUT */ |
|
|
struct vattr pvnr_va; /* OUT */ |
struct vattr pvnr_va; /* OUT */ |
void *pvnr_newnode; /* IN */ |
puffs_cookie_t pvnr_newnode; /* IN */ |
char pvnr_link[MAXPATHLEN]; /* OUT */ |
char pvnr_link[MAXPATHLEN]; /* OUT */ |
}; |
}; |
|
|