[LWIP]
[reactos.git] / lib / drivers / lwip / src / include / arch / sys_arch.h
1 /* ReactOS-Specific lwIP binding header - by Cameron Gutman */
2
3 /* Implmentation specific structs */
4 typedef struct _sys_sem_t
5 {
6 KEVENT Event;
7 int Valid;
8 } sys_sem_t;
9
10 typedef struct _sys_mbox_t
11 {
12 KSPIN_LOCK Lock;
13 LIST_ENTRY ListHead;
14 KEVENT Event;
15 int Valid;
16 } sys_mbox_t;
17
18 typedef KIRQL sys_prot_t;
19
20 typedef u32_t sys_thread_t;
21
22 typedef struct _LWIP_MESSAGE_CONTAINER
23 {
24 PVOID Message;
25 LIST_ENTRY ListEntry;
26 } LWIP_MESSAGE_CONTAINER, *PLWIP_MESSAGE_CONTAINER;
27
28 #define sys_jiffies() sys_now()
29
30 /* NULL definitions */
31 #define SYS_MBOX_NULL NULL
32 #define SYS_SEM_NULL NULL
33 #define SYS_ARCH_NULL NULL
34
35 void
36 sys_arch_protect(sys_prot_t *lev);
37
38 void
39 sys_arch_unprotect(sys_prot_t lev);
40
41 void
42 sys_shutdown(void);
43