OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gmpx_basic_types.h File Reference
#include <stdint.h>
#include <assert.h>
#include "task_block_api.h"
#include "task_thread_api.h"
#include "task_timer_api.h"
#include "patricia_api.h"
Include dependency graph for gmpx_basic_types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define STRUCT_OFFSET(structure, pat_node, member)   (offsetof(structure, member) - offsetof(structure, pat_node))
 
#define MEMBER_TO_STRUCT(function, structure, type, member)
 
#define UNUSED
 

Functions

static uint16_t get_short (const void *ptr)
 
static void * put_short (void *ptr, uint16_t value)
 
static uint16_t inet_cksum (void *packet, size_t length)
 

Macro Definition Documentation

#define MEMBER_TO_STRUCT (   function,
  structure,
  type,
  member 
)
Value:
static inline structure *(function)(type *address) { \
if (address) { \
return (structure *)((char *)address - offsetof(structure, member)); \
} \
return NULL; \
}
uint8_t type
Definition: load_balance.h:109

Definition at line 19 of file gmpx_basic_types.h.

#define STRUCT_OFFSET (   structure,
  pat_node,
  member 
)    (offsetof(structure, member) - offsetof(structure, pat_node))

Definition at line 16 of file gmpx_basic_types.h.

#define UNUSED

Definition at line 28 of file gmpx_basic_types.h.

Function Documentation

static uint16_t get_short ( const void *  ptr)
inlinestatic

Definition at line 32 of file gmpx_basic_types.h.

static uint16_t inet_cksum ( void *  packet,
size_t  length 
)
inlinestatic

Definition at line 52 of file gmpx_basic_types.h.

static void* put_short ( void *  ptr,
uint16_t  value 
)
inlinestatic

Definition at line 43 of file gmpx_basic_types.h.