diff options
Diffstat (limited to 'main.h')
-rw-r--r-- | main.h | 55 |
1 files changed, 55 insertions, 0 deletions
@@ -0,0 +1,55 @@ +#ifndef foomainhfoo +#define foomainhfoo + +#include <sys/socket.h> +#include <netinet/ip.h> +#include "utils.h" + +extern int debuglvl; + +void debug(unsigned lvl, const char *fmt, ...); + +#define info(...) fprintf(stderr, __VA_ARGS__) +#define error(...) fprintf(stderr, __VA_ARGS__) + +void die(const char *fmt, ...); + +#define perrordie(msg) die("%s: %m\n", msg) + +struct cfg; + +struct uring_task; + +/* To save typing in all the function definitions below */ +typedef void (*callback_t)(struct cfg *, struct uring_task *, int res); + +struct uring_task { + const char *name; + unsigned refcount; + int fd; + void *parent; + void (*free)(struct uring_task *); + bool dead; + callback_t callback; +}; + +struct sockaddr_in46 { + union { + struct sockaddr_storage storage; + struct sockaddr_in in4; + struct sockaddr_in6 in6; + }; + socklen_t addrlen; + struct list_head list; +}; + +struct cfg { + const char *homedir; + struct uring_ev *uev; + struct inotify_ev *iev; + struct signalfd_ev *sev; + struct uring_task task; + struct list_head servers; +}; + +#endif |