Merge remote-tracking branch 'origin/fastpath'

* origin/fastpath:
  Fix mem leak in DHCP analyzer.
  Fix a unit test outdated by recent sumstats changes.
This commit is contained in:
Robin Sommer 2013-08-09 15:30:15 -07:00
commit c05ee4d907
4 changed files with 21 additions and 11 deletions

View file

@ -1,4 +1,10 @@
2.1-1039 | 2013-08-09 15:30:15 -0700
* Fix mem leak in DHCP analyzer. (Jon Siwek)
* Fix a unit test outdated by recent sumstats changes. (Jon Siwek)
2.1-1036 | 2013-08-05 17:29:11 -0400 2.1-1036 | 2013-08-05 17:29:11 -0400
* Fix the SSL infinite loop I just created. (Seth Hall) * Fix the SSL infinite loop I just created. (Seth Hall)

View file

@ -1 +1 @@
2.1-1036 2.1-1039

View file

@ -219,15 +219,19 @@ flow DHCP_Flow(is_orig: bool) {
} }
Unref(dhcp_msg_val_); Unref(dhcp_msg_val_);
RecordVal* r = new RecordVal(dhcp_msg);
const char* mac_str = fmt_mac(${msg.chaddr}.data(), ${msg.chaddr}.length());
RecordVal* r = new RecordVal(dhcp_msg);
r->Assign(0, new Val(${msg.op}, TYPE_COUNT)); r->Assign(0, new Val(${msg.op}, TYPE_COUNT));
r->Assign(1, new Val(${msg.type}, TYPE_COUNT)); r->Assign(1, new Val(${msg.type}, TYPE_COUNT));
r->Assign(2, new Val(${msg.xid}, TYPE_COUNT)); r->Assign(2, new Val(${msg.xid}, TYPE_COUNT));
r->Assign(3, new StringVal(fmt_mac(${msg.chaddr}.data(), ${msg.chaddr}.length()))); r->Assign(3, new StringVal(mac_str));
r->Assign(4, new AddrVal(${msg.ciaddr})); r->Assign(4, new AddrVal(${msg.ciaddr}));
r->Assign(5, new AddrVal(${msg.yiaddr})); r->Assign(5, new AddrVal(${msg.yiaddr}));
delete [] mac_str;
dhcp_msg_val_ = r; dhcp_msg_val_ = r;
switch ( ${msg.op} ) switch ( ${msg.op} )

View file

@ -26,16 +26,16 @@ global n = 0;
event bro_init() &priority=5 event bro_init() &priority=5
{ {
local r1: SumStats::Reducer = [$stream="test", $apply=set(SumStats::SUM, SumStats::MIN, SumStats::MAX, SumStats::AVERAGE, SumStats::STD_DEV, SumStats::VARIANCE, SumStats::UNIQUE)]; local r1: SumStats::Reducer = [$stream="test", $apply=set(SumStats::SUM, SumStats::MIN, SumStats::MAX, SumStats::AVERAGE, SumStats::STD_DEV, SumStats::VARIANCE, SumStats::UNIQUE)];
SumStats::create([$epoch=5secs, SumStats::create([$name="test",
$epoch=5secs,
$reducers=set(r1), $reducers=set(r1),
$epoch_finished(rt: SumStats::ResultTable) = $epoch_result(ts: time, key: SumStats::Key, result: SumStats::Result) =
{ {
for ( key in rt ) local r = result["test"];
{
local r = rt[key]["test"];
print fmt("Host: %s - num:%d - sum:%.1f - avg:%.1f - max:%.1f - min:%.1f - var:%.1f - std_dev:%.1f - unique:%d", key$host, r$num, r$sum, r$average, r$max, r$min, r$variance, r$std_dev, r$unique); print fmt("Host: %s - num:%d - sum:%.1f - avg:%.1f - max:%.1f - min:%.1f - var:%.1f - std_dev:%.1f - unique:%d", key$host, r$num, r$sum, r$average, r$max, r$min, r$variance, r$std_dev, r$unique);
} },
$epoch_finished(ts: time) =
{
terminate(); terminate();
}]); }]);
} }