about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2021-08-20 15:57:50 -0400
committerJune McEnroe <june@causal.agency>2021-08-20 15:58:48 -0400
commit8a798865419f4b416d8c46ae12dd73cb311b61bd (patch)
tree1595969b6df0de4be6c012a6115805560359abd3
parentHandle TLS_WANT_POLL{IN,OUT} from tls_handshake(3) with server (diff)
downloadpounce-8a798865419f4b416d8c46ae12dd73cb311b61bd.tar.gz
pounce-8a798865419f4b416d8c46ae12dd73cb311b61bd.zip
Explicitly clear TLS secrets after handshake
Ported from catgirl ae64d277b8204c156a30d2e8b6a958e5a31f2a7f.
Diffstat (limited to '')
-rw-r--r--server.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/server.c b/server.c
index c84320a..d970deb 100644
--- a/server.c
+++ b/server.c
@@ -41,12 +41,13 @@
 #include "bounce.h"
 
 static struct tls *client;
+static struct tls_config *config;
 
 void serverConfig(
 	bool insecure, const char *trust, const char *cert, const char *priv
 ) {
 	int error = 0;
-	struct tls_config *config = tls_config_new();
+	config = tls_config_new();
 	if (!config) errx(EX_SOFTWARE, "tls_config_new");
 
 	if (insecure) {
@@ -89,7 +90,6 @@ void serverConfig(
 
 	error = tls_configure(client, config);
 	if (error) errx(EX_SOFTWARE, "tls_configure: %s", tls_error(client));
-	tls_config_free(config);
 }
 
 int serverConnect(const char *bindHost, const char *host, const char *port) {
@@ -150,6 +150,7 @@ int serverConnect(const char *bindHost, const char *host, const char *port) {
 		error = tls_handshake(client);
 	} while (error == TLS_WANT_POLLIN || error == TLS_WANT_POLLOUT);
 	if (error) errx(EX_PROTOCOL, "tls_handshake: %s", tls_error(client));
+	tls_config_clear_keys(config);
 
 	return sock;
 }
pan='3' class='logmsg'> 2019-10-23Add The Book of the Unnamed MidwifeJune McEnroe 2019-10-22Add ConcreteJune McEnroe Fun. 2019-10-14Set the write variable for nvim man modeJune McEnroe Embarrassing... 2019-10-13Add All Systems RedJune McEnroe 2019-10-10Add The Book of PhoenixJune McEnroe 2019-10-03Add two Kim Petras songsJune McEnroe 2019-10-02Update neovim 0.4.2June McEnroe Finally a release with my man mode fix... Meanwhile neovim itself has probably gotten worse. 2019-10-02Claim to be curl(1) in titleJune McEnroe IMDB serves a page to our dumb User-Agent whose <title> is past the 8K boundary but serves something normal to curl(1). 2019-10-02Add The Red Threads of FortuneJune McEnroe 2019-09-28Add The Black Tides of HeavenJune McEnroe 2019-09-27Fail on HTTP failure status in titleJune McEnroe 2019-09-23Add Trail of LightningJune McEnroe 2019-09-22Revert "Enable cookies in title"June McEnroe This reverts commit 3231fe21d3b389448c9a5ca7b4c91fdd25c9e677. 2019-09-20Enable cookies in titleJune McEnroe Perhaps this will make it less suspicious to Google. Who knows. 2019-09-16Use sensitivity aliases in TF2June McEnroe 2019-09-16Add The Just CityJune McEnroe 2019-09-12Only GET the final redirect locationJune McEnroe 2019-09-12Consume entire bodyJune McEnroe Aborting the request and leaving data around may be causing intermittent errors. Just discard the rest of the data. 2019-09-10Add title -v flagJune McEnroe 2019-09-10Use curl error bufferJune McEnroe 2019-09-10Set Accept-Encoding in titleJune McEnroe Because apparently it's fine for servers to respond with Content-Encoding you didn't ask for, and curl won't decode it if you didn't ask for it. 2019-09-08Set title User-AgentJune McEnroe Some things don't like you if you don't send one. 2019-09-07Add -x flag to titleJune McEnroe 2019-09-07Ignore SIGPIPE in relayJune McEnroe Allows restarting consumers safely. 2019-09-07Add A Memory Called EmpireJune McEnroe 2019-09-05Handle lack of Content-TypeJune McEnroe 2019-09-05Use CURLINFO_CONTENT_TYPEJune McEnroe Oops, didn't see this. 2019-09-05Decode entities in titlesJune McEnroe 2019-09-05Print title as soon as it's availableJune McEnroe 2019-09-05Use CURL_PREFIX to set flagsJune McEnroe 2019-09-05Add titleJune McEnroe 2019-09-04Add Avorter n'est pas tuerJune McEnroe 2019-08-29Unset executable on shell scriptsJune McEnroe 2019-08-29Add long-missing setopt to bin.7June McEnroe 2019-08-29Add editJune McEnroe