summaryrefslogtreecommitdiffhomepage
path: root/tests/packet_data_generator/src/x1.erl
diff options
context:
space:
mode:
Diffstat (limited to 'tests/packet_data_generator/src/x1.erl')
-rw-r--r--tests/packet_data_generator/src/x1.erl90
1 files changed, 90 insertions, 0 deletions
diff --git a/tests/packet_data_generator/src/x1.erl b/tests/packet_data_generator/src/x1.erl
new file mode 100644
index 00000000..6935e021
--- /dev/null
+++ b/tests/packet_data_generator/src/x1.erl
@@ -0,0 +1,90 @@
+%% Copyright (C) 2013 Nippon Telegraph and Telephone Corporation.
+%% Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp>
+%%
+%% Licensed under the Apache License, Version 2.0 (the "License");
+%% you may not use this file except in compliance with the License.
+%% You may obtain a copy of the License at
+%%
+%% http://www.apache.org/licenses/LICENSE-2.0
+%%
+%% Unless required by applicable law or agreed to in writing, software
+%% distributed under the License is distributed on an "AS IS" BASIS,
+%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+%% implied.
+%% See the License for the specific language governing permissions and
+%% limitations under the License.
+
+-module(x1).
+-export([x/0]).
+
+-include_lib("flower/include/flower_packet.hrl").
+
+cookie(Bin) ->
+ <<Int:64>> = Bin,
+ Int.
+
+x() ->
+ List = [
+ skip,
+ #ofp_packet_out{
+ buffer_id = ?OFP_NO_BUFFER,in_port = controller,
+ actions =
+ [#ofp_action_output{port = all,max_len = 65535}],
+ data =
+ <<242,11,164,208,63,112,242,11,164,125,248,234,8,0,69,0,
+ 0,84,248,26,0,0,255,1,175,139,10,0,0,1,10,0,0,2,8,0,2,
+ 8,247,96,0,0,49,214,2,0,0,0,0,0,171,141,45,49,0,0,0,0,
+ 16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,44,45,46,47,0,0,0,0,0,0,
+ 0,0>>},
+ #ofp_flow_mod{
+ cookie = cookie(<<0,0,0,0,0,0,0,0>>),
+ command = add,idle_timeout = 0,
+ hard_timeout = 0,priority = 123,buffer_id = 65535,
+ out_port = all,flags = [],
+ match =
+ #ofp_match{
+ wildcards = 16#3ffff7,
+ dl_dst = <<"\362\v\244}\370\352">>,
+ % XXX ryu and flower have different defaults for the
+ % followin fields.
+ in_port = 0,
+ dl_src = <<0:6/unit:8>>
+ },
+ actions = [#ofp_action_output{port = 6,max_len = 65535}]},
+ skip,
+ #ofp_packet_in{
+ buffer_id = 2,total_len=42,reason = action,in_port = 99,
+ data =
+ <<255,255,255,255,255,255,242,11,164,125,248,234,8,6,0,
+ 1,8,0,6,4,0,1,242,11,164,125,248,234,10,0,0,1,0,0,0,0,
+ 0,0,10,0,0,3>>},
+
+ features_request,
+ #ofp_switch_features{ % features_reply
+ datapath_id = 16#ff12345678,n_buffers = 0,n_tables = 255,
+ capabilities =
+ [arp_match_ip,ip_reasm,stp,flow_stats],
+ actions =
+ [enqueue,set_nw_src,set_vlan_vid,output],
+ ports =
+ [#ofp_phy_port{
+ port_no = 7,hw_addr = <<"\362\v\244\320?p">>,
+ name = <<"Port7">>,
+ config = [],
+ state = [stp_block],
+ curr = [autoneg,copper,'100mb_fd'],
+ advertised = [autoneg,copper],
+ supported = [autoneg,copper,'100mb_fd'],
+ peer = [autoneg,copper,'100mb_fd']},
+ #ofp_phy_port{
+ port_no = 6,hw_addr = <<"\362\v\244}\370\352">>,
+ name = <<"Port6">>,
+ config = [],
+ state = [stp_listen],
+ curr = [autoneg,copper,'100mb_fd'],
+ advertised = [autoneg,copper],
+ supported = [autoneg,copper,'100mb_fd'],
+ peer = [autoneg,copper,'100mb_fd']}]}
+ ],
+ lists:foldl(fun x:do/2, {1, 0}, List).