[dpdk-dev] [PATCH] app/testpmd: add boundary check in flow commandline

Wei Zhao wei.zhao1 at intel.com
Tue Dec 4 06:51:30 CET 2018


There is need to add boundary for input number from commandline,
If it beyond the defination, code will return error.

Signed-off-by: Wei Zhao <wei.zhao1 at intel.com>
---
 app/test-pmd/cmdline_flow.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 23ea7cc..515f95c 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -4325,6 +4325,25 @@ parse_int(struct context *ctx, const struct token *token,
 	}
 	buf = (uint8_t *)ctx->object + arg->offset;
 	size = arg->size;
+	switch (size) {
+	case sizeof(uint8_t):
+		if (u > 0xff)
+			return -1;
+	case sizeof(uint16_t):
+		if (u > 0xffff)
+			return -1;
+	case sizeof(uint8_t [3]):
+		if (u > 0xffffff)
+			return -1;
+	case sizeof(uint32_t):
+		if (u > 0xffffffff)
+			return -1;
+	case sizeof(uint64_t):
+		if (u > 0xffffffffffffffff)
+			return -1;
+	default:
+		break;
+	}
 objmask:
 	switch (size) {
 	case sizeof(uint8_t):
-- 
2.7.5



More information about the dev mailing list