29 lines
1.0 KiB
Diff
29 lines
1.0 KiB
Diff
|
From 920cd815bafea084f68cc4309399aea77bd7f66b Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= <pemensik@redhat.com>
|
||
|
Date: Fri, 3 Sep 2021 14:11:42 +0200
|
||
|
Subject: [PATCH 03/15] Small safeguard to unexpected data
|
||
|
|
||
|
Make sure negative index is not used for comparison. It seems code in
|
||
|
option parsing does not allow it to be empty, but insist on it also in
|
||
|
this place.
|
||
|
---
|
||
|
src/dhcp-common.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/dhcp-common.c b/src/dhcp-common.c
|
||
|
index 73568a9..85b269a 100644
|
||
|
--- a/src/dhcp-common.c
|
||
|
+++ b/src/dhcp-common.c
|
||
|
@@ -88,7 +88,7 @@ int match_netid_wild(struct dhcp_netid *check, struct dhcp_netid *pool)
|
||
|
for (; check; check = check->next)
|
||
|
{
|
||
|
const int check_len = strlen(check->net);
|
||
|
- const int is_wc = (check->net[check_len - 1] == '*');
|
||
|
+ const int is_wc = (check_len > 0 && check->net[check_len - 1] == '*');
|
||
|
|
||
|
/* '#' for not is for backwards compat. */
|
||
|
if (check->net[0] != '!' && check->net[0] != '#')
|
||
|
--
|
||
|
2.31.1
|
||
|
|