res_http_websocket.c: Set hostname on client for certificate validation.

Additionally add a `assert()` to in the TLS client setup code to
ensure that hostname is set when it is supposed to be.

Fixes #433

(cherry picked from commit 40a9f5a88c)
This commit is contained in:
Sean Bright
2023-11-09 17:59:19 -05:00
committed by Asterisk Development Team
parent 6142e38125
commit a44fde08dd
2 changed files with 10 additions and 0 deletions

View File

@@ -1163,6 +1163,12 @@ static struct ast_tcptls_session_args *websocket_client_args_create(
}
ast_sockaddr_copy(&args->remote_address, addr);
ast_free(addr);
/* We need to save off the hostname but it may contain a port spec */
snprintf(args->hostname, sizeof(args->hostname),
"%.*s",
(int) strcspn(host, ":"), host);
return args;
}