summaryrefslogtreecommitdiffstats
path: root/src/stateless
diff options
context:
space:
mode:
Diffstat (limited to 'src/stateless')
-rw-r--r--src/stateless/rx/trex_stateless_rx_port_mngr.cpp22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/stateless/rx/trex_stateless_rx_port_mngr.cpp b/src/stateless/rx/trex_stateless_rx_port_mngr.cpp
index b01665ec..6ebe0a97 100644
--- a/src/stateless/rx/trex_stateless_rx_port_mngr.cpp
+++ b/src/stateless/rx/trex_stateless_rx_port_mngr.cpp
@@ -367,18 +367,24 @@ RXServer::create(uint8_t port_id, CPortLatencyHWBase *io, const CManyIPInfo *src
void
RXServer::handle_pkt(const rte_mbuf_t *m) {
-
- RXPktParser parser(m);
-
- if (parser.m_icmp) {
- handle_icmp(parser);
- } else if (parser.m_arp) {
- handle_arp(parser);
- } else {
+ try {
+
+ RXPktParser parser(m);
+
+ if (parser.m_icmp) {
+ handle_icmp(parser);
+ } else if (parser.m_arp) {
+ handle_arp(parser);
+ } else {
+ return;
+ }
+
+ } catch (const TrexException &e) {
return;
}
}
+
void
RXServer::handle_icmp(RXPktParser &parser) {