tres/lib/openflow/multipart/desc/reply.ex
2017-11-20 13:38:24 +09:00

31 lines
942 B
Elixir

defmodule Openflow.Multipart.Desc.Reply do
defstruct(
version: 4,
xid: 0,
datapath_id: nil, # virtual field
aux_id: nil,
flags: [],
mfr_desc: "",
hw_desc: "",
sw_desc: "",
serial_num: "",
dp_desc: ""
)
alias __MODULE__
@desc_str_len 256
@serial_num_len 32
def ofp_type, do: 19
def read(<<mfr_desc::size(@desc_str_len)-bytes, hw_desc::size(@desc_str_len)-bytes,
sw_desc::size(@desc_str_len)-bytes, serial_num::size(@serial_num_len)-bytes,
dp_desc::size(@desc_str_len)-bytes>>) do
%Reply{mfr_desc: Openflow.Utils.decode_string(mfr_desc),
hw_desc: Openflow.Utils.decode_string(hw_desc),
sw_desc: Openflow.Utils.decode_string(sw_desc),
serial_num: Openflow.Utils.decode_string(serial_num),
dp_desc: Openflow.Utils.decode_string(dp_desc)}
end
end