diff options
-rw-r--r-- | src/debug.cpp | 4 | ||||
-rw-r--r-- | src/pkt_gen.cpp | 6 | ||||
-rw-r--r-- | src/pkt_gen.h | 3 |
3 files changed, 8 insertions, 5 deletions
diff --git a/src/debug.cpp b/src/debug.cpp index d0b7cf11..e272424c 100644 --- a/src/debug.cpp +++ b/src/debug.cpp @@ -142,7 +142,7 @@ rte_mbuf_t *CTrexDebug::create_test_pkt(int ip_ver, uint16_t l4_proto, uint8_t t pkt = CTestPktGen::create_test_pkt(l3_type, l4_proto, ttl, ip_id, flags, 1000, pkt_size); - /* DEBUG print the packet + /* DEBUG print the packet utl_k12_pkt_format(stdout,pkt, pkt_size) ; */ @@ -370,6 +370,7 @@ int CTrexDebug::verify_hw_rules(bool recv_all) { case STL: if ( CGlobalInfo::m_options.is_stateless() ) { exp_q = MAIN_DPDK_RX_Q; + pkt_flags |= DPF_TOS_1; } else { exp_q = MAIN_DPDK_DATA_Q; } @@ -379,6 +380,7 @@ int CTrexDebug::verify_hw_rules(bool recv_all) { exp_q = MAIN_DPDK_DATA_Q; } else { exp_q = MAIN_DPDK_RX_Q; + pkt_flags |= DPF_TOS_1; } break; default: diff --git a/src/pkt_gen.cpp b/src/pkt_gen.cpp index 45e3a298..656b1b06 100644 --- a/src/pkt_gen.cpp +++ b/src/pkt_gen.cpp @@ -222,7 +222,7 @@ char *CTestPktGen::create_test_pkt(uint16_t l3_type, uint16_t l4_proto, uint8_t switch(l3_type) { case EthernetHeader::Protocol::IP: ip->setTimeToLive(ttl); - if (ttl==TTL_RESERVE_DUPLICATE || ttl==(TTL_RESERVE_DUPLICATE-1)) { + if (flags & DPF_TOS_1) { ip->setTOS(TOS_TTL_RESERVE_DUPLICATE); }else{ ip->setTOS(0x2); @@ -232,11 +232,11 @@ char *CTestPktGen::create_test_pkt(uint16_t l3_type, uint16_t l4_proto, uint8_t break; case EthernetHeader::Protocol::IPv6: ipv6->setHopLimit(ttl); - if (ttl==TTL_RESERVE_DUPLICATE || ttl==(TTL_RESERVE_DUPLICATE-1)) { + if (flags & DPF_TOS_1) { ipv6->setTrafficClass(TOS_TTL_RESERVE_DUPLICATE); }else{ ipv6->setTrafficClass(0x2); - } + } break; } diff --git a/src/pkt_gen.h b/src/pkt_gen.h index 309e02b9..8dcba624 100644 --- a/src/pkt_gen.h +++ b/src/pkt_gen.h @@ -37,7 +37,8 @@ enum { enum { DPF_VLAN = 0x1, DPF_QINQ = 0X2, - DPF_RXCHECK = 0x4 + DPF_RXCHECK = 0x4, + DPF_TOS_1 = 0x8, }; class CTestPktGen { |