- Fix for #1062: declaration before statement, avoid print of null,

and redundant check for array size.
And changelog note for merge of #1062.
This commit is contained in:
W.C.A. Wijngaards 2024-05-07 14:05:21 +02:00
parent 49569b81aa
commit c085a53268
2 changed files with 11 additions and 3 deletions

View file

@ -1,3 +1,9 @@
7 May 2024: Wouter
- Merge #1062: Fix potential overflow bug while parsing port in
function cfg_mark_ports.
- Fix for #1062: declaration before statement, avoid print of null,
and redundant check for array size.
1 May 2024: Wouter
- Fix for the DNSBomb vulnerability CVE-2024-33655. Thanks to Xiang Li
from the Network and Information Security Lab of Tsinghua University

View file

@ -1776,12 +1776,13 @@ init_outgoing_availports(int* a, int num)
static int
extract_port_from_str(const char* str, int max_port) {
char* endptr;
long int value;
if (str == NULL || *str == '\0') {
log_err("str: '%s' is invalid", str);
log_err("str: '%s' is invalid", (str?str:"NULL"));
return -1;
}
long int value = strtol(str, &endptr, 10);
value = strtol(str, &endptr, 10);
if ((endptr == str) || (*endptr != '\0')) {
log_err("cannot parse port number '%s'", str);
return -1;
@ -1820,6 +1821,7 @@ cfg_mark_ports(const char* str, int allow, int* avail, int num)
log_err("Failed to parse the port number");
return 0;
}
if(port < num)
avail[port] = (allow?port:0);
} else {
char buf[16];