trema 0.4.7 → 0.4.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +33 -54
- data/.hound.yml +3 -0
- data/.rspec +3 -0
- data/.rubocop.yml +17 -1
- data/.travis.yml +14 -18
- data/CHANGELOG.md +10 -0
- data/Gemfile +1 -26
- data/README.md +25 -241
- data/Rakefile +4 -1056
- data/bin/.gitignore +3 -0
- data/bin/trema +163 -237
- data/features/cleanup_on_failure.feature +118 -0
- data/features/logging.feature +73 -0
- data/features/open_flow13.feature +21 -0
- data/features/step_definitions/.gitignore +35 -0
- data/features/step_definitions/.rubocop.yml +5 -0
- data/features/step_definitions/.travis.yml +19 -0
- data/features/step_definitions/Gemfile +9 -0
- data/features/step_definitions/Guardfile +4 -0
- data/features/step_definitions/LICENSE +675 -0
- data/features/step_definitions/README.md +7 -0
- data/features/step_definitions/Rakefile +10 -0
- data/features/step_definitions/show_stats_steps.rb +56 -0
- data/features/step_definitions/virtual_link_steps.rb +8 -0
- data/features/support/env.rb +0 -73
- data/features/support/hooks.rb +6 -50
- data/features/trema_delete_link.feature +30 -0
- data/features/trema_killall.feature +56 -0
- data/features/trema_run.feature +47 -0
- data/features/trema_start.feature +73 -0
- data/features/trema_stop.feature +50 -0
- data/lib/trema.rb +4 -0
- data/lib/trema/command.rb +184 -0
- data/lib/trema/controller.rb +289 -0
- data/lib/trema/dirs.rb +14 -0
- data/lib/trema/drb.rb +32 -0
- data/lib/trema/logger.rb +63 -0
- data/lib/trema/monkey_patch/integer.rb +8 -0
- data/lib/trema/monkey_patch/integer/base_conversions.rb +12 -0
- data/lib/trema/monkey_patch/integer/durations.rb +12 -0
- data/lib/trema/switch.rb +83 -0
- data/lib/trema/version.rb +5 -0
- data/spec/spec_helper.rb +9 -178
- data/spec/trema/controller_spec.rb +4 -53
- data/tasks/.gitignore +34 -0
- data/tasks/LICENSE +675 -0
- data/tasks/README.md +6 -0
- data/tasks/cucumber.rake +14 -0
- data/tasks/flay.rake +15 -0
- data/tasks/flog.rake +25 -0
- data/tasks/gem.rake +15 -0
- data/tasks/reek.rake +11 -0
- data/tasks/relish.rake +8 -0
- data/tasks/rspec.rake +8 -0
- data/tasks/rubocop.rake +2 -16
- data/tasks/yard.rake +11 -0
- data/trema.gemspec +24 -23
- metadata +180 -720
- data/.yardopts +0 -4
- data/Doxyfile +0 -1679
- data/Guardfile +0 -14
- data/bin/quality +0 -31
- data/bin/trema-config +0 -59
- data/build.rb +0 -32
- data/cruise.rb +0 -409
- data/features/.nav +0 -50
- data/features/README.md +0 -7
- data/features/core/get_pid_by_trema_name.feature +0 -137
- data/features/core/packetin_filter.feature +0 -55
- data/features/core/switch_manager.feature +0 -41
- data/features/core/trema-config.feature +0 -55
- data/features/dsl/switch_port_specifier.feature +0 -15
- data/features/examples/dumper.feature +0 -35
- data/features/examples/hello_trema.feature +0 -23
- data/features/examples/learning_switch.feature +0 -37
- data/features/examples/list_switches.feature +0 -24
- data/features/examples/message.set_config.feature +0 -27
- data/features/examples/message.vendor-action.feature +0 -25
- data/features/examples/message.vendor-stats-request.feature +0 -20
- data/features/examples/multi_learning_switch.feature +0 -107
- data/features/examples/openflow_message.echo.feature +0 -59
- data/features/examples/openflow_message.features_request.feature +0 -35
- data/features/examples/openflow_message.hello.feature +0 -59
- data/features/examples/packet_in.feature +0 -33
- data/features/examples/packetin_filter_config.feature +0 -95
- data/features/examples/patch_panel.feature +0 -29
- data/features/examples/repeater_hub.feature +0 -52
- data/features/examples/switch_info.feature +0 -51
- data/features/examples/switch_monitor.feature +0 -35
- data/features/examples/transparent_firewall.feature +0 -73
- data/features/handlers/switch_ready.feature +0 -40
- data/features/step_definitions/misc_steps.rb +0 -85
- data/features/step_definitions/send_packets_steps.rb +0 -33
- data/features/step_definitions/stats_steps.rb +0 -39
- data/features/switch_event/C-add_forward_entry.feature +0 -114
- data/features/switch_event/C-delete_forward_entry.feature +0 -85
- data/features/switch_event/C-dump_forward_entries.feature +0 -72
- data/features/switch_event/C-set_forward_entries.feature +0 -77
- data/features/switch_event/README.md +0 -40
- data/features/switch_event/add_forward_entry.feature +0 -160
- data/features/switch_event/delete_forward_entry.feature +0 -160
- data/features/switch_event/dump_forward_entries.feature +0 -103
- data/features/switch_event/set_forward_entries.feature +0 -102
- data/features/trema_commands/README.md +0 -8
- data/features/trema_commands/dump_flows.feature +0 -41
- data/features/trema_commands/help.feature +0 -27
- data/features/trema_commands/help_option.feature +0 -20
- data/features/trema_commands/kill.feature +0 -56
- data/features/trema_commands/killall.feature +0 -32
- data/features/trema_commands/port_down.feature +0 -71
- data/features/trema_commands/port_up.feature +0 -75
- data/features/trema_commands/reset_stats.feature +0 -56
- data/features/trema_commands/run.feature +0 -56
- data/features/trema_commands/send_packets.feature +0 -46
- data/features/trema_commands/show_stats.feature +0 -66
- data/features/trema_commands/up.feature +0 -34
- data/features/trema_commands/version.feature +0 -10
- data/features/trema_commands/version_option.feature +0 -8
- data/rubocop-todo.yml +0 -159
- data/ruby/.gitignore +0 -4
- data/ruby/blocker.rb +0 -74
- data/ruby/extconf.rb +0 -80
- data/ruby/sub-process.rb +0 -289
- data/ruby/trema/action-common.c +0 -46
- data/ruby/trema/action-common.h +0 -38
- data/ruby/trema/action.rb +0 -33
- data/ruby/trema/aggregate-stats-reply.rb +0 -68
- data/ruby/trema/app.rb +0 -114
- data/ruby/trema/barrier-reply.c +0 -98
- data/ruby/trema/barrier-reply.h +0 -44
- data/ruby/trema/barrier-request.c +0 -135
- data/ruby/trema/barrier-request.h +0 -42
- data/ruby/trema/cli.rb +0 -267
- data/ruby/trema/command.rb +0 -41
- data/ruby/trema/command/dump_flows.rb +0 -43
- data/ruby/trema/command/kill.rb +0 -75
- data/ruby/trema/command/killall.rb +0 -38
- data/ruby/trema/command/netns.rb +0 -38
- data/ruby/trema/command/port_down.rb +0 -43
- data/ruby/trema/command/port_up.rb +0 -43
- data/ruby/trema/command/reset_stats.rb +0 -41
- data/ruby/trema/command/ruby.rb +0 -38
- data/ruby/trema/command/run.rb +0 -110
- data/ruby/trema/command/send_packets.rb +0 -46
- data/ruby/trema/command/shell.rb +0 -57
- data/ruby/trema/command/show_stats.rb +0 -65
- data/ruby/trema/command/up.rb +0 -44
- data/ruby/trema/command/version.rb +0 -35
- data/ruby/trema/compat.h +0 -36
- data/ruby/trema/controller.c +0 -691
- data/ruby/trema/controller.h +0 -42
- data/ruby/trema/controller.rb +0 -255
- data/ruby/trema/custom-switch.rb +0 -56
- data/ruby/trema/daemon.rb +0 -184
- data/ruby/trema/default-logger.c +0 -161
- data/ruby/trema/default-logger.h +0 -42
- data/ruby/trema/default-logger.rb +0 -29
- data/ruby/trema/default_openflow_channel_port.rb +0 -26
- data/ruby/trema/desc-stats-reply.rb +0 -75
- data/ruby/trema/dsl.rb +0 -32
- data/ruby/trema/dsl/configuration.rb +0 -145
- data/ruby/trema/dsl/context.rb +0 -69
- data/ruby/trema/dsl/custom-switch.rb +0 -44
- data/ruby/trema/dsl/link.rb +0 -39
- data/ruby/trema/dsl/netns.rb +0 -78
- data/ruby/trema/dsl/parser.rb +0 -70
- data/ruby/trema/dsl/rswitch.rb +0 -47
- data/ruby/trema/dsl/run.rb +0 -47
- data/ruby/trema/dsl/runner.rb +0 -178
- data/ruby/trema/dsl/stanza.rb +0 -51
- data/ruby/trema/dsl/switch.rb +0 -76
- data/ruby/trema/dsl/syntax-error.rb +0 -31
- data/ruby/trema/dsl/syntax.rb +0 -128
- data/ruby/trema/dsl/vhost.rb +0 -106
- data/ruby/trema/dsl/vswitch.rb +0 -45
- data/ruby/trema/echo-reply.c +0 -122
- data/ruby/trema/echo-reply.h +0 -40
- data/ruby/trema/echo-request.c +0 -117
- data/ruby/trema/echo-request.h +0 -40
- data/ruby/trema/echo.c +0 -99
- data/ruby/trema/echo.h +0 -39
- data/ruby/trema/enqueue.rb +0 -87
- data/ruby/trema/error.c +0 -262
- data/ruby/trema/error.h +0 -42
- data/ruby/trema/exact-match.rb +0 -34
- data/ruby/trema/executables.rb +0 -99
- data/ruby/trema/features-reply.c +0 -330
- data/ruby/trema/features-reply.h +0 -54
- data/ruby/trema/features-request.c +0 -134
- data/ruby/trema/features-request.h +0 -42
- data/ruby/trema/flow-mod.c +0 -150
- data/ruby/trema/flow-mod.h +0 -42
- data/ruby/trema/flow-removed.c +0 -280
- data/ruby/trema/flow-removed.h +0 -44
- data/ruby/trema/flow-stats-reply.rb +0 -107
- data/ruby/trema/flow.rb +0 -65
- data/ruby/trema/get-config-reply.c +0 -158
- data/ruby/trema/get-config-reply.h +0 -50
- data/ruby/trema/get-config-request.c +0 -136
- data/ruby/trema/get-config-request.h +0 -42
- data/ruby/trema/hardware-switch.rb +0 -86
- data/ruby/trema/hello.c +0 -133
- data/ruby/trema/hello.h +0 -42
- data/ruby/trema/host.rb +0 -263
- data/ruby/trema/link.rb +0 -177
- data/ruby/trema/list-switches-reply.c +0 -44
- data/ruby/trema/list-switches-reply.h +0 -38
- data/ruby/trema/mac.rb +0 -29
- data/ruby/trema/match.c +0 -621
- data/ruby/trema/match.h +0 -34
- data/ruby/trema/monkey-patch/integer.rb +0 -35
- data/ruby/trema/monkey-patch/integer/base-conversions.rb +0 -34
- data/ruby/trema/monkey-patch/integer/ranges.rb +0 -49
- data/ruby/trema/monkey-patch/integer/validators.rb +0 -36
- data/ruby/trema/monkey-patch/module.rb +0 -33
- data/ruby/trema/monkey-patch/module/class-method.rb +0 -38
- data/ruby/trema/monkey-patch/module/deprecation.rb +0 -39
- data/ruby/trema/monkey-patch/string.rb +0 -31
- data/ruby/trema/monkey-patch/string/inflectors.rb +0 -52
- data/ruby/trema/netns.rb +0 -127
- data/ruby/trema/network-component.rb +0 -151
- data/ruby/trema/ofctl.rb +0 -70
- data/ruby/trema/open-vswitch.rb +0 -160
- data/ruby/trema/openflow-error.c +0 -193
- data/ruby/trema/openflow-error.h +0 -51
- data/ruby/trema/openflow-switch.rb +0 -35
- data/ruby/trema/ordered-hash.rb +0 -75
- data/ruby/trema/packet-in.c +0 -1365
- data/ruby/trema/packet-in.h +0 -44
- data/ruby/trema/packet-queue.rb +0 -181
- data/ruby/trema/packetin-filter.rb +0 -124
- data/ruby/trema/path.rb +0 -85
- data/ruby/trema/phost.rb +0 -76
- data/ruby/trema/port-mod.c +0 -232
- data/ruby/trema/port-mod.h +0 -34
- data/ruby/trema/port-stats-reply.rb +0 -109
- data/ruby/trema/port-status-add.rb +0 -60
- data/ruby/trema/port-status-delete.rb +0 -60
- data/ruby/trema/port-status-modify.rb +0 -60
- data/ruby/trema/port-status.c +0 -192
- data/ruby/trema/port-status.h +0 -41
- data/ruby/trema/port.c +0 -398
- data/ruby/trema/port.h +0 -45
- data/ruby/trema/process.rb +0 -103
- data/ruby/trema/queue-get-config-reply.c +0 -205
- data/ruby/trema/queue-get-config-reply.h +0 -45
- data/ruby/trema/queue-get-config-request.c +0 -141
- data/ruby/trema/queue-get-config-request.h +0 -42
- data/ruby/trema/queue-stats-reply.rb +0 -76
- data/ruby/trema/ruby-switch.rb +0 -62
- data/ruby/trema/send-out-port.rb +0 -113
- data/ruby/trema/set-config.c +0 -174
- data/ruby/trema/set-config.h +0 -42
- data/ruby/trema/set-eth-addr.rb +0 -54
- data/ruby/trema/set-eth-dst-addr.rb +0 -52
- data/ruby/trema/set-eth-src-addr.rb +0 -53
- data/ruby/trema/set-ip-addr.rb +0 -54
- data/ruby/trema/set-ip-dst-addr.rb +0 -53
- data/ruby/trema/set-ip-src-addr.rb +0 -52
- data/ruby/trema/set-ip-tos.rb +0 -64
- data/ruby/trema/set-transport-dst-port.rb +0 -53
- data/ruby/trema/set-transport-port.rb +0 -53
- data/ruby/trema/set-transport-src-port.rb +0 -54
- data/ruby/trema/set-vlan-priority.rb +0 -66
- data/ruby/trema/set-vlan-vid.rb +0 -65
- data/ruby/trema/shell.rb +0 -37
- data/ruby/trema/shell/down.rb +0 -37
- data/ruby/trema/shell/killall.rb +0 -38
- data/ruby/trema/shell/link.rb +0 -59
- data/ruby/trema/shell/reset_stats.rb +0 -49
- data/ruby/trema/shell/run.rb +0 -67
- data/ruby/trema/shell/send_packets.rb +0 -40
- data/ruby/trema/shell/show_stats.rb +0 -47
- data/ruby/trema/shell/up.rb +0 -41
- data/ruby/trema/shell/vhost.rb +0 -42
- data/ruby/trema/shell/vswitch.rb +0 -47
- data/ruby/trema/stats-helper.rb +0 -63
- data/ruby/trema/stats-reply.c +0 -540
- data/ruby/trema/stats-reply.h +0 -51
- data/ruby/trema/stats-request.c +0 -715
- data/ruby/trema/stats-request.h +0 -40
- data/ruby/trema/strip-vlan-header.rb +0 -41
- data/ruby/trema/switch-daemon.rb +0 -90
- data/ruby/trema/switch-disconnected.c +0 -38
- data/ruby/trema/switch-disconnected.h +0 -36
- data/ruby/trema/switch-event.c +0 -648
- data/ruby/trema/switch-event.h +0 -27
- data/ruby/trema/switch-manager.rb +0 -119
- data/ruby/trema/switch.c +0 -197
- data/ruby/trema/switch.h +0 -40
- data/ruby/trema/switch.rb +0 -56
- data/ruby/trema/table-stats-reply.rb +0 -85
- data/ruby/trema/timers.rb +0 -95
- data/ruby/trema/trema-ruby-utils.c +0 -66
- data/ruby/trema/trema-ruby-utils.h +0 -42
- data/ruby/trema/trema.c +0 -126
- data/ruby/trema/tremashark.rb +0 -46
- data/ruby/trema/util.rb +0 -116
- data/ruby/trema/vendor-action.rb +0 -82
- data/ruby/trema/vendor-stats-reply.rb +0 -64
- data/ruby/trema/vendor.c +0 -230
- data/ruby/trema/vendor.h +0 -48
- data/ruby/trema/version.rb +0 -28
- data/spec/support/action.rb +0 -49
- data/spec/support/mandatory-option.rb +0 -53
- data/spec/support/matchers/constant.rb +0 -25
- data/spec/support/openflow-message.rb +0 -173
- data/spec/support/port-status.rb +0 -35
- data/spec/trema/app_spec.rb +0 -88
- data/spec/trema/barrier-reply_spec.rb +0 -43
- data/spec/trema/barrier-request_spec.rb +0 -92
- data/spec/trema/cli_spec.rb +0 -156
- data/spec/trema/default-logger_spec.rb +0 -46
- data/spec/trema/dsl/configuration_spec.rb +0 -120
- data/spec/trema/dsl/link_spec.rb +0 -50
- data/spec/trema/dsl/run_spec.rb +0 -72
- data/spec/trema/dsl/runner_spec.rb +0 -247
- data/spec/trema/dsl/switch_spec.rb +0 -69
- data/spec/trema/dsl/syntax_spec.rb +0 -110
- data/spec/trema/dsl/vhost_spec.rb +0 -144
- data/spec/trema/dsl/vswitch_spec.rb +0 -80
- data/spec/trema/echo-reply_spec.rb +0 -84
- data/spec/trema/echo-request_spec.rb +0 -128
- data/spec/trema/enqueue_spec.rb +0 -76
- data/spec/trema/error_spec.rb +0 -81
- data/spec/trema/executables_spec.rb +0 -54
- data/spec/trema/features-reply_spec.rb +0 -91
- data/spec/trema/features-request_spec.rb +0 -93
- data/spec/trema/flow-mod_spec.rb +0 -99
- data/spec/trema/flow-removed_spec.rb +0 -144
- data/spec/trema/get-config-reply_spec.rb +0 -43
- data/spec/trema/get-config-request_spec.rb +0 -92
- data/spec/trema/hardware-switch_spec.rb +0 -54
- data/spec/trema/hello_spec.rb +0 -63
- data/spec/trema/host_spec.rb +0 -191
- data/spec/trema/link_spec.rb +0 -62
- data/spec/trema/list-switches-reply_spec.rb +0 -46
- data/spec/trema/match_spec.rb +0 -111
- data/spec/trema/open-vswitch_spec.rb +0 -121
- data/spec/trema/openflow-error_spec.rb +0 -141
- data/spec/trema/packet-in_spec.rb +0 -717
- data/spec/trema/packet-out_spec.rb +0 -125
- data/spec/trema/packetin-filter_spec.rb +0 -39
- data/spec/trema/port-mod_spec.rb +0 -98
- data/spec/trema/port-status-add_spec.rb +0 -32
- data/spec/trema/port-status-delete_spec.rb +0 -32
- data/spec/trema/port-status-modify_spec.rb +0 -71
- data/spec/trema/port-status_spec.rb +0 -38
- data/spec/trema/port_spec.rb +0 -59
- data/spec/trema/process_spec.rb +0 -69
- data/spec/trema/queue-get-config-reply_spec.rb +0 -65
- data/spec/trema/queue-get-config-request_spec.rb +0 -67
- data/spec/trema/send-out-port_spec.rb +0 -106
- data/spec/trema/set-config_spec.rb +0 -78
- data/spec/trema/set-eth-addr_spec.rb +0 -62
- data/spec/trema/set-ip-addr_spec.rb +0 -81
- data/spec/trema/set-ip-tos_spec.rb +0 -70
- data/spec/trema/set-transport-dst-port_spec.rb +0 -65
- data/spec/trema/set-transport-src-port_spec.rb +0 -65
- data/spec/trema/set-vlan-priority_spec.rb +0 -65
- data/spec/trema/set-vlan-vid_spec.rb +0 -65
- data/spec/trema/shell/vhost_spec.rb +0 -58
- data/spec/trema/shell/vswitch_spec.rb +0 -87
- data/spec/trema/stats-reply_spec.rb +0 -363
- data/spec/trema/stats-request_spec.rb +0 -166
- data/spec/trema/strip-vlan-header_spec.rb +0 -44
- data/spec/trema/switch-daemon_spec.rb +0 -81
- data/spec/trema/switch-disconnected_spec.rb +0 -56
- data/spec/trema/switch-manager_spec.rb +0 -41
- data/spec/trema/tremashark_spec.rb +0 -39
- data/spec/trema/util_spec.rb +0 -88
- data/spec/trema/vendor-action_spec.rb +0 -75
- data/spec/trema/vendor_spec.rb +0 -76
- data/spec/trema_spec.rb +0 -94
- data/src/examples/cbench_switch/README +0 -21
- data/src/examples/cbench_switch/cbench-switch.rb +0 -38
- data/src/examples/cbench_switch/cbench_switch.c +0 -66
- data/src/examples/dumper/dumper.c +0 -362
- data/src/examples/dumper/dumper.conf +0 -7
- data/src/examples/dumper/dumper.rb +0 -195
- data/src/examples/hello_trema/.gitignore +0 -2
- data/src/examples/hello_trema/README.md +0 -2
- data/src/examples/hello_trema/hello-trema.rb +0 -30
- data/src/examples/hello_trema/hello_trema.c +0 -48
- data/src/examples/hello_trema/sample.conf +0 -1
- data/src/examples/learning_switch/README +0 -15
- data/src/examples/learning_switch/fdb.rb +0 -110
- data/src/examples/learning_switch/learning-switch.rb +0 -90
- data/src/examples/learning_switch/learning_switch.c +0 -217
- data/src/examples/learning_switch/learning_switch.conf +0 -18
- data/src/examples/list_switches/README +0 -19
- data/src/examples/list_switches/list-switches.rb +0 -43
- data/src/examples/list_switches/list_switches.c +0 -79
- data/src/examples/list_switches/list_switches.conf +0 -15
- data/src/examples/match_compare/match-compare.conf +0 -30
- data/src/examples/match_compare/match-compare.rb +0 -97
- data/src/examples/multi_learning_switch/README +0 -14
- data/src/examples/multi_learning_switch/multi-learning-switch.rb +0 -94
- data/src/examples/multi_learning_switch/multi_learning_switch.c +0 -294
- data/src/examples/multi_learning_switch/multi_learning_switch.conf +0 -17
- data/src/examples/openflow_message/README +0 -11
- data/src/examples/openflow_message/echo.c +0 -80
- data/src/examples/openflow_message/echo.rb +0 -56
- data/src/examples/openflow_message/example.rb +0 -60
- data/src/examples/openflow_message/features-request.rb +0 -96
- data/src/examples/openflow_message/features_request.c +0 -167
- data/src/examples/openflow_message/hello.c +0 -68
- data/src/examples/openflow_message/hello.rb +0 -43
- data/src/examples/openflow_message/set-config.rb +0 -57
- data/src/examples/openflow_message/set_config.c +0 -68
- data/src/examples/openflow_message/vendor-action.rb +0 -43
- data/src/examples/openflow_message/vendor-stats-request.rb +0 -66
- data/src/examples/openflow_message/vendor_action.c +0 -103
- data/src/examples/openflow_switch/echo_switch.c +0 -89
- data/src/examples/openflow_switch/hello_switch.c +0 -85
- data/src/examples/packet_in/README +0 -15
- data/src/examples/packet_in/packet-in.rb +0 -37
- data/src/examples/packet_in/packet_in.c +0 -53
- data/src/examples/packet_in/packet_in.conf +0 -15
- data/src/examples/packetin_filter_config/README +0 -12
- data/src/examples/packetin_filter_config/add_filter.c +0 -71
- data/src/examples/packetin_filter_config/delete_filter.c +0 -63
- data/src/examples/packetin_filter_config/delete_filter_strict.c +0 -73
- data/src/examples/packetin_filter_config/dump_filter.c +0 -63
- data/src/examples/packetin_filter_config/dump_filter_strict.c +0 -73
- data/src/examples/packetin_filter_config/packetin_filter_config.c +0 -132
- data/src/examples/packetin_filter_config/packetin_filter_config.conf +0 -7
- data/src/examples/packetin_filter_config/utils.c +0 -100
- data/src/examples/packetin_filter_config/utils.h +0 -40
- data/src/examples/patch_panel/network.conf +0 -14
- data/src/examples/patch_panel/patch-panel.conf +0 -1
- data/src/examples/patch_panel/patch-panel.rb +0 -59
- data/src/examples/repeater_hub/README +0 -8
- data/src/examples/repeater_hub/repeater-hub.rb +0 -41
- data/src/examples/repeater_hub/repeater-hub_spec.rb +0 -154
- data/src/examples/repeater_hub/repeater_hub.c +0 -81
- data/src/examples/repeater_hub/repeater_hub.conf +0 -28
- data/src/examples/simple_router/README +0 -18
- data/src/examples/simple_router/arp-table.rb +0 -81
- data/src/examples/simple_router/interface.rb +0 -90
- data/src/examples/simple_router/routing-table.rb +0 -60
- data/src/examples/simple_router/simple-router.rb +0 -191
- data/src/examples/simple_router/simple_router.conf +0 -24
- data/src/examples/simple_router/simple_router_netns.conf +0 -15
- data/src/examples/simple_router/simple_router_network.conf +0 -6
- data/src/examples/switch_event_config/.gitignore +0 -6
- data/src/examples/switch_event_config/add_forward_entry.c +0 -227
- data/src/examples/switch_event_config/delete_forward_entry.c +0 -226
- data/src/examples/switch_event_config/dump_forward_entries.c +0 -190
- data/src/examples/switch_event_config/network.conf +0 -2
- data/src/examples/switch_event_config/set_forward_entries.c +0 -210
- data/src/examples/switch_info/README +0 -13
- data/src/examples/switch_info/switch-info.rb +0 -44
- data/src/examples/switch_info/switch_info.c +0 -78
- data/src/examples/switch_info/switch_info.conf +0 -3
- data/src/examples/switch_monitor/switch-monitor.conf +0 -3
- data/src/examples/switch_monitor/switch-monitor.rb +0 -56
- data/src/examples/switch_monitor/switch_monitor.c +0 -152
- data/src/examples/traffic_monitor/counter.c +0 -72
- data/src/examples/traffic_monitor/counter.h +0 -46
- data/src/examples/traffic_monitor/counter.rb +0 -44
- data/src/examples/traffic_monitor/fdb.c +0 -74
- data/src/examples/traffic_monitor/fdb.h +0 -48
- data/src/examples/traffic_monitor/fdb.rb +0 -42
- data/src/examples/traffic_monitor/traffic-monitor.rb +0 -98
- data/src/examples/traffic_monitor/traffic_monitor.c +0 -161
- data/src/examples/traffic_monitor/traffic_monitor.conf +0 -16
- data/src/examples/transparent_firewall/README.md +0 -61
- data/src/examples/transparent_firewall/aggregated-delegated-afrinic.txt +0 -713
- data/src/examples/transparent_firewall/aggregated-delegated-apnic.txt +0 -3440
- data/src/examples/transparent_firewall/aggregated-delegated-arin.txt +0 -11342
- data/src/examples/transparent_firewall/aggregated-delegated-lacnic.txt +0 -1937
- data/src/examples/transparent_firewall/aggregated-delegated-ripencc.txt +0 -7329
- data/src/examples/transparent_firewall/block-rfc1918.rb +0 -86
- data/src/examples/transparent_firewall/pass-delegated.rb +0 -178
- data/src/examples/transparent_firewall/regen_aggregated.sh +0 -53
- data/src/examples/transparent_firewall/stats-to-cidrs.rb +0 -59
- data/src/lib/arp.h +0 -64
- data/src/lib/bool.h +0 -47
- data/src/lib/buffer.c +0 -304
- data/src/lib/buffer.h +0 -54
- data/src/lib/byteorder.c +0 -571
- data/src/lib/byteorder.h +0 -108
- data/src/lib/checks.h +0 -40
- data/src/lib/chibach.c +0 -392
- data/src/lib/chibach.h +0 -69
- data/src/lib/chibach_private.c +0 -168
- data/src/lib/chibach_private.h +0 -50
- data/src/lib/daemon.c +0 -429
- data/src/lib/daemon.h +0 -40
- data/src/lib/doubly_linked_list.c +0 -284
- data/src/lib/doubly_linked_list.h +0 -86
- data/src/lib/ether.c +0 -47
- data/src/lib/ether.h +0 -92
- data/src/lib/etherip.h +0 -44
- data/src/lib/event_forward_interface.c +0 -788
- data/src/lib/event_forward_interface.h +0 -138
- data/src/lib/event_handler.c +0 -419
- data/src/lib/event_handler.h +0 -57
- data/src/lib/external_callback.c +0 -126
- data/src/lib/external_callback.h +0 -46
- data/src/lib/hash_table.c +0 -415
- data/src/lib/hash_table.h +0 -136
- data/src/lib/icmp.h +0 -72
- data/src/lib/igmp.h +0 -48
- data/src/lib/ipv4.h +0 -64
- data/src/lib/ipv6.h +0 -46
- data/src/lib/linked_list.c +0 -244
- data/src/lib/linked_list.h +0 -84
- data/src/lib/log.c +0 -636
- data/src/lib/log.h +0 -77
- data/src/lib/management_interface.c +0 -359
- data/src/lib/management_interface.h +0 -40
- data/src/lib/management_service_interface.c +0 -102
- data/src/lib/management_service_interface.h +0 -134
- data/src/lib/match.h +0 -82
- data/src/lib/match_table.c +0 -606
- data/src/lib/match_table.h +0 -49
- data/src/lib/message_queue.c +0 -143
- data/src/lib/message_queue.h +0 -59
- data/src/lib/messenger.c +0 -1821
- data/src/lib/messenger.h +0 -145
- data/src/lib/openflow_application_interface.c +0 -1800
- data/src/lib/openflow_application_interface.h +0 -359
- data/src/lib/openflow_message.c +0 -4240
- data/src/lib/openflow_message.h +0 -291
- data/src/lib/openflow_service_interface.h +0 -58
- data/src/lib/openflow_switch_interface.c +0 -1378
- data/src/lib/openflow_switch_interface.h +0 -262
- data/src/lib/packet_info.c +0 -336
- data/src/lib/packet_info.h +0 -233
- data/src/lib/packet_parser.c +0 -522
- data/src/lib/packetin_filter_interface.c +0 -292
- data/src/lib/packetin_filter_interface.h +0 -125
- data/src/lib/persistent_storage.c +0 -478
- data/src/lib/persistent_storage.h +0 -44
- data/src/lib/secure_channel.c +0 -496
- data/src/lib/secure_channel.h +0 -43
- data/src/lib/stat.c +0 -248
- data/src/lib/stat.h +0 -51
- data/src/lib/tcp.h +0 -62
- data/src/lib/timer.c +0 -349
- data/src/lib/timer.h +0 -51
- data/src/lib/trema.c +0 -776
- data/src/lib/trema.h +0 -80
- data/src/lib/trema.hpp +0 -49
- data/src/lib/trema_private.c +0 -175
- data/src/lib/trema_private.h +0 -64
- data/src/lib/trema_wrapper.c +0 -59
- data/src/lib/trema_wrapper.h +0 -66
- data/src/lib/udp.h +0 -41
- data/src/lib/utility.c +0 -625
- data/src/lib/utility.h +0 -84
- data/src/lib/wrapper.c +0 -121
- data/src/lib/wrapper.h +0 -76
- data/src/management/application.c +0 -222
- data/src/management/echo.c +0 -183
- data/src/management/set_logging_level.c +0 -151
- data/src/management/show_stats.c +0 -148
- data/src/management/trema_manager +0 -184
- data/src/packetin_filter/README +0 -17
- data/src/packetin_filter/packetin_filter.c +0 -575
- data/src/switch_manager/README +0 -20
- data/src/switch_manager/cookie_table.c +0 -290
- data/src/switch_manager/cookie_table.h +0 -70
- data/src/switch_manager/dpid_table.c +0 -108
- data/src/switch_manager/dpid_table.h +0 -43
- data/src/switch_manager/event_forward_entry_manipulation.c +0 -120
- data/src/switch_manager/event_forward_entry_manipulation.h +0 -31
- data/src/switch_manager/ofpmsg_recv.c +0 -497
- data/src/switch_manager/ofpmsg_recv.h +0 -39
- data/src/switch_manager/ofpmsg_send.c +0 -274
- data/src/switch_manager/ofpmsg_send.h +0 -51
- data/src/switch_manager/secure_channel_listener.c +0 -296
- data/src/switch_manager/secure_channel_listener.h +0 -40
- data/src/switch_manager/secure_channel_receiver.c +0 -129
- data/src/switch_manager/secure_channel_receiver.h +0 -40
- data/src/switch_manager/secure_channel_sender.c +0 -131
- data/src/switch_manager/secure_channel_sender.h +0 -41
- data/src/switch_manager/service_interface.c +0 -180
- data/src/switch_manager/service_interface.h +0 -44
- data/src/switch_manager/switch.c +0 -988
- data/src/switch_manager/switch.h +0 -50
- data/src/switch_manager/switch_manager.c +0 -643
- data/src/switch_manager/switch_manager.h +0 -65
- data/src/switch_manager/switch_option.c +0 -30
- data/src/switch_manager/switch_option.h +0 -41
- data/src/switch_manager/switchinfo.h +0 -81
- data/src/switch_manager/xid_table.c +0 -182
- data/src/switch_manager/xid_table.h +0 -53
- data/src/tremashark/README +0 -79
- data/src/tremashark/packet_capture.c +0 -358
- data/src/tremashark/pcap_private.h +0 -45
- data/src/tremashark/pcap_queue.c +0 -195
- data/src/tremashark/pcap_queue.h +0 -56
- data/src/tremashark/plugin/.gitignore +0 -6
- data/src/tremashark/plugin/packet-trema/.gitignore +0 -5
- data/src/tremashark/plugin/packet-trema/Makefile +0 -77
- data/src/tremashark/plugin/packet-trema/Makefile.am +0 -110
- data/src/tremashark/plugin/packet-trema/Makefile.common +0 -29
- data/src/tremashark/plugin/packet-trema/moduleinfo.h +0 -39
- data/src/tremashark/plugin/packet-trema/packet-trema.c +0 -1671
- data/src/tremashark/plugin/packet-trema/plugin.c +0 -31
- data/src/tremashark/plugin/user_dlts +0 -2
- data/src/tremashark/queue.c +0 -167
- data/src/tremashark/queue.h +0 -58
- data/src/tremashark/stdin_relay.c +0 -257
- data/src/tremashark/syslog_relay.c +0 -247
- data/src/tremashark/tremashark.c +0 -554
- data/trema +0 -11
- data/trema-config +0 -11
- data/unittests/buffer_stubs.c +0 -72
- data/unittests/cmockery_trema.c +0 -121
- data/unittests/cmockery_trema.h +0 -95
- data/unittests/lib/buffer_test.c +0 -368
- data/unittests/lib/byteorder_test.c +0 -1798
- data/unittests/lib/daemon_test.c +0 -804
- data/unittests/lib/doubly_linked_list_test.c +0 -348
- data/unittests/lib/ether_test.c +0 -125
- data/unittests/lib/event_forward_interface_test.c +0 -1676
- data/unittests/lib/external_callback_test.c +0 -282
- data/unittests/lib/hash_table_test.c +0 -278
- data/unittests/lib/linked_list_test.c +0 -434
- data/unittests/lib/log_test.c +0 -672
- data/unittests/lib/management_interface_test.c +0 -238
- data/unittests/lib/management_service_interface_test.c +0 -317
- data/unittests/lib/match_table_test.c +0 -1507
- data/unittests/lib/message_queue_test.c +0 -381
- data/unittests/lib/messenger_test.c +0 -623
- data/unittests/lib/openflow_application_interface_test.c +0 -3713
- data/unittests/lib/openflow_message_test.c +0 -8047
- data/unittests/lib/packet_info_test.c +0 -558
- data/unittests/lib/packet_parser_test.c +0 -784
- data/unittests/lib/packetin_filter_interface_test.c +0 -721
- data/unittests/lib/persistent_storage_test.c +0 -800
- data/unittests/lib/stat_test.c +0 -433
- data/unittests/lib/test_packets/arp_rep.cap +0 -0
- data/unittests/lib/test_packets/arp_req.cap +0 -0
- data/unittests/lib/test_packets/icmp6_echo_rep.cap +0 -0
- data/unittests/lib/test_packets/icmp6_echo_req.cap +0 -0
- data/unittests/lib/test_packets/icmp_echo_rep.cap +0 -0
- data/unittests/lib/test_packets/icmp_echo_req.cap +0 -0
- data/unittests/lib/test_packets/igmp_query_v2.cap +0 -0
- data/unittests/lib/test_packets/ipx.cap +0 -0
- data/unittests/lib/test_packets/lldp.cap +0 -0
- data/unittests/lib/test_packets/lldp_over_ip.cap +0 -0
- data/unittests/lib/test_packets/rarp_req.cap +0 -0
- data/unittests/lib/test_packets/tcp.cap +0 -0
- data/unittests/lib/test_packets/tcp_syn.cap +0 -0
- data/unittests/lib/test_packets/udp.cap +0 -0
- data/unittests/lib/test_packets/udp_frag_head.cap +0 -0
- data/unittests/lib/test_packets/udp_frag_next.cap +0 -0
- data/unittests/lib/test_packets/vtag_icmp_echo_rep.cap +0 -0
- data/unittests/lib/test_packets/vtag_icmp_echo_req.cap +0 -0
- data/unittests/lib/timer_test.c +0 -246
- data/unittests/lib/trema_private_test.c +0 -321
- data/unittests/lib/trema_test.c +0 -1030
- data/unittests/lib/utility_test.c +0 -711
- data/unittests/lib/wrapper_test.c +0 -228
- data/unittests/packetin_filter/packetin_filter_test.c +0 -476
- data/unittests/switch_manager/switch_manager_test.c +0 -1183
- data/unittests/wrapper_stubs.c +0 -37
- data/vendor/.gitignore +0 -6
- data/vendor/README.md +0 -29
- data/vendor/cmockery-20110428.tar.gz +0 -0
- data/vendor/oflops-0.03.trema1.tar.gz +0 -0
- data/vendor/oflops_no_snmp+1.0.0.diff +0 -340
- data/vendor/openflow-1.0.0.tar.gz +0 -0
- data/vendor/openflow.git.tar.gz +0 -0
- data/vendor/openvswitch-1.2.2.trema1.tar.gz +0 -0
- data/vendor/openvswitch-1.2.2_librt-check.diff +0 -21
- data/vendor/packet-openflow.diff +0 -13
- data/vendor/ruby-ifconfig-1.2/COPYING +0 -340
- data/vendor/ruby-ifconfig-1.2/Changelog +0 -16
- data/vendor/ruby-ifconfig-1.2/INSTALL +0 -239
- data/vendor/ruby-ifconfig-1.2/README +0 -38
- data/vendor/ruby-ifconfig-1.2/Rakefile +0 -14
- data/vendor/ruby-ifconfig-1.2/TODO +0 -8
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/darwin.txt +0 -17
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/dragonflybsd.txt +0 -10
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/dragonflybsd_netstat.txt +0 -14
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/freebsd.txt +0 -17
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/freebsd_netstat.txt +0 -24
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/linux.txt +0 -60
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/linux_ethernet.txt +0 -20
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/netbsd.txt +0 -10
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/openbsd.txt +0 -36
- data/vendor/ruby-ifconfig-1.2/ifconfig_examples/sunos.txt +0 -10
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig.rb +0 -71
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/bsd/ifconfig.rb +0 -72
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/bsd/interface_types.rb +0 -69
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/bsd/network_types.rb +0 -3
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/common/ifconfig.rb +0 -84
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/common/interface_types.rb +0 -130
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/common/network_types.rb +0 -49
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/linux/ifconfig.rb +0 -43
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/linux/interface_types.rb +0 -112
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/linux/network_types.rb +0 -55
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/sunos/ifconfig.rb +0 -38
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/sunos/interface_types.rb +0 -77
- data/vendor/ruby-ifconfig-1.2/lib/ifconfig/sunos/network_types.rb +0 -4
- data/vendor/ruby-ifconfig-1.2/setup.rb +0 -1306
- data/vendor/ruby-ifconfig-1.2/test/test_bsd.rb +0 -35
- data/vendor/ruby-ifconfig-1.2/test/test_darwin.rb +0 -33
- data/vendor/ruby-ifconfig-1.2/test/test_dragonflybsd.rb +0 -35
- data/vendor/ruby-ifconfig-1.2/test/test_helper.rb +0 -4
- data/vendor/ruby-ifconfig-1.2/test/test_linux.rb +0 -31
- data/vendor/ruby-ifconfig-1.2/test/test_netbsd.rb +0 -33
- data/vendor/ruby-ifconfig-1.2/test/test_openbsd.rb +0 -33
- data/vendor/ruby-ifconfig-1.2/test/test_sunos.rb +0 -35
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_darwin.rb +0 -40
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_dragonflybsd.rb +0 -39
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_freebsd.rb +0 -40
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_linux.rb +0 -49
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_netbsd.rb +0 -39
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_openbsd.rb +0 -39
- data/vendor/ruby-ifconfig-1.2/test/unit/tc_sunos.rb +0 -44
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
Feature: "List Switches" sample application
|
|
2
|
-
|
|
3
|
-
In order to learn how to get the list of OpenFlow switches
|
|
4
|
-
As a developer using Trema
|
|
5
|
-
I want to execute "List Switches" sample application
|
|
6
|
-
|
|
7
|
-
Background:
|
|
8
|
-
Given a file named "list_switches.conf" with:
|
|
9
|
-
"""
|
|
10
|
-
vswitch { datapath_id 0x1 }
|
|
11
|
-
vswitch { datapath_id 0x2 }
|
|
12
|
-
vswitch { datapath_id 0x3 }
|
|
13
|
-
vswitch { datapath_id 0x4 }
|
|
14
|
-
"""
|
|
15
|
-
|
|
16
|
-
@slow_process @ruby
|
|
17
|
-
Scenario: Run "List Switches" Ruby example
|
|
18
|
-
Given I run `trema run ../../src/examples/list_switches/list-switches.rb -c list_switches.conf`
|
|
19
|
-
Then the file "../../tmp/log/ListSwitches.log" should contain "switches = 0x1, 0x2, 0x3, 0x4"
|
|
20
|
-
|
|
21
|
-
@slow_process
|
|
22
|
-
Scenario: Run "List Switches" C example
|
|
23
|
-
Given I run `trema run ../../objects/examples/list_switches/list_switches -c list_switches.conf`
|
|
24
|
-
Then the file "../../tmp/log/list_switches.log" should contain "switches = 0x1, 0x2, 0x3, 0x4"
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
Feature: Send set config messages
|
|
2
|
-
|
|
3
|
-
As a Trema user
|
|
4
|
-
I want to send set config messages to openflow switches
|
|
5
|
-
So that I can set configuration parameters of openflow switches
|
|
6
|
-
|
|
7
|
-
@wip @ruby
|
|
8
|
-
Scenario: set config x 10 in Ruby
|
|
9
|
-
When I try trema run "./src/examples/openflow_message/set-config.rb 0xabc, 10" with following configuration (backgrounded):
|
|
10
|
-
"""
|
|
11
|
-
vswitch("set-config") { datapath_id "0xabc" }
|
|
12
|
-
"""
|
|
13
|
-
And wait until "SetConfigController" is up
|
|
14
|
-
And *** sleep 2 ***
|
|
15
|
-
And I run `trema killall`
|
|
16
|
-
Then the log file "openflowd.set-config.log" should include "received: OFPT_SET_CONFIG" x 11
|
|
17
|
-
|
|
18
|
-
@wip
|
|
19
|
-
Scenario: set config x 10
|
|
20
|
-
When I try trema run "./objects/examples/openflow_message/set_config 10" with following configuration (backgrounded):
|
|
21
|
-
"""
|
|
22
|
-
vswitch("set_config") { datapath_id "0xabc" }
|
|
23
|
-
"""
|
|
24
|
-
And wait until "set_config" is up
|
|
25
|
-
And *** sleep 2 ***
|
|
26
|
-
And I run `trema killall`
|
|
27
|
-
Then the log file "openflowd.set_config.log" should include "received: OFPT_SET_CONFIG" x 11
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
Feature: "Vendor Action" sample application
|
|
2
|
-
|
|
3
|
-
In order to learn how to send Vendor Action
|
|
4
|
-
As a developer using Trema
|
|
5
|
-
I want to execute "Vendor Action" sample application
|
|
6
|
-
|
|
7
|
-
Background:
|
|
8
|
-
Given a file named "vendor_action.conf" with:
|
|
9
|
-
"""
|
|
10
|
-
vswitch( "vendor_action" ) { datapath_id "0xabc" }
|
|
11
|
-
"""
|
|
12
|
-
|
|
13
|
-
@slow_process @ruby
|
|
14
|
-
Scenario: Vendor Action message in Ruby
|
|
15
|
-
Given I run `trema run ../../src/examples/openflow_message/vendor-action.rb -c vendor_action.conf -d`
|
|
16
|
-
And wait until "VendorActionSampleController" is up
|
|
17
|
-
And *** sleep 2 ***
|
|
18
|
-
Then the file "../../tmp/log/openflowd.vendor_action.log" should contain "actions=note:54.72.65.6d.61.00"
|
|
19
|
-
|
|
20
|
-
@slow_process
|
|
21
|
-
Scenario: Vendor Action message in C
|
|
22
|
-
Given I run `trema run ../../objects/examples/openflow_message/vendor_action -c vendor_action.conf -d`
|
|
23
|
-
And wait until "vendor_action" is up
|
|
24
|
-
And *** sleep 2 ***
|
|
25
|
-
Then the file "../../tmp/log/openflowd.vendor_action.log" should contain "actions=note:54.72.65.6d.61.00"
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
Feature: "Vendor Stats Request" sample application
|
|
2
|
-
|
|
3
|
-
In order to learn how to send Vendor Stats Request
|
|
4
|
-
As a developer using Trema
|
|
5
|
-
I want to execute "Vendor Stats Request" sample application
|
|
6
|
-
|
|
7
|
-
Background:
|
|
8
|
-
Given a file named "vendor_stats.conf" with:
|
|
9
|
-
"""
|
|
10
|
-
vswitch( "vendor_stats" ) { datapath_id "0xabc" }
|
|
11
|
-
"""
|
|
12
|
-
|
|
13
|
-
@slow_process @ruby
|
|
14
|
-
Scenario: Vendor Stats Request message in Ruby
|
|
15
|
-
Given I run `trema run ../../src/examples/openflow_message/vendor-stats-request.rb -c vendor_stats.conf -d`
|
|
16
|
-
And wait until "VendorStatsRequestSample" is up
|
|
17
|
-
And *** sleep 2 ***
|
|
18
|
-
Then the file "../../tmp/log/openflowd.vendor_stats.log" should contain "received: NXST_FLOW reques"
|
|
19
|
-
And the file "../../tmp/log/VendorStatsRequestSample.log" should contain "[vendor_stats_reply]"
|
|
20
|
-
And the file "../../tmp/log/VendorStatsRequestSample.log" should contain "vendor_id: 0x00002320"
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
Feature: "Multi Learning Switch" sample application
|
|
2
|
-
|
|
3
|
-
In order to learn how to implement software L2 switch (multiple switch support)
|
|
4
|
-
As a developer using Trema
|
|
5
|
-
I want to execute "Multi Learning Switch" sample application
|
|
6
|
-
|
|
7
|
-
Background:
|
|
8
|
-
Given a file named "multi_learning_switch.conf" with:
|
|
9
|
-
"""
|
|
10
|
-
vswitch("multi_learning1") { datapath_id "0x1" }
|
|
11
|
-
vswitch("multi_learning2") { datapath_id "0x2" }
|
|
12
|
-
vswitch("multi_learning3") { datapath_id "0x3" }
|
|
13
|
-
vswitch("multi_learning4") { datapath_id "0x4" }
|
|
14
|
-
|
|
15
|
-
vhost("host1")
|
|
16
|
-
vhost("host2")
|
|
17
|
-
vhost("host3")
|
|
18
|
-
vhost("host4")
|
|
19
|
-
|
|
20
|
-
link "multi_learning1", "host1"
|
|
21
|
-
link "multi_learning2", "host2"
|
|
22
|
-
link "multi_learning3", "host3"
|
|
23
|
-
link "multi_learning4", "host4"
|
|
24
|
-
link "multi_learning1", "multi_learning2"
|
|
25
|
-
link "multi_learning2", "multi_learning3"
|
|
26
|
-
link "multi_learning3", "multi_learning4"
|
|
27
|
-
"""
|
|
28
|
-
|
|
29
|
-
@slow_process @ruby
|
|
30
|
-
Scenario: Run "Multi Learning Switch" Ruby example
|
|
31
|
-
Given I run `trema run ../../src/examples/multi_learning_switch/multi-learning-switch.rb -c multi_learning_switch.conf -d`
|
|
32
|
-
And wait until "MultiLearningSwitch" is up
|
|
33
|
-
When I send 2 packets from host1 to host2
|
|
34
|
-
Then the total number of tx packets should be:
|
|
35
|
-
| host1 | host2 | host3 | host4 |
|
|
36
|
-
| 2 | 0 | 0 | 0 |
|
|
37
|
-
And the total number of rx packets should be:
|
|
38
|
-
| host1 | host2 | host3 | host4 |
|
|
39
|
-
| 0 | 2 | 0 | 0 |
|
|
40
|
-
When I send 3 packets from host3 to host4
|
|
41
|
-
Then the total number of tx packets should be:
|
|
42
|
-
| host1 | host2 | host3 | host4 |
|
|
43
|
-
| 2 | 0 | 3 | 0 |
|
|
44
|
-
And the total number of rx packets should be:
|
|
45
|
-
| host1 | host2 | host3 | host4 |
|
|
46
|
-
| 0 | 2 | 0 | 3 |
|
|
47
|
-
When I send 2 packets from host4 to host1
|
|
48
|
-
Then the total number of tx packets should be:
|
|
49
|
-
| host1 | host2 | host3 | host4 |
|
|
50
|
-
| 2 | 0 | 3 | 2 |
|
|
51
|
-
And the total number of rx packets should be:
|
|
52
|
-
| host1 | host2 | host3 | host4 |
|
|
53
|
-
| 2 | 2 | 0 | 3 |
|
|
54
|
-
When I send 4 packets from host2 to host3
|
|
55
|
-
Then the total number of tx packets should be:
|
|
56
|
-
| host1 | host2 | host3 | host4 |
|
|
57
|
-
| 2 | 4 | 3 | 2 |
|
|
58
|
-
And the total number of rx packets should be:
|
|
59
|
-
| host1 | host2 | host3 | host4 |
|
|
60
|
-
| 2 | 2 | 4 | 3 |
|
|
61
|
-
When I send 1 packets from host1 to host4
|
|
62
|
-
Then the total number of tx packets should be:
|
|
63
|
-
| host1 | host2 | host3 | host4 |
|
|
64
|
-
| 3 | 4 | 3 | 2 |
|
|
65
|
-
And the total number of rx packets should be:
|
|
66
|
-
| host1 | host2 | host3 | host4 |
|
|
67
|
-
| 2 | 2 | 4 | 4 |
|
|
68
|
-
|
|
69
|
-
@slow_process
|
|
70
|
-
Scenario: Run "Multi Learning Switch" C example
|
|
71
|
-
Given I run `trema run ../../objects/examples/multi_learning_switch/multi_learning_switch -c multi_learning_switch.conf -d`
|
|
72
|
-
And wait until "multi_learning_switch" is up
|
|
73
|
-
When I send 2 packets from host1 to host2
|
|
74
|
-
Then the total number of tx packets should be:
|
|
75
|
-
| host1 | host2 | host3 | host4 |
|
|
76
|
-
| 2 | 0 | 0 | 0 |
|
|
77
|
-
And the total number of rx packets should be:
|
|
78
|
-
| host1 | host2 | host3 | host4 |
|
|
79
|
-
| 0 | 2 | 0 | 0 |
|
|
80
|
-
When I send 3 packets from host3 to host4
|
|
81
|
-
Then the total number of tx packets should be:
|
|
82
|
-
| host1 | host2 | host3 | host4 |
|
|
83
|
-
| 2 | 0 | 3 | 0 |
|
|
84
|
-
And the total number of rx packets should be:
|
|
85
|
-
| host1 | host2 | host3 | host4 |
|
|
86
|
-
| 0 | 2 | 0 | 3 |
|
|
87
|
-
When I send 2 packets from host4 to host1
|
|
88
|
-
Then the total number of tx packets should be:
|
|
89
|
-
| host1 | host2 | host3 | host4 |
|
|
90
|
-
| 2 | 0 | 3 | 2 |
|
|
91
|
-
And the total number of rx packets should be:
|
|
92
|
-
| host1 | host2 | host3 | host4 |
|
|
93
|
-
| 2 | 2 | 0 | 3 |
|
|
94
|
-
When I send 4 packets from host2 to host3
|
|
95
|
-
Then the total number of tx packets should be:
|
|
96
|
-
| host1 | host2 | host3 | host4 |
|
|
97
|
-
| 2 | 4 | 3 | 2 |
|
|
98
|
-
And the total number of rx packets should be:
|
|
99
|
-
| host1 | host2 | host3 | host4 |
|
|
100
|
-
| 2 | 2 | 4 | 3 |
|
|
101
|
-
When I send 1 packets from host1 to host4
|
|
102
|
-
Then the total number of tx packets should be:
|
|
103
|
-
| host1 | host2 | host3 | host4 |
|
|
104
|
-
| 3 | 4 | 3 | 2 |
|
|
105
|
-
And the total number of rx packets should be:
|
|
106
|
-
| host1 | host2 | host3 | host4 |
|
|
107
|
-
| 2 | 2 | 4 | 4 |
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
Feature: Send echo request and receive echo reply messages
|
|
2
|
-
|
|
3
|
-
In order to hear heart beats from openflow switches
|
|
4
|
-
As a Trema user
|
|
5
|
-
I want to send echo request messages to openflow switches and receive echo replies
|
|
6
|
-
|
|
7
|
-
@slow_process @ruby
|
|
8
|
-
Scenario: Echo request and reply in Ruby
|
|
9
|
-
Given a file named "echo.ruby.conf" with:
|
|
10
|
-
"""
|
|
11
|
-
custom_switch("echo.ruby") {
|
|
12
|
-
datapath_id "0xabc"
|
|
13
|
-
path "./objects/examples/openflow_switch/echo_switch"
|
|
14
|
-
}
|
|
15
|
-
"""
|
|
16
|
-
When I run `trema run "../../src/examples/openflow_message/echo.rb 0xabc, 10" -c echo.ruby.conf -d`
|
|
17
|
-
And wait until "EchoController" is up
|
|
18
|
-
And I run `trema killall`
|
|
19
|
-
Then the file "../../tmp/log/customswitch.echo.ruby.log" should contain:
|
|
20
|
-
"""
|
|
21
|
-
received: OFPT_ECHO_REQUEST
|
|
22
|
-
received: OFPT_ECHO_REQUEST
|
|
23
|
-
received: OFPT_ECHO_REQUEST
|
|
24
|
-
received: OFPT_ECHO_REQUEST
|
|
25
|
-
received: OFPT_ECHO_REQUEST
|
|
26
|
-
received: OFPT_ECHO_REQUEST
|
|
27
|
-
received: OFPT_ECHO_REQUEST
|
|
28
|
-
received: OFPT_ECHO_REQUEST
|
|
29
|
-
received: OFPT_ECHO_REQUEST
|
|
30
|
-
received: OFPT_ECHO_REQUEST
|
|
31
|
-
"""
|
|
32
|
-
# And the file "../../tmp/log/EchoController.log" should match /received: OFPT_ECHO_REPLY/
|
|
33
|
-
|
|
34
|
-
@slow_process
|
|
35
|
-
Scenario: Echo request and reply in C
|
|
36
|
-
Given a file named "echo.conf" with:
|
|
37
|
-
"""
|
|
38
|
-
custom_switch("echo") {
|
|
39
|
-
datapath_id "0xabc"
|
|
40
|
-
path "./objects/examples/openflow_switch/echo_switch"
|
|
41
|
-
}
|
|
42
|
-
"""
|
|
43
|
-
When I run `trema run "../../objects/examples/openflow_message/echo 10" -c echo.conf -d`
|
|
44
|
-
And wait until "echo" is up
|
|
45
|
-
And I run `trema killall`
|
|
46
|
-
Then the file "../../tmp/log/customswitch.echo.log" should contain:
|
|
47
|
-
"""
|
|
48
|
-
received: OFPT_ECHO_REQUEST
|
|
49
|
-
received: OFPT_ECHO_REQUEST
|
|
50
|
-
received: OFPT_ECHO_REQUEST
|
|
51
|
-
received: OFPT_ECHO_REQUEST
|
|
52
|
-
received: OFPT_ECHO_REQUEST
|
|
53
|
-
received: OFPT_ECHO_REQUEST
|
|
54
|
-
received: OFPT_ECHO_REQUEST
|
|
55
|
-
received: OFPT_ECHO_REQUEST
|
|
56
|
-
received: OFPT_ECHO_REQUEST
|
|
57
|
-
received: OFPT_ECHO_REQUEST
|
|
58
|
-
"""
|
|
59
|
-
And the file "../../tmp/log/echo.log" should match /received: OFPT_ECHO_REPLY/
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
Feature: Send a features request message
|
|
2
|
-
|
|
3
|
-
In order to get the list of switch features
|
|
4
|
-
As a Trema user
|
|
5
|
-
I want to send a features request message to openflow switches
|
|
6
|
-
|
|
7
|
-
Background:
|
|
8
|
-
Given a file named "features_request.conf" with:
|
|
9
|
-
"""
|
|
10
|
-
vswitch( "features_request" ) { datapath_id "0xabc" }
|
|
11
|
-
"""
|
|
12
|
-
|
|
13
|
-
@slow_process @ruby
|
|
14
|
-
Scenario: Feature Request message in Ruby
|
|
15
|
-
When I run `trema run ../../src/examples/openflow_message/features-request.rb -c features_request.conf -d`
|
|
16
|
-
And wait until "FeaturesRequestController" is up
|
|
17
|
-
And I run `trema killall`
|
|
18
|
-
Then the file "../../tmp/log/FeaturesRequestController.log" should match /datapath_id: 0xabc/
|
|
19
|
-
And the file "../../tmp/log/FeaturesRequestController.log" should match /n_buffers:/
|
|
20
|
-
And the file "../../tmp/log/FeaturesRequestController.log" should match /n_tables:/
|
|
21
|
-
And the file "../../tmp/log/FeaturesRequestController.log" should match /capabilities:/
|
|
22
|
-
And the file "../../tmp/log/FeaturesRequestController.log" should match /actions:/
|
|
23
|
-
And the file "../../tmp/log/FeaturesRequestController.log" should match /ports:/
|
|
24
|
-
|
|
25
|
-
@slow_process
|
|
26
|
-
Scenario: Features Request message in C
|
|
27
|
-
When I run `trema run ../../objects/examples/openflow_message/features_request -c features_request.conf -d`
|
|
28
|
-
And wait until "features_request" is up
|
|
29
|
-
And I run `trema killall`
|
|
30
|
-
Then the file "../../tmp/log/features_request.log" should match /datapath_id: 0xabc/
|
|
31
|
-
And the file "../../tmp/log/features_request.log" should match /n_buffers:/
|
|
32
|
-
And the file "../../tmp/log/features_request.log" should match /n_tables:/
|
|
33
|
-
And the file "../../tmp/log/features_request.log" should match /capabilities:/
|
|
34
|
-
And the file "../../tmp/log/features_request.log" should match /actions:/
|
|
35
|
-
And the file "../../tmp/log/features_request.log" should match /ports:/
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
Feature: Send hello messages
|
|
2
|
-
|
|
3
|
-
In order to start conversations with switches
|
|
4
|
-
As a Trema user
|
|
5
|
-
I want to send hello messages to openflow switches
|
|
6
|
-
|
|
7
|
-
@slow_process @ruby
|
|
8
|
-
Scenario: Hello message in Ruby
|
|
9
|
-
Given a file named "hello-r.conf" with:
|
|
10
|
-
"""
|
|
11
|
-
custom_switch("hello-r") {
|
|
12
|
-
datapath_id "0xabc"
|
|
13
|
-
path "./objects/examples/openflow_switch/hello_switch"
|
|
14
|
-
}
|
|
15
|
-
"""
|
|
16
|
-
When I run `trema run "../../src/examples/openflow_message/hello.rb 10" -c hello-r.conf -d`
|
|
17
|
-
And wait until "HelloController" is up
|
|
18
|
-
And I run `trema killall`
|
|
19
|
-
Then the file "../../tmp/log/customswitch.hello-r.log" should contain:
|
|
20
|
-
"""
|
|
21
|
-
received: OFPT_HELLO
|
|
22
|
-
received: OFPT_HELLO
|
|
23
|
-
received: OFPT_HELLO
|
|
24
|
-
received: OFPT_HELLO
|
|
25
|
-
received: OFPT_HELLO
|
|
26
|
-
received: OFPT_HELLO
|
|
27
|
-
received: OFPT_HELLO
|
|
28
|
-
received: OFPT_HELLO
|
|
29
|
-
received: OFPT_HELLO
|
|
30
|
-
received: OFPT_HELLO
|
|
31
|
-
received: OFPT_HELLO
|
|
32
|
-
"""
|
|
33
|
-
|
|
34
|
-
@slow_process
|
|
35
|
-
Scenario: Hello message in C
|
|
36
|
-
Given a file named "hello.conf" with:
|
|
37
|
-
"""
|
|
38
|
-
custom_switch("hello") {
|
|
39
|
-
datapath_id "0xabc"
|
|
40
|
-
path "./objects/examples/openflow_switch/hello_switch"
|
|
41
|
-
}
|
|
42
|
-
"""
|
|
43
|
-
When I run `trema run "../../objects/examples/openflow_message/hello 10" -c hello.conf -d`
|
|
44
|
-
And wait until "hello" is up
|
|
45
|
-
And I run `trema killall`
|
|
46
|
-
Then the file "../../tmp/log/customswitch.hello.log" should contain:
|
|
47
|
-
"""
|
|
48
|
-
received: OFPT_HELLO
|
|
49
|
-
received: OFPT_HELLO
|
|
50
|
-
received: OFPT_HELLO
|
|
51
|
-
received: OFPT_HELLO
|
|
52
|
-
received: OFPT_HELLO
|
|
53
|
-
received: OFPT_HELLO
|
|
54
|
-
received: OFPT_HELLO
|
|
55
|
-
received: OFPT_HELLO
|
|
56
|
-
received: OFPT_HELLO
|
|
57
|
-
received: OFPT_HELLO
|
|
58
|
-
received: OFPT_HELLO
|
|
59
|
-
"""
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
Feature: "Packet In" sample application
|
|
2
|
-
|
|
3
|
-
In order to learn how to handle Packet In messages
|
|
4
|
-
As a developer using Trema
|
|
5
|
-
I want to execute "Packet In" sample application
|
|
6
|
-
|
|
7
|
-
Background:
|
|
8
|
-
Given a file named "packet_in.conf" with:
|
|
9
|
-
"""
|
|
10
|
-
vswitch("packet_in") { dpid 0xabc }
|
|
11
|
-
|
|
12
|
-
vhost("host1")
|
|
13
|
-
vhost("host2")
|
|
14
|
-
|
|
15
|
-
link "packet_in", "host1"
|
|
16
|
-
link "packet_in", "host2"
|
|
17
|
-
"""
|
|
18
|
-
|
|
19
|
-
@slow_process @ruby
|
|
20
|
-
Scenario: Run "Packet In" Ruby example
|
|
21
|
-
Given I run `trema run ../../src/examples/packet_in/packet-in.rb -c packet_in.conf -d`
|
|
22
|
-
And wait until "PacketInDumper" is up
|
|
23
|
-
When I send 1 packet from host1 to host2
|
|
24
|
-
And *** sleep 1 ***
|
|
25
|
-
Then the file "../../tmp/log/PacketInDumper.log" should contain "received a packet_in"
|
|
26
|
-
|
|
27
|
-
@slow_process
|
|
28
|
-
Scenario: Run "Packet In" C example
|
|
29
|
-
Given I run `trema run ../../objects/examples/packet_in/packet_in -c packet_in.conf -d`
|
|
30
|
-
And wait until "packet_in" is up
|
|
31
|
-
When I send 1 packet from host1 to host2
|
|
32
|
-
And *** sleep 1 ***
|
|
33
|
-
Then the file "../../tmp/log/packet_in.log" should contain "received a packet_in"
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
Feature: Packet-In filter configuration example
|
|
2
|
-
|
|
3
|
-
As a Trema user
|
|
4
|
-
I want to configure packetin_filter
|
|
5
|
-
So that I can configuration filters of packetin_filter
|
|
6
|
-
|
|
7
|
-
@wip
|
|
8
|
-
Scenario: add filter
|
|
9
|
-
When I try trema run "./objects/examples/dumper/dumper" with following configuration (backgrounded):
|
|
10
|
-
"""
|
|
11
|
-
event :port_status => "dumper", :packet_in => "filter", :state_notify => "dumper"
|
|
12
|
-
filter :lldp => "dumper", :packet_in => "dumper"
|
|
13
|
-
"""
|
|
14
|
-
And wait until "dumper" is up
|
|
15
|
-
And *** sleep 2 ***
|
|
16
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/add_filter"
|
|
17
|
-
Then the output should include:
|
|
18
|
-
"""
|
|
19
|
-
A packetin filter was added ( match = [wildcards = 0xc(dl_src|dl_dst), in_port = 1, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0xffff, dl_vlan_pcp = 0, dl_type = 0x800, nw_tos = 0, nw_proto = 10, nw_src = 10.0.0.1/32, nw_dst = 10.0.0.2/32, tp_src = 1024, tp_dst = 2048], service_name = dumper ).
|
|
20
|
-
"""
|
|
21
|
-
|
|
22
|
-
@wip
|
|
23
|
-
Scenario: dump filter
|
|
24
|
-
When I try trema run "./objects/examples/dumper/dumper" with following configuration (backgrounded):
|
|
25
|
-
"""
|
|
26
|
-
event :port_status => "dumper", :packet_in => "filter", :state_notify => "dumper"
|
|
27
|
-
filter :lldp => "dumper", :packet_in => "dumper"
|
|
28
|
-
"""
|
|
29
|
-
And wait until "dumper" is up
|
|
30
|
-
And *** sleep 2 ***
|
|
31
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/dump_filter"
|
|
32
|
-
Then the output should include:
|
|
33
|
-
"""
|
|
34
|
-
2 packetin filters found ( match = [wildcards = 0x3fffff(all), in_port = 0, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0, dl_vlan_pcp = 0, dl_type = 0, nw_tos = 0, nw_proto = 0, nw_src = 0.0.0.0/0, nw_dst = 0.0.0.0/0, tp_src = 0, tp_dst = 0], service_name = dumper, strict = false ).
|
|
35
|
-
[#0] match = [wildcards = 0x3fffef(in_port|dl_src|dl_dst|dl_vlan|dl_vlan_pcp|nw_proto|nw_tos|nw_src(63)|nw_dst(63)|tp_src|tp_dst), in_port = 0, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0, dl_vlan_pcp = 0, dl_type = 0x88cc, nw_tos = 0, nw_proto = 0, nw_src = 0.0.0.0/0, nw_dst = 0.0.0.0/0, tp_src = 0, tp_dst = 0], priority = 32768, service_name = dumper.
|
|
36
|
-
[#1] match = [wildcards = 0x3fffff(all), in_port = 0, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0, dl_vlan_pcp = 0, dl_type = 0, nw_tos = 0, nw_proto = 0, nw_src = 0.0.0.0/0, nw_dst = 0.0.0.0/0, tp_src = 0, tp_dst = 0], priority = 0, service_name = dumper.
|
|
37
|
-
"""
|
|
38
|
-
|
|
39
|
-
@wip
|
|
40
|
-
Scenario: dump filter strict
|
|
41
|
-
When I try trema run "./objects/examples/dumper/dumper" with following configuration (backgrounded):
|
|
42
|
-
"""
|
|
43
|
-
event :port_status => "dumper", :packet_in => "filter", :state_notify => "dumper"
|
|
44
|
-
filter :lldp => "dumper", :packet_in => "dumper"
|
|
45
|
-
"""
|
|
46
|
-
And wait until "dumper" is up
|
|
47
|
-
And *** sleep 2 ***
|
|
48
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/dump_filter_strict"
|
|
49
|
-
Then the output should include:
|
|
50
|
-
"""
|
|
51
|
-
0 packetin filter found ( match = [wildcards = 0xc(dl_src|dl_dst), in_port = 1, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0xffff, dl_vlan_pcp = 0, dl_type = 0x800, nw_tos = 0, nw_proto = 10, nw_src = 10.0.0.1/32, nw_dst = 10.0.0.2/32, tp_src = 1024, tp_dst = 2048], service_name = dumper, strict = true ).
|
|
52
|
-
"""
|
|
53
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/add_filter"
|
|
54
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/dump_filter_strict"
|
|
55
|
-
Then the output should include:
|
|
56
|
-
"""
|
|
57
|
-
1 packetin filter found ( match = [wildcards = 0xc(dl_src|dl_dst), in_port = 1, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0xffff, dl_vlan_pcp = 0, dl_type = 0x800, nw_tos = 0, nw_proto = 10, nw_src = 10.0.0.1/32, nw_dst = 10.0.0.2/32, tp_src = 1024, tp_dst = 2048], service_name = dumper, strict = true ).
|
|
58
|
-
[#0] match = [wildcards = 0xc(dl_src|dl_dst), in_port = 1, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0xffff, dl_vlan_pcp = 0, dl_type = 0x800, nw_tos = 0, nw_proto = 10, nw_src = 10.0.0.1/32, nw_dst = 10.0.0.2/32, tp_src = 1024, tp_dst = 2048], priority = 65535, service_name = dumper.
|
|
59
|
-
"""
|
|
60
|
-
|
|
61
|
-
@wip
|
|
62
|
-
Scenario: delete filter strict
|
|
63
|
-
When I try trema run "./objects/examples/dumper/dumper" with following configuration (backgrounded):
|
|
64
|
-
"""
|
|
65
|
-
event :port_status => "dumper", :packet_in => "filter", :state_notify => "dumper"
|
|
66
|
-
filter :lldp => "dumper", :packet_in => "dumper"
|
|
67
|
-
"""
|
|
68
|
-
And wait until "dumper" is up
|
|
69
|
-
And *** sleep 2 ***
|
|
70
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/delete_filter_strict"
|
|
71
|
-
Then the output should include:
|
|
72
|
-
"""
|
|
73
|
-
0 packetin filter was deleted ( match = [wildcards = 0xc(dl_src|dl_dst), in_port = 1, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0xffff, dl_vlan_pcp = 0, dl_type = 0x800, nw_tos = 0, nw_proto = 10, nw_src = 10.0.0.1/32, nw_dst = 10.0.0.2/32, tp_src = 1024, tp_dst = 2048], service_name = dumper, strict = true ).
|
|
74
|
-
"""
|
|
75
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/add_filter"
|
|
76
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/delete_filter_strict"
|
|
77
|
-
Then the output should include:
|
|
78
|
-
"""
|
|
79
|
-
1 packetin filter was deleted ( match = [wildcards = 0xc(dl_src|dl_dst), in_port = 1, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0xffff, dl_vlan_pcp = 0, dl_type = 0x800, nw_tos = 0, nw_proto = 10, nw_src = 10.0.0.1/32, nw_dst = 10.0.0.2/32, tp_src = 1024, tp_dst = 2048], service_name = dumper, strict = true ).
|
|
80
|
-
"""
|
|
81
|
-
|
|
82
|
-
@wip
|
|
83
|
-
Scenario: delete filter
|
|
84
|
-
When I try trema run "./objects/examples/dumper/dumper" with following configuration (backgrounded):
|
|
85
|
-
"""
|
|
86
|
-
event :port_status => "dumper", :packet_in => "filter", :state_notify => "dumper"
|
|
87
|
-
filter :lldp => "dumper", :packet_in => "dumper"
|
|
88
|
-
"""
|
|
89
|
-
And wait until "dumper" is up
|
|
90
|
-
And *** sleep 2 ***
|
|
91
|
-
And I try to run "TREMA_HOME=`pwd` ./objects/examples/packetin_filter_config/delete_filter"
|
|
92
|
-
Then the output should include:
|
|
93
|
-
"""
|
|
94
|
-
2 packetin filters were deleted ( match = [wildcards = 0x3fffff(all), in_port = 0, dl_src = 00:00:00:00:00:00, dl_dst = 00:00:00:00:00:00, dl_vlan = 0, dl_vlan_pcp = 0, dl_type = 0, nw_tos = 0, nw_proto = 0, nw_src = 0.0.0.0/0, nw_dst = 0.0.0.0/0, tp_src = 0, tp_dst = 0], service_name = dumper, strict = false ).
|
|
95
|
-
"""
|