From 0fefe3a661fb5155f811d5a6412194a566f7de0a Mon Sep 17 00:00:00 2001 From: John Denker Date: Fri, 1 Jan 2016 11:17:17 -0700 Subject: newly created files now added to repo --- tls.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 tls.c (limited to 'tls.c') diff --git a/tls.c b/tls.c new file mode 100644 index 0000000..aed5d57 --- /dev/null +++ b/tls.c @@ -0,0 +1,25 @@ +#include "exit.h" +#include "error.h" +#include +#include + +int smtps = 0; +SSL *ssl = NULL; + +void ssl_free(SSL *myssl) { SSL_shutdown(myssl); SSL_free(myssl); } +void ssl_exit(int status) { if (ssl) ssl_free(ssl); _exit(status); } + +const char *ssl_error() +{ + int r = ERR_get_error(); + if (!r) return NULL; + SSL_load_error_strings(); + return ERR_error_string(r, NULL); +} +const char *ssl_error_str() +{ + const char *err = ssl_error(); + if (err) return err; + if (!errno) return 0; + return (errno == error_timeout) ? "timed out" : error_str(errno); +} -- cgit v1.2.3