1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-12 14:14:48 +02:00

relay/api: use function asprintf to build key and check websocket reply

This commit is contained in:
Sébastien Helleu
2024-04-07 17:12:06 +02:00
parent 86dea12b71
commit ec8c4cc042
@@ -136,7 +136,7 @@ relay_remote_network_check_auth (struct t_relay_remote *remote,
cJSON *json_body, *json_error;
const char *msg_error, *msg_resp_error, *ptr_ws_accept;
char *key, hash[160 / 8], sec_websocket_accept[128];
int length, accept_ok, hash_size;
int accept_ok, hash_size;
http_resp = NULL;
msg_error = NULL;
@@ -177,12 +177,9 @@ relay_remote_network_check_auth (struct t_relay_remote *remote,
"sec-websocket-accept");
if (ptr_ws_accept)
{
length = strlen (remote->websocket_key) + strlen (WEBSOCKET_GUID) + 1;
key = malloc (length);
if (key)
if (weechat_asprintf (&key, "%s%s", remote->websocket_key,
WEBSOCKET_GUID) >= 0)
{
snprintf (key, length,
"%s%s", remote->websocket_key, WEBSOCKET_GUID);
if (weechat_crypto_hash (key, strlen (key), "sha1",
hash, &hash_size))
{