Diff for /libelwix/inc/elwix/apack.h between versions 1.4.2.1 and 1.9.8.1

version 1.4.2.1, 2014/01/29 14:15:58 version 1.9.8.1, 2015/06/25 00:36:47
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004 - 2014Copyright 2004 - 2015
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 61  typedef struct tagRawPacket { Line 61  typedef struct tagRawPacket {
                                         (x)->r_next = (x)->r_buf; \                                          (x)->r_next = (x)->r_buf; \
                                 } while (0)                                  } while (0)
 #define RPACK_SANITY(x)         ((x) && (x)->r_buf && (x)->r_next && (x)->r_next >= (x)->r_buf)  #define RPACK_SANITY(x)         ((x) && (x)->r_buf && (x)->r_next && (x)->r_next >= (x)->r_buf)
   #define RPACK_BUF(x)            (assert((x)), (x)->r_buf)
   #define RPACK_NEXT(x)           (assert((x)), (x)->r_next)
 #define RPACK_LEN(x)            (assert((x)), (x)->r_len)  #define RPACK_LEN(x)            (assert((x)), (x)->r_len)
 #define RPACK_REWIND(x)         (assert((x)), (x)->r_next = (x)->r_buf)  #define RPACK_REWIND(x)         (assert((x)), (x)->r_next = (x)->r_buf)
   #define RPACK_OFF(x)            (assert((x)), (x)->r_next - (x)->r_buf)
   #define RPACK_REMAIN(x)         (assert((x)), (x)->r_len - ((x)->r_next - (x)->r_buf))
   #define RPACK_ISEND(x)          (assert((x)), (size_t) ((x)->r_next - (x)->r_buf) >= (x)->r_len)
   
 #define RPACK_SET_16(x, n)      do { assert((x)); \  #define RPACK_SET_16(x, n)      do { assert((x)); \
                                         *((uint8_t *) (x) + 1) = *((const uint8_t *) (n) + 1); \                                          *((uint8_t *) (x) + 1) = *((const uint8_t *) (n) + 1); \
Line 153  typedef struct tagRawPacket { Line 158  typedef struct tagRawPacket {
  * return: NULL error or not enough space, !=NULL next position   * return: NULL error or not enough space, !=NULL next position
  */   */
 uint8_t *rpack_align_and_reserve(rpack_t * __restrict rp, size_t siz);  uint8_t *rpack_align_and_reserve(rpack_t * __restrict rp, size_t siz);
   /*
    * rpack_next() - Get and set current position
    *
    * @rp = raw packet
    * @after_len = move aligned current position after length
    * return: NULL error or current position
    */
   uint8_t *rpack_next(rpack_t * __restrict rp, size_t after_len);
   /*
    * rpack_rnext() - Get and set raw current position
    *
    * @rp = raw packet
    * @after_len = !=0 move current position after length
    * return: NULL error or raw current position
    */
   uint8_t *rpack_rnext(rpack_t * __restrict rp, size_t after_len);
   
 /*  /*
  * rpack_create() - Allocate & init raw packet structure   * rpack_create() - Allocate & init raw packet structure
Line 171  rpack_t *rpack_create(void * __restrict buf, size_t bu Line 192  rpack_t *rpack_create(void * __restrict buf, size_t bu
 void rpack_destroy(rpack_t ** __restrict rp);  void rpack_destroy(rpack_t ** __restrict rp);
   
 /*  /*
    * rpack_attach() - Attach dynamic allocating buffer at packet
    *
    * @rp = raw packet;
    * @len = allocate bytes
    * return: -1 error or 0 ok, should be detached with rpack_detach() 
    *                              before call rpack_destroy() after use!
    */
   int rpack_attach(rpack_t * __restrict rp, size_t len);
   /*
    * rpack_resize() - Resize dynamic allocated buffer at packet
    *
    * @rp = raw packet
    * @newlen = resize buffer to bytes
    * return: -1 error or 0 ok, should be detached with rpack_detach() 
    *                              before call rpack_destroy() after use!
    */
   int rpack_resize(rpack_t * __restrict rp, size_t newlen);
   /*
    * rpack_detach() - Detach and free dynamic allocated buffer from packet
    *
    * @rp = raw packet
    * return: none
    */
   void rpack_detach(rpack_t * __restrict rp);
   
   /*
  * rpack_uint8() - Pack/Unpack 8bit value   * rpack_uint8() - Pack/Unpack 8bit value
  *   *
  * @rp = raw buffer   * @rp = raw buffer
Line 183  uint8_t rpack_uint8(rpack_t * __restrict rp, uint8_t * Line 230  uint8_t rpack_uint8(rpack_t * __restrict rp, uint8_t *
  *   *
  * @rp = raw buffer   * @rp = raw buffer
  * @n = set value if !=NULL   * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
  * return: -1 error or get value   * return: -1 error or get value
  */   */
uint16_t rpack_uint16(rpack_t * __restrict rp, uint16_t * __restrict n);uint16_t rpack_uint16(rpack_t * __restrict rp, uint16_t * __restrict n, int be);
 /*  /*
    * rpack_ruint16() - Pack/Unpack raw 16bit value
    *
    * @rp = raw buffer
    * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
    * return: -1 error or get value
    */
   uint16_t rpack_ruint16(rpack_t * __restrict rp, uint16_t * __restrict n, int be);
   /*
  * rpack_uint24() - Pack/Unpack 24bit value   * rpack_uint24() - Pack/Unpack 24bit value
  *   *
  * @rp = raw buffer   * @rp = raw buffer
  * @n = set value if !=NULL   * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
  * return: -1 error or get value   * return: -1 error or get value
  */   */
uint32_t rpack_uint24(rpack_t * __restrict rp, uint32_t * __restrict n);uint32_t rpack_uint24(rpack_t * __restrict rp, uint32_t * __restrict n, int be);
 /*  /*
    * rpack_ruint24() - Pack/Unpack raw 24bit value
    *
    * @rp = raw buffer
    * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
    * return: -1 error or get value
    */
   uint32_t rpack_ruint24(rpack_t * __restrict rp, uint32_t * __restrict n, int be);
   /*
  * rpack_uint32() - Pack/Unpack 32bit value   * rpack_uint32() - Pack/Unpack 32bit value
  *   *
  * @rp = raw buffer   * @rp = raw buffer
  * @n = set value if !=NULL   * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
  * return: -1 error or get value   * return: -1 error or get value
  */   */
uint32_t rpack_uint32(rpack_t * __restrict rp, uint32_t * __restrict n);uint32_t rpack_uint32(rpack_t * __restrict rp, uint32_t * __restrict n, int be);
 /*  /*
    * rpack_ruint32() - Pack/Unpack raw 32bit value
    *
    * @rp = raw buffer
    * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
    * return: -1 error or get value
    */
   uint32_t rpack_ruint32(rpack_t * __restrict rp, uint32_t * __restrict n, int be);
   /*
  * rpack_uint64() - Pack/Unpack 64bit value   * rpack_uint64() - Pack/Unpack 64bit value
  *   *
  * @rp = raw buffer   * @rp = raw buffer
  * @n = set value if !=NULL   * @n = set value if !=NULL
    * @be = byte order [-1 little endian, 1 big endian and 0 host order]
  * return: -1 error or get value   * return: -1 error or get value
  */   */
uint64_t rpack_uint64(rpack_t * __restrict rp, uint64_t * __restrict n);uint64_t rpack_uint64(rpack_t * __restrict rp, uint64_t * __restrict n, int be);
 /*
  * rpack_ruint64() - Pack/Unpack raw 64bit value
  *
  * @rp = raw buffer
  * @n = set value if !=NULL
  * @be = byte order [-1 little endian, 1 big endian and 0 host order]
  * return: -1 error or get value
  */
 uint64_t rpack_ruint64(rpack_t * __restrict rp, uint64_t * __restrict n, int be);
 /*
  * rpack_data() - Pack/Unpack align data
  *
  * @rp = raw buffer
  * @dat = data
  * @datlen = data length
  * return: NULL error or != NULL get data, must be e_free() after use!
  */
 void *rpack_data(rpack_t * __restrict rp, void * __restrict dat, size_t datlen);
 /*
  * rpack_rdata() - Pack/Unpack raw data
  *
  * @rp = raw buffer
  * @dat = data
  * @datlen = data length
  * return: NULL error or != NULL get data, must be e_free() after use!
  */
 void *rpack_rdata(rpack_t * __restrict rp, void * __restrict dat, size_t datlen);
   
   
 #endif  #endif

Removed from v.1.4.2.1  
changed lines
  Added in v.1.9.8.1


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