diff options
Diffstat (limited to 'src/stateless/messaging')
-rw-r--r-- | src/stateless/messaging/trex_stateless_messaging.cpp | 5 | ||||
-rw-r--r-- | src/stateless/messaging/trex_stateless_messaging.h | 17 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/stateless/messaging/trex_stateless_messaging.cpp b/src/stateless/messaging/trex_stateless_messaging.cpp index 17acb21e..dc656e67 100644 --- a/src/stateless/messaging/trex_stateless_messaging.cpp +++ b/src/stateless/messaging/trex_stateless_messaging.cpp @@ -316,3 +316,8 @@ TrexStatelessRxFeaturesToJson::handle(CRxCoreStateless *rx_core) { return true; } +bool +TrexStatelessRxUpdateSrcAddr::handle(CRxCoreStateless *rx_core) { + rx_core->get_rx_port_mngr(m_port_id).update_src_addr(m_src_addr); + return true; +} diff --git a/src/stateless/messaging/trex_stateless_messaging.h b/src/stateless/messaging/trex_stateless_messaging.h index 79a6bf08..5f00c244 100644 --- a/src/stateless/messaging/trex_stateless_messaging.h +++ b/src/stateless/messaging/trex_stateless_messaging.h @@ -27,6 +27,7 @@ limitations under the License. #include "trex_exception.h" #include "trex_stateless_rx_defs.h" #include "os_time.h" +#include "utl_ip.h" class TrexStatelessDpCore; class CRxCoreStateless; @@ -568,6 +569,22 @@ private: }; +class TrexStatelessRxUpdateSrcAddr : public TrexStatelessCpToRxMsgBase { +public: + TrexStatelessRxUpdateSrcAddr(uint8_t port_id, + const CManyIPInfo &src_addr) { + + m_port_id = port_id; + m_src_addr = src_addr; + } + + virtual bool handle(CRxCoreStateless *rx_core); + +private: + uint8_t m_port_id; + CManyIPInfo m_src_addr; +}; + /** * a request from RX core to dump to Json the RX features */ |