CPqD / ofsoftswitch13

OpenFlow 1.3 switch.
http://cpqd.github.com/ofsoftswitch13
304 stars 192 forks source link

Wrong remote asynchronous configuration check in datapath.c/send_openflow_buffer () #172

Closed ljerezchaves closed 9 years ago

ljerezchaves commented 9 years ago

When checking if the message is enabled in the asynchronous configuration before sending buffer to remote at send_openflow_buffer method in datapath.c, it doesn't make sense to check the packet_in_mask array for OFPPR_MODIFY messages (line 490), nor the port_status_mask or packet_in_mask arrays for OFPT_FLOW_REMOVED messages (lines 495 -- 504). The same happens at line 520.

The correct would be using the port_status_mask for all OFPT_PORT_STATUS messages, and flow_removed_mask for all OFPT_FLOW_REMOVED reasons. See Section A.3.10 - Set Asynchronous Configuration Message of OpenFlow 1.3.0 spec.

ederlf commented 9 years ago

Thanks for your fix! I am closing the issue.