summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2021-09-02 22:04:57 -0400
committerJune McEnroe <june@causal.agency>2021-09-02 22:04:57 -0400
commit53c1ebff35dc81263d4491753a6dd9676f5b9120 (patch)
tree5bab5aec982ea9a8fdea24eff01643ce4ae2d180
parentSeparate client QUIT and ERROR messages (diff)
downloadpounce-53c1ebff35dc81263d4491753a6dd9676f5b9120.tar.gz
pounce-53c1ebff35dc81263d4491753a6dd9676f5b9120.zip
Be nice and call tls_close(3) on the server
-rw-r--r--bounce.c2
-rw-r--r--bounce.h1
-rw-r--r--server.c5
3 files changed, 8 insertions, 0 deletions
diff --git a/bounce.c b/bounce.c
index 71433ee..416c228 100644
--- a/bounce.c
+++ b/bounce.c
@@ -349,6 +349,7 @@ int main(int argc, char *argv[]) {
 		serverConfig(true, NULL, NULL, NULL);
 		serverConnect(serverBindHost, host, port);
 		serverPrintCert();
+		serverClose();
 		return EX_OK;
 	}
 
@@ -564,6 +565,7 @@ int main(int argc, char *argv[]) {
 	}
 
 	serverFormat("QUIT :%s\r\n", quit);
+	serverClose();
 	for (size_t i = clientIndex; i < event.len; ++i) {
 		struct Client *client = event.clients[i];
 		if (!client->need) {
diff --git a/bounce.h b/bounce.h
index 434e443..4144324 100644
--- a/bounce.h
+++ b/bounce.h
@@ -198,6 +198,7 @@ void serverFormat(const char *format, ...)
 void serverEnqueue(const char *format, ...)
 	__attribute__((format(printf, 1, 2)));
 void serverDequeue(void);
+void serverClose(void);
 
 enum Need {
 	BIT(NeedHandshake),
diff --git a/server.c b/server.c
index aa17cde..6640f8f 100644
--- a/server.c
+++ b/server.c
@@ -155,6 +155,11 @@ int serverConnect(const char *bindHost, const char *host, const char *port) {
 	return sock;
 }
 
+void serverClose(void) {
+	tls_close(client);
+	tls_free(client);
+}
+
 void serverPrintCert(void) {
 	size_t len;
 	const byte *pem = tls_peer_cert_chain_pem(client, &len);
/catgirl/commit/chat.c?h=1.6&id=62472ab18349a4f16e7afb5b3301a20644fef207&follow=1'>Add startup GPLv3 note and URLJune McEnroe 2020-02-11Make sure -D_GNU_SOURCE ends up in CFLAGS on LinuxJune McEnroe 2020-02-11Add note about setting PKG_CONFIG_PATHJune McEnroe 2020-02-11Rename query ID on nick changeJune McEnroe 2020-02-11Call completeClear when closing a windowJune McEnroe 2020-02-11Don't insert color codes for non-mentionsJune McEnroe 2020-02-11Take first two words in colorMentionsJune McEnroe 2020-02-11Use time_t for save signatureJune McEnroe 2020-02-11Set self.nick to * initiallyJune McEnroe 2020-02-11Define ColorCap instead of hardcoding 100June McEnroe 2020-02-11Move hash to top of chat.hJune McEnroe 2020-02-11Move base64 out of chat.hJune McEnroe 2020-02-11Move XDG_SUBDIR out of chat.hJune McEnroe 2020-02-11Fix whois idle unit calculationJune McEnroe 2020-02-11Cast towupper to wchar_tJune McEnroe 2020-02-11Cast set but unused variables to voidJune McEnroe 2020-02-11Declare strlcatJune McEnroe 2020-02-11Check if VDSUSP existsJune McEnroe 2020-02-11Fix completeReplace iterationJune McEnroe 2020-02-11Use pkg(8) to configure on FreeBSDJune McEnroe 2020-02-11Remove legacy codeJune McEnroe 2020-02-11Add INSTALLING section to READMEJune McEnroe