xs_transaction
struct xs_transaction xst;
struct xs_transaction xst;
struct xs_transaction *xst, bool hierarchy)
struct xs_transaction xst;
xs_directory(struct xs_transaction t, const char *dir, const char *node,
xs_exists(struct xs_transaction t, const char *dir, const char *node)
xs_read(struct xs_transaction t, const char *dir, const char *node,
xs_write(struct xs_transaction t, const char *dir, const char *node,
xs_mkdir(struct xs_transaction t, const char *dir, const char *node)
xs_rm(struct xs_transaction t, const char *dir, const char *node)
xs_rm_tree(struct xs_transaction xbt, const char *base, const char *node)
struct xs_transaction local_xbt;
xs_transaction_start(struct xs_transaction *t)
xs_transaction_end(struct xs_transaction t, int abort)
xs_scanf(struct xs_transaction t, const char *dir, const char *node,
xs_vprintf(struct xs_transaction t,
xs_printf(struct xs_transaction t, const char *dir, const char *node,
xs_gather(struct xs_transaction t, const char *dir, ...)
xs_talkv(struct xs_transaction t, enum xsd_sockmsg_type request_type,
xs_single(struct xs_transaction t, enum xsd_sockmsg_type request_type,
struct xs_transaction handle;
struct xs_transaction xst;
int xs_directory(struct xs_transaction t, const char *dir,
int xs_exists(struct xs_transaction t, const char *dir, const char *node);
int xs_read(struct xs_transaction t, const char *dir,
int xs_write(struct xs_transaction t, const char *dir,
int xs_mkdir(struct xs_transaction t, const char *dir,
int xs_rm(struct xs_transaction t, const char *dir, const char *node);
int xs_rm_tree(struct xs_transaction t, const char *dir,
int xs_transaction_start(struct xs_transaction *t);
int xs_transaction_end(struct xs_transaction t, int abort);
int xs_scanf(struct xs_transaction t,
int xs_printf(struct xs_transaction t, const char *dir,
int xs_vprintf(struct xs_transaction t, const char *dir,
int xs_gather(struct xs_transaction t, const char *dir, ...);
#define XST_NIL ((struct xs_transaction) { 0 })