1 #ifndef _LIBMACH_COMPAT_H_
2 #define _LIBMACH_COMPAT_H_
5 typedef signed char schar
;
6 typedef unsigned char uchar
;
7 typedef unsigned int uint
;
8 typedef unsigned long ulong
;
9 typedef unsigned long long uvlong
;
11 typedef unsigned short u16int
;
13 typedef unsigned int u32int
;
15 typedef unsigned long long u64int
;
16 typedef long long s64int
;
26 RtlRaiseStatus(IN NTSTATUS Status
);
29 #define assert(x) do { \
31 werrstr("(%s:%d) assertion " #x " failed\n", __FILE__, __LINE__); \
32 RtlRaiseStatus(STATUS_ASSERTION_FAILURE); \
35 #define offsetof(x,y) FIELD_OFFSET(x,y)
38 #define nelem(arr) (sizeof((arr)[0]) / sizeof((arr)))
40 int readn(void *fd
, char *buf
, ulong len
);
41 int seek(void *fd
, ulong off
, int mode
);
43 void *RosSymAllocMemZero(ulong num
, ulong size
);
44 void *RosSymRealloc(void *mem
, ulong newsize
);
47 #define werrstr(str, ...) DPRINT(str "\n" ,##__VA_ARGS__)
50 #define werrstr(x, ...)
52 #define werrstr(x, ...) printf("(%s:%d) " x "\n",__FILE__,__LINE__,##__VA_ARGS__)
56 #define malloc(x) RosSymAllocMem(x)
57 #define mallocz(x,y) RosSymAllocMemZero(x,y)
58 #define free(x) xfree(x)
59 #define USED(x) (*((char *)&(x)) ^= 0)
60 #define memset(x,y,z) RtlZeroMemory(x,z)
62 #endif/*_LIBMACH_COMPAT_H_*/