33 int aelem, jelem, attr;
138 while (list != NULL) {
data structures and prototypes for the session manager
#define NAD_CDATA_L(N, E)
const char * jid_user(jid_t jid)
expand and return the user
const char * jid_full(jid_t jid)
expand and return the full
jid_t jid_new(const char *id, int len)
make a new jid
int nad_find_elem(nad_t nad, int elem, int ns, const char *name, int depth)
locate the next elem at a given depth with an optional matching name
config_t config
config context
int xhash_iter_next(xht h)
int jid_search(jid_t list, jid_t jid)
util to search through jids
session manager global context
void jid_free(jid_t jid)
free a jid
int aci_check(xht aci, const char *type, const char *name)
see if a username is in an acl
void xhash_put(xht h, const char *key, void *val)
int xhash_iter_get(xht h, const char **key, int *keylen, void **val)
jid_t jid_append(jid_t list, jid_t jid)
make a copy of jid, link into list (avoiding dups)
int xhash_iter_first(xht h)
iteration
pool_t xhash_pool(xht h)
get our pool
char * pstrdup(pool_t p, const char *src)
XXX efficient: move this to const char * and then loop throug the existing heaps to see if src is wit...
jid_t jid_dup(jid_t jid)
duplicate a jid
void * xhash_get(xht h, const char *key)
int nad_find_attr(nad_t nad, int elem, int ns, const char *name, const char *val)
get a matching attr on this elem, both name and optional val
void aci_unload(xht aci)
unload aci table