Diff for /libaitio/inc/aitio.h between versions 1.20.2.2 and 1.20.2.3

version 1.20.2.2, 2012/07/22 10:04:27 version 1.20.2.3, 2012/07/22 12:23:04
Line 66  SUCH DAMAGE. Line 66  SUCH DAMAGE.
 #define STRSIZ          256  #define STRSIZ          256
 #endif  #endif
   
   #ifndef be16toh
   #define be16toh         betoh16
   #endif
   #ifndef be32toh
   #define be32toh         betoh32
   #endif
   #ifndef be64toh
   #define be64toh         betoh64
   #endif
   
 #define IO_SYSM         0  #define IO_SYSM         0
 #define IO_MPOOL        1  #define IO_MPOOL        1
   
Line 102  typedef struct { Line 112  typedef struct {
         uint8_t         val_type;          uint8_t         val_type;
         union {          union {
                 struct {                  struct {
                        uint8_t val_zcpy:1;                        uint8_t val_in:1;
                         uint8_t val_be:1;                          uint8_t val_be:1;
                         uint8_t val_le:1;                          uint8_t val_le:1;
                         uint8_t val_pad:5;                          uint8_t val_pad:5;
Line 137  typedef struct { Line 147  typedef struct {
 #define AIT_KEY(_vl)                    (_vl)->val_key  #define AIT_KEY(_vl)                    (_vl)->val_key
 #define AIT_RAW(_vl)                    (_vl)->val.net  #define AIT_RAW(_vl)                    (_vl)->val.net
 #define AIT_ADDR(_vl)                   (_vl)->val.ptr  #define AIT_ADDR(_vl)                   (_vl)->val.ptr
#define AIT_ZEROCOPY(_vl)           (_vl)->val_zcpy#define AIT_IN(_vl)                   (_vl)->val_in
 #define AIT_BE(_vl)                     (_vl)->val_be  #define AIT_BE(_vl)                     (_vl)->val_be
 #define AIT_LE(_vl)                     (_vl)->val_le  #define AIT_LE(_vl)                     (_vl)->val_le
 #define AIT_BLOB_CHUNKS(_vl, _n)        (AIT_LEN((_vl)) / _n + (AIT_LEN((_vl)) % _n) ? 1 : 0)  #define AIT_BLOB_CHUNKS(_vl, _n)        (AIT_LEN((_vl)) / _n + (AIT_LEN((_vl)) % _n) ? 1 : 0)
Line 270  typedef struct { Line 280  typedef struct {
 #define AIT_FREE_VAL(_vl)               do { ait_val_t *__val = (_vl); assert(__val); \  #define AIT_FREE_VAL(_vl)               do { ait_val_t *__val = (_vl); assert(__val); \
                                                 switch (AIT_TYPE(__val)) { \                                                  switch (AIT_TYPE(__val)) { \
                                                         case buffer: \                                                          case buffer: \
                                                                if (!__val->val_zcpy && \                                                                if (!__val->val_in && \
                                                                                 __val->val.buffer) \                                                                                  __val->val.buffer) \
                                                                         io_free(__val->val.buffer); \                                                                          io_free(__val->val.buffer); \
                                                                 __val->val.buffer = NULL; \                                                                  __val->val.buffer = NULL; \
                                                                 break; \                                                                  break; \
                                                         case string: \                                                          case string: \
                                                                if (!__val->val_zcpy && \                                                                if (!__val->val_in && \
                                                                                 __val->val.string) \                                                                                  __val->val.string) \
                                                                         io_free(__val->val.string); \                                                                          io_free(__val->val.string); \
                                                                 __val->val.string = NULL; \                                                                  __val->val.string = NULL; \
Line 391  io_sockaddr_t *io_gethostbyname(const char *psHost, un Line 401  io_sockaddr_t *io_gethostbyname(const char *psHost, un
  * @vars = Variable array   * @vars = Variable array
  * return: -1 error, 0 nothing done or >0 size of marshaled data   * return: -1 error, 0 nothing done or >0 size of marshaled data
  */   */
int io_vars2buffer(unsigned char *buf, int buflen, array_t *vars);inline int io_vars2buffer(unsigned char * __restrict buf, int buflen, 
                 array_t * __restrict vars);
 /*  /*
  * io_buffer2vars() - De-marshaling data from buffer to array with variables   * io_buffer2vars() - De-marshaling data from buffer to array with variables
  *   *
Line 402  int io_vars2buffer(unsigned char *buf, int buflen, arr Line 413  int io_vars2buffer(unsigned char *buf, int buflen, arr
                 *DON'T MODIFY OR DESTROY BUFFER*. =0 call io_arrayFree() before io_arrayDestroy()                  *DON'T MODIFY OR DESTROY BUFFER*. =0 call io_arrayFree() before io_arrayDestroy()
  * return: =NULL error, !=NULL allocated variable array, after use must free with io_arrayDestroy()   * return: =NULL error, !=NULL allocated variable array, after use must free with io_arrayDestroy()
  */   */
array_t *io_buffer2vars(unsigned char *buf, int buflen, int vnum, int zcpy);inline array_t *io_buffer2vars(unsigned char * __restrict buf, int buflen, int vnum, int zcpy);
 /*  /*
  * io_vars2map() - Marshaling data from array with variables to memory map   * io_vars2map() - Marshaling data from array with variables to memory map
  *   *
Line 411  array_t *io_buffer2vars(unsigned char *buf, int buflen Line 422  array_t *io_buffer2vars(unsigned char *buf, int buflen
  * @vars = Variable array   * @vars = Variable array
  * return: -1 error, 0 nothing done or >0 size of marshaled data   * return: -1 error, 0 nothing done or >0 size of marshaled data
  */   */
int io_vars2map(unsigned char *buf, int buflen, array_t *vars);inline int io_vars2map(unsigned char * __restrict buf, int buflen, 
                 array_t * __restrict vars);
 /*  /*
  * io_map2vars() - De-marshaling data from memory map to array with variables   * io_map2vars() - De-marshaling data from memory map to array with variables
  *   *
Line 422  int io_vars2map(unsigned char *buf, int buflen, array_ Line 434  int io_vars2map(unsigned char *buf, int buflen, array_
                 *DON'T MODIFY OR DESTROY BUFFER*. =0 call io_arrayFree() before io_arrayDestroy()                  *DON'T MODIFY OR DESTROY BUFFER*. =0 call io_arrayFree() before io_arrayDestroy()
  * return: =NULL error, !=NULL allocated variable array, after use must free with io_arrayDestroy()   * return: =NULL error, !=NULL allocated variable array, after use must free with io_arrayDestroy()
  */   */
array_t *io_map2vars(unsigned char *buf, int buflen, int vnum, int zcpy);inline array_t *io_map2vars(unsigned char * __restrict buf, int buflen, int vnum, int zcpy);
   
 /*  /*
  * io_allocVar() - Allocate memory for variable   * io_allocVar() - Allocate memory for variable
Line 467  inline void io_freeVars(array_t ** __restrict vars); Line 479  inline void io_freeVars(array_t ** __restrict vars);
  */   */
 inline ait_val_t *io_getVars(array_t ** __restrict vars, int n);  inline ait_val_t *io_getVars(array_t ** __restrict vars, int n);
 /*  /*
 * io_sortVars() - Sorting array with variables * io_sortVarsByKey() - Sorting array with variables by key
  *   *
  * @vars = Variable array   * @vars = Variable array
 * @order = Sort order. If =0 ascend ot !=0 descend * @order = Sort order. If =0 ascend or !=0 descend
 * @cmp = Compare function for sorting. If =NULL compare by key 
  * return: none   * return: none
  */   */
inline void io_sortVars(array_t * __restrict vars, int order, inline void io_sortVarsByKey(array_t * __restrict vars, int order);
 /*
  * io_sortVarsByVal() - Sorting array with variables by value
  *
  * @vars = Variable array
  * @order = Sort order. If =0 ascend or !=0 descend
  * @cmp = Custom compare function for sorting. If =NULL compare by value
  * return: none
  */
 inline void io_sortVarsByVal(array_t * __restrict vars, int order,  
                 int (*cmp)(const void*, const void*));                  int (*cmp)(const void*, const void*));
 /*  /*
  * io_findKeyVars() - Find variable by key from array   * io_findKeyVars() - Find variable by key from array

Removed from v.1.20.2.2  
changed lines
  Added in v.1.20.2.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>