From a6c7b86204257087db702876646db38acad8a698 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20De=20Keersmaeker?= <francois.dekeersmaeker@uclouvain.be> Date: Wed, 17 Jul 2024 16:04:56 +0200 Subject: [PATCH] DNS: Fixed memory leak --- src/dns.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/dns.c b/src/dns.c index b99c1d9..3b7c305 100644 --- a/src/dns.c +++ b/src/dns.c @@ -513,6 +513,7 @@ int dns_receive_response(int sockfd, struct sockaddr_in *server_addr, dns_messag if (setsockopt(sockfd, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)) < 0) { perror("Error setting socket receive timeout"); + free(buffer); return -1; } @@ -526,11 +527,14 @@ int dns_receive_response(int sockfd, struct sockaddr_in *server_addr, dns_messag } else { perror("Failed receiving DNS response."); } + free(buffer); return -1; } // DNS response was received successfully, parse it *dns_message = dns_parse_message(buffer); + + free(buffer); return 0; } -- GitLab