#include <puffs.h>struct puffs_usermount *
puffs_init(struct puffs_ops *pops, const char *mntfromname, const char *puffsname, void *private, uint32_t flags);
int
puffs_mount(struct puffs_usermount *pu, const char *dir, int mntflags, puffs_cookie_t root_cookie);
int
puffs_getselectable(struct puffs_usermount *pu);
int
puffs_setblockingmode(struct puffs_usermount *pu, int mode);
int
puffs_getstate(struct puffs_usermount *pu);
int
puffs_setstacksize(struct puffs_usermount *pu, size_t stacksize);
void
puffs_setroot(struct puffs_usermount *pu, struct puffs_node *node);
void
puffs_setrootinfo(struct puffs_usermount *pu, enum vtype vt, vsize_t vsize, dev_t rdev);
struct puffs_node *
puffs_getroot(struct puffs_usermount *pu);
void *
puffs_getspecific(struct puffs_usermount *pu);
void
puffs_setspecific(struct puffs_usermount *pu, void *private);
void
puffs_setmaxreqlen(struct puffs_usermount *pu, size_t maxreqlen);
size_t
puffs_getmaxreqlen(struct puffs_usermount *pu);
void
puffs_setfhsize(struct puffs_usermount *pu, size_t fhsize, int flags);
void
puffs_setncookiehash(struct puffs_usermount *pu, int nhashes);
void
puffs_ml_loop_fn(struct puffs_usermount *pu);
void
puffs_ml_setloopfn(struct puffs_usermount *pu, puffs_ml_loop_fn lfn);
void
puffs_ml_settimeout(struct puffs_usermount *pu, struct timespec *ts);
int
puffs_daemon(struct puffs_usermount *pu, int nochdir, int noclose);
int
puffs_mainloop(struct puffs_usermount *pu);
int
puffs_unmountonsignal(int sig, bool ignoresig);
int
puffs_dispatch_create(struct puffs_usermount *pu, struct puffs_framebuf *pb, struct puffs_cc **pccp);
int
puffs_dispatch_exec(struct puffs_cc *pcc, struct puffs_framebuf **pbp);