summaryrefslogtreecommitdiffstats
path: root/include/server.h
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2020-09-24 19:58:34 -0400
committerDrew DeVault <sir@cmpwn.com>2020-09-24 19:58:41 -0400
commitfa69887e52201eb348f1bfbecf72bdab5c57bd9c (patch)
tree2e49486c30e333483b45150348f2c51831450dd5 /include/server.h
parent7af04ea4713770cd19cb9659a59f8758e4207c2c (diff)
downloadgmnisrv-fa69887e52201eb348f1bfbecf72bdab5c57bd9c.tar.gz
gmnisrv-fa69887e52201eb348f1bfbecf72bdab5c57bd9c.tar.xz
gmnisrv-fa69887e52201eb348f1bfbecf72bdab5c57bd9c.zip
Implement TLS exchange with clients
This probably leaves a bit to be desired tbh
Diffstat (limited to 'include/server.h')
-rw-r--r--include/server.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/server.h b/include/server.h
index ac3bcac..5624b52 100644
--- a/include/server.h
+++ b/include/server.h
@@ -1,5 +1,6 @@
#ifndef GMNISRV_SERVER
#define GMNISRV_SERVER
+#include <openssl/ssl.h>
#include <poll.h>
#include <stdbool.h>
@@ -8,11 +9,14 @@
struct gmnisrv_client {
struct sockaddr addr;
socklen_t addrlen;
+ int sockfd;
- char buf[GEMINI_MAX_URL + 2];
- size_t bufln;
+ SSL *ssl;
+ BIO *bio;
- int sockfd;
+ char buf[GEMINI_MAX_URL + 3];
+
+ struct gmnisrv_host *host;
};
struct gmisrv_config;