summaryrefslogtreecommitdiffstats
path: root/src/bp_sim.h
diff options
context:
space:
mode:
authorimarom <imarom@cisco.com>2016-01-07 09:13:12 -0500
committerimarom <imarom@cisco.com>2016-01-07 09:13:12 -0500
commitc068b9e06666534ac3a426cfe2eb8c3c844eaa95 (patch)
tree442f8812468dc96df7172e448c5118d20cacc9f4 /src/bp_sim.h
parenta7223338770034ba6d495cc6368665a332f5b994 (diff)
stateless sim dry was "too much" dry - no only I/O is skipped
Diffstat (limited to 'src/bp_sim.h')
-rwxr-xr-xsrc/bp_sim.h37
1 files changed, 36 insertions, 1 deletions
diff --git a/src/bp_sim.h b/src/bp_sim.h
index 4b906912..c8775a61 100755
--- a/src/bp_sim.h
+++ b/src/bp_sim.h
@@ -1835,7 +1835,7 @@ public:
protected:
- void fill_raw_packet(rte_mbuf_t * m,CGenNode * node,pkt_dir_t dir);
+ virtual void fill_raw_packet(rte_mbuf_t * m,CGenNode * node,pkt_dir_t dir);
CFileWriterBase * m_writer;
CCapPktRaw * m_raw;
@@ -1849,6 +1849,41 @@ public:
virtual int send_node(CGenNode * node);
};
+/**
+ * same as regular STL but no I/O (dry run)
+ *
+ * @author imarom (07-Jan-16)
+ */
+class CErfIFStlNull : public CErfIFStl {
+public:
+
+ virtual int open_file(std::string file_name) {
+ return (0);
+ }
+
+ virtual int write_pkt(CCapPktRaw *pkt_raw) {
+ return (0);
+ }
+
+ virtual int close_file(void) {
+ return (0);
+ }
+
+ virtual void fill_raw_packet(rte_mbuf_t * m,CGenNode * node,pkt_dir_t dir) {
+
+ }
+
+ virtual int update_mac_addr_from_global_cfg(pkt_dir_t dir, uint8_t * p){
+ return (0);
+ }
+
+
+ virtual int flush_tx_queue(void){
+ return (0);
+
+ }
+
+};
static inline int fill_pkt(CCapPktRaw * raw,rte_mbuf_t * m){