trema 0.4.6 → 0.4.7

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.
Files changed (291) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -0
  3. data/.travis.yml +24 -7
  4. data/Gemfile +19 -27
  5. data/Guardfile +6 -0
  6. data/README.md +13 -5
  7. data/Rakefile +418 -415
  8. data/bin/quality +2 -2
  9. data/bin/trema +103 -105
  10. data/bin/trema-config +7 -7
  11. data/build.rb +2 -2
  12. data/cruise.rb +109 -83
  13. data/features/dsl/switch_port_specifier.feature +1 -1
  14. data/features/examples/dumper.feature +9 -41
  15. data/features/examples/hello_trema.feature +1 -1
  16. data/features/examples/learning_switch.feature +7 -7
  17. data/features/examples/list_switches.feature +5 -5
  18. data/features/examples/message.set_config.feature +11 -11
  19. data/features/examples/message.vendor-action.feature +7 -7
  20. data/features/examples/message.vendor-stats-request.feature +1 -1
  21. data/features/examples/multi_learning_switch.feature +7 -7
  22. data/features/examples/openflow_message.echo.feature +15 -15
  23. data/features/examples/openflow_message.features_request.feature +12 -12
  24. data/features/examples/openflow_message.hello.feature +13 -13
  25. data/features/examples/packet_in.feature +8 -8
  26. data/features/examples/patch_panel.feature +1 -1
  27. data/features/examples/repeater_hub.feature +7 -7
  28. data/features/examples/switch_info.feature +16 -16
  29. data/features/examples/switch_monitor.feature +11 -11
  30. data/features/examples/transparent_firewall.feature +73 -0
  31. data/features/handlers/switch_ready.feature +1 -1
  32. data/features/step_definitions/misc_steps.rb +24 -24
  33. data/features/step_definitions/send_packets_steps.rb +2 -2
  34. data/features/step_definitions/stats_steps.rb +6 -6
  35. data/features/support/env.rb +15 -15
  36. data/features/support/hooks.rb +9 -9
  37. data/features/switch_event/add_forward_entry.feature +3 -3
  38. data/features/switch_event/delete_forward_entry.feature +3 -3
  39. data/features/switch_event/dump_forward_entries.feature +2 -2
  40. data/features/switch_event/set_forward_entries.feature +2 -2
  41. data/features/trema_commands/dump_flows.feature +1 -0
  42. data/features/trema_commands/help.feature +1 -0
  43. data/features/trema_commands/help_option.feature +1 -0
  44. data/features/trema_commands/kill.feature +1 -0
  45. data/features/trema_commands/killall.feature +1 -0
  46. data/features/trema_commands/port_down.feature +1 -0
  47. data/features/trema_commands/port_up.feature +1 -0
  48. data/features/trema_commands/reset_stats.feature +1 -0
  49. data/features/trema_commands/run.feature +1 -0
  50. data/features/trema_commands/send_packets.feature +2 -1
  51. data/features/trema_commands/show_stats.feature +1 -0
  52. data/features/trema_commands/up.feature +1 -0
  53. data/features/trema_commands/version.feature +1 -0
  54. data/features/trema_commands/version_option.feature +1 -0
  55. data/rubocop-todo.yml +159 -0
  56. data/ruby/blocker.rb +15 -17
  57. data/ruby/extconf.rb +19 -19
  58. data/ruby/sub-process.rb +29 -29
  59. data/ruby/trema/aggregate-stats-reply.rb +2 -2
  60. data/ruby/trema/app.rb +13 -13
  61. data/ruby/trema/cli.rb +45 -45
  62. data/ruby/trema/command.rb +14 -14
  63. data/ruby/trema/command/dump_flows.rb +5 -5
  64. data/ruby/trema/command/kill.rb +13 -13
  65. data/ruby/trema/command/killall.rb +1 -1
  66. data/ruby/trema/command/netns.rb +3 -3
  67. data/ruby/trema/command/port_down.rb +7 -7
  68. data/ruby/trema/command/port_up.rb +7 -7
  69. data/ruby/trema/command/reset_stats.rb +6 -6
  70. data/ruby/trema/command/ruby.rb +2 -2
  71. data/ruby/trema/command/run.rb +23 -23
  72. data/ruby/trema/command/send_packets.rb +9 -9
  73. data/ruby/trema/command/shell.rb +14 -16
  74. data/ruby/trema/command/show_stats.rb +9 -9
  75. data/ruby/trema/command/up.rb +4 -4
  76. data/ruby/trema/command/version.rb +1 -1
  77. data/ruby/trema/controller.rb +10 -10
  78. data/ruby/trema/custom-switch.rb +4 -4
  79. data/ruby/trema/daemon.rb +21 -21
  80. data/ruby/trema/desc-stats-reply.rb +2 -2
  81. data/ruby/trema/dsl.rb +5 -5
  82. data/ruby/trema/dsl/configuration.rb +7 -7
  83. data/ruby/trema/dsl/context.rb +10 -10
  84. data/ruby/trema/dsl/custom-switch.rb +3 -3
  85. data/ruby/trema/dsl/link.rb +2 -2
  86. data/ruby/trema/dsl/netns.rb +9 -9
  87. data/ruby/trema/dsl/parser.rb +14 -14
  88. data/ruby/trema/dsl/rswitch.rb +3 -3
  89. data/ruby/trema/dsl/run.rb +4 -4
  90. data/ruby/trema/dsl/runner.rb +20 -20
  91. data/ruby/trema/dsl/stanza.rb +5 -5
  92. data/ruby/trema/dsl/switch.rb +14 -14
  93. data/ruby/trema/dsl/syntax.rb +54 -54
  94. data/ruby/trema/dsl/vhost.rb +9 -9
  95. data/ruby/trema/dsl/vswitch.rb +4 -4
  96. data/ruby/trema/enqueue.rb +11 -11
  97. data/ruby/trema/exact-match.rb +1 -1
  98. data/ruby/trema/executables.rb +19 -19
  99. data/ruby/trema/flow-stats-reply.rb +2 -2
  100. data/ruby/trema/flow.rb +8 -8
  101. data/ruby/trema/hardware-switch.rb +2 -2
  102. data/ruby/trema/host.rb +18 -18
  103. data/ruby/trema/link.rb +9 -9
  104. data/ruby/trema/mac.rb +1 -5
  105. data/ruby/trema/match.c +0 -1
  106. data/ruby/trema/monkey-patch/integer.rb +3 -3
  107. data/ruby/trema/monkey-patch/integer/base-conversions.rb +1 -1
  108. data/ruby/trema/monkey-patch/integer/ranges.rb +2 -2
  109. data/ruby/trema/monkey-patch/integer/validators.rb +1 -1
  110. data/ruby/trema/monkey-patch/module.rb +2 -2
  111. data/ruby/trema/monkey-patch/module/class-method.rb +2 -2
  112. data/ruby/trema/monkey-patch/module/deprecation.rb +1 -1
  113. data/ruby/trema/monkey-patch/string.rb +1 -1
  114. data/ruby/trema/monkey-patch/string/inflectors.rb +7 -7
  115. data/ruby/trema/netns.rb +6 -6
  116. data/ruby/trema/network-component.rb +7 -7
  117. data/ruby/trema/ofctl.rb +13 -13
  118. data/ruby/trema/open-vswitch.rb +25 -25
  119. data/ruby/trema/openflow-switch.rb +1 -1
  120. data/ruby/trema/ordered-hash.rb +8 -8
  121. data/ruby/trema/packet-in.c +0 -1
  122. data/ruby/trema/packet-queue.rb +8 -8
  123. data/ruby/trema/packetin-filter.rb +9 -9
  124. data/ruby/trema/path.rb +32 -32
  125. data/ruby/trema/phost.rb +5 -5
  126. data/ruby/trema/port-mod.c +0 -1
  127. data/ruby/trema/port-stats-reply.rb +2 -2
  128. data/ruby/trema/port-status-add.rb +2 -2
  129. data/ruby/trema/port-status-delete.rb +2 -2
  130. data/ruby/trema/port-status-modify.rb +2 -2
  131. data/ruby/trema/port.c +0 -1
  132. data/ruby/trema/process.rb +7 -7
  133. data/ruby/trema/queue-stats-reply.rb +2 -2
  134. data/ruby/trema/ruby-switch.rb +6 -6
  135. data/ruby/trema/send-out-port.rb +11 -11
  136. data/ruby/trema/set-eth-addr.rb +5 -5
  137. data/ruby/trema/set-eth-dst-addr.rb +1 -1
  138. data/ruby/trema/set-eth-src-addr.rb +1 -1
  139. data/ruby/trema/set-ip-addr.rb +6 -6
  140. data/ruby/trema/set-ip-dst-addr.rb +1 -1
  141. data/ruby/trema/set-ip-src-addr.rb +1 -1
  142. data/ruby/trema/set-ip-tos.rb +6 -6
  143. data/ruby/trema/set-transport-dst-port.rb +2 -2
  144. data/ruby/trema/set-transport-port.rb +7 -7
  145. data/ruby/trema/set-transport-src-port.rb +3 -3
  146. data/ruby/trema/set-vlan-priority.rb +6 -6
  147. data/ruby/trema/set-vlan-vid.rb +6 -6
  148. data/ruby/trema/shell.rb +10 -10
  149. data/ruby/trema/shell/down.rb +3 -3
  150. data/ruby/trema/shell/killall.rb +1 -1
  151. data/ruby/trema/shell/link.rb +14 -14
  152. data/ruby/trema/shell/reset_stats.rb +6 -6
  153. data/ruby/trema/shell/run.rb +7 -7
  154. data/ruby/trema/shell/send_packets.rb +3 -3
  155. data/ruby/trema/shell/show_stats.rb +7 -7
  156. data/ruby/trema/shell/up.rb +5 -5
  157. data/ruby/trema/shell/vhost.rb +4 -4
  158. data/ruby/trema/shell/vswitch.rb +7 -7
  159. data/ruby/trema/stats-helper.rb +3 -3
  160. data/ruby/trema/stats-reply.c +0 -1
  161. data/ruby/trema/strip-vlan-header.rb +1 -1
  162. data/ruby/trema/switch-daemon.rb +9 -9
  163. data/ruby/trema/switch-manager.rb +9 -9
  164. data/ruby/trema/switch.rb +7 -7
  165. data/ruby/trema/table-stats-reply.rb +2 -2
  166. data/ruby/trema/timers.rb +12 -12
  167. data/ruby/trema/trema.c +0 -1
  168. data/ruby/trema/tremashark.rb +1 -1
  169. data/ruby/trema/util.rb +25 -27
  170. data/ruby/trema/vendor-action.rb +10 -10
  171. data/ruby/trema/vendor-stats-reply.rb +2 -2
  172. data/ruby/trema/version.rb +1 -1
  173. data/spec/spec_helper.rb +50 -52
  174. data/spec/support/action.rb +9 -12
  175. data/spec/support/mandatory-option.rb +15 -18
  176. data/spec/support/matchers/constant.rb +7 -7
  177. data/spec/support/openflow-message.rb +76 -79
  178. data/spec/support/port-status.rb +7 -10
  179. data/spec/trema/app_spec.rb +27 -27
  180. data/spec/trema/barrier-reply_spec.rb +10 -10
  181. data/spec/trema/barrier-request_spec.rb +35 -35
  182. data/spec/trema/cli_spec.rb +63 -63
  183. data/spec/trema/controller_spec.rb +3 -3
  184. data/spec/trema/default-logger_spec.rb +4 -4
  185. data/spec/trema/dsl/configuration_spec.rb +47 -47
  186. data/spec/trema/dsl/link_spec.rb +11 -11
  187. data/spec/trema/dsl/run_spec.rb +19 -19
  188. data/spec/trema/dsl/runner_spec.rb +91 -91
  189. data/spec/trema/dsl/switch_spec.rb +16 -16
  190. data/spec/trema/dsl/syntax_spec.rb +22 -22
  191. data/spec/trema/dsl/vhost_spec.rb +37 -37
  192. data/spec/trema/dsl/vswitch_spec.rb +21 -21
  193. data/spec/trema/echo-reply_spec.rb +29 -29
  194. data/spec/trema/echo-request_spec.rb +54 -54
  195. data/spec/trema/enqueue_spec.rb +25 -25
  196. data/spec/trema/error_spec.rb +30 -30
  197. data/spec/trema/executables_spec.rb +20 -20
  198. data/spec/trema/features-reply_spec.rb +41 -41
  199. data/spec/trema/features-request_spec.rb +35 -35
  200. data/spec/trema/flow-mod_spec.rb +32 -32
  201. data/spec/trema/flow-removed_spec.rb +62 -62
  202. data/spec/trema/get-config-reply_spec.rb +14 -12
  203. data/spec/trema/get-config-request_spec.rb +35 -35
  204. data/spec/trema/hardware-switch_spec.rb +12 -12
  205. data/spec/trema/hello_spec.rb +17 -17
  206. data/spec/trema/host_spec.rb +71 -71
  207. data/spec/trema/link_spec.rb +13 -13
  208. data/spec/trema/list-switches-reply_spec.rb +10 -10
  209. data/spec/trema/match_spec.rb +41 -41
  210. data/spec/trema/open-vswitch_spec.rb +45 -45
  211. data/spec/trema/openflow-error_spec.rb +67 -65
  212. data/spec/trema/packet-in_spec.rb +450 -446
  213. data/spec/trema/packet-out_spec.rb +42 -42
  214. data/spec/trema/packetin-filter_spec.rb +5 -5
  215. data/spec/trema/port-mod_spec.rb +32 -32
  216. data/spec/trema/port-status-add_spec.rb +3 -3
  217. data/spec/trema/port-status-delete_spec.rb +3 -3
  218. data/spec/trema/port-status-modify_spec.rb +16 -16
  219. data/spec/trema/port-status_spec.rb +2 -2
  220. data/spec/trema/port_spec.rb +21 -21
  221. data/spec/trema/process_spec.rb +22 -22
  222. data/spec/trema/queue-get-config-reply_spec.rb +21 -20
  223. data/spec/trema/queue-get-config-request_spec.rb +24 -24
  224. data/spec/trema/send-out-port_spec.rb +42 -42
  225. data/spec/trema/set-config_spec.rb +31 -31
  226. data/spec/trema/set-eth-addr_spec.rb +21 -21
  227. data/spec/trema/set-ip-addr_spec.rb +29 -29
  228. data/spec/trema/set-ip-tos_spec.rb +26 -26
  229. data/spec/trema/set-transport-dst-port_spec.rb +22 -22
  230. data/spec/trema/set-transport-src-port_spec.rb +22 -22
  231. data/spec/trema/set-vlan-priority_spec.rb +23 -23
  232. data/spec/trema/set-vlan-vid_spec.rb +23 -23
  233. data/spec/trema/shell/vhost_spec.rb +21 -21
  234. data/spec/trema/shell/vswitch_spec.rb +30 -30
  235. data/spec/trema/stats-reply_spec.rb +183 -173
  236. data/spec/trema/stats-request_spec.rb +66 -66
  237. data/spec/trema/strip-vlan-header_spec.rb +11 -11
  238. data/spec/trema/switch-daemon_spec.rb +34 -34
  239. data/spec/trema/switch-disconnected_spec.rb +17 -17
  240. data/spec/trema/switch-manager_spec.rb +6 -6
  241. data/spec/trema/tremashark_spec.rb +4 -4
  242. data/spec/trema/util_spec.rb +35 -35
  243. data/spec/trema/vendor-action_spec.rb +26 -26
  244. data/spec/trema/vendor_spec.rb +27 -27
  245. data/spec/trema_spec.rb +2 -2
  246. data/src/examples/cbench_switch/cbench-switch.rb +3 -3
  247. data/src/examples/dumper/dumper.rb +31 -31
  248. data/src/examples/hello_trema/hello-trema.rb +2 -2
  249. data/src/examples/learning_switch/fdb.rb +14 -14
  250. data/src/examples/learning_switch/learning-switch.rb +12 -10
  251. data/src/examples/learning_switch/learning_switch.c +22 -39
  252. data/src/examples/list_switches/list-switches.rb +3 -3
  253. data/src/examples/match_compare/match-compare.rb +20 -20
  254. data/src/examples/multi_learning_switch/multi-learning-switch.rb +12 -12
  255. data/src/examples/openflow_message/echo.rb +4 -4
  256. data/src/examples/openflow_message/example.rb +7 -7
  257. data/src/examples/openflow_message/features-request.rb +31 -31
  258. data/src/examples/openflow_message/hello.rb +2 -2
  259. data/src/examples/openflow_message/set-config.rb +4 -4
  260. data/src/examples/openflow_message/vendor-action.rb +3 -3
  261. data/src/examples/openflow_message/vendor-stats-request.rb +9 -9
  262. data/src/examples/packet_in/packet-in.rb +2 -2
  263. data/src/examples/patch_panel/patch-panel.rb +9 -9
  264. data/src/examples/repeater_hub/repeater-hub.rb +4 -4
  265. data/src/examples/repeater_hub/repeater-hub_spec.rb +65 -65
  266. data/src/examples/simple_router/arp-table.rb +7 -7
  267. data/src/examples/simple_router/interface.rb +10 -10
  268. data/src/examples/simple_router/routing-table.rb +4 -4
  269. data/src/examples/simple_router/simple-router.rb +3 -3
  270. data/src/examples/switch_info/switch-info.rb +9 -9
  271. data/src/examples/switch_monitor/switch-monitor.rb +4 -4
  272. data/src/examples/traffic_monitor/counter.rb +6 -6
  273. data/src/examples/traffic_monitor/fdb.rb +4 -4
  274. data/src/examples/traffic_monitor/traffic-monitor.rb +12 -12
  275. data/src/examples/transparent_firewall/README.md +61 -0
  276. data/src/examples/transparent_firewall/aggregated-delegated-afrinic.txt +713 -0
  277. data/src/examples/transparent_firewall/aggregated-delegated-apnic.txt +3440 -0
  278. data/src/examples/transparent_firewall/aggregated-delegated-arin.txt +11342 -0
  279. data/src/examples/transparent_firewall/aggregated-delegated-lacnic.txt +1937 -0
  280. data/src/examples/transparent_firewall/aggregated-delegated-ripencc.txt +7329 -0
  281. data/src/examples/transparent_firewall/block-rfc1918.rb +86 -0
  282. data/src/examples/transparent_firewall/pass-delegated.rb +178 -0
  283. data/src/examples/transparent_firewall/regen_aggregated.sh +53 -0
  284. data/src/examples/transparent_firewall/stats-to-cidrs.rb +59 -0
  285. data/src/lib/messenger.c +14 -5
  286. data/src/lib/openflow_message.c +0 -5
  287. data/tasks/rubocop.rake +22 -0
  288. data/trema +1 -1
  289. data/trema-config +1 -1
  290. data/trema.gemspec +22 -22
  291. metadata +30 -16
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/util"
19
+ require 'trema/util'
20
20
 
21
21
 
22
22
  module Trema
@@ -24,8 +24,8 @@ module Trema
24
24
  include Trema::Util
25
25
 
26
26
 
27
- def trema_netns netns
28
- sh "sudo ip netns exec #{ netns } #{ ENV[ 'SHELL' ] }"
27
+ def trema_netns(netns)
28
+ sh "sudo ip netns exec #{ netns } #{ ENV[ 'SHELL'] }"
29
29
  end
30
30
  end
31
31
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/cli"
20
- require "trema/util"
19
+ require 'trema/cli'
20
+ require 'trema/util'
21
21
 
22
22
 
23
23
  module Trema
@@ -25,12 +25,12 @@ module Trema
25
25
  include Trema::Util
26
26
 
27
27
 
28
- def trema_port_down switch_name, port
29
- switch = find_switch_by_name( switch_name )
30
- raise "unknown switch: #{ switch_name }" if switch.nil?
28
+ def trema_port_down(switch_name, port)
29
+ switch = find_switch_by_name(switch_name)
30
+ fail "unknown switch: #{ switch_name }" if switch.nil?
31
31
 
32
- error = switch.bring_port_down( port.to_i )
33
- raise error if $?.exitstatus != 0
32
+ error = switch.bring_port_down(port.to_i)
33
+ fail error if $?.exitstatus != 0
34
34
  end
35
35
  end
36
36
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/cli"
20
- require "trema/util"
19
+ require 'trema/cli'
20
+ require 'trema/util'
21
21
 
22
22
 
23
23
  module Trema
@@ -25,12 +25,12 @@ module Trema
25
25
  include Trema::Util
26
26
 
27
27
 
28
- def trema_port_up switch_name, port
29
- switch = find_switch_by_name( switch_name )
30
- raise "unknown switch: #{ switch_name }" if switch.nil?
28
+ def trema_port_up(switch_name, port)
29
+ switch = find_switch_by_name(switch_name)
30
+ fail "unknown switch: #{ switch_name }" if switch.nil?
31
31
 
32
- error = switch.bring_port_up( port.to_i )
33
- raise error if $?.exitstatus != 0
32
+ error = switch.bring_port_up(port.to_i)
33
+ fail error if $?.exitstatus != 0
34
34
  end
35
35
  end
36
36
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/cli"
20
- require "trema/util"
19
+ require 'trema/cli'
20
+ require 'trema/util'
21
21
 
22
22
 
23
23
  module Trema
@@ -25,10 +25,10 @@ module Trema
25
25
  include Trema::Util
26
26
 
27
27
 
28
- def trema_reset_stats name
29
- host = find_host_by_name( name )
30
- raise "unknown host: #{ name }" if host.nil?
31
- Trema::Cli.new( host ).reset_stats
28
+ def trema_reset_stats(name)
29
+ host = find_host_by_name(name)
30
+ fail "unknown host: #{ name }" if host.nil?
31
+ Trema::Cli.new(host).reset_stats
32
32
  end
33
33
  end
34
34
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/util"
19
+ require 'trema/util'
20
20
 
21
21
 
22
22
  module Trema
@@ -25,7 +25,7 @@ module Trema
25
25
 
26
26
 
27
27
  def trema_ruby
28
- sh "x-www-browser http://rubydoc.info/github/trema/trema/master/frames"
28
+ sh 'x-www-browser http://rubydoc.info/github/trema/trema/master/frames'
29
29
  end
30
30
  end
31
31
  end
@@ -16,9 +16,9 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/default_openflow_channel_port"
20
- require "trema/dsl"
21
- require "trema/util"
19
+ require 'trema/default_openflow_channel_port'
20
+ require 'trema/dsl'
21
+ require 'trema/util'
22
22
 
23
23
 
24
24
  module Trema
@@ -26,27 +26,27 @@ module Trema
26
26
  include Trema::Util
27
27
 
28
28
 
29
- def trema_run options
30
- @config_file = options[ :conf ] || nil
31
- @openflow_port = options[ :port ] || DEFAULT_OPENFLOW_CHANNEL_PORT
29
+ def trema_run(options)
30
+ @config_file = options[ :conf] || nil
31
+ @openflow_port = options[ :port] || DEFAULT_OPENFLOW_CHANNEL_PORT
32
32
 
33
- if options[ :daemonize ]
33
+ if options[ :daemonize]
34
34
  $run_as_daemon = true
35
35
  end
36
- if options[ :tremashark ]
36
+ if options[ :tremashark]
37
37
  $use_tremashark = true
38
38
  end
39
- if options[ :no_flow_cleanup ]
39
+ if options[ :no_flow_cleanup]
40
40
  $no_flow_cleanup = true
41
41
  end
42
42
 
43
- need_cleanup = ( not running? )
43
+ need_cleanup = (not running?)
44
44
 
45
45
  if $run_as_daemon
46
- Trema::DSL::Runner.new( load_config ).daemonize
46
+ Trema::DSL::Runner.new(load_config).daemonize
47
47
  else
48
48
  begin
49
- Trema::DSL::Runner.new( load_config ).run
49
+ Trema::DSL::Runner.new(load_config).run
50
50
  rescue SystemExit
51
51
  # This is OK
52
52
  ensure
@@ -66,29 +66,29 @@ module Trema
66
66
  dsl_parser = Trema::DSL::Parser.new
67
67
 
68
68
  if @config_file
69
- config = dsl_parser.parse( @config_file )
70
- elsif FileTest.exists?( "./trema.conf" )
71
- config = dsl_parser.parse( "./trema.conf" )
69
+ config = dsl_parser.parse(@config_file)
70
+ elsif FileTest.exists?('./trema.conf')
71
+ config = dsl_parser.parse('./trema.conf')
72
72
  else
73
73
  config = Trema::DSL::Configuration.new
74
74
  end
75
75
 
76
76
  config.port = @openflow_port
77
77
 
78
- if ARGV[ 0 ]
79
- controller_file = ARGV[ 0 ].split.first
78
+ if ARGV[ 0]
79
+ controller_file = ARGV[ 0].split.first
80
80
  if ruby_controller?
81
- require "trema"
81
+ require 'trema'
82
82
  Object.__send__ :include, Trema
83
- ARGV.replace ARGV[ 0 ].split[ 1..-1 ]
84
- $LOAD_PATH << File.dirname( controller_file )
83
+ ARGV.replace ARGV[0].split[1..-1]
84
+ $LOAD_PATH << File.dirname(controller_file)
85
85
  load controller_file
86
86
  else
87
87
  # Assume that the controller is written in C
88
88
  stanza = Trema::DSL::Run.new
89
89
  stanza.path controller_file
90
- stanza.options ARGV[ 0 ].split[ 1..-1 ]
91
- Trema::App.new( stanza )
90
+ stanza.options ARGV[0].split[1..-1]
91
+ Trema::App.new(stanza)
92
92
  end
93
93
  end
94
94
 
@@ -97,7 +97,7 @@ module Trema
97
97
 
98
98
 
99
99
  def ruby_controller?
100
- /\.rb\Z/=~ ARGV[ 0 ].split.first
100
+ /\.rb\Z/ =~ ARGV[0].split.first
101
101
  end
102
102
  end
103
103
  end
@@ -16,9 +16,9 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/cli"
20
- require "trema/dsl"
21
- require "trema/util"
19
+ require 'trema/cli'
20
+ require 'trema/dsl'
21
+ require 'trema/util'
22
22
 
23
23
 
24
24
  module Trema
@@ -26,14 +26,14 @@ module Trema
26
26
  include Trema::Util
27
27
 
28
28
 
29
- def trema_send_packets source_name, dest_name, options
30
- source = find_host_by_name( source_name )
31
- raise "unknown host: #{ source_name }" if source.nil?
29
+ def trema_send_packets(source_name, dest_name, options)
30
+ source = find_host_by_name(source_name)
31
+ fail "unknown host: #{ source_name }" if source.nil?
32
32
 
33
- dest = find_host_by_name( dest_name )
34
- raise "unknown host: #{ dest_name }" if dest.nil?
33
+ dest = find_host_by_name(dest_name)
34
+ fail "unknown host: #{ dest_name }" if dest.nil?
35
35
 
36
- Trema::Cli.new( source ).send_packets( dest, options )
36
+ Trema::Cli.new(source).send_packets(dest, options)
37
37
  end
38
38
  end
39
39
  end
@@ -18,8 +18,8 @@
18
18
  #
19
19
 
20
20
 
21
- require "irb"
22
- require "trema/util"
21
+ require 'irb'
22
+ require 'trema/util'
23
23
 
24
24
 
25
25
  include Trema::Util
@@ -28,25 +28,23 @@ include Trema::Util
28
28
  module Trema
29
29
  module Command
30
30
  def shell
31
- begin
32
- undef :kill
33
-
34
- require "tempfile"
35
- require "trema"
36
- require "trema/shell"
37
- f = Tempfile.open( "irbrc" )
38
- f.print <<EOF
31
+ undef :kill
32
+
33
+ require 'tempfile'
34
+ require 'trema'
35
+ require 'trema/shell'
36
+ f = Tempfile.open('irbrc')
37
+ f.print <<EOF
39
38
  include Trema::Shell
40
39
  ENV[ "TREMA_HOME" ] = Trema.home
41
40
  $config = Trema::DSL::Configuration.new
42
41
  $context = Trema::DSL::Context.new( $config )
43
42
  EOF
44
- f.close
45
- load f.path
46
- IRB.start
47
- ensure
48
- cleanup $config
49
- end
43
+ f.close
44
+ load f.path
45
+ IRB.start
46
+ ensure
47
+ cleanup $config
50
48
  end
51
49
  end
52
50
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/cli"
20
- require "trema/util"
19
+ require 'trema/cli'
20
+ require 'trema/util'
21
21
 
22
22
 
23
23
  module Trema
@@ -25,8 +25,8 @@ module Trema
25
25
  include Trema::Util
26
26
 
27
27
 
28
- def trema_show_stats hostname, tx, rx
29
- cli = get_cli( hostname )
28
+ def trema_show_stats(hostname, tx, rx)
29
+ cli = get_cli(hostname)
30
30
 
31
31
  unless tx || rx
32
32
  show_tx_and_rx cli
@@ -41,16 +41,16 @@ module Trema
41
41
  ############################################################################
42
42
 
43
43
 
44
- def show_tx_and_rx cli
45
- puts "Sent packets:"
44
+ def show_tx_and_rx(cli)
45
+ puts 'Sent packets:'
46
46
  cli.show_tx_stats
47
- puts "Received packets:"
47
+ puts 'Received packets:'
48
48
  cli.show_rx_stats
49
49
  end
50
50
 
51
51
 
52
- def get_cli name
53
- host = find_host_by_name( name )
52
+ def get_cli(name)
53
+ host = find_host_by_name(name)
54
54
  exit_now! "unknown host: #{ name }" if host.nil?
55
55
  Trema::Cli.new host
56
56
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/util"
19
+ require 'trema/util'
20
20
 
21
21
 
22
22
  module Trema
@@ -24,13 +24,13 @@ module Trema
24
24
  include Trema::Util
25
25
 
26
26
 
27
- def trema_up name
28
- switch = find_switch_by_name( name )
27
+ def trema_up(name)
28
+ switch = find_switch_by_name(name)
29
29
  if switch
30
30
  switch.run
31
31
  else
32
32
  # TODO: support vlink
33
- raise "Unknown name: #{ name }"
33
+ fail "Unknown name: #{ name }"
34
34
  end
35
35
  end
36
36
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/version"
19
+ require 'trema/version'
20
20
 
21
21
 
22
22
  module Trema
@@ -16,11 +16,11 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/app"
20
- require "trema/default-logger"
21
- require "trema/monkey-patch/integer"
22
- require "trema/monkey-patch/string"
23
- require "trema/timers"
19
+ require 'trema/app'
20
+ require 'trema/default-logger'
21
+ require 'trema/monkey-patch/integer'
22
+ require 'trema/monkey-patch/string'
23
+ require 'trema/timers'
24
24
 
25
25
 
26
26
  module Trema
@@ -35,7 +35,7 @@ module Trema
35
35
  #
36
36
  # @private Just a placeholder for YARD.
37
37
  #
38
- def self.handler name
38
+ def self.handler(name)
39
39
  # Do nothing.
40
40
  end
41
41
 
@@ -207,7 +207,7 @@ module Trema
207
207
  #
208
208
  # @private
209
209
  #
210
- def self.inherited subclass
210
+ def self.inherited(subclass)
211
211
  subclass.new
212
212
  end
213
213
 
@@ -228,8 +228,8 @@ module Trema
228
228
  ::Process.setsid
229
229
  fork do
230
230
  STDIN.close
231
- STDOUT.reopen "/dev/null", "a"
232
- STDERR.reopen "/dev/null", "a"
231
+ STDOUT.reopen '/dev/null', 'a'
232
+ STDERR.reopen '/dev/null', 'a'
233
233
  self.run!
234
234
  end
235
235
  end
@@ -242,7 +242,7 @@ module Trema
242
242
  # @return [String]
243
243
  #
244
244
  def name
245
- self.class.to_s.split( "::" ).last
245
+ self.class.to_s.split('::').last
246
246
  end
247
247
  end
248
248
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/hardware-switch"
19
+ require 'trema/hardware-switch'
20
20
 
21
21
 
22
22
  module Trema
@@ -26,8 +26,8 @@ module Trema
26
26
 
27
27
  log_file { |vswitch| "customswitch.#{ vswitch.name }.log" }
28
28
 
29
-
30
- def initialize stanza
29
+
30
+ def initialize(stanza)
31
31
  super stanza
32
32
  end
33
33
 
@@ -43,7 +43,7 @@ module Trema
43
43
 
44
44
 
45
45
  def path
46
- File.join( Trema.home, @stanza[ :path ] )
46
+ File.join(Trema.home, @stanza[ :path])
47
47
  end
48
48
  end
49
49
  end