Fix uninitialized router_list argument in dhcp_offer/dhcp_ack.

BIT-1268 #close
This commit is contained in:
Jon Siwek 2014-10-03 09:38:52 -05:00
parent 1555eb65d4
commit b3ff415120
3 changed files with 14 additions and 1 deletions

View file

@ -1,4 +1,9 @@
2.3-208 | 2014-10-03 09:38:52 -0500
* BIT-1268: Fix uninitialized router_list argument in
dhcp_offer/dhcp_ack. (Jon Siwek)
2.3-207 | 2014-10-02 16:39:17 -0700 2.3-207 | 2014-10-02 16:39:17 -0700
* Updating plugin docs. (Robin Sommer) * Updating plugin docs. (Robin Sommer)

View file

@ -1 +1 @@
2.3-207 2.3-208

View file

@ -188,6 +188,9 @@ flow DHCP_Flow(is_orig: bool) {
switch ( type ) switch ( type )
{ {
case DHCPOFFER: case DHCPOFFER:
if ( ! router_list )
router_list = new TableVal(dhcp_router_list);
BifEvent::generate_dhcp_offer(connection()->bro_analyzer(), BifEvent::generate_dhcp_offer(connection()->bro_analyzer(),
connection()->bro_analyzer()->Conn(), connection()->bro_analyzer()->Conn(),
dhcp_msg_val_->Ref(), new AddrVal(subnet_mask), dhcp_msg_val_->Ref(), new AddrVal(subnet_mask),
@ -195,6 +198,9 @@ flow DHCP_Flow(is_orig: bool) {
break; break;
case DHCPACK: case DHCPACK:
if ( ! router_list )
router_list = new TableVal(dhcp_router_list);
BifEvent::generate_dhcp_ack(connection()->bro_analyzer(), BifEvent::generate_dhcp_ack(connection()->bro_analyzer(),
connection()->bro_analyzer()->Conn(), connection()->bro_analyzer()->Conn(),
dhcp_msg_val_->Ref(), new AddrVal(subnet_mask), dhcp_msg_val_->Ref(), new AddrVal(subnet_mask),
@ -202,12 +208,14 @@ flow DHCP_Flow(is_orig: bool) {
break; break;
case DHCPNAK: case DHCPNAK:
Unref(router_list);
BifEvent::generate_dhcp_nak(connection()->bro_analyzer(), BifEvent::generate_dhcp_nak(connection()->bro_analyzer(),
connection()->bro_analyzer()->Conn(), connection()->bro_analyzer()->Conn(),
dhcp_msg_val_->Ref(), host_name); dhcp_msg_val_->Ref(), host_name);
break; break;
default: default:
Unref(router_list);
Unref(host_name); Unref(host_name);
break; break;
} }