Merge pull request #2755 from signalwire/eslleak

[esl] 1227669 Resource leak
This commit is contained in:
Andrey Volk 2025-01-31 18:36:53 +03:00 committed by GitHub
commit 5e82e4f305
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 2 additions and 1 deletions

View File

@ -990,6 +990,8 @@ ESL_DECLARE(esl_status_t) esl_connect_timeout(esl_handle_t *handle, const char *
} }
memcpy(&handle->sockaddr, result->ai_addr, result->ai_addrlen); memcpy(&handle->sockaddr, result->ai_addr, result->ai_addrlen);
freeaddrinfo(result);
switch(handle->sockaddr.ss_family) { switch(handle->sockaddr.ss_family) {
case AF_INET: case AF_INET:
sockaddr_in = (struct sockaddr_in*)&(handle->sockaddr); sockaddr_in = (struct sockaddr_in*)&(handle->sockaddr);
@ -1005,7 +1007,6 @@ ESL_DECLARE(esl_status_t) esl_connect_timeout(esl_handle_t *handle, const char *
strncpy(handle->err, "Host resolves to unsupported address family", sizeof(handle->err)); strncpy(handle->err, "Host resolves to unsupported address family", sizeof(handle->err));
goto fail; goto fail;
} }
freeaddrinfo(result);
handle->sock = socket(handle->sockaddr.ss_family, SOCK_STREAM, IPPROTO_TCP); handle->sock = socket(handle->sockaddr.ss_family, SOCK_STREAM, IPPROTO_TCP);