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 /* There is no such thing as "from ISR" for us */
31 #define sys_mbox_trypost_fromisr sys_mbox_trypost
32 
33 /* NULL definitions */
34 #define SYS_MBOX_NULL NULL
35 #define SYS_SEM_NULL NULL
36 #define SYS_ARCH_NULL NULL
37 
38 void
39 sys_arch_protect(sys_prot_t *lev);
40 
41 void
42 sys_arch_unprotect(sys_prot_t lev);
43