Correct PPTP server firewall rules chain.
[tomato/davidwu.git] / release / src / router / mdadm / dlink.h
blob8e3f4cf9b34c56bdaa0e4d94c3e05024db2c25cf
2 /* doubley linked lists */
3 /* This is free software. No strings attached. No copyright claimed */
5 struct __dl_head
7 void * dh_prev;
8 void * dh_next;
9 };
11 #define dl_alloc(size) ((void*)(((char*)calloc(1,(size)+sizeof(struct __dl_head)))+sizeof(struct __dl_head)))
12 #define dl_new(t) ((t*)dl_alloc(sizeof(t)))
13 #define dl_newv(t,n) ((t*)dl_alloc(sizeof(t)*n))
15 #define dl_next(p) *(&(((struct __dl_head*)(p))[-1].dh_next))
16 #define dl_prev(p) *(&(((struct __dl_head*)(p))[-1].dh_prev))
18 void *dl_head(void);
19 char *dl_strdup(char *);
20 char *dl_strndup(char *, int);
21 void dl_insert(void*, void*);
22 void dl_add(void*, void*);
23 void dl_del(void*);
24 void dl_free(void*);
25 void dl_init(void*);