jabber/xode.h File Reference

#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <stdio.h>
#include <errno.h>
#include <syslog.h>
#include <strings.h>
#include <unistd.h>
#include <sys/time.h>
#include "expat.h"
#include <varargs.h>

Include dependency graph for jabber/xode.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  xode_pool_heap
struct  xode_pool_struct
struct  xode_spool_node
struct  xode_spool_struct
struct  xode_stream_struct
struct  xode_struct

Defines

#define MAXSHORTSTR   203
#define QUAD_T   unsigned long long
#define snprintf   ap_snprintf
#define VA_END   va_end(ap)
#define VA_LOCAL_DECL   va_list ap;
#define VA_START(f)   va_start(ap)
#define vsnprintf   ap_vsnprintf
#define XODE_STREAM_CLOSE   2
#define XODE_STREAM_ERROR   4
#define XODE_STREAM_MAXDEPTH   100
#define XODE_STREAM_MAXNODE   1000000
#define XODE_STREAM_NODE   1
#define XODE_STREAM_ROOT   0
#define XODE_TYPE_ATTRIB   1
#define XODE_TYPE_CDATA   2
#define XODE_TYPE_LAST   2
#define XODE_TYPE_TAG   0
#define XODE_TYPE_UNDEF   -1

Typedefs

typedef struct xode_struct _xode
typedef struct xode_pool_struct _xode_pool
typedef struct xode_stream_struct _xode_stream
typedef struct xode_structxode
typedef struct xode_pool_structxode_pool
typedef void(* xode_pool_cleaner )(void *arg)
typedef struct xode_spool_structxode_spool
typedef struct xode_stream_structxode_stream
typedef void(* xode_stream_onNode )(int type, xode x, void *arg)

Functions

int ap_snprintf (char *, size_t, const char *,...)
int ap_vsnprintf (char *, size_t, const char *, va_list ap)
int xode_cmp (xode a, xode b)
xode xode_dup (xode x)
xode xode_dup_frompool (xode_pool p, xode x)
void xode_free (xode node)
xode xode_from_file (char *file)
xode xode_from_str (char *str, int len)
xode xode_from_strx (char *str, int len, int *err, int *pos)
char * xode_get_attrib (xode owner, const char *name)
char * xode_get_data (xode node)
int xode_get_datasz (xode node)
xode xode_get_firstattrib (xode parent)
xode xode_get_firstchild (xode parent)
xode xode_get_lastchild (xode parent)
char * xode_get_name (xode node)
xode xode_get_nextsibling (xode sibling)
xode xode_get_parent (xode node)
xode_pool xode_get_pool (xode node)
xode xode_get_prevsibling (xode sibling)
xode xode_get_tag (xode parent, const char *name)
char * xode_get_tagdata (xode parent, const char *name)
int xode_get_type (xode node)
void * xode_get_vattrib (xode owner, const char *name)
int xode_has_attribs (xode node)
int xode_has_children (xode node)
void xode_hide (xode child)
void xode_hide_attrib (xode parent, const char *name)
xode xode_insert_cdata (xode parent, const char *CDATA, unsigned int size)
void xode_insert_node (xode parent, xode node)
xode xode_insert_tag (xode parent, const char *name)
xode xode_insert_tagnode (xode parent, xode node)
xode xode_new (const char *name)
xode xode_new_frompool (xode_pool p, const char *name)
xode xode_new_tag (const char *name)
void xode_pool_cleanup (xode_pool p, xode_pool_cleaner f, void *arg)
void xode_pool_free (xode_pool p)
xode_pool xode_pool_heap (int bytes)
void * xode_pool_malloc (xode_pool p, int size)
void * xode_pool_malloco (xode_pool p, int size)
void * xode_pool_mallocx (xode_pool p, int size, char c)
xode_pool xode_pool_new (void)
int xode_pool_size (xode_pool p)
char * xode_pool_strdup (xode_pool p, const char *src)
void xode_put_attrib (xode owner, const char *name, const char *value)
void xode_put_vattrib (xode owner, const char *name, void *value)
void xode_spool_add (xode_spool s, char *str)
void xode_spool_free (xode_spool s)
int xode_spool_getlen (const xode_spool s)
xode_pool xode_spool_getpool (const xode_spool s)
xode_spool xode_spool_new (void)
xode_spool xode_spool_newfrompool (xode_pool p)
char * xode_spool_str (xode_pool p,...)
char * xode_spool_tostr (xode_spool s)
void xode_spooler (xode_spool s,...)
int xode_stream_eat (xode_stream xs, char *buff, int len)
xode_stream xode_stream_new (xode_pool p, xode_stream_onNode f, void *arg)
char * xode_strescape (xode_pool p, char *buf)
char * xode_strunescape (xode_pool p, char *buf)
int xode_to_file (char *file, xode node)
char * xode_to_prettystr (xode node)
char * xode_to_str (xode node)
xode xode_wrap (xode x, const char *wrapper)


Define Documentation

#define MAXSHORTSTR   203

Definition at line 40 of file jabber/xode.h.

#define QUAD_T   unsigned long long

Definition at line 41 of file jabber/xode.h.

#define snprintf   ap_snprintf

#define VA_END   va_end(ap)

Definition at line 57 of file jabber/xode.h.

#define VA_LOCAL_DECL   va_list ap;

Definition at line 55 of file jabber/xode.h.

#define VA_START (  )     va_start(ap)

Definition at line 56 of file jabber/xode.h.

#define vsnprintf   ap_vsnprintf

Definition at line 77 of file jabber/xode.h.

Referenced by ldap_params_search(), mi_print_fmt(), net_printf(), and set_proc_attrs().

#define XODE_STREAM_CLOSE   2

#define XODE_STREAM_ERROR   4

#define XODE_STREAM_MAXDEPTH   100

Definition at line 270 of file jabber/xode.h.

Referenced by _xode_stream_startElement().

#define XODE_STREAM_MAXNODE   1000000

Definition at line 269 of file jabber/xode.h.

Referenced by xode_stream_eat().

#define XODE_STREAM_NODE   1

#define XODE_STREAM_ROOT   0

#define XODE_TYPE_ATTRIB   1

#define XODE_TYPE_CDATA   2

#define XODE_TYPE_LAST   2

Definition at line 178 of file jabber/xode.h.

Referenced by _xode_new().

#define XODE_TYPE_TAG   0

#define XODE_TYPE_UNDEF   -1

Definition at line 179 of file jabber/xode.h.


Typedef Documentation

typedef struct xode_struct _xode

typedef struct xode_pool_struct _xode_pool

typedef struct xode_struct * xode

typedef struct xode_pool_struct * xode_pool

typedef void(* xode_pool_cleaner)(void *arg)

Definition at line 90 of file jabber/xode.h.

typedef struct xode_spool_struct * xode_spool

typedef struct xode_stream_struct * xode_stream

typedef void(* xode_stream_onNode)(int type, xode x, void *arg)

Definition at line 277 of file jabber/xode.h.


Function Documentation

int ap_snprintf ( char *  ,
size_t  ,
const char *  ,
  ... 
)

Definition at line 916 of file jabber/xsnprintf.c.

int ap_vsnprintf ( char *  ,
size_t  ,
const char *  ,
va_list  ap 
)

Definition at line 928 of file jabber/xsnprintf.c.

int xode_cmp ( xode  a,
xode  b 
)

Definition at line 670 of file jabber/xode.c.

xode xode_dup ( xode  x  ) 

Definition at line 755 of file jabber/xode.c.

xode xode_dup_frompool ( xode_pool  p,
xode  x 
)

Definition at line 772 of file jabber/xode.c.

void xode_free ( xode  node  ) 

Definition at line 801 of file jabber/xode.c.

xode xode_from_file ( char *  file  ) 

Definition at line 141 of file jabber/xode_from.c.

xode xode_from_str ( char *  str,
int  len 
)

Definition at line 81 of file jabber/xode_from.c.

xode xode_from_strx ( char *  str,
int  len,
int *  err,
int *  pos 
)

Definition at line 111 of file jabber/xode_from.c.

Referenced by xj_jcon_user_auth(), and xj_manage_jab().

char* xode_get_attrib ( xode  owner,
const char *  name 
)

Definition at line 453 of file jabber/xode.c.

char* xode_get_data ( xode  node  ) 

Definition at line 545 of file jabber/xode.c.

int xode_get_datasz ( xode  node  ) 

Definition at line 562 of file jabber/xode.c.

xode xode_get_firstattrib ( xode  parent  ) 

Definition at line 496 of file jabber/xode.c.

xode xode_get_firstchild ( xode  parent  ) 

Definition at line 503 of file jabber/xode.c.

xode xode_get_lastchild ( xode  parent  ) 

Definition at line 510 of file jabber/xode.c.

char* xode_get_name ( xode  node  ) 

Definition at line 538 of file jabber/xode.c.

xode xode_get_nextsibling ( xode  sibling  ) 

Definition at line 517 of file jabber/xode.c.

xode xode_get_parent ( xode  node  ) 

Definition at line 531 of file jabber/xode.c.

xode_pool xode_get_pool ( xode  node  ) 

Definition at line 604 of file jabber/xode.c.

xode xode_get_prevsibling ( xode  sibling  ) 

Definition at line 524 of file jabber/xode.c.

xode xode_get_tag ( xode  parent,
const char *  name 
)

Definition at line 339 of file jabber/xode.c.

char* xode_get_tagdata ( xode  parent,
const char *  name 
)

Definition at line 413 of file jabber/xode.c.

int xode_get_type ( xode  node  ) 

Definition at line 581 of file jabber/xode.c.

void* xode_get_vattrib ( xode  owner,
const char *  name 
)

Definition at line 483 of file jabber/xode.c.

int xode_has_attribs ( xode  node  ) 

Definition at line 597 of file jabber/xode.c.

int xode_has_children ( xode  node  ) 

Definition at line 590 of file jabber/xode.c.

void xode_hide ( xode  child  ) 

Definition at line 611 of file jabber/xode.c.

void xode_hide_attrib ( xode  parent,
const char *  name 
)

Definition at line 630 of file jabber/xode.c.

xode xode_insert_cdata ( xode  parent,
const char *  CDATA,
unsigned int  size 
)

Definition at line 292 of file jabber/xode.c.

void xode_insert_node ( xode  parent,
xode  node 
)

Definition at line 731 of file jabber/xode.c.

xode xode_insert_tag ( xode  parent,
const char *  name 
)

Definition at line 271 of file jabber/xode.c.

xode xode_insert_tagnode ( xode  parent,
xode  node 
)

Definition at line 717 of file jabber/xode.c.

xode xode_new ( const char *  name  ) 

Definition at line 230 of file jabber/xode.c.

xode xode_new_frompool ( xode_pool  p,
const char *  name 
)

Definition at line 254 of file jabber/xode.c.

xode xode_new_tag ( const char *  name  ) 

Definition at line 238 of file jabber/xode.c.

void xode_pool_cleanup ( xode_pool  p,
xode_pool_cleaner  f,
void *  arg 
)

Definition at line 234 of file jabber/xpool.c.

Referenced by xode_stream_new().

void xode_pool_free ( xode_pool  p  ) 

xode_pool xode_pool_heap ( int  bytes  ) 

Definition at line 248 of file jabber/xpool.c.

Referenced by _xode_new(), _xode_stream_startElement(), and xode_spool_new().

void* xode_pool_malloc ( xode_pool  p,
int  size 
)

void* xode_pool_malloco ( xode_pool  p,
int  size 
)

Definition at line 181 of file jabber/xpool.c.

Referenced by xode_stream_new().

void* xode_pool_mallocx ( xode_pool  p,
int  size,
char  c 
)

Definition at line 172 of file jabber/xpool.c.

xode_pool xode_pool_new ( void   ) 

Definition at line 243 of file jabber/xpool.c.

Referenced by conn_new(), and xmpp_component_child_process().

int xode_pool_size ( xode_pool  p  ) 

Definition at line 208 of file jabber/xpool.c.

Referenced by xode_stream_eat().

char* xode_pool_strdup ( xode_pool  p,
const char *  src 
)

Definition at line 189 of file jabber/xpool.c.

Referenced by _xode_new(), xode_pool_strdupx(), xode_put_attrib(), and xode_spool_add().

void xode_put_attrib ( xode  owner,
const char *  name,
const char *  value 
)

Definition at line 424 of file jabber/xode.c.

void xode_put_vattrib ( xode  owner,
const char *  name,
void *  value 
)

Definition at line 466 of file jabber/xode.c.

void xode_spool_add ( xode_spool  s,
char *  str 
)

void xode_spool_free ( xode_spool  s  ) 

Definition at line 40 of file jabber/xode_str.c.

int xode_spool_getlen ( const xode_spool  s  ) 

Definition at line 32 of file jabber/xode_str.c.

xode_pool xode_spool_getpool ( const xode_spool  s  ) 

Definition at line 24 of file jabber/xode_str.c.

Referenced by xode_spool_free().

xode_spool xode_spool_new ( void   ) 

Definition at line 57 of file jabber/xode_str.c.

xode_spool xode_spool_newfrompool ( xode_pool  p  ) 

Definition at line 45 of file jabber/xode_str.c.

Referenced by _xode_tospool(), xode_spool_new(), xode_spool_str(), and xode_to_prettystr().

char* xode_spool_str ( xode_pool  p,
  ... 
)

Definition at line 132 of file jabber/xode_str.c.

char* xode_spool_tostr ( xode_spool  s  ) 

Definition at line 109 of file jabber/xode_str.c.

Referenced by xode_spool_str(), xode_to_prettystr(), and xode_to_str().

void xode_spooler ( xode_spool  s,
  ... 
)

Definition at line 86 of file jabber/xode_str.c.

Referenced by _xode_tag2str(), and _xode_to_prettystr().

int xode_stream_eat ( xode_stream  xs,
char *  buff,
int  len 
)

Definition at line 149 of file jabber/xstream.c.

Referenced by xmpp_component_child_process(), and xmpp_server_child_process().

xode_stream xode_stream_new ( xode_pool  p,
xode_stream_onNode  f,
void *  arg 
)

Definition at line 120 of file jabber/xstream.c.

Referenced by conn_new(), and xmpp_component_child_process().

char* xode_strescape ( xode_pool  p,
char *  buf 
)

Definition at line 205 of file jabber/xode_str.c.

Referenced by _xode_tag2str(), and _xode_tospool().

char* xode_strunescape ( xode_pool  p,
char *  buf 
)

Definition at line 161 of file jabber/xode_str.c.

int xode_to_file ( char *  file,
xode  node 
)

Definition at line 196 of file jabber/xode_from.c.

char* xode_to_prettystr ( xode  node  ) 

Definition at line 853 of file jabber/xode.c.

char* xode_to_str ( xode  node  ) 

Definition at line 663 of file jabber/xode.c.

xode xode_wrap ( xode  x,
const char *  wrapper 
)

Definition at line 789 of file jabber/xode.c.


Generated on Wed May 23 08:01:30 2012 for Kamailio - The Open Source SIP Server by  doxygen 1.5.6