diff options
author | David Härdeman <david@hardeman.nu> | 2020-06-05 14:09:18 +0200 |
---|---|---|
committer | David Härdeman <david@hardeman.nu> | 2020-06-05 14:09:18 +0200 |
commit | db66484c4300f5f0e857eff01d15fd3593002a79 (patch) | |
tree | a787b9f0da1243ae0391d5931ecb9cb0f29d3ee4 /main.h |
Initial commit
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 |