From 317dfe747dee49eb21ff3ea78404c97713fdd0df Mon Sep 17 00:00:00 2001 From: starnakin Date: Wed, 2 Jul 2025 07:31:00 -0500 Subject: [PATCH] fix: leak --- src/response.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/response.c b/src/response.c index 2acee4e..0cde2f8 100644 --- a/src/response.c +++ b/src/response.c @@ -85,10 +85,13 @@ void icmp_response(const struct icmphdr *icmphdr, const struct scan *data) } } - data->responses->service = get_service_name(data->port_start, "udp"); if (data->responses->service == NULL) - data->responses->service = - get_service_name(data->port_start, "tcp"); + { + data->responses->service = get_service_name(data->port_start, "udp"); + if (data->responses->service == NULL) + data->responses->service = + get_service_name(data->port_start, "tcp"); + } if (data->type & SCAN_SYN && icmphdr->type == 3) data->responses->states[type_index] = FILTERED; else if (data->type & SCAN_ACK && icmphdr->type == 3) @@ -117,10 +120,13 @@ void no_response(const struct scan *data) } } - data->responses->service = get_service_name(data->port_start, "udp"); if (data->responses->service == NULL) - data->responses->service = - get_service_name(data->port_start, "tcp"); + { + data->responses->service = get_service_name(data->port_start, "udp"); + if (data->responses->service == NULL) + data->responses->service = + get_service_name(data->port_start, "tcp"); + } if (data->type & SCAN_SYN) data->responses->states[type_index] = FILTERED; else if (data->type & SCAN_ACK)