summaryrefslogtreecommitdiffstats
path: root/src/stateless/cp
diff options
context:
space:
mode:
authorimarom <imarom@cisco.com>2016-07-24 16:51:56 +0300
committerimarom <imarom@cisco.com>2016-07-24 16:53:37 +0300
commiteab24156c82eb6d6bdef434ef48ae7287e486f6b (patch)
treeb0f0c5057059a02ae2ec7a37381b707be0eccf83 /src/stateless/cp
parent5a017c1a348780c250947d75d307ac47633dff1d (diff)
breakge by previous commit - variable packet size can be inc/dec and not
random
Diffstat (limited to 'src/stateless/cp')
-rw-r--r--src/stateless/cp/trex_stream_vm.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/stateless/cp/trex_stream_vm.cpp b/src/stateless/cp/trex_stream_vm.cpp
index f04c9f3a..9e4fbe1c 100644
--- a/src/stateless/cp/trex_stream_vm.cpp
+++ b/src/stateless/cp/trex_stream_vm.cpp
@@ -408,8 +408,15 @@ void StreamVm::build_flow_var_table() {
}
/* expected packet size calculation */
- uint16_t range = var.m_ins.m_ins_flowv->m_max_value - var.m_ins.m_ins_flowv->m_min_value;
- m_expected_pkt_size = var.m_ins.m_ins_flowv->m_min_value + g_fastrand_util.calc_fastrand_avg(range);
+
+ /* for random packet size - we need to find the average */
+ if (var.m_ins.m_ins_flowv->m_op == StreamVmInstructionFlowMan::FLOW_VAR_OP_RANDOM) {
+ uint16_t range = var.m_ins.m_ins_flowv->m_max_value - var.m_ins.m_ins_flowv->m_min_value;
+ m_expected_pkt_size = var.m_ins.m_ins_flowv->m_min_value + g_fastrand_util.calc_fastrand_avg(range);
+ } else {
+ m_expected_pkt_size = (var.m_ins.m_ins_flowv->m_min_value + var.m_ins.m_ins_flowv->m_max_value) / 2.0;
+ }
+
}
}