All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH nft 1/2] datatype: replace strncmp() by strcmp() in unit parser
@ 2024-08-14 11:07 Pablo Neira Ayuso
  2024-08-14 11:07 ` [PATCH nft 2/2] datatype: improve error reporting when time unit is not correct Pablo Neira Ayuso
  2024-08-14 11:18 ` [PATCH nft 1/2] datatype: replace strncmp() by strcmp() in unit parser Pablo Neira Ayuso
  0 siblings, 2 replies; 3+ messages in thread
From: Pablo Neira Ayuso @ 2024-08-14 11:07 UTC (permalink / raw)
  To: netfilter-devel

Bail out if unit cannot be parsed:

 ruleset.nft:5:77-106: Error: Wrong rate format, expecting bytes or kbytes or mbytes
 add rule netdev firewall PROTECTED_IPS update @quota_temp_before { ip daddr quota over 45000 mbytes/second } add @quota_trigger { ip daddr }
                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

improve error reporting while at this.

Fixes: 6615676d825e ("src: add per-bytes limit")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
 src/datatype.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/datatype.c b/src/datatype.c
index d398a9c8c618..8879ff0523e8 100644
--- a/src/datatype.c
+++ b/src/datatype.c
@@ -1485,14 +1485,14 @@ static struct error_record *time_unit_parse(const struct location *loc,
 struct error_record *data_unit_parse(const struct location *loc,
 				     const char *str, uint64_t *rate)
 {
-	if (strncmp(str, "bytes", strlen("bytes")) == 0)
+	if (strcmp(str, "bytes") == 0)
 		*rate = 1ULL;
-	else if (strncmp(str, "kbytes", strlen("kbytes")) == 0)
+	else if (strcmp(str, "kbytes") == 0)
 		*rate = 1024;
-	else if (strncmp(str, "mbytes", strlen("mbytes")) == 0)
+	else if (strcmp(str, "mbytes") == 0)
 		*rate = 1024 * 1024;
 	else
-		return error(loc, "Wrong rate format");
+		return error(loc, "Wrong unit format, expecting bytes or kbytes or mbytes");
 
 	return NULL;
 }
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-08-14 11:19 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-14 11:07 [PATCH nft 1/2] datatype: replace strncmp() by strcmp() in unit parser Pablo Neira Ayuso
2024-08-14 11:07 ` [PATCH nft 2/2] datatype: improve error reporting when time unit is not correct Pablo Neira Ayuso
2024-08-14 11:18 ` [PATCH nft 1/2] datatype: replace strncmp() by strcmp() in unit parser Pablo Neira Ayuso

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.