Openflow parser

This commit is contained in:
Eishun Kondoh 2017-11-13 22:52:53 +09:00
parent 70b0d8919e
commit fc02a678de
338 changed files with 9081 additions and 0 deletions

40
lib/openflow/set_async.ex Normal file
View file

@ -0,0 +1,40 @@
defmodule Openflow.SetAsync do
defstruct(
version: 4,
xid: 0,
datapath_id: nil, # virtual field
aux_id: 0, # virtual field
packet_in_mask_master: 0,
packet_in_mask_slave: 0,
port_status_mask_master: 0,
port_status_mask_slave: 0,
flow_removed_mask_master: 0,
flow_removed_mask_slave: 0
)
alias __MODULE__
def ofp_type, do: 28
def read(<<packet_in_mask_master::32, packet_in_mask_slave::32,
port_status_mask_master::32, port_status_mask_slave::32,
flow_removed_mask_master::32, flow_removed_mask_slave::32>>) do
%SetAsync{packet_in_mask_master: packet_in_mask_master,
packet_in_mask_slave: packet_in_mask_slave,
port_status_mask_master: port_status_mask_master,
port_status_mask_slave: port_status_mask_slave,
flow_removed_mask_master: flow_removed_mask_master,
flow_removed_mask_slave: flow_removed_mask_slave}
end
def to_binary(%SetAsync{packet_in_mask_master: packet_in_mask_master,
packet_in_mask_slave: packet_in_mask_slave,
port_status_mask_master: port_status_mask_master,
port_status_mask_slave: port_status_mask_slave,
flow_removed_mask_master: flow_removed_mask_master,
flow_removed_mask_slave: flow_removed_mask_slave}) do
<<packet_in_mask_master::32, packet_in_mask_slave::32,
port_status_mask_master::32, port_status_mask_slave::32,
flow_removed_mask_master::32, flow_removed_mask_slave::32>>
end
end