Better error handling for SSL

This commit is contained in:
2022-05-06 18:25:15 -04:00
parent c3e4588afc
commit d6aa216505
4 changed files with 33 additions and 41 deletions

View File

@@ -92,6 +92,7 @@ static SOCKET open_connection(const char *host, const char *port, std::string &e
if (sock <= 0) goto error_errno;
set_nonblocking(sock);
status = connect(sock, goodaddr->ai_addr, goodaddr->ai_addrlen);
if ((status != 0) && (errno != EINPROGRESS)) goto error_errno;
@@ -220,7 +221,7 @@ static int console_read(char *bytes, int nbytes) {
}
static void ssl_load_certificate_authorities(SSL_CTX *ctx) {
SSL_CTX_set_default_verify_paths(ctx);
assert(SSL_CTX_set_default_verify_paths(ctx) == 1);
}
static void disable_randomization(int argc, char *argv[]) {
@@ -259,7 +260,8 @@ int main(int argc, char **argv)
{
disable_randomization(argc, argv);
enable_tty_raw();
OPENSSL_init_ssl(0, NULL);
assert(OPENSSL_init_ssl(0, NULL) == 1);
drvssl::clear_all_errors();
SourceDB::register_lua_builtins();
Driver driver;
return driver.drive(argc, argv);