summaryrefslogtreecommitdiffstats
path: root/src/latency.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/latency.cpp')
-rw-r--r--src/latency.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/latency.cpp b/src/latency.cpp
index 841913cf..768e161b 100644
--- a/src/latency.cpp
+++ b/src/latency.cpp
@@ -436,7 +436,7 @@ bool CCPortLatency::check_packet(rte_mbuf_t * m,CRx_check_header * & rx_p) {
m_no_ipv4_option++;
return (false);
}
- m_parent->get_nat_manager()->handle_packet_ipv4(lp,parser.m_ipv4);
+ m_parent->get_nat_manager()->handle_packet_ipv4(lp, parser.m_ipv4, true);
opt_len -= CNatOption::noOPTION_LEN;
opt_ptr += CNatOption::noOPTION_LEN;
break;
@@ -445,10 +445,11 @@ bool CCPortLatency::check_packet(rte_mbuf_t * m,CRx_check_header * & rx_p) {
return (false);
} // End of switch
} // End of while
- if (CGlobalInfo::is_learn_mode(CParserOption::LEARN_MODE_TCP_ACK)
- && parser.IsNatInfoPkt()) {
- m_parent->get_nat_manager()->handle_packet_ipv4(NULL, parser.m_ipv4);
- }
+
+ bool first;
+ if (CGlobalInfo::is_learn_mode(CParserOption::LEARN_MODE_TCP) && parser.IsNatInfoPkt(first)) {
+ m_parent->get_nat_manager()->handle_packet_ipv4(NULL, parser.m_ipv4, first);
+ }
return (true);
} // End of check for non-latency packet
@@ -910,6 +911,10 @@ void CLatencyManager::DumpShortRxCheck(FILE *fd){
}
}
+void CLatencyManager::dump_nat_flow_table(FILE *fd) {
+ m_nat_check_manager.Dump(fd);
+}
+
void CLatencyManager::rx_check_dump_json(std::string & json){
if ( get_is_rx_check_mode() ) {
m_rx_check_manager.dump_json(json );