diff options
Diffstat (limited to 'src/stateless/cp')
-rw-r--r-- | src/stateless/cp/trex_stateless_port.cpp | 13 | ||||
-rw-r--r-- | src/stateless/cp/trex_stateless_port.h | 6 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/stateless/cp/trex_stateless_port.cpp b/src/stateless/cp/trex_stateless_port.cpp index 7edf1a31..057f6521 100644 --- a/src/stateless/cp/trex_stateless_port.cpp +++ b/src/stateless/cp/trex_stateless_port.cpp @@ -987,6 +987,19 @@ TrexStatelessPort::get_rx_queue_pkts() { return reply.wait_for_reply(); } + +void +TrexStatelessPort::set_src_ipv4(uint32_t ipv4) { + + getPortAttrObj()->set_src_ipv4(ipv4); + + CManyIPInfo src_addr; + src_addr.insert(COneIPv4Info(ipv4, 0, getPortAttrObj()->get_src_mac(), m_port_id)); + + TrexStatelessRxUpdateSrcAddr *msg = new TrexStatelessRxUpdateSrcAddr(m_port_id, src_addr); + send_message_to_rx( (TrexStatelessCpToRxMsgBase *)msg ); +} + Json::Value TrexStatelessPort::rx_features_to_json() { static MsgReply<Json::Value> reply; diff --git a/src/stateless/cp/trex_stateless_port.h b/src/stateless/cp/trex_stateless_port.h index 74ab17f1..3ae74f5a 100644 --- a/src/stateless/cp/trex_stateless_port.h +++ b/src/stateless/cp/trex_stateless_port.h @@ -400,6 +400,12 @@ public: const RXPacketBuffer *get_rx_queue_pkts(); /** + * sets an IPv4 source address + * + */ + void set_src_ipv4(uint32_t ipv4); + + /** * generate a JSON describing the status * of the RX features * |