+Missing <time.h> include
[middleman.git] / include / external.h
1 #ifndef EXTERNAL_H
2 #define EXTERNAL_H
3
4 #define EXTERNAL_LIST_NEW(x) { \
5    if (x == NULL) \
6       x = xmalloc(sizeof(struct EXTERNAL_LIST_LIST)); \
7    else { \
8       while (x->next != NULL) x = x->next; \
9       x->next = xmalloc(sizeof(struct EXTERNAL_LIST_LIST)); \
10       x = x->next; \
11    } \
12    x->me = NULL; \
13    x->he = NULL; \
14    x->fe = NULL; \
15    x->exec = NULL; \
16    x->mime = NULL; \
17    x->host = NULL; \
18    x->file = NULL; \
19    x->newmime = NULL; \
20    x->next = NULL; \
21 };
22
23 #define EXTERNAL_LIST_INSERT(x, a, b, c, d, e) { \
24    if (a != NULL)  {\
25       x->me = reg_compile(a, REGFLAGS | REG_NOSUB); \
26       x->mime = xstrdup(a); \
27    } \
28    if (b != NULL) { \
29       x->he = reg_compile(b, REGFLAGS | REG_NOSUB); \
30       x->host = xstrdup(b); \
31    } \
32    if (c != NULL) { \
33       x->fe = reg_compile(c, REGFLAGS | REG_NOSUB); \
34       x->file = xstrdup(c); \
35    } \
36    if (d != NULL) \
37       x->exec = xstrdup(d); \
38    if (e != NULL) \
39       x->newmime = xstrdup(e); \
40 };
41
42 #endif                          /* EXTERNAL_H */