summary refs log tree commit diff
path: root/bounce.h
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2019-10-23 01:23:38 -0400
committerJune McEnroe <june@causal.agency>2019-10-23 01:23:38 -0400
commit954707da7d4b96710965e44d8ca3bff24067e4df (patch)
tree1fb0626c2412ce6dcf57b6971f74c3eb68618c03 /bounce.h
parentDon't assume commands have targets and handle ERROR (diff)
downloadpounce-954707da7d4b96710965e44d8ca3bff24067e4df.tar.gz
pounce-954707da7d4b96710965e44d8ca3bff24067e4df.zip
Add dynamic poll list
Diffstat (limited to '')
-rw-r--r--bounce.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/bounce.h b/bounce.h
index e442e47..2c3daa3 100644
--- a/bounce.h
+++ b/bounce.h
@@ -26,10 +26,17 @@
 #define DEFAULT_PRIV_PATH "/usr/local/etc/letsencrypt/live/%s/privkey.pem"
 #endif
 
+struct Client {
+	struct tls *tls;
+};
+
 void listenConfig(const char *cert, const char *priv);
 size_t listenBind(int fds[], size_t cap, const char *host, const char *port);
 int listenAccept(struct tls **client, int fd);
 
+bool stateReady(void);
+void stateParse(char *line);
+
 int serverConnect(const char *host, const char *port);
 void serverLogin(
 	const char *pass, const char *auth,
@@ -40,5 +47,6 @@ void serverJoin(const char *join);
 void serverSend(const char *ptr, size_t len);
 void serverRecv(void);
 
-bool stateReady(void);
-void stateParse(char *line);
+struct Client *clientAlloc(void);
+void clientFree(struct Client *client);
+void clientRecv(struct Client *client);