reactos/lib/drivers/lwip/src/include/arch/cc.h

64 lines
1.3 KiB
C
Raw Normal View History

/* ReactOS-Specific lwIP binding header - by Cameron Gutman */
#include <wdm.h>
#define LWIP_PROVIDE_ERRNO
/* ROS-specific mem defs */
void *
malloc(size_t size);
void *
calloc(size_t count, size_t size);
void
free(void *mem);
void *
realloc(void *mem, size_t size);
#define mem_trim(_m_, _s_) realloc(_m_, _s_)
/* Unsigned int types */
typedef unsigned char u8_t;
typedef unsigned short u16_t;
typedef unsigned long u32_t;
/* Signed int types */
typedef signed char s8_t;
typedef signed short s16_t;
typedef signed long s32_t;
/* Memory pointer */
typedef u32_t mem_ptr_t;
/* Printf/DPRINT formatters */
#define U16_F "hu"
#define S16_F "hd"
#define X16_F "hx"
#define U32_F "lu"
#define S32_F "ld"
#define X32_F "lx"
/* Endianness */
#define BYTE_ORDER LITTLE_ENDIAN
/* Checksum calculation algorithm choice */
#define LWIP_CHKSUM_ALGORITHM 3
/* Diagnostics */
#define LWIP_PLATFORM_DIAG(x) DbgPrint(x)
#define LWIP_PLATFORM_ASSERT(x) ASSERTMSG(x, FALSE)
/* Synchronization */
#define SYS_ARCH_DECL_PROTECT(lev) \
sys_prot_t lev; \
sys_arch_decl_protect(&lev)
#define SYS_ARCH_PROTECT(lev) sys_arch_protect(&lev)
#define SYS_ARCH_UNPROTECT(lev) sys_arch_unprotect(&lev)
/* Compiler hints for packing structures */
#define PACK_STRUCT_STRUCT
#define PACK_STRUCT_USE_INCLUDES