tres/lib/openflow/actions/nx_set_tunnel64.ex
2019-05-05 23:39:45 +09:00

26 lines
570 B
Elixir

defmodule Openflow.Action.NxSetTunnel64 do
defstruct(tunnel_id: 0)
@experimenter 0x00002320
@nxast 9
alias __MODULE__
alias Openflow.Action.Experimenter
def new(tunnel_id) do
%NxSetTunnel64{tunnel_id: tunnel_id}
end
def to_binary(%NxSetTunnel64{tunnel_id: tunnel_id}) do
Experimenter.pack_exp_header(<<
@experimenter::32,
@nxast::16,
0::size(6)-unit(8),
tunnel_id::64
>>)
end
def read(<<@experimenter::32, @nxast::16, 0::size(6)-unit(8), tunnel_id::64>>) do
%NxSetTunnel64{tunnel_id: tunnel_id}
end
end