From f2f11e477a489ac25a4c4be064eddc26fc9d677c Mon Sep 17 00:00:00 2001 From: lns Date: Wed, 11 Apr 2018 14:28:18 +0200 Subject: POTD skeleton. Signed-off-by: Toni Uhlig --- src/redirector.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/redirector.h (limited to 'src/redirector.h') diff --git a/src/redirector.h b/src/redirector.h new file mode 100644 index 0000000..c9170cb --- /dev/null +++ b/src/redirector.h @@ -0,0 +1,31 @@ +#ifndef POTD_SERVER_H +#define POTD_SERVER_H 1 + +#include "socket.h" +#include "forward.h" +#include "pevent.h" + + +typedef struct redirector_ctx { + forward_ctx fwd_ctx; + psocket sock; + char host_buf[NI_MAXHOST], service_buf[NI_MAXSERV]; +} redirector_ctx; + + +int redirector_init_ctx(redirector_ctx **rdr_ctx); + +void redirector_free_ctx(redirector_ctx **rdr_ctx); + +int redirector_setup(redirector_ctx *rdr_ctx, + const char *listen_addr, const char *listen_port, + const char *host, const char *port); + +int redirector_validate_ctx(const redirector_ctx *rdr_ctx); + +int redirector_setup_event(redirector_ctx *rdr_ctx[], size_t siz, + event_ctx **ev_ctx); + +pid_t redirector_daemonize(event_ctx **ev_ctx, redirector_ctx *rdr_ctx[], size_t siz); + +#endif -- cgit v1.2.3