| PUFFS_NODE(3) | Library Functions Manual | PUFFS_NODE(3) |
puffs_node — puffs
node routines
puffs Convenience Library (libpuffs, -lpuffs)
#include
<puffs.h>
struct puffs_node *
puffs_pn_new(struct
puffs_usermount *pu, void
*priv);
void *
puffs_nodewalk_fn(struct
puffs_usermount *pu, struct puffs_node *pn,
void *arg);
void *
puffs_pn_nodewalk(struct
puffs_usermount *pu, puffs_nodewalk_fn nwfn,
void *arg);
void
puffs_pn_remove(struct
puffs_node *pn);
void
puffs_pn_put(struct
puffs_node *pn);
puffs_pn_new(pu,
priv)puffs_nodewalk_fn(pu,
pn, arg)puffs_nodewalk().
The list of nodes is iterated in the argument pn and
the argument arg is the argument given to
puffs_nodewalk().puffs_nodewalk(pu,
nwfn, arg)nwfn()
for them. The walk is aborted if
puffs_nodewalk_fn() returns a value which is not
NULL. This value is also returned this function.
In case the whole set of nodes is traversed, NULL
is returned. This function is useful for example in handling the
puffs_fs_sync()
callback, when cached data for every node should be flushed to stable
storage.puffs_pn_remove(pn)puffs_node_remove()
and
puffs_node_rmdir().puffs_pn_put(pn)puffs_node_reclaim().| June 24, 2007 | NetBSD 11.0 |