main index

section index



/* integer of 8 bits */
typedef char netwib_int8;
typedef unsigned char netwib_uint8;

/* integer of 16 bits */
typedef short netwib_int16;
typedef unsigned short netwib_uint16;

/* integer of 32 bits */
typedef int netwib_int32;
typedef unsigned int netwib_uint32;

/* maximum size integer on the computer */
typedef long netwib_intmax;
typedef unsigned long netwib_uintmax;

/* char */
typedef char netwib_char;

/* byte */
typedef unsigned char netwib_byte;

/* pointer */
typedef void* netwib_ptr;
typedef const void* netwib_constptr;

/* data */
typedef netwib_byte* netwib_data;
typedef const netwib_byte* netwib_constdata;
/* string */
typedef netwib_char* netwib_string;
typedef const netwib_char* netwib_conststring;

/* boolean */
typedef enum {
  NETWIB_FALSE = 0,
  NETWIB_TRUE = !NETWIB_FALSE
} netwib_bool;

/* comparison */
typedef enum {
  NETWIB_CMP_LT = -1,
  NETWIB_CMP_EQ = 0,
  NETWIB_CMP_GT = +1
} netwib_cmp;

/* netwib contains several enum. User can define its own values
   starting from 10000 */
#define NETWIB_ENUM_USER_BEGIN 10000

/*-------------------------------------------------------------*/
/***************************************************************
 * Note about return values :                                  *
 * Every function returns a "netwib_err" which indicates :     *
 *   - NETWIB_ERR_OK  : everything went fine                   *
 *   - NETWIB_ERR_xyz : something strange occured...           *
 ***************************************************************/

/*-------------------------------------------------------------*/
/***************************************************************
 * Note about parameters :                                     *
 * Some functions can accept NULL as parameter. This indicates *
 * the corresponding parameter is not needed.                  *
 * However this special case needs resources and specific      *
 * instruction paths. So, this is not supported for parameters *
 * such as netwib_ring, netwib_ip4s, etc. If you think we      *
 * missed one function needing this functionality, please      *
 * contact us.                                                 *
 ***************************************************************/




main index

section index