From 5257dbb8253fe5b70b75f9c064c4593ca7aee99f Mon Sep 17 00:00:00 2001 From: imarom Date: Wed, 4 Jan 2017 18:46:45 +0200 Subject: draft - unreviewed Signed-off-by: imarom --- .../messaging/trex_stateless_messaging.cpp | 12 ++++---- src/stateless/messaging/trex_stateless_messaging.h | 32 +++++++++++----------- 2 files changed, 23 insertions(+), 21 deletions(-) (limited to 'src/stateless/messaging') diff --git a/src/stateless/messaging/trex_stateless_messaging.cpp b/src/stateless/messaging/trex_stateless_messaging.cpp index aeb1e677..f441c692 100644 --- a/src/stateless/messaging/trex_stateless_messaging.cpp +++ b/src/stateless/messaging/trex_stateless_messaging.cpp @@ -263,18 +263,20 @@ bool TrexStatelessRxQuit::handle (CRxCoreStateless *rx_core) { bool TrexStatelessRxStartCapture::handle(CRxCoreStateless *rx_core) { - rx_core->start_recorder(m_port_id, m_pcap_filename, m_limit); + capture_id_t capture_id = rx_core->start_capture(m_limit, m_filter); /* mark as done */ - m_reply.set_reply(true); + m_reply.set_reply(capture_id); return true; } bool TrexStatelessRxStopCapture::handle(CRxCoreStateless *rx_core) { - rx_core->stop_recorder(m_port_id); - + capture_id_t rc = rx_core->stop_capture(m_capture_id); + + m_reply.set_reply(rc); + return true; } @@ -299,7 +301,7 @@ TrexStatelessRxStopQueue::handle(CRxCoreStateless *rx_core) { bool TrexStatelessRxQueueGetPkts::handle(CRxCoreStateless *rx_core) { - const RXPacketBuffer *pkt_buffer = rx_core->get_rx_queue_pkts(m_port_id); + const TrexPktBuffer *pkt_buffer = rx_core->get_rx_queue_pkts(m_port_id); /* set the reply */ m_reply.set_reply(pkt_buffer); diff --git a/src/stateless/messaging/trex_stateless_messaging.h b/src/stateless/messaging/trex_stateless_messaging.h index 72b92d11..5f4978f5 100644 --- a/src/stateless/messaging/trex_stateless_messaging.h +++ b/src/stateless/messaging/trex_stateless_messaging.h @@ -28,12 +28,13 @@ limitations under the License. #include "trex_stateless_rx_defs.h" #include "os_time.h" #include "utl_ip.h" +#include "trex_stateless_capture.h" class TrexStatelessDpCore; class CRxCoreStateless; class TrexStreamsCompiledObj; class CFlowGenListPerThread; -class RXPacketBuffer; +class TrexPktBuffer; /** * Generic message reply object @@ -487,36 +488,35 @@ class TrexStatelessRxQuit : public TrexStatelessCpToRxMsgBase { class TrexStatelessRxStartCapture : public TrexStatelessCpToRxMsgBase { public: - TrexStatelessRxStartCapture(uint8_t port_id, - const std::string &pcap_filename, + TrexStatelessRxStartCapture(const CaptureFilter& filter, uint64_t limit, - MsgReply &reply) : m_reply(reply) { + MsgReply &reply) : m_reply(reply) { - m_port_id = port_id; - m_limit = limit; - m_pcap_filename = pcap_filename; + m_limit = limit; + m_filter = filter; } virtual bool handle(CRxCoreStateless *rx_core); private: - uint8_t m_port_id; - std::string m_pcap_filename; - uint64_t m_limit; - MsgReply &m_reply; + uint8_t m_port_id; + uint64_t m_limit; + CaptureFilter m_filter; + MsgReply &m_reply; }; class TrexStatelessRxStopCapture : public TrexStatelessCpToRxMsgBase { public: - TrexStatelessRxStopCapture(uint8_t port_id) { - m_port_id = port_id; + TrexStatelessRxStopCapture(capture_id_t capture_id, MsgReply &reply) : m_reply(reply) { + m_capture_id = capture_id; } virtual bool handle(CRxCoreStateless *rx_core); private: - uint8_t m_port_id; + capture_id_t m_capture_id; + MsgReply &m_reply; }; @@ -556,7 +556,7 @@ private: class TrexStatelessRxQueueGetPkts : public TrexStatelessCpToRxMsgBase { public: - TrexStatelessRxQueueGetPkts(uint8_t port_id, MsgReply &reply) : m_reply(reply) { + TrexStatelessRxQueueGetPkts(uint8_t port_id, MsgReply &reply) : m_reply(reply) { m_port_id = port_id; } @@ -568,7 +568,7 @@ public: private: uint8_t m_port_id; - MsgReply &m_reply; + MsgReply &m_reply; }; -- cgit 1.2.3-korg