* [PATCH] app/testpmd: add IPv4 length field matching
@ 2023-07-01 1:47 Bing Zhao
2023-07-01 9:26 ` [PATCH v2] app/testpmd: add IP " Bing Zhao
0 siblings, 1 reply; 4+ messages in thread
From: Bing Zhao @ 2023-07-01 1:47 UTC (permalink / raw)
To: orika, aman.deep.singh, yuying.zhang; +Cc: dev
In the command line, the total length field translation support is
added to pass the value to the rte_flow API.
Signed-off-by: Bing Zhao <bingz@nvidia.com>
---
app/test-pmd/cmdline_flow.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index bd626e2347..738ecf2a40 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -313,6 +313,7 @@ enum index {
ITEM_IPV4,
ITEM_IPV4_VER_IHL,
ITEM_IPV4_TOS,
+ ITEM_IPV4_LENGTH,
ITEM_IPV4_ID,
ITEM_IPV4_FRAGMENT_OFFSET,
ITEM_IPV4_TTL,
@@ -1604,6 +1605,7 @@ static const enum index item_vlan[] = {
static const enum index item_ipv4[] = {
ITEM_IPV4_VER_IHL,
ITEM_IPV4_TOS,
+ ITEM_IPV4_LENGTH,
ITEM_IPV4_ID,
ITEM_IPV4_FRAGMENT_OFFSET,
ITEM_IPV4_TTL,
@@ -4229,6 +4231,14 @@ static const struct token token_list[] = {
.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_ipv4,
hdr.type_of_service)),
},
+ [ITEM_IPV4_LENGTH] = {
+ .name = "length",
+ .help = "total length",
+ .next = NEXT(item_ipv4, NEXT_ENTRY(COMMON_UNSIGNED),
+ item_param),
+ .args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_ipv4,
+ hdr.total_length)),
+ },
[ITEM_IPV4_ID] = {
.name = "packet_id",
.help = "fragment packet id",
--
2.34.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2] app/testpmd: add IP length field matching
2023-07-01 1:47 [PATCH] app/testpmd: add IPv4 length field matching Bing Zhao
@ 2023-07-01 9:26 ` Bing Zhao
2023-07-06 11:38 ` Ori Kam
0 siblings, 1 reply; 4+ messages in thread
From: Bing Zhao @ 2023-07-01 9:26 UTC (permalink / raw)
To: orika, aman.deep.singh, yuying.zhang; +Cc: dev
Added support of parsing IPv4 total length and IPv6 payload length
in the command line. The value of L3 length can be passed to the
rte_flow API for testing.
Signed-off-by: Bing Zhao <bingz@nvidia.com>
---
app/test-pmd/cmdline_flow.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index bd626e2347..cc47d6cb80 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -313,6 +313,7 @@ enum index {
ITEM_IPV4,
ITEM_IPV4_VER_IHL,
ITEM_IPV4_TOS,
+ ITEM_IPV4_LENGTH,
ITEM_IPV4_ID,
ITEM_IPV4_FRAGMENT_OFFSET,
ITEM_IPV4_TTL,
@@ -322,6 +323,7 @@ enum index {
ITEM_IPV6,
ITEM_IPV6_TC,
ITEM_IPV6_FLOW,
+ ITEM_IPV6_LEN,
ITEM_IPV6_PROTO,
ITEM_IPV6_HOP,
ITEM_IPV6_SRC,
@@ -1604,6 +1606,7 @@ static const enum index item_vlan[] = {
static const enum index item_ipv4[] = {
ITEM_IPV4_VER_IHL,
ITEM_IPV4_TOS,
+ ITEM_IPV4_LENGTH,
ITEM_IPV4_ID,
ITEM_IPV4_FRAGMENT_OFFSET,
ITEM_IPV4_TTL,
@@ -1617,6 +1620,7 @@ static const enum index item_ipv4[] = {
static const enum index item_ipv6[] = {
ITEM_IPV6_TC,
ITEM_IPV6_FLOW,
+ ITEM_IPV6_LEN,
ITEM_IPV6_PROTO,
ITEM_IPV6_HOP,
ITEM_IPV6_SRC,
@@ -4229,6 +4233,14 @@ static const struct token token_list[] = {
.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_ipv4,
hdr.type_of_service)),
},
+ [ITEM_IPV4_LENGTH] = {
+ .name = "length",
+ .help = "total length",
+ .next = NEXT(item_ipv4, NEXT_ENTRY(COMMON_UNSIGNED),
+ item_param),
+ .args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_ipv4,
+ hdr.total_length)),
+ },
[ITEM_IPV4_ID] = {
.name = "packet_id",
.help = "fragment packet id",
@@ -4302,6 +4314,14 @@ static const struct token token_list[] = {
hdr.vtc_flow,
"\x00\x0f\xff\xff")),
},
+ [ITEM_IPV6_LEN] = {
+ .name = "length",
+ .help = "payload length",
+ .next = NEXT(item_ipv6, NEXT_ENTRY(COMMON_UNSIGNED),
+ item_param),
+ .args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_ipv6,
+ hdr.payload_len)),
+ },
[ITEM_IPV6_PROTO] = {
.name = "proto",
.help = "protocol (next header)",
--
2.34.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: [PATCH v2] app/testpmd: add IP length field matching
2023-07-01 9:26 ` [PATCH v2] app/testpmd: add IP " Bing Zhao
@ 2023-07-06 11:38 ` Ori Kam
2023-07-06 13:57 ` Ferruh Yigit
0 siblings, 1 reply; 4+ messages in thread
From: Ori Kam @ 2023-07-06 11:38 UTC (permalink / raw)
To: Bing Zhao, aman.deep.singh, yuying.zhang; +Cc: dev
> -----Original Message-----
> From: Bing Zhao <bingz@nvidia.com>
> Sent: Saturday, July 1, 2023 12:27 PM
> Subject: [PATCH v2] app/testpmd: add IP length field matching
>
> Added support of parsing IPv4 total length and IPv6 payload length
> in the command line. The value of L3 length can be passed to the
> rte_flow API for testing.
>
> Signed-off-by: Bing Zhao <bingz@nvidia.com>
> ---
Acked-by: Ori Kam <orika@nvidia.com>
Best,
Ori
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] app/testpmd: add IP length field matching
2023-07-06 11:38 ` Ori Kam
@ 2023-07-06 13:57 ` Ferruh Yigit
0 siblings, 0 replies; 4+ messages in thread
From: Ferruh Yigit @ 2023-07-06 13:57 UTC (permalink / raw)
To: Ori Kam, Bing Zhao, aman.deep.singh, yuying.zhang; +Cc: dev
On 7/6/2023 12:38 PM, Ori Kam wrote:
>
>
>> -----Original Message-----
>> From: Bing Zhao <bingz@nvidia.com>
>> Sent: Saturday, July 1, 2023 12:27 PM
>> Subject: [PATCH v2] app/testpmd: add IP length field matching
>>
>> Added support of parsing IPv4 total length and IPv6 payload length
>> in the command line. The value of L3 length can be passed to the
>> rte_flow API for testing.
>>
>> Signed-off-by: Bing Zhao <bingz@nvidia.com>
>> ---
>
> Acked-by: Ori Kam <orika@nvidia.com>
>
Applied to dpdk-next-net/main, thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-07-06 13:58 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-01 1:47 [PATCH] app/testpmd: add IPv4 length field matching Bing Zhao
2023-07-01 9:26 ` [PATCH v2] app/testpmd: add IP " Bing Zhao
2023-07-06 11:38 ` Ori Kam
2023-07-06 13:57 ` Ferruh Yigit
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).