summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorC. McEnroe2020-02-13 01:01:23 -0500
committerC. McEnroe2020-02-13 01:01:23 -0500
commit0a772ff13908dc23ab957f168e0e3ef51ea755f1 (patch)
tree28ebe24d025a923e63235ded19f04e3728b246aa
parent9bed890aa889dad4c46b6d18fff8cbdac9feab1a (diff)
Explicitly close the TLS connection
Just to be nice.
-rw-r--r--chat.c1
-rw-r--r--chat.h1
-rw-r--r--irc.c6
3 files changed, 8 insertions, 0 deletions
diff --git a/chat.c b/chat.c
index dbd2784..284302d 100644
--- a/chat.c
+++ b/chat.c
@@ -269,5 +269,6 @@ int main(int argc, char *argv[]) {
};
handle(msg);
+ ircClose();
uiHide();
}
diff --git a/chat.h b/chat.h
index fb7bf61..f0dc6cb 100644
--- a/chat.h
+++ b/chat.h
@@ -130,6 +130,7 @@ void ircRecv(void);
void ircSend(const char *ptr, size_t len);
void ircFormat(const char *format, ...)
__attribute__((format(printf, 1, 2)));
+void ircClose(void);
extern struct Replies {
size_t join;
diff --git a/irc.c b/irc.c
index 3ecc582..dd36f10 100644
--- a/irc.c
+++ b/irc.c
@@ -273,3 +273,9 @@ void ircRecv(void) {
len -= line - buf;
memmove(buf, line, len);
}
+
+void ircClose(void) {
+ int error = tls_close(client);
+ if (error) errx(EX_IOERR, "tls_close: %s", tls_error(client));
+ tls_free(client);
+}