pio 0.30.0 → 0.30.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (535) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/README.md +6 -53
  4. data/Rakefile +8 -6
  5. data/features/{arp.feature → arp/arp.feature} +14 -30
  6. data/features/arp/arp_reply.feature +69 -0
  7. data/features/arp/arp_request.feature +67 -0
  8. data/features/dhcp.feature +157 -162
  9. data/features/ethernet_header.feature +149 -0
  10. data/features/icmp/icmp.feature +47 -0
  11. data/features/icmp/icmp_reply.feature +93 -0
  12. data/features/icmp/icmp_request.feature +89 -0
  13. data/features/ipv4_header.feature +89 -0
  14. data/features/lldp.feature +5 -8
  15. data/features/open_flow/header.feature +13 -0
  16. data/features/open_flow/nicira_resubmit.feature +4 -22
  17. data/features/open_flow/nicira_resubmit_table.feature +6 -16
  18. data/features/open_flow10/aggregate_stats_reply.feature +5 -7
  19. data/features/open_flow10/aggregate_stats_request.feature +12 -14
  20. data/features/open_flow10/bad_request.feature +7 -24
  21. data/features/open_flow10/barrier_reply.feature +14 -25
  22. data/features/open_flow10/barrier_request.feature +12 -25
  23. data/features/open_flow10/description_stats_reply.feature +9 -7
  24. data/features/open_flow10/description_stats_request.feature +12 -25
  25. data/features/open_flow10/echo_reply.feature +14 -35
  26. data/features/open_flow10/echo_request.feature +16 -39
  27. data/features/open_flow10/enqueue.feature +3 -4
  28. data/features/open_flow10/exact_match.feature +5 -5
  29. data/features/open_flow10/features_reply.feature +28 -73
  30. data/features/open_flow10/features_request.feature +10 -28
  31. data/features/open_flow10/flow_mod.feature +4 -188
  32. data/features/open_flow10/flow_removed.feature +28 -30
  33. data/features/open_flow10/flow_stats_reply.feature +5 -89
  34. data/features/open_flow10/flow_stats_request.feature +12 -42
  35. data/features/open_flow10/hello.feature +10 -32
  36. data/features/open_flow10/hello_failed.feature +7 -57
  37. data/features/open_flow10/packet_in.feature +130 -49
  38. data/features/open_flow10/packet_out.feature +29 -18
  39. data/features/open_flow10/port_stats_request.feature +8 -29
  40. data/features/open_flow10/port_status.feature +22 -21
  41. data/features/open_flow10/queue_stats_request.feature +12 -30
  42. data/features/open_flow10/send_out_port.feature +17 -25
  43. data/features/open_flow10/set_destination_mac_address.feature +3 -4
  44. data/features/open_flow10/set_ip_destination_address.feature +3 -4
  45. data/features/open_flow10/set_source_ip_address.feature +3 -4
  46. data/features/open_flow10/set_source_mac_address.feature +3 -4
  47. data/features/open_flow10/set_tos.feature +3 -4
  48. data/features/open_flow10/set_transport_destination_port.feature +3 -4
  49. data/features/open_flow10/set_transport_source_port.feature +3 -4
  50. data/features/open_flow10/set_vlan_priority.feature +3 -4
  51. data/features/open_flow10/set_vlan_vid.feature +3 -4
  52. data/features/open_flow10/strip_vlan_header.feature +3 -4
  53. data/features/open_flow10/table_stats_request.feature +11 -13
  54. data/features/open_flow10/vendor_action.feature +4 -5
  55. data/features/open_flow13/apply_actions.feature +15 -18
  56. data/features/open_flow13/bad_request.feature +7 -13
  57. data/features/open_flow13/copy_ttl_inwards.feature +13 -0
  58. data/features/open_flow13/copy_ttl_outwards.feature +13 -0
  59. data/features/open_flow13/decrement_ip_ttl.feature +11 -0
  60. data/features/open_flow13/echo_reply.feature +16 -42
  61. data/features/open_flow13/echo_request.feature +16 -42
  62. data/features/open_flow13/features_reply.feature +4 -25
  63. data/features/open_flow13/features_request.feature +7 -36
  64. data/features/open_flow13/flow_mod.feature +16 -76
  65. data/features/open_flow13/goto_table.feature +18 -20
  66. data/features/open_flow13/hello.feature +7 -37
  67. data/features/open_flow13/hello_failed.feature +7 -30
  68. data/features/open_flow13/match.feature +239 -248
  69. data/features/open_flow13/meter.feature +18 -20
  70. data/features/open_flow13/nicira_conjunction.feature +15 -0
  71. data/features/open_flow13/nicira_reg_load.feature +27 -42
  72. data/features/open_flow13/nicira_reg_move.feature +41 -35
  73. data/features/open_flow13/nicira_send_out_port.feature +21 -13
  74. data/features/open_flow13/nicira_stack_pop.feature +26 -0
  75. data/features/open_flow13/nicira_stack_push.feature +26 -0
  76. data/features/open_flow13/packet_in.feature +7 -34
  77. data/features/open_flow13/packet_out.feature +7 -45
  78. data/features/open_flow13/send_out_port.feature +19 -28
  79. data/features/open_flow13/set_arp_operation.feature +4 -5
  80. data/features/open_flow13/set_arp_sender_hardware_address.feature +3 -4
  81. data/features/open_flow13/set_arp_sender_protocol_address.feature +3 -4
  82. data/features/open_flow13/set_destination_mac_address.feature +3 -4
  83. data/features/open_flow13/set_ip_ttl.feature +12 -0
  84. data/features/open_flow13/set_metadata.feature +3 -4
  85. data/features/open_flow13/set_source_mac_address.feature +3 -4
  86. data/features/open_flow13/stats_request.feature +4 -7
  87. data/features/open_flow13/write_metadata.feature +20 -22
  88. data/features/open_flow_read.feature +24 -5
  89. data/features/open_flow_version.feature +1 -1
  90. data/features/parser.feature +8 -9
  91. data/features/step_definitions/Gemfile +2 -0
  92. data/features/step_definitions/Guardfile +2 -0
  93. data/features/step_definitions/Rakefile +2 -0
  94. data/features/step_definitions/dump_flows_steps.rb +2 -0
  95. data/features/step_definitions/open_flow_steps.rb +13 -16
  96. data/features/step_definitions/packet_data_steps.rb +19 -33
  97. data/features/step_definitions/rest_api_steps.rb +2 -0
  98. data/features/step_definitions/ruby_steps.rb +9 -0
  99. data/features/step_definitions/show_stats_steps.rb +5 -3
  100. data/features/step_definitions/trema_steps.rb +2 -0
  101. data/features/step_definitions/virtual_link_steps.rb +2 -0
  102. data/features/support/env.rb +2 -2
  103. data/features/support/hooks.rb +4 -2
  104. data/features/udp.feature +26 -27
  105. data/lib/pio/arp/format.rb +5 -7
  106. data/lib/pio/arp/message.rb +10 -4
  107. data/lib/pio/arp/reply.rb +11 -32
  108. data/lib/pio/arp/request.rb +11 -33
  109. data/lib/pio/arp.rb +11 -6
  110. data/lib/pio/class_inspector.rb +20 -0
  111. data/lib/pio/dhcp/ack.rb +2 -0
  112. data/lib/pio/dhcp/boot_reply.rb +2 -0
  113. data/lib/pio/dhcp/boot_reply_options.rb +2 -0
  114. data/lib/pio/dhcp/boot_request.rb +2 -0
  115. data/lib/pio/dhcp/boot_request_options.rb +2 -0
  116. data/lib/pio/dhcp/client_id.rb +2 -0
  117. data/lib/pio/dhcp/common_options.rb +2 -0
  118. data/lib/pio/dhcp/dhcp_field.rb +2 -0
  119. data/lib/pio/dhcp/dhcp_tlv_options.rb +30 -20
  120. data/lib/pio/dhcp/discover.rb +2 -0
  121. data/lib/pio/dhcp/field_util.rb +3 -1
  122. data/lib/pio/dhcp/frame.rb +6 -4
  123. data/lib/pio/dhcp/message.rb +2 -0
  124. data/lib/pio/dhcp/offer.rb +2 -0
  125. data/lib/pio/dhcp/optional_tlv.rb +4 -2
  126. data/lib/pio/dhcp/parameter_list.rb +2 -0
  127. data/lib/pio/dhcp/request.rb +2 -0
  128. data/lib/pio/dhcp.rb +4 -2
  129. data/lib/pio/ethernet_frame.rb +22 -0
  130. data/lib/pio/ethernet_header.rb +37 -13
  131. data/lib/pio/icmp/format.rb +21 -22
  132. data/lib/pio/icmp/message.rb +20 -4
  133. data/lib/pio/icmp/reply.rb +10 -34
  134. data/lib/pio/icmp/request.rb +10 -43
  135. data/lib/pio/icmp.rb +10 -5
  136. data/lib/pio/instance_inspector.rb +16 -0
  137. data/lib/pio/ipv4_address.rb +13 -11
  138. data/lib/pio/ipv4_header.rb +26 -2
  139. data/lib/pio/lldp/chassis_id_tlv.rb +2 -0
  140. data/lib/pio/lldp/end_of_lldpdu_value.rb +2 -0
  141. data/lib/pio/lldp/frame.rb +4 -2
  142. data/lib/pio/lldp/management_address_value.rb +2 -0
  143. data/lib/pio/lldp/optional_tlv.rb +4 -2
  144. data/lib/pio/lldp/options.rb +4 -2
  145. data/lib/pio/lldp/organizationally_specific_value.rb +2 -0
  146. data/lib/pio/lldp/port_description_value.rb +2 -0
  147. data/lib/pio/lldp/port_id_tlv.rb +2 -0
  148. data/lib/pio/lldp/system_capabilities_value.rb +2 -0
  149. data/lib/pio/lldp/system_description_value.rb +2 -0
  150. data/lib/pio/lldp/system_name_value.rb +2 -0
  151. data/lib/pio/lldp/ttl_tlv.rb +2 -0
  152. data/lib/pio/lldp.rb +2 -0
  153. data/lib/pio/mac.rb +9 -3
  154. data/lib/pio/message.rb +52 -0
  155. data/lib/pio/message_type_selector.rb +2 -0
  156. data/lib/pio/monkey_patch/bindata_record.rb +8 -0
  157. data/lib/pio/monkey_patch/bindata_string.rb +12 -0
  158. data/lib/pio/monkey_patch/integer/base_conversions.rb +3 -1
  159. data/lib/pio/monkey_patch/integer/ranges.rb +2 -0
  160. data/lib/pio/monkey_patch/integer.rb +2 -0
  161. data/lib/pio/monkey_patch/uint/base_conversions.rb +16 -0
  162. data/lib/pio/monkey_patch/uint.rb +11 -0
  163. data/lib/pio/open_flow/action.rb +10 -4
  164. data/lib/pio/open_flow/buffer_id.rb +21 -0
  165. data/lib/pio/open_flow/datapath_id.rb +5 -3
  166. data/lib/pio/open_flow/error_message.rb +34 -0
  167. data/lib/pio/open_flow/flags.rb +17 -6
  168. data/lib/pio/open_flow/flow_match.rb +12 -0
  169. data/lib/pio/open_flow/header.rb +28 -0
  170. data/lib/pio/open_flow/hello_failed_code.rb +3 -1
  171. data/lib/pio/open_flow/instruction.rb +12 -0
  172. data/lib/pio/open_flow/message.rb +51 -14
  173. data/lib/pio/open_flow/nicira_action.rb +2 -0
  174. data/lib/pio/open_flow/nicira_resubmit.rb +15 -11
  175. data/lib/pio/open_flow/nicira_resubmit_table.rb +19 -10
  176. data/lib/pio/open_flow/parser.rb +21 -0
  177. data/lib/pio/open_flow/port.rb +4 -2
  178. data/lib/pio/open_flow/transaction_id.rb +4 -2
  179. data/lib/pio/open_flow/version.rb +24 -0
  180. data/lib/pio/open_flow.rb +40 -52
  181. data/lib/pio/open_flow10/actions.rb +18 -16
  182. data/lib/pio/open_flow10/aggregate_stats/reply.rb +4 -1
  183. data/lib/pio/open_flow10/aggregate_stats/request.rb +3 -3
  184. data/lib/pio/open_flow10/barrier/reply.rb +3 -1
  185. data/lib/pio/open_flow10/barrier/request.rb +3 -1
  186. data/lib/pio/open_flow10/description_stats/reply.rb +3 -1
  187. data/lib/pio/open_flow10/description_stats/request.rb +3 -3
  188. data/lib/pio/open_flow10/echo/reply.rb +5 -3
  189. data/lib/pio/open_flow10/echo/request.rb +5 -3
  190. data/lib/pio/open_flow10/enqueue.rb +5 -3
  191. data/lib/pio/open_flow10/error/bad_request/bad_request_code.rb +37 -0
  192. data/lib/pio/open_flow10/error/bad_request.rb +7 -29
  193. data/lib/pio/open_flow10/error/error_type10.rb +3 -1
  194. data/lib/pio/open_flow10/error/hello_failed.rb +8 -4
  195. data/lib/pio/open_flow10/error.rb +5 -13
  196. data/lib/pio/open_flow10/exact_match.rb +14 -10
  197. data/lib/pio/open_flow10/features/reply.rb +35 -48
  198. data/lib/pio/open_flow10/features/request.rb +3 -4
  199. data/lib/pio/open_flow10/features.rb +2 -0
  200. data/lib/pio/open_flow10/flow_mod/command.rb +30 -0
  201. data/lib/pio/open_flow10/flow_mod.rb +10 -33
  202. data/lib/pio/open_flow10/flow_removed/reason.rb +24 -0
  203. data/lib/pio/open_flow10/flow_removed.rb +4 -17
  204. data/lib/pio/open_flow10/flow_stats/reply.rb +5 -4
  205. data/lib/pio/open_flow10/flow_stats/request.rb +3 -3
  206. data/lib/pio/open_flow10/hello.rb +3 -4
  207. data/lib/pio/open_flow10/match.rb +16 -13
  208. data/lib/pio/open_flow10/match10.rb +2 -0
  209. data/lib/pio/open_flow10/packet_in/reason.rb +27 -0
  210. data/lib/pio/open_flow10/packet_in.rb +34 -28
  211. data/lib/pio/open_flow10/packet_out.rb +7 -6
  212. data/lib/pio/open_flow10/phy_port16.rb +41 -61
  213. data/lib/pio/open_flow10/port16.rb +2 -0
  214. data/lib/pio/open_flow10/port_stats/request.rb +3 -3
  215. data/lib/pio/open_flow10/port_status/reason.rb +23 -0
  216. data/lib/pio/open_flow10/port_status.rb +25 -30
  217. data/lib/pio/open_flow10/queue_stats/request.rb +3 -3
  218. data/lib/pio/open_flow10/send_out_port.rb +4 -2
  219. data/lib/pio/open_flow10/set_destination_ip_address.rb +2 -0
  220. data/lib/pio/open_flow10/set_destination_mac_address.rb +2 -0
  221. data/lib/pio/open_flow10/set_source_ip_address.rb +2 -0
  222. data/lib/pio/open_flow10/set_source_mac_address.rb +2 -0
  223. data/lib/pio/open_flow10/set_tos.rb +4 -2
  224. data/lib/pio/open_flow10/set_transport_port.rb +6 -2
  225. data/lib/pio/open_flow10/set_vlan_priority.rb +3 -1
  226. data/lib/pio/open_flow10/set_vlan_vid.rb +3 -1
  227. data/lib/pio/open_flow10/stats_reply.rb +9 -10
  228. data/lib/pio/open_flow10/stats_request.rb +18 -15
  229. data/lib/pio/open_flow10/stats_type.rb +3 -1
  230. data/lib/pio/open_flow10/strip_vlan_header.rb +2 -0
  231. data/lib/pio/open_flow10/table_stats/request.rb +3 -3
  232. data/lib/pio/open_flow10/vendor_action.rb +24 -20
  233. data/lib/pio/open_flow10.rb +2 -0
  234. data/lib/pio/open_flow13/actions.rb +36 -32
  235. data/lib/pio/open_flow13/apply.rb +27 -22
  236. data/lib/pio/open_flow13/copy_ttl_inwards.rb +17 -0
  237. data/lib/pio/open_flow13/copy_ttl_outwards.rb +17 -0
  238. data/lib/pio/open_flow13/decrement_ip_ttl.rb +17 -0
  239. data/lib/pio/open_flow13/echo/reply.rb +5 -3
  240. data/lib/pio/open_flow13/echo/request.rb +5 -3
  241. data/lib/pio/open_flow13/error/bad_request.rb +6 -3
  242. data/lib/pio/open_flow13/error/error_type13.rb +3 -1
  243. data/lib/pio/open_flow13/error/hello_failed.rb +5 -2
  244. data/lib/pio/open_flow13/error.rb +9 -18
  245. data/lib/pio/open_flow13/features/reply.rb +15 -20
  246. data/lib/pio/open_flow13/features/request.rb +3 -1
  247. data/lib/pio/open_flow13/flow_mod.rb +16 -19
  248. data/lib/pio/open_flow13/goto_table.rb +28 -24
  249. data/lib/pio/open_flow13/hello.rb +5 -4
  250. data/lib/pio/open_flow13/match.rb +187 -21
  251. data/lib/pio/open_flow13/meter.rb +25 -20
  252. data/lib/pio/open_flow13/nicira_conjunction.rb +28 -0
  253. data/lib/pio/open_flow13/nicira_reg_load.rb +46 -24
  254. data/lib/pio/open_flow13/nicira_reg_move.rb +79 -35
  255. data/lib/pio/open_flow13/nicira_send_out_port.rb +39 -21
  256. data/lib/pio/open_flow13/nicira_stack_pop.rb +51 -0
  257. data/lib/pio/open_flow13/nicira_stack_push.rb +51 -0
  258. data/lib/pio/open_flow13/packet_in.rb +13 -8
  259. data/lib/pio/open_flow13/packet_out.rb +11 -8
  260. data/lib/pio/open_flow13/port32.rb +2 -0
  261. data/lib/pio/open_flow13/send_out_port.rb +2 -0
  262. data/lib/pio/open_flow13/set_arp_operation.rb +2 -0
  263. data/lib/pio/open_flow13/set_arp_sender_hardware_address.rb +2 -0
  264. data/lib/pio/open_flow13/set_arp_sender_protocol_address.rb +2 -0
  265. data/lib/pio/open_flow13/set_destination_mac_address.rb +2 -0
  266. data/lib/pio/open_flow13/set_ip_ttl.rb +18 -0
  267. data/lib/pio/open_flow13/set_metadata.rb +2 -0
  268. data/lib/pio/open_flow13/set_source_mac_address.rb +2 -0
  269. data/lib/pio/open_flow13/stats_request.rb +10 -10
  270. data/lib/pio/open_flow13/write_metadata.rb +42 -38
  271. data/lib/pio/open_flow13.rb +9 -0
  272. data/lib/pio/options.rb +10 -3
  273. data/lib/pio/parse_error.rb +2 -0
  274. data/lib/pio/parser.rb +9 -16
  275. data/lib/pio/payload.rb +2 -0
  276. data/lib/pio/pcap.rb +2 -0
  277. data/lib/pio/ruby_dumper.rb +71 -0
  278. data/lib/pio/type/ether_type.rb +33 -0
  279. data/lib/pio/type/ip_address.rb +10 -0
  280. data/lib/pio/type/ipv6_address.rb +2 -0
  281. data/lib/pio/type/mac_address.rb +12 -0
  282. data/lib/pio/udp.rb +5 -3
  283. data/lib/pio/udp_header.rb +3 -1
  284. data/lib/pio/version.rb +3 -1
  285. data/lib/pio.rb +3 -1
  286. data/pio.gemspec +7 -38
  287. data/spec/pio/arp/reply_spec.rb +2 -4
  288. data/spec/pio/arp/request_spec.rb +2 -4
  289. data/spec/pio/arp_spec.rb +2 -4
  290. data/spec/pio/dhcp/ack_spec.rb +2 -0
  291. data/spec/pio/dhcp/discover_spec.rb +2 -0
  292. data/spec/pio/dhcp/offer_spec.rb +2 -0
  293. data/spec/pio/dhcp/request_spec.rb +2 -0
  294. data/spec/pio/dhcp_spec.rb +2 -0
  295. data/spec/pio/icmp/reply_spec.rb +6 -8
  296. data/spec/pio/icmp/request_spec.rb +8 -10
  297. data/spec/pio/icmp_spec.rb +10 -12
  298. data/spec/pio/ipv4_address_spec.rb +2 -0
  299. data/spec/pio/lldp/options_spec.rb +2 -0
  300. data/spec/pio/mac_spec.rb +2 -0
  301. data/spec/pio/monkey_patch/integer_spec.rb +25 -0
  302. data/spec/pio/open_flow/nicira_resubmit_spec.rb +21 -0
  303. data/spec/pio/open_flow/nicira_resubmit_table_spec.rb +22 -0
  304. data/spec/pio/open_flow10/echo/reply_spec.rb +2 -0
  305. data/spec/pio/open_flow10/echo/request_spec.rb +2 -0
  306. data/spec/pio/open_flow10/enqueue_spec.rb +2 -0
  307. data/spec/pio/open_flow10/error/hello_failed_spec.rb +4 -2
  308. data/spec/pio/open_flow10/features/reply_spec.rb +2 -0
  309. data/spec/pio/open_flow10/features/request_spec.rb +2 -0
  310. data/spec/pio/open_flow10/flow_mod_spec.rb +53 -51
  311. data/spec/pio/open_flow10/flow_stats_reply_spec.rb +2 -0
  312. data/spec/pio/open_flow10/flow_stats_request_spec.rb +10 -8
  313. data/spec/pio/open_flow10/hello_spec.rb +2 -2
  314. data/spec/pio/open_flow10/match_spec.rb +106 -104
  315. data/spec/pio/open_flow10/packet_in_spec.rb +2 -0
  316. data/spec/pio/open_flow10/packet_out_spec.rb +2 -349
  317. data/spec/pio/open_flow10/phy_port16_spec.rb +9 -7
  318. data/spec/pio/open_flow10/send_out_port_spec.rb +2 -0
  319. data/spec/pio/open_flow10/set_destination_ip_address_spec.rb +2 -0
  320. data/spec/pio/open_flow10/set_destination_mac_address_spec.rb +2 -0
  321. data/spec/pio/open_flow10/set_source_ip_address_spec.rb +2 -0
  322. data/spec/pio/open_flow10/set_source_mac_address_spec.rb +2 -0
  323. data/spec/pio/open_flow10/set_tos_spec.rb +2 -0
  324. data/spec/pio/open_flow10/set_transport_destination_port_spec.rb +2 -0
  325. data/spec/pio/open_flow10/set_transport_source_port_spec.rb +2 -0
  326. data/spec/pio/open_flow10/set_vlan_priority_spec.rb +2 -0
  327. data/spec/pio/open_flow10/set_vlan_vid_spec.rb +2 -0
  328. data/spec/pio/open_flow10/strip_vlan_header_spec.rb +2 -0
  329. data/spec/pio/open_flow10/wildcards_spec.rb +2 -0
  330. data/spec/pio/open_flow13/echo_reply_spec.rb +2 -0
  331. data/spec/pio/open_flow13/echo_request_spec.rb +2 -0
  332. data/spec/pio/open_flow13/error/bad_request_spec.rb +2 -0
  333. data/spec/pio/open_flow13/error/hello_failed_spec.rb +4 -2
  334. data/spec/pio/open_flow13/features/reply_spec.rb +2 -0
  335. data/spec/pio/open_flow13/features/request_spec.rb +2 -0
  336. data/spec/pio/open_flow13/goto_table_spec.rb +4 -2
  337. data/spec/pio/open_flow13/hello_spec.rb +18 -16
  338. data/spec/pio/open_flow13/match_spec.rb +31 -29
  339. data/spec/pio/open_flow13/meter_spec.rb +4 -2
  340. data/spec/pio/open_flow13/nicira_reg_load_spec.rb +73 -0
  341. data/spec/pio/open_flow13/nicira_reg_move_spec.rb +42 -0
  342. data/spec/pio/open_flow13/nicira_send_out_port_spec.rb +31 -0
  343. data/spec/pio/open_flow13/packet_in_spec.rb +2 -0
  344. data/spec/pio/open_flow13/packet_out_spec.rb +2 -0
  345. data/spec/pio/open_flow13/write_metadata_spec.rb +5 -3
  346. data/spec/pio/open_flow_spec.rb +8 -6
  347. data/spec/spec_helper.rb +1 -12
  348. data/spec/support/shared_examples_for_openflow_messages.rb +7 -13
  349. metadata +83 -683
  350. data/LICENSE +0 -674
  351. data/bin/_guard-core +0 -16
  352. data/bin/byebug +0 -16
  353. data/bin/cc-tddium-post-worker +0 -16
  354. data/bin/cdiff +0 -16
  355. data/bin/coderay +0 -16
  356. data/bin/colortab +0 -16
  357. data/bin/coveralls +0 -16
  358. data/bin/cucumber +0 -16
  359. data/bin/decolor +0 -16
  360. data/bin/flay +0 -16
  361. data/bin/flog +0 -16
  362. data/bin/guard +0 -16
  363. data/bin/htmldiff +0 -16
  364. data/bin/inch +0 -16
  365. data/bin/ldiff +0 -16
  366. data/bin/listen +0 -16
  367. data/bin/minitar +0 -16
  368. data/bin/pry +0 -16
  369. data/bin/rake +0 -16
  370. data/bin/reek +0 -16
  371. data/bin/relish +0 -16
  372. data/bin/restclient +0 -16
  373. data/bin/rspec +0 -16
  374. data/bin/rubocop +0 -16
  375. data/bin/ruby-parse +0 -16
  376. data/bin/ruby-rewrite +0 -16
  377. data/bin/ruby_parse +0 -16
  378. data/bin/ruby_parse_extract_error +0 -16
  379. data/bin/sparkr +0 -16
  380. data/bin/term_display +0 -16
  381. data/bin/term_mandel +0 -16
  382. data/bin/terminal-notifier +0 -16
  383. data/bin/thor +0 -16
  384. data/bin/unparser +0 -16
  385. data/bin/yard +0 -16
  386. data/bin/yardoc +0 -16
  387. data/bin/yri +0 -16
  388. data/features/arp-storm.pcap +0 -0
  389. data/features/arp.pcap +0 -0
  390. data/features/dhcp.pcap +0 -0
  391. data/features/icmp.feature +0 -130
  392. data/features/icmp.pcap +0 -0
  393. data/features/icmpv6.pcap +0 -0
  394. data/features/lldp.detailed.pcap +0 -0
  395. data/features/lldp.minimal.pcap +0 -0
  396. data/features/open_flow10/aggregate_stats_reply.raw +0 -0
  397. data/features/open_flow10/aggregate_stats_request.raw +0 -0
  398. data/features/open_flow10/bad_request.raw +0 -0
  399. data/features/open_flow10/barrier_reply.raw +0 -0
  400. data/features/open_flow10/barrier_request.raw +0 -0
  401. data/features/open_flow10/description_stats_reply.raw +0 -0
  402. data/features/open_flow10/description_stats_request.raw +0 -0
  403. data/features/open_flow10/echo_reply.raw +0 -0
  404. data/features/open_flow10/echo_request.raw +0 -0
  405. data/features/open_flow10/error.raw +0 -0
  406. data/features/open_flow10/features_reply.raw +0 -0
  407. data/features/open_flow10/features_request.raw +0 -0
  408. data/features/open_flow10/flow_mod_add.raw +0 -0
  409. data/features/open_flow10/flow_mod_delete.raw +0 -0
  410. data/features/open_flow10/flow_mod_delete_strict.raw +0 -0
  411. data/features/open_flow10/flow_mod_modify.raw +0 -0
  412. data/features/open_flow10/flow_mod_modify_strict.raw +0 -0
  413. data/features/open_flow10/flow_removed.raw +0 -0
  414. data/features/open_flow10/flow_stats_reply.raw +0 -0
  415. data/features/open_flow10/flow_stats_request.raw +0 -0
  416. data/features/open_flow10/get_config_reply.raw +0 -0
  417. data/features/open_flow10/get_config_request.raw +0 -0
  418. data/features/open_flow10/hello.raw +0 -0
  419. data/features/open_flow10/hello_failed.raw +0 -0
  420. data/features/open_flow10/nx_flow_mod_add.raw +0 -0
  421. data/features/open_flow10/nx_flow_mod_delete.raw +0 -0
  422. data/features/open_flow10/nx_flow_mod_delete_strict.raw +0 -0
  423. data/features/open_flow10/nx_flow_mod_modify.raw +0 -0
  424. data/features/open_flow10/nx_flow_mod_modify_strict.raw +0 -0
  425. data/features/open_flow10/nxast_learn.raw +0 -0
  426. data/features/open_flow10/packet_in.raw +0 -0
  427. data/features/open_flow10/packet_in_arp_reply.raw +0 -0
  428. data/features/open_flow10/packet_in_arp_request.raw +0 -0
  429. data/features/open_flow10/packet_in_cbench.raw +0 -0
  430. data/features/open_flow10/packet_out.raw +0 -0
  431. data/features/open_flow10/port_mod.raw +0 -0
  432. data/features/open_flow10/port_stats_reply.raw +0 -0
  433. data/features/open_flow10/port_stats_request.raw +0 -0
  434. data/features/open_flow10/port_status.raw +0 -0
  435. data/features/open_flow10/queue_get_config_reply.raw +0 -0
  436. data/features/open_flow10/queue_get_config_request.raw +0 -0
  437. data/features/open_flow10/queue_stats_request.raw +0 -0
  438. data/features/open_flow10/set_config.raw +0 -0
  439. data/features/open_flow10/table_stats_reply.raw +0 -0
  440. data/features/open_flow10/table_stats_request.raw +0 -0
  441. data/features/open_flow10/vendor.raw +0 -0
  442. data/features/open_flow10/vendor_stats_request.raw +0 -0
  443. data/features/open_flow13/action_copy_ttl_in.raw +0 -0
  444. data/features/open_flow13/action_copy_ttl_out.raw +0 -0
  445. data/features/open_flow13/action_dec_mpls_ttl.raw +0 -0
  446. data/features/open_flow13/action_dec_nw_ttl.raw +0 -0
  447. data/features/open_flow13/action_group.raw +0 -0
  448. data/features/open_flow13/action_pop_mpls.raw +0 -0
  449. data/features/open_flow13/action_pop_pbb.raw +0 -0
  450. data/features/open_flow13/action_pop_vlan.raw +0 -0
  451. data/features/open_flow13/action_push_mpls.raw +0 -0
  452. data/features/open_flow13/action_push_pbb.raw +0 -0
  453. data/features/open_flow13/action_push_vlan.raw +0 -0
  454. data/features/open_flow13/action_set_field.raw +0 -0
  455. data/features/open_flow13/action_set_mpls_ttl.raw +0 -0
  456. data/features/open_flow13/action_set_nw_ttl.raw +0 -0
  457. data/features/open_flow13/action_set_queue.raw +0 -0
  458. data/features/open_flow13/apply_actions.raw +0 -0
  459. data/features/open_flow13/bad_request.raw +0 -0
  460. data/features/open_flow13/echo_reply_body.raw +0 -0
  461. data/features/open_flow13/echo_reply_no_body.raw +0 -0
  462. data/features/open_flow13/echo_request_body.raw +0 -0
  463. data/features/open_flow13/echo_request_no_body.raw +0 -0
  464. data/features/open_flow13/features_reply.raw +0 -0
  465. data/features/open_flow13/features_request.raw +0 -0
  466. data/features/open_flow13/flow_add_apply_no_match.raw +0 -0
  467. data/features/open_flow13/flow_mod_add_apply_no_match.raw +0 -0
  468. data/features/open_flow13/flow_mod_no_match_or_instructions.raw +0 -0
  469. data/features/open_flow13/hello_failed.raw +0 -0
  470. data/features/open_flow13/hello_no_version_bitmap.raw +0 -0
  471. data/features/open_flow13/hello_version_bitmap.raw +0 -0
  472. data/features/open_flow13/instruction_clear_actions.raw +0 -0
  473. data/features/open_flow13/instruction_goto_table.raw +0 -0
  474. data/features/open_flow13/instruction_meter.raw +0 -0
  475. data/features/open_flow13/instruction_write_actions.raw +0 -0
  476. data/features/open_flow13/instruction_write_metadata.raw +0 -0
  477. data/features/open_flow13/oxm_arp_op_field.raw +0 -0
  478. data/features/open_flow13/oxm_arp_sha_field.raw +0 -0
  479. data/features/open_flow13/oxm_arp_spa_field.raw +0 -0
  480. data/features/open_flow13/oxm_arp_tha_field.raw +0 -0
  481. data/features/open_flow13/oxm_arp_tpa_field.raw +0 -0
  482. data/features/open_flow13/oxm_ether_destination_field.raw +0 -0
  483. data/features/open_flow13/oxm_ether_source_field.raw +0 -0
  484. data/features/open_flow13/oxm_ether_type_field.raw +0 -0
  485. data/features/open_flow13/oxm_experimenter_stratos_basic_dot11.raw +0 -0
  486. data/features/open_flow13/oxm_icmpv4_code_field.raw +0 -0
  487. data/features/open_flow13/oxm_icmpv4_type_field.raw +0 -0
  488. data/features/open_flow13/oxm_in_phy_port_field.raw +0 -0
  489. data/features/open_flow13/oxm_in_port_field.raw +0 -0
  490. data/features/open_flow13/oxm_invalid_field.raw +0 -0
  491. data/features/open_flow13/oxm_ip_dscp_field.raw +0 -0
  492. data/features/open_flow13/oxm_ip_ecn_field.raw +0 -0
  493. data/features/open_flow13/oxm_ipv4_destination_field.raw +0 -0
  494. data/features/open_flow13/oxm_ipv4_source_field.raw +0 -0
  495. data/features/open_flow13/oxm_ipv6_destination_field.raw +0 -0
  496. data/features/open_flow13/oxm_ipv6_source_field.raw +0 -0
  497. data/features/open_flow13/oxm_masked_arp_sha_field.raw +0 -0
  498. data/features/open_flow13/oxm_masked_arp_spa_field.raw +0 -0
  499. data/features/open_flow13/oxm_masked_arp_tha_field.raw +0 -0
  500. data/features/open_flow13/oxm_masked_arp_tpa_field.raw +0 -0
  501. data/features/open_flow13/oxm_masked_ether_destination_field.raw +0 -0
  502. data/features/open_flow13/oxm_masked_ether_source_field.raw +0 -0
  503. data/features/open_flow13/oxm_masked_ipv4_destination_field.raw +0 -0
  504. data/features/open_flow13/oxm_masked_ipv4_source_field.raw +0 -0
  505. data/features/open_flow13/oxm_masked_ipv6_destination_field.raw +0 -0
  506. data/features/open_flow13/oxm_masked_ipv6_source_field.raw +0 -0
  507. data/features/open_flow13/oxm_masked_tunnel_id_field.raw +0 -0
  508. data/features/open_flow13/oxm_metadata_field.raw +0 -0
  509. data/features/open_flow13/oxm_metadata_masked_field.raw +0 -0
  510. data/features/open_flow13/oxm_no_fields.raw +0 -0
  511. data/features/open_flow13/oxm_sctp_destination_field.raw +0 -0
  512. data/features/open_flow13/oxm_sctp_source_field.raw +0 -0
  513. data/features/open_flow13/oxm_tcp_destination_field.raw +0 -0
  514. data/features/open_flow13/oxm_tcp_field.raw +0 -0
  515. data/features/open_flow13/oxm_tcp_source_field.raw +0 -0
  516. data/features/open_flow13/oxm_tunnel_id_field.raw +0 -0
  517. data/features/open_flow13/oxm_udp_destination_field.raw +0 -0
  518. data/features/open_flow13/oxm_udp_field.raw +0 -0
  519. data/features/open_flow13/oxm_udp_source_field.raw +0 -0
  520. data/features/open_flow13/oxm_vlan_pcp_field.raw +0 -0
  521. data/features/open_flow13/oxm_vlan_vid_field.raw +0 -0
  522. data/features/open_flow13/packet_in.raw +0 -0
  523. data/features/open_flow13/packet_out.raw +0 -0
  524. data/features/open_flow13/send_out_port.raw +0 -0
  525. data/features/open_flow13/table_stats_reply.raw +0 -0
  526. data/features/open_flow13/table_stats_request.raw +0 -0
  527. data/features/step_definitions/LICENSE +0 -675
  528. data/features/udp_no_payload.raw +0 -0
  529. data/features/udp_with_payload.raw +0 -0
  530. data/lib/pio/icmp/options.rb +0 -21
  531. data/lib/pio/open_flow/error.rb +0 -19
  532. data/lib/pio/open_flow/open_flow_header.rb +0 -31
  533. data/lib/pio/open_flow13/buffer_id.rb +0 -17
  534. data/spec/pio/arp/reply/options_spec.rb +0 -143
  535. data/spec/pio/arp/request/options_spec.rb +0 -113
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.30.0
4
+ version: 0.30.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yasuhito Takamiya
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-17 00:00:00.000000000 Z
11
+ date: 2017-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bindata
@@ -30,356 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '4.2'
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: 4.2.4
33
+ version: 5.1.0
37
34
  type: :runtime
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
38
  - - "~>"
42
39
  - !ruby/object:Gem::Version
43
- version: '4.2'
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: 4.2.4
47
- - !ruby/object:Gem::Dependency
48
- name: bundler
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: 1.10.6
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: 1.10.6
61
- - !ruby/object:Gem::Dependency
62
- name: pry
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: 0.10.3
68
- type: :development
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: 0.10.3
75
- - !ruby/object:Gem::Dependency
76
- name: rake
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - ">="
80
- - !ruby/object:Gem::Version
81
- version: '0'
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - ">="
87
- - !ruby/object:Gem::Version
88
- version: '0'
89
- - !ruby/object:Gem::Dependency
90
- name: guard
91
- requirement: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: 2.13.0
96
- type: :development
97
- prerelease: false
98
- version_requirements: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: 2.13.0
103
- - !ruby/object:Gem::Dependency
104
- name: guard-bundler
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: 2.1.0
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: 2.1.0
117
- - !ruby/object:Gem::Dependency
118
- name: guard-cucumber
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: 1.6.0
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: 1.6.0
131
- - !ruby/object:Gem::Dependency
132
- name: guard-rspec
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - "~>"
136
- - !ruby/object:Gem::Version
137
- version: 4.6.4
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - "~>"
143
- - !ruby/object:Gem::Version
144
- version: 4.6.4
145
- - !ruby/object:Gem::Dependency
146
- name: guard-rubocop
147
- requirement: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - "~>"
150
- - !ruby/object:Gem::Version
151
- version: 1.2.0
152
- type: :development
153
- prerelease: false
154
- version_requirements: !ruby/object:Gem::Requirement
155
- requirements:
156
- - - "~>"
157
- - !ruby/object:Gem::Version
158
- version: 1.2.0
159
- - !ruby/object:Gem::Dependency
160
- name: rb-fchange
161
- requirement: !ruby/object:Gem::Requirement
162
- requirements:
163
- - - "~>"
164
- - !ruby/object:Gem::Version
165
- version: 0.0.6
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- requirements:
170
- - - "~>"
171
- - !ruby/object:Gem::Version
172
- version: 0.0.6
173
- - !ruby/object:Gem::Dependency
174
- name: rb-fsevent
175
- requirement: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - "~>"
178
- - !ruby/object:Gem::Version
179
- version: 0.9.6
180
- type: :development
181
- prerelease: false
182
- version_requirements: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - "~>"
185
- - !ruby/object:Gem::Version
186
- version: 0.9.6
187
- - !ruby/object:Gem::Dependency
188
- name: rb-inotify
189
- requirement: !ruby/object:Gem::Requirement
190
- requirements:
191
- - - "~>"
192
- - !ruby/object:Gem::Version
193
- version: 0.9.5
194
- type: :development
195
- prerelease: false
196
- version_requirements: !ruby/object:Gem::Requirement
197
- requirements:
198
- - - "~>"
199
- - !ruby/object:Gem::Version
200
- version: 0.9.5
201
- - !ruby/object:Gem::Dependency
202
- name: terminal-notifier-guard
203
- requirement: !ruby/object:Gem::Requirement
204
- requirements:
205
- - - "~>"
206
- - !ruby/object:Gem::Version
207
- version: 1.6.4
208
- type: :development
209
- prerelease: false
210
- version_requirements: !ruby/object:Gem::Requirement
211
- requirements:
212
- - - "~>"
213
- - !ruby/object:Gem::Version
214
- version: 1.6.4
215
- - !ruby/object:Gem::Dependency
216
- name: inch
217
- requirement: !ruby/object:Gem::Requirement
218
- requirements:
219
- - - "~>"
220
- - !ruby/object:Gem::Version
221
- version: 0.7.0
222
- type: :development
223
- prerelease: false
224
- version_requirements: !ruby/object:Gem::Requirement
225
- requirements:
226
- - - "~>"
227
- - !ruby/object:Gem::Version
228
- version: 0.7.0
229
- - !ruby/object:Gem::Dependency
230
- name: relish
231
- requirement: !ruby/object:Gem::Requirement
232
- requirements:
233
- - - "~>"
234
- - !ruby/object:Gem::Version
235
- version: 0.7.1
236
- type: :development
237
- prerelease: false
238
- version_requirements: !ruby/object:Gem::Requirement
239
- requirements:
240
- - - "~>"
241
- - !ruby/object:Gem::Version
242
- version: 0.7.1
243
- - !ruby/object:Gem::Dependency
244
- name: yard
245
- requirement: !ruby/object:Gem::Requirement
246
- requirements:
247
- - - "~>"
248
- - !ruby/object:Gem::Version
249
- version: 0.8.7.6
250
- type: :development
251
- prerelease: false
252
- version_requirements: !ruby/object:Gem::Requirement
253
- requirements:
254
- - - "~>"
255
- - !ruby/object:Gem::Version
256
- version: 0.8.7.6
257
- - !ruby/object:Gem::Dependency
258
- name: codeclimate-test-reporter
259
- requirement: !ruby/object:Gem::Requirement
260
- requirements:
261
- - - "~>"
262
- - !ruby/object:Gem::Version
263
- version: 0.4.8
264
- type: :development
265
- prerelease: false
266
- version_requirements: !ruby/object:Gem::Requirement
267
- requirements:
268
- - - "~>"
269
- - !ruby/object:Gem::Version
270
- version: 0.4.8
271
- - !ruby/object:Gem::Dependency
272
- name: coveralls
273
- requirement: !ruby/object:Gem::Requirement
274
- requirements:
275
- - - "~>"
276
- - !ruby/object:Gem::Version
277
- version: 0.8.3
278
- type: :development
279
- prerelease: false
280
- version_requirements: !ruby/object:Gem::Requirement
281
- requirements:
282
- - - "~>"
283
- - !ruby/object:Gem::Version
284
- version: 0.8.3
285
- - !ruby/object:Gem::Dependency
286
- name: cucumber
287
- requirement: !ruby/object:Gem::Requirement
288
- requirements:
289
- - - "~>"
290
- - !ruby/object:Gem::Version
291
- version: 2.1.0
292
- type: :development
293
- prerelease: false
294
- version_requirements: !ruby/object:Gem::Requirement
295
- requirements:
296
- - - "~>"
297
- - !ruby/object:Gem::Version
298
- version: 2.1.0
299
- - !ruby/object:Gem::Dependency
300
- name: flay
301
- requirement: !ruby/object:Gem::Requirement
302
- requirements:
303
- - - "~>"
304
- - !ruby/object:Gem::Version
305
- version: 2.6.1
306
- type: :development
307
- prerelease: false
308
- version_requirements: !ruby/object:Gem::Requirement
309
- requirements:
310
- - - "~>"
311
- - !ruby/object:Gem::Version
312
- version: 2.6.1
313
- - !ruby/object:Gem::Dependency
314
- name: flog
315
- requirement: !ruby/object:Gem::Requirement
316
- requirements:
317
- - - "~>"
318
- - !ruby/object:Gem::Version
319
- version: 4.3.2
320
- type: :development
321
- prerelease: false
322
- version_requirements: !ruby/object:Gem::Requirement
323
- requirements:
324
- - - "~>"
325
- - !ruby/object:Gem::Version
326
- version: 4.3.2
327
- - !ruby/object:Gem::Dependency
328
- name: reek
329
- requirement: !ruby/object:Gem::Requirement
330
- requirements:
331
- - - "~>"
332
- - !ruby/object:Gem::Version
333
- version: 3.6.0
334
- type: :development
335
- prerelease: false
336
- version_requirements: !ruby/object:Gem::Requirement
337
- requirements:
338
- - - "~>"
339
- - !ruby/object:Gem::Version
340
- version: 3.6.0
341
- - !ruby/object:Gem::Dependency
342
- name: rspec
343
- requirement: !ruby/object:Gem::Requirement
344
- requirements:
345
- - - "~>"
346
- - !ruby/object:Gem::Version
347
- version: 3.3.0
348
- type: :development
349
- prerelease: false
350
- version_requirements: !ruby/object:Gem::Requirement
351
- requirements:
352
- - - "~>"
353
- - !ruby/object:Gem::Version
354
- version: 3.3.0
355
- - !ruby/object:Gem::Dependency
356
- name: rspec-given
357
- requirement: !ruby/object:Gem::Requirement
358
- requirements:
359
- - - "~>"
360
- - !ruby/object:Gem::Version
361
- version: 3.7.1
362
- type: :development
363
- prerelease: false
364
- version_requirements: !ruby/object:Gem::Requirement
365
- requirements:
366
- - - "~>"
367
- - !ruby/object:Gem::Version
368
- version: 3.7.1
369
- - !ruby/object:Gem::Dependency
370
- name: rubocop
371
- requirement: !ruby/object:Gem::Requirement
372
- requirements:
373
- - - "~>"
374
- - !ruby/object:Gem::Version
375
- version: 0.34.2
376
- type: :development
377
- prerelease: false
378
- version_requirements: !ruby/object:Gem::Requirement
379
- requirements:
380
- - - "~>"
381
- - !ruby/object:Gem::Version
382
- version: 0.34.2
40
+ version: 5.1.0
383
41
  description: Pure ruby packet parser and generator.
384
42
  email:
385
43
  - yasuhito@gmail.com
@@ -388,132 +46,50 @@ extensions: []
388
46
  extra_rdoc_files:
389
47
  - README.md
390
48
  - CHANGELOG.md
391
- - LICENSE
392
49
  - CONTRIBUTING.md
393
50
  files:
394
51
  - CHANGELOG.md
395
52
  - CONTRIBUTING.md
396
- - LICENSE
397
53
  - README.md
398
54
  - Rakefile
399
- - bin/_guard-core
400
- - bin/byebug
401
- - bin/cc-tddium-post-worker
402
- - bin/cdiff
403
- - bin/coderay
404
- - bin/colortab
405
- - bin/coveralls
406
- - bin/cucumber
407
- - bin/decolor
408
- - bin/flay
409
- - bin/flog
410
- - bin/guard
411
- - bin/htmldiff
412
- - bin/inch
413
- - bin/ldiff
414
- - bin/listen
415
- - bin/minitar
416
- - bin/pry
417
- - bin/rake
418
- - bin/reek
419
- - bin/relish
420
- - bin/restclient
421
- - bin/rspec
422
- - bin/rubocop
423
- - bin/ruby-parse
424
- - bin/ruby-rewrite
425
- - bin/ruby_parse
426
- - bin/ruby_parse_extract_error
427
- - bin/sparkr
428
- - bin/term_display
429
- - bin/term_mandel
430
- - bin/terminal-notifier
431
- - bin/thor
432
- - bin/unparser
433
- - bin/yard
434
- - bin/yardoc
435
- - bin/yri
436
- - features/arp-storm.pcap
437
- - features/arp.feature
438
- - features/arp.pcap
55
+ - features/arp/arp.feature
56
+ - features/arp/arp_reply.feature
57
+ - features/arp/arp_request.feature
439
58
  - features/dhcp.feature
440
- - features/dhcp.pcap
441
- - features/icmp.feature
442
- - features/icmp.pcap
443
- - features/icmpv6.pcap
444
- - features/lldp.detailed.pcap
59
+ - features/ethernet_header.feature
60
+ - features/icmp/icmp.feature
61
+ - features/icmp/icmp_reply.feature
62
+ - features/icmp/icmp_request.feature
63
+ - features/ipv4_header.feature
445
64
  - features/lldp.feature
446
- - features/lldp.minimal.pcap
65
+ - features/open_flow/header.feature
447
66
  - features/open_flow/nicira_resubmit.feature
448
67
  - features/open_flow/nicira_resubmit_table.feature
449
68
  - features/open_flow10/aggregate_stats_reply.feature
450
- - features/open_flow10/aggregate_stats_reply.raw
451
69
  - features/open_flow10/aggregate_stats_request.feature
452
- - features/open_flow10/aggregate_stats_request.raw
453
70
  - features/open_flow10/bad_request.feature
454
- - features/open_flow10/bad_request.raw
455
71
  - features/open_flow10/barrier_reply.feature
456
- - features/open_flow10/barrier_reply.raw
457
72
  - features/open_flow10/barrier_request.feature
458
- - features/open_flow10/barrier_request.raw
459
73
  - features/open_flow10/description_stats_reply.feature
460
- - features/open_flow10/description_stats_reply.raw
461
74
  - features/open_flow10/description_stats_request.feature
462
- - features/open_flow10/description_stats_request.raw
463
75
  - features/open_flow10/echo_reply.feature
464
- - features/open_flow10/echo_reply.raw
465
76
  - features/open_flow10/echo_request.feature
466
- - features/open_flow10/echo_request.raw
467
77
  - features/open_flow10/enqueue.feature
468
- - features/open_flow10/error.raw
469
78
  - features/open_flow10/exact_match.feature
470
79
  - features/open_flow10/features_reply.feature
471
- - features/open_flow10/features_reply.raw
472
80
  - features/open_flow10/features_request.feature
473
- - features/open_flow10/features_request.raw
474
81
  - features/open_flow10/flow_mod.feature
475
- - features/open_flow10/flow_mod_add.raw
476
- - features/open_flow10/flow_mod_delete.raw
477
- - features/open_flow10/flow_mod_delete_strict.raw
478
- - features/open_flow10/flow_mod_modify.raw
479
- - features/open_flow10/flow_mod_modify_strict.raw
480
82
  - features/open_flow10/flow_removed.feature
481
- - features/open_flow10/flow_removed.raw
482
83
  - features/open_flow10/flow_stats_reply.feature
483
- - features/open_flow10/flow_stats_reply.raw
484
84
  - features/open_flow10/flow_stats_request.feature
485
- - features/open_flow10/flow_stats_request.raw
486
- - features/open_flow10/get_config_reply.raw
487
- - features/open_flow10/get_config_request.raw
488
85
  - features/open_flow10/hello.feature
489
- - features/open_flow10/hello.raw
490
86
  - features/open_flow10/hello_failed.feature
491
- - features/open_flow10/hello_failed.raw
492
- - features/open_flow10/nx_flow_mod_add.raw
493
- - features/open_flow10/nx_flow_mod_delete.raw
494
- - features/open_flow10/nx_flow_mod_delete_strict.raw
495
- - features/open_flow10/nx_flow_mod_modify.raw
496
- - features/open_flow10/nx_flow_mod_modify_strict.raw
497
- - features/open_flow10/nxast_learn.raw
498
87
  - features/open_flow10/packet_in.feature
499
- - features/open_flow10/packet_in.raw
500
- - features/open_flow10/packet_in_arp_reply.raw
501
- - features/open_flow10/packet_in_arp_request.raw
502
- - features/open_flow10/packet_in_cbench.raw
503
88
  - features/open_flow10/packet_out.feature
504
- - features/open_flow10/packet_out.raw
505
- - features/open_flow10/port_mod.raw
506
- - features/open_flow10/port_stats_reply.raw
507
89
  - features/open_flow10/port_stats_request.feature
508
- - features/open_flow10/port_stats_request.raw
509
90
  - features/open_flow10/port_status.feature
510
- - features/open_flow10/port_status.raw
511
- - features/open_flow10/queue_get_config_reply.raw
512
- - features/open_flow10/queue_get_config_request.raw
513
91
  - features/open_flow10/queue_stats_request.feature
514
- - features/open_flow10/queue_stats_request.raw
515
92
  - features/open_flow10/send_out_port.feature
516
- - features/open_flow10/set_config.raw
517
93
  - features/open_flow10/set_destination_mac_address.feature
518
94
  - features/open_flow10/set_ip_destination_address.feature
519
95
  - features/open_flow10/set_source_ip_address.feature
@@ -524,148 +100,66 @@ files:
524
100
  - features/open_flow10/set_vlan_priority.feature
525
101
  - features/open_flow10/set_vlan_vid.feature
526
102
  - features/open_flow10/strip_vlan_header.feature
527
- - features/open_flow10/table_stats_reply.raw
528
103
  - features/open_flow10/table_stats_request.feature
529
- - features/open_flow10/table_stats_request.raw
530
- - features/open_flow10/vendor.raw
531
104
  - features/open_flow10/vendor_action.feature
532
- - features/open_flow10/vendor_stats_request.raw
533
- - features/open_flow13/action_copy_ttl_in.raw
534
- - features/open_flow13/action_copy_ttl_out.raw
535
- - features/open_flow13/action_dec_mpls_ttl.raw
536
- - features/open_flow13/action_dec_nw_ttl.raw
537
- - features/open_flow13/action_group.raw
538
- - features/open_flow13/action_pop_mpls.raw
539
- - features/open_flow13/action_pop_pbb.raw
540
- - features/open_flow13/action_pop_vlan.raw
541
- - features/open_flow13/action_push_mpls.raw
542
- - features/open_flow13/action_push_pbb.raw
543
- - features/open_flow13/action_push_vlan.raw
544
- - features/open_flow13/action_set_field.raw
545
- - features/open_flow13/action_set_mpls_ttl.raw
546
- - features/open_flow13/action_set_nw_ttl.raw
547
- - features/open_flow13/action_set_queue.raw
548
105
  - features/open_flow13/apply_actions.feature
549
- - features/open_flow13/apply_actions.raw
550
106
  - features/open_flow13/bad_request.feature
551
- - features/open_flow13/bad_request.raw
107
+ - features/open_flow13/copy_ttl_inwards.feature
108
+ - features/open_flow13/copy_ttl_outwards.feature
109
+ - features/open_flow13/decrement_ip_ttl.feature
552
110
  - features/open_flow13/echo_reply.feature
553
- - features/open_flow13/echo_reply_body.raw
554
- - features/open_flow13/echo_reply_no_body.raw
555
111
  - features/open_flow13/echo_request.feature
556
- - features/open_flow13/echo_request_body.raw
557
- - features/open_flow13/echo_request_no_body.raw
558
112
  - features/open_flow13/features_reply.feature
559
- - features/open_flow13/features_reply.raw
560
113
  - features/open_flow13/features_request.feature
561
- - features/open_flow13/features_request.raw
562
- - features/open_flow13/flow_add_apply_no_match.raw
563
114
  - features/open_flow13/flow_mod.feature
564
- - features/open_flow13/flow_mod_add_apply_no_match.raw
565
- - features/open_flow13/flow_mod_no_match_or_instructions.raw
566
115
  - features/open_flow13/goto_table.feature
567
116
  - features/open_flow13/hello.feature
568
117
  - features/open_flow13/hello_failed.feature
569
- - features/open_flow13/hello_failed.raw
570
- - features/open_flow13/hello_no_version_bitmap.raw
571
- - features/open_flow13/hello_version_bitmap.raw
572
- - features/open_flow13/instruction_clear_actions.raw
573
- - features/open_flow13/instruction_goto_table.raw
574
- - features/open_flow13/instruction_meter.raw
575
- - features/open_flow13/instruction_write_actions.raw
576
- - features/open_flow13/instruction_write_metadata.raw
577
118
  - features/open_flow13/match.feature
578
119
  - features/open_flow13/meter.feature
120
+ - features/open_flow13/nicira_conjunction.feature
579
121
  - features/open_flow13/nicira_reg_load.feature
580
122
  - features/open_flow13/nicira_reg_move.feature
581
123
  - features/open_flow13/nicira_send_out_port.feature
582
- - features/open_flow13/oxm_arp_op_field.raw
583
- - features/open_flow13/oxm_arp_sha_field.raw
584
- - features/open_flow13/oxm_arp_spa_field.raw
585
- - features/open_flow13/oxm_arp_tha_field.raw
586
- - features/open_flow13/oxm_arp_tpa_field.raw
587
- - features/open_flow13/oxm_ether_destination_field.raw
588
- - features/open_flow13/oxm_ether_source_field.raw
589
- - features/open_flow13/oxm_ether_type_field.raw
590
- - features/open_flow13/oxm_experimenter_stratos_basic_dot11.raw
591
- - features/open_flow13/oxm_icmpv4_code_field.raw
592
- - features/open_flow13/oxm_icmpv4_type_field.raw
593
- - features/open_flow13/oxm_in_phy_port_field.raw
594
- - features/open_flow13/oxm_in_port_field.raw
595
- - features/open_flow13/oxm_invalid_field.raw
596
- - features/open_flow13/oxm_ip_dscp_field.raw
597
- - features/open_flow13/oxm_ip_ecn_field.raw
598
- - features/open_flow13/oxm_ipv4_destination_field.raw
599
- - features/open_flow13/oxm_ipv4_source_field.raw
600
- - features/open_flow13/oxm_ipv6_destination_field.raw
601
- - features/open_flow13/oxm_ipv6_source_field.raw
602
- - features/open_flow13/oxm_masked_arp_sha_field.raw
603
- - features/open_flow13/oxm_masked_arp_spa_field.raw
604
- - features/open_flow13/oxm_masked_arp_tha_field.raw
605
- - features/open_flow13/oxm_masked_arp_tpa_field.raw
606
- - features/open_flow13/oxm_masked_ether_destination_field.raw
607
- - features/open_flow13/oxm_masked_ether_source_field.raw
608
- - features/open_flow13/oxm_masked_ipv4_destination_field.raw
609
- - features/open_flow13/oxm_masked_ipv4_source_field.raw
610
- - features/open_flow13/oxm_masked_ipv6_destination_field.raw
611
- - features/open_flow13/oxm_masked_ipv6_source_field.raw
612
- - features/open_flow13/oxm_masked_tunnel_id_field.raw
613
- - features/open_flow13/oxm_metadata_field.raw
614
- - features/open_flow13/oxm_metadata_masked_field.raw
615
- - features/open_flow13/oxm_no_fields.raw
616
- - features/open_flow13/oxm_sctp_destination_field.raw
617
- - features/open_flow13/oxm_sctp_source_field.raw
618
- - features/open_flow13/oxm_tcp_destination_field.raw
619
- - features/open_flow13/oxm_tcp_field.raw
620
- - features/open_flow13/oxm_tcp_source_field.raw
621
- - features/open_flow13/oxm_tunnel_id_field.raw
622
- - features/open_flow13/oxm_udp_destination_field.raw
623
- - features/open_flow13/oxm_udp_field.raw
624
- - features/open_flow13/oxm_udp_source_field.raw
625
- - features/open_flow13/oxm_vlan_pcp_field.raw
626
- - features/open_flow13/oxm_vlan_vid_field.raw
124
+ - features/open_flow13/nicira_stack_pop.feature
125
+ - features/open_flow13/nicira_stack_push.feature
627
126
  - features/open_flow13/packet_in.feature
628
- - features/open_flow13/packet_in.raw
629
127
  - features/open_flow13/packet_out.feature
630
- - features/open_flow13/packet_out.raw
631
128
  - features/open_flow13/send_out_port.feature
632
- - features/open_flow13/send_out_port.raw
633
129
  - features/open_flow13/set_arp_operation.feature
634
130
  - features/open_flow13/set_arp_sender_hardware_address.feature
635
131
  - features/open_flow13/set_arp_sender_protocol_address.feature
636
132
  - features/open_flow13/set_destination_mac_address.feature
133
+ - features/open_flow13/set_ip_ttl.feature
637
134
  - features/open_flow13/set_metadata.feature
638
135
  - features/open_flow13/set_source_mac_address.feature
639
136
  - features/open_flow13/stats_request.feature
640
- - features/open_flow13/table_stats_reply.raw
641
- - features/open_flow13/table_stats_request.raw
642
137
  - features/open_flow13/write_metadata.feature
643
138
  - features/open_flow_read.feature
644
139
  - features/open_flow_version.feature
645
140
  - features/parser.feature
646
141
  - features/step_definitions/Gemfile
647
142
  - features/step_definitions/Guardfile
648
- - features/step_definitions/LICENSE
649
143
  - features/step_definitions/README.md
650
144
  - features/step_definitions/Rakefile
651
145
  - features/step_definitions/dump_flows_steps.rb
652
146
  - features/step_definitions/open_flow_steps.rb
653
147
  - features/step_definitions/packet_data_steps.rb
654
148
  - features/step_definitions/rest_api_steps.rb
149
+ - features/step_definitions/ruby_steps.rb
655
150
  - features/step_definitions/show_stats_steps.rb
656
151
  - features/step_definitions/trema_steps.rb
657
152
  - features/step_definitions/virtual_link_steps.rb
658
153
  - features/support/env.rb
659
154
  - features/support/hooks.rb
660
155
  - features/udp.feature
661
- - features/udp_no_payload.raw
662
- - features/udp_with_payload.raw
663
156
  - lib/pio.rb
664
157
  - lib/pio/arp.rb
665
158
  - lib/pio/arp/format.rb
666
159
  - lib/pio/arp/message.rb
667
160
  - lib/pio/arp/reply.rb
668
161
  - lib/pio/arp/request.rb
162
+ - lib/pio/class_inspector.rb
669
163
  - lib/pio/dhcp.rb
670
164
  - lib/pio/dhcp/ack.rb
671
165
  - lib/pio/dhcp/boot_reply.rb
@@ -684,13 +178,14 @@ files:
684
178
  - lib/pio/dhcp/optional_tlv.rb
685
179
  - lib/pio/dhcp/parameter_list.rb
686
180
  - lib/pio/dhcp/request.rb
181
+ - lib/pio/ethernet_frame.rb
687
182
  - lib/pio/ethernet_header.rb
688
183
  - lib/pio/icmp.rb
689
184
  - lib/pio/icmp/format.rb
690
185
  - lib/pio/icmp/message.rb
691
- - lib/pio/icmp/options.rb
692
186
  - lib/pio/icmp/reply.rb
693
187
  - lib/pio/icmp/request.rb
188
+ - lib/pio/instance_inspector.rb
694
189
  - lib/pio/ipv4_address.rb
695
190
  - lib/pio/ipv4_header.rb
696
191
  - lib/pio/lldp.rb
@@ -708,23 +203,33 @@ files:
708
203
  - lib/pio/lldp/system_name_value.rb
709
204
  - lib/pio/lldp/ttl_tlv.rb
710
205
  - lib/pio/mac.rb
206
+ - lib/pio/message.rb
711
207
  - lib/pio/message_type_selector.rb
208
+ - lib/pio/monkey_patch/bindata_record.rb
209
+ - lib/pio/monkey_patch/bindata_string.rb
712
210
  - lib/pio/monkey_patch/integer.rb
713
211
  - lib/pio/monkey_patch/integer/base_conversions.rb
714
212
  - lib/pio/monkey_patch/integer/ranges.rb
213
+ - lib/pio/monkey_patch/uint.rb
214
+ - lib/pio/monkey_patch/uint/base_conversions.rb
715
215
  - lib/pio/open_flow.rb
716
216
  - lib/pio/open_flow/action.rb
217
+ - lib/pio/open_flow/buffer_id.rb
717
218
  - lib/pio/open_flow/datapath_id.rb
718
- - lib/pio/open_flow/error.rb
219
+ - lib/pio/open_flow/error_message.rb
719
220
  - lib/pio/open_flow/flags.rb
221
+ - lib/pio/open_flow/flow_match.rb
222
+ - lib/pio/open_flow/header.rb
720
223
  - lib/pio/open_flow/hello_failed_code.rb
224
+ - lib/pio/open_flow/instruction.rb
721
225
  - lib/pio/open_flow/message.rb
722
226
  - lib/pio/open_flow/nicira_action.rb
723
227
  - lib/pio/open_flow/nicira_resubmit.rb
724
228
  - lib/pio/open_flow/nicira_resubmit_table.rb
725
- - lib/pio/open_flow/open_flow_header.rb
229
+ - lib/pio/open_flow/parser.rb
726
230
  - lib/pio/open_flow/port.rb
727
231
  - lib/pio/open_flow/transaction_id.rb
232
+ - lib/pio/open_flow/version.rb
728
233
  - lib/pio/open_flow10.rb
729
234
  - lib/pio/open_flow10/actions.rb
730
235
  - lib/pio/open_flow10/aggregate_stats/reply.rb
@@ -738,6 +243,7 @@ files:
738
243
  - lib/pio/open_flow10/enqueue.rb
739
244
  - lib/pio/open_flow10/error.rb
740
245
  - lib/pio/open_flow10/error/bad_request.rb
246
+ - lib/pio/open_flow10/error/bad_request/bad_request_code.rb
741
247
  - lib/pio/open_flow10/error/error_type10.rb
742
248
  - lib/pio/open_flow10/error/hello_failed.rb
743
249
  - lib/pio/open_flow10/exact_match.rb
@@ -745,18 +251,22 @@ files:
745
251
  - lib/pio/open_flow10/features/reply.rb
746
252
  - lib/pio/open_flow10/features/request.rb
747
253
  - lib/pio/open_flow10/flow_mod.rb
254
+ - lib/pio/open_flow10/flow_mod/command.rb
748
255
  - lib/pio/open_flow10/flow_removed.rb
256
+ - lib/pio/open_flow10/flow_removed/reason.rb
749
257
  - lib/pio/open_flow10/flow_stats/reply.rb
750
258
  - lib/pio/open_flow10/flow_stats/request.rb
751
259
  - lib/pio/open_flow10/hello.rb
752
260
  - lib/pio/open_flow10/match.rb
753
261
  - lib/pio/open_flow10/match10.rb
754
262
  - lib/pio/open_flow10/packet_in.rb
263
+ - lib/pio/open_flow10/packet_in/reason.rb
755
264
  - lib/pio/open_flow10/packet_out.rb
756
265
  - lib/pio/open_flow10/phy_port16.rb
757
266
  - lib/pio/open_flow10/port16.rb
758
267
  - lib/pio/open_flow10/port_stats/request.rb
759
268
  - lib/pio/open_flow10/port_status.rb
269
+ - lib/pio/open_flow10/port_status/reason.rb
760
270
  - lib/pio/open_flow10/queue_stats/request.rb
761
271
  - lib/pio/open_flow10/send_out_port.rb
762
272
  - lib/pio/open_flow10/set_destination_ip_address.rb
@@ -776,7 +286,9 @@ files:
776
286
  - lib/pio/open_flow13.rb
777
287
  - lib/pio/open_flow13/actions.rb
778
288
  - lib/pio/open_flow13/apply.rb
779
- - lib/pio/open_flow13/buffer_id.rb
289
+ - lib/pio/open_flow13/copy_ttl_inwards.rb
290
+ - lib/pio/open_flow13/copy_ttl_outwards.rb
291
+ - lib/pio/open_flow13/decrement_ip_ttl.rb
780
292
  - lib/pio/open_flow13/echo/reply.rb
781
293
  - lib/pio/open_flow13/echo/request.rb
782
294
  - lib/pio/open_flow13/error.rb
@@ -790,9 +302,12 @@ files:
790
302
  - lib/pio/open_flow13/hello.rb
791
303
  - lib/pio/open_flow13/match.rb
792
304
  - lib/pio/open_flow13/meter.rb
305
+ - lib/pio/open_flow13/nicira_conjunction.rb
793
306
  - lib/pio/open_flow13/nicira_reg_load.rb
794
307
  - lib/pio/open_flow13/nicira_reg_move.rb
795
308
  - lib/pio/open_flow13/nicira_send_out_port.rb
309
+ - lib/pio/open_flow13/nicira_stack_pop.rb
310
+ - lib/pio/open_flow13/nicira_stack_push.rb
796
311
  - lib/pio/open_flow13/packet_in.rb
797
312
  - lib/pio/open_flow13/packet_out.rb
798
313
  - lib/pio/open_flow13/port32.rb
@@ -801,6 +316,7 @@ files:
801
316
  - lib/pio/open_flow13/set_arp_sender_hardware_address.rb
802
317
  - lib/pio/open_flow13/set_arp_sender_protocol_address.rb
803
318
  - lib/pio/open_flow13/set_destination_mac_address.rb
319
+ - lib/pio/open_flow13/set_ip_ttl.rb
804
320
  - lib/pio/open_flow13/set_metadata.rb
805
321
  - lib/pio/open_flow13/set_source_mac_address.rb
806
322
  - lib/pio/open_flow13/stats_request.rb
@@ -810,6 +326,8 @@ files:
810
326
  - lib/pio/parser.rb
811
327
  - lib/pio/payload.rb
812
328
  - lib/pio/pcap.rb
329
+ - lib/pio/ruby_dumper.rb
330
+ - lib/pio/type/ether_type.rb
813
331
  - lib/pio/type/ip_address.rb
814
332
  - lib/pio/type/ipv6_address.rb
815
333
  - lib/pio/type/mac_address.rb
@@ -817,9 +335,7 @@ files:
817
335
  - lib/pio/udp_header.rb
818
336
  - lib/pio/version.rb
819
337
  - pio.gemspec
820
- - spec/pio/arp/reply/options_spec.rb
821
338
  - spec/pio/arp/reply_spec.rb
822
- - spec/pio/arp/request/options_spec.rb
823
339
  - spec/pio/arp/request_spec.rb
824
340
  - spec/pio/arp_spec.rb
825
341
  - spec/pio/dhcp/ack_spec.rb
@@ -833,6 +349,9 @@ files:
833
349
  - spec/pio/ipv4_address_spec.rb
834
350
  - spec/pio/lldp/options_spec.rb
835
351
  - spec/pio/mac_spec.rb
352
+ - spec/pio/monkey_patch/integer_spec.rb
353
+ - spec/pio/open_flow/nicira_resubmit_spec.rb
354
+ - spec/pio/open_flow/nicira_resubmit_table_spec.rb
836
355
  - spec/pio/open_flow10/echo/reply_spec.rb
837
356
  - spec/pio/open_flow10/echo/request_spec.rb
838
357
  - spec/pio/open_flow10/enqueue_spec.rb
@@ -869,6 +388,9 @@ files:
869
388
  - spec/pio/open_flow13/hello_spec.rb
870
389
  - spec/pio/open_flow13/match_spec.rb
871
390
  - spec/pio/open_flow13/meter_spec.rb
391
+ - spec/pio/open_flow13/nicira_reg_load_spec.rb
392
+ - spec/pio/open_flow13/nicira_reg_move_spec.rb
393
+ - spec/pio/open_flow13/nicira_send_out_port_spec.rb
872
394
  - spec/pio/open_flow13/packet_in_spec.rb
873
395
  - spec/pio/open_flow13/packet_out_spec.rb
874
396
  - spec/pio/open_flow13/write_metadata_spec.rb
@@ -877,7 +399,8 @@ files:
877
399
  - spec/support/shared_examples_for_openflow_messages.rb
878
400
  homepage: http://github.com/trema/pio
879
401
  licenses:
880
- - GPL3
402
+ - GPLv2
403
+ - MIT
881
404
  metadata: {}
882
405
  post_install_message:
883
406
  rdoc_options: []
@@ -887,7 +410,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
887
410
  requirements:
888
411
  - - ">="
889
412
  - !ruby/object:Gem::Version
890
- version: 2.0.0
413
+ version: 2.3.0
891
414
  required_rubygems_version: !ruby/object:Gem::Requirement
892
415
  requirements:
893
416
  - - ">="
@@ -895,14 +418,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
895
418
  version: '0'
896
419
  requirements: []
897
420
  rubyforge_project:
898
- rubygems_version: 2.4.6
421
+ rubygems_version: 2.5.2
899
422
  signing_key:
900
423
  specification_version: 4
901
424
  summary: Packet parser and generator.
902
425
  test_files:
903
- - spec/pio/arp/reply/options_spec.rb
904
426
  - spec/pio/arp/reply_spec.rb
905
- - spec/pio/arp/request/options_spec.rb
906
427
  - spec/pio/arp/request_spec.rb
907
428
  - spec/pio/arp_spec.rb
908
429
  - spec/pio/dhcp/ack_spec.rb
@@ -916,6 +437,9 @@ test_files:
916
437
  - spec/pio/ipv4_address_spec.rb
917
438
  - spec/pio/lldp/options_spec.rb
918
439
  - spec/pio/mac_spec.rb
440
+ - spec/pio/monkey_patch/integer_spec.rb
441
+ - spec/pio/open_flow/nicira_resubmit_spec.rb
442
+ - spec/pio/open_flow/nicira_resubmit_table_spec.rb
919
443
  - spec/pio/open_flow10/echo/reply_spec.rb
920
444
  - spec/pio/open_flow10/echo/request_spec.rb
921
445
  - spec/pio/open_flow10/enqueue_spec.rb
@@ -952,93 +476,53 @@ test_files:
952
476
  - spec/pio/open_flow13/hello_spec.rb
953
477
  - spec/pio/open_flow13/match_spec.rb
954
478
  - spec/pio/open_flow13/meter_spec.rb
479
+ - spec/pio/open_flow13/nicira_reg_load_spec.rb
480
+ - spec/pio/open_flow13/nicira_reg_move_spec.rb
481
+ - spec/pio/open_flow13/nicira_send_out_port_spec.rb
955
482
  - spec/pio/open_flow13/packet_in_spec.rb
956
483
  - spec/pio/open_flow13/packet_out_spec.rb
957
484
  - spec/pio/open_flow13/write_metadata_spec.rb
958
485
  - spec/pio/open_flow_spec.rb
959
486
  - spec/spec_helper.rb
960
487
  - spec/support/shared_examples_for_openflow_messages.rb
961
- - features/arp-storm.pcap
962
- - features/arp.feature
963
- - features/arp.pcap
488
+ - features/arp/arp.feature
489
+ - features/arp/arp_reply.feature
490
+ - features/arp/arp_request.feature
964
491
  - features/dhcp.feature
965
- - features/dhcp.pcap
966
- - features/icmp.feature
967
- - features/icmp.pcap
968
- - features/icmpv6.pcap
969
- - features/lldp.detailed.pcap
492
+ - features/ethernet_header.feature
493
+ - features/icmp/icmp.feature
494
+ - features/icmp/icmp_reply.feature
495
+ - features/icmp/icmp_request.feature
496
+ - features/ipv4_header.feature
970
497
  - features/lldp.feature
971
- - features/lldp.minimal.pcap
498
+ - features/open_flow/header.feature
972
499
  - features/open_flow/nicira_resubmit.feature
973
500
  - features/open_flow/nicira_resubmit_table.feature
974
501
  - features/open_flow10/aggregate_stats_reply.feature
975
- - features/open_flow10/aggregate_stats_reply.raw
976
502
  - features/open_flow10/aggregate_stats_request.feature
977
- - features/open_flow10/aggregate_stats_request.raw
978
503
  - features/open_flow10/bad_request.feature
979
- - features/open_flow10/bad_request.raw
980
504
  - features/open_flow10/barrier_reply.feature
981
- - features/open_flow10/barrier_reply.raw
982
505
  - features/open_flow10/barrier_request.feature
983
- - features/open_flow10/barrier_request.raw
984
506
  - features/open_flow10/description_stats_reply.feature
985
- - features/open_flow10/description_stats_reply.raw
986
507
  - features/open_flow10/description_stats_request.feature
987
- - features/open_flow10/description_stats_request.raw
988
508
  - features/open_flow10/echo_reply.feature
989
- - features/open_flow10/echo_reply.raw
990
509
  - features/open_flow10/echo_request.feature
991
- - features/open_flow10/echo_request.raw
992
510
  - features/open_flow10/enqueue.feature
993
- - features/open_flow10/error.raw
994
511
  - features/open_flow10/exact_match.feature
995
512
  - features/open_flow10/features_reply.feature
996
- - features/open_flow10/features_reply.raw
997
513
  - features/open_flow10/features_request.feature
998
- - features/open_flow10/features_request.raw
999
514
  - features/open_flow10/flow_mod.feature
1000
- - features/open_flow10/flow_mod_add.raw
1001
- - features/open_flow10/flow_mod_delete.raw
1002
- - features/open_flow10/flow_mod_delete_strict.raw
1003
- - features/open_flow10/flow_mod_modify.raw
1004
- - features/open_flow10/flow_mod_modify_strict.raw
1005
515
  - features/open_flow10/flow_removed.feature
1006
- - features/open_flow10/flow_removed.raw
1007
516
  - features/open_flow10/flow_stats_reply.feature
1008
- - features/open_flow10/flow_stats_reply.raw
1009
517
  - features/open_flow10/flow_stats_request.feature
1010
- - features/open_flow10/flow_stats_request.raw
1011
- - features/open_flow10/get_config_reply.raw
1012
- - features/open_flow10/get_config_request.raw
1013
518
  - features/open_flow10/hello.feature
1014
- - features/open_flow10/hello.raw
1015
519
  - features/open_flow10/hello_failed.feature
1016
- - features/open_flow10/hello_failed.raw
1017
- - features/open_flow10/nx_flow_mod_add.raw
1018
- - features/open_flow10/nx_flow_mod_delete.raw
1019
- - features/open_flow10/nx_flow_mod_delete_strict.raw
1020
- - features/open_flow10/nx_flow_mod_modify.raw
1021
- - features/open_flow10/nx_flow_mod_modify_strict.raw
1022
- - features/open_flow10/nxast_learn.raw
1023
520
  - features/open_flow10/packet_in.feature
1024
- - features/open_flow10/packet_in.raw
1025
- - features/open_flow10/packet_in_arp_reply.raw
1026
- - features/open_flow10/packet_in_arp_request.raw
1027
- - features/open_flow10/packet_in_cbench.raw
1028
521
  - features/open_flow10/packet_out.feature
1029
- - features/open_flow10/packet_out.raw
1030
- - features/open_flow10/port_mod.raw
1031
- - features/open_flow10/port_stats_reply.raw
1032
522
  - features/open_flow10/port_stats_request.feature
1033
- - features/open_flow10/port_stats_request.raw
1034
523
  - features/open_flow10/port_status.feature
1035
- - features/open_flow10/port_status.raw
1036
- - features/open_flow10/queue_get_config_reply.raw
1037
- - features/open_flow10/queue_get_config_request.raw
1038
524
  - features/open_flow10/queue_stats_request.feature
1039
- - features/open_flow10/queue_stats_request.raw
1040
525
  - features/open_flow10/send_out_port.feature
1041
- - features/open_flow10/set_config.raw
1042
526
  - features/open_flow10/set_destination_mac_address.feature
1043
527
  - features/open_flow10/set_ip_destination_address.feature
1044
528
  - features/open_flow10/set_source_ip_address.feature
@@ -1049,121 +533,40 @@ test_files:
1049
533
  - features/open_flow10/set_vlan_priority.feature
1050
534
  - features/open_flow10/set_vlan_vid.feature
1051
535
  - features/open_flow10/strip_vlan_header.feature
1052
- - features/open_flow10/table_stats_reply.raw
1053
536
  - features/open_flow10/table_stats_request.feature
1054
- - features/open_flow10/table_stats_request.raw
1055
- - features/open_flow10/vendor.raw
1056
537
  - features/open_flow10/vendor_action.feature
1057
- - features/open_flow10/vendor_stats_request.raw
1058
- - features/open_flow13/action_copy_ttl_in.raw
1059
- - features/open_flow13/action_copy_ttl_out.raw
1060
- - features/open_flow13/action_dec_mpls_ttl.raw
1061
- - features/open_flow13/action_dec_nw_ttl.raw
1062
- - features/open_flow13/action_group.raw
1063
- - features/open_flow13/action_pop_mpls.raw
1064
- - features/open_flow13/action_pop_pbb.raw
1065
- - features/open_flow13/action_pop_vlan.raw
1066
- - features/open_flow13/action_push_mpls.raw
1067
- - features/open_flow13/action_push_pbb.raw
1068
- - features/open_flow13/action_push_vlan.raw
1069
- - features/open_flow13/action_set_field.raw
1070
- - features/open_flow13/action_set_mpls_ttl.raw
1071
- - features/open_flow13/action_set_nw_ttl.raw
1072
- - features/open_flow13/action_set_queue.raw
1073
538
  - features/open_flow13/apply_actions.feature
1074
- - features/open_flow13/apply_actions.raw
1075
539
  - features/open_flow13/bad_request.feature
1076
- - features/open_flow13/bad_request.raw
540
+ - features/open_flow13/copy_ttl_inwards.feature
541
+ - features/open_flow13/copy_ttl_outwards.feature
542
+ - features/open_flow13/decrement_ip_ttl.feature
1077
543
  - features/open_flow13/echo_reply.feature
1078
- - features/open_flow13/echo_reply_body.raw
1079
- - features/open_flow13/echo_reply_no_body.raw
1080
544
  - features/open_flow13/echo_request.feature
1081
- - features/open_flow13/echo_request_body.raw
1082
- - features/open_flow13/echo_request_no_body.raw
1083
545
  - features/open_flow13/features_reply.feature
1084
- - features/open_flow13/features_reply.raw
1085
546
  - features/open_flow13/features_request.feature
1086
- - features/open_flow13/features_request.raw
1087
- - features/open_flow13/flow_add_apply_no_match.raw
1088
547
  - features/open_flow13/flow_mod.feature
1089
- - features/open_flow13/flow_mod_add_apply_no_match.raw
1090
- - features/open_flow13/flow_mod_no_match_or_instructions.raw
1091
548
  - features/open_flow13/goto_table.feature
1092
549
  - features/open_flow13/hello.feature
1093
550
  - features/open_flow13/hello_failed.feature
1094
- - features/open_flow13/hello_failed.raw
1095
- - features/open_flow13/hello_no_version_bitmap.raw
1096
- - features/open_flow13/hello_version_bitmap.raw
1097
- - features/open_flow13/instruction_clear_actions.raw
1098
- - features/open_flow13/instruction_goto_table.raw
1099
- - features/open_flow13/instruction_meter.raw
1100
- - features/open_flow13/instruction_write_actions.raw
1101
- - features/open_flow13/instruction_write_metadata.raw
1102
551
  - features/open_flow13/match.feature
1103
552
  - features/open_flow13/meter.feature
553
+ - features/open_flow13/nicira_conjunction.feature
1104
554
  - features/open_flow13/nicira_reg_load.feature
1105
555
  - features/open_flow13/nicira_reg_move.feature
1106
556
  - features/open_flow13/nicira_send_out_port.feature
1107
- - features/open_flow13/oxm_arp_op_field.raw
1108
- - features/open_flow13/oxm_arp_sha_field.raw
1109
- - features/open_flow13/oxm_arp_spa_field.raw
1110
- - features/open_flow13/oxm_arp_tha_field.raw
1111
- - features/open_flow13/oxm_arp_tpa_field.raw
1112
- - features/open_flow13/oxm_ether_destination_field.raw
1113
- - features/open_flow13/oxm_ether_source_field.raw
1114
- - features/open_flow13/oxm_ether_type_field.raw
1115
- - features/open_flow13/oxm_experimenter_stratos_basic_dot11.raw
1116
- - features/open_flow13/oxm_icmpv4_code_field.raw
1117
- - features/open_flow13/oxm_icmpv4_type_field.raw
1118
- - features/open_flow13/oxm_in_phy_port_field.raw
1119
- - features/open_flow13/oxm_in_port_field.raw
1120
- - features/open_flow13/oxm_invalid_field.raw
1121
- - features/open_flow13/oxm_ip_dscp_field.raw
1122
- - features/open_flow13/oxm_ip_ecn_field.raw
1123
- - features/open_flow13/oxm_ipv4_destination_field.raw
1124
- - features/open_flow13/oxm_ipv4_source_field.raw
1125
- - features/open_flow13/oxm_ipv6_destination_field.raw
1126
- - features/open_flow13/oxm_ipv6_source_field.raw
1127
- - features/open_flow13/oxm_masked_arp_sha_field.raw
1128
- - features/open_flow13/oxm_masked_arp_spa_field.raw
1129
- - features/open_flow13/oxm_masked_arp_tha_field.raw
1130
- - features/open_flow13/oxm_masked_arp_tpa_field.raw
1131
- - features/open_flow13/oxm_masked_ether_destination_field.raw
1132
- - features/open_flow13/oxm_masked_ether_source_field.raw
1133
- - features/open_flow13/oxm_masked_ipv4_destination_field.raw
1134
- - features/open_flow13/oxm_masked_ipv4_source_field.raw
1135
- - features/open_flow13/oxm_masked_ipv6_destination_field.raw
1136
- - features/open_flow13/oxm_masked_ipv6_source_field.raw
1137
- - features/open_flow13/oxm_masked_tunnel_id_field.raw
1138
- - features/open_flow13/oxm_metadata_field.raw
1139
- - features/open_flow13/oxm_metadata_masked_field.raw
1140
- - features/open_flow13/oxm_no_fields.raw
1141
- - features/open_flow13/oxm_sctp_destination_field.raw
1142
- - features/open_flow13/oxm_sctp_source_field.raw
1143
- - features/open_flow13/oxm_tcp_destination_field.raw
1144
- - features/open_flow13/oxm_tcp_field.raw
1145
- - features/open_flow13/oxm_tcp_source_field.raw
1146
- - features/open_flow13/oxm_tunnel_id_field.raw
1147
- - features/open_flow13/oxm_udp_destination_field.raw
1148
- - features/open_flow13/oxm_udp_field.raw
1149
- - features/open_flow13/oxm_udp_source_field.raw
1150
- - features/open_flow13/oxm_vlan_pcp_field.raw
1151
- - features/open_flow13/oxm_vlan_vid_field.raw
557
+ - features/open_flow13/nicira_stack_pop.feature
558
+ - features/open_flow13/nicira_stack_push.feature
1152
559
  - features/open_flow13/packet_in.feature
1153
- - features/open_flow13/packet_in.raw
1154
560
  - features/open_flow13/packet_out.feature
1155
- - features/open_flow13/packet_out.raw
1156
561
  - features/open_flow13/send_out_port.feature
1157
- - features/open_flow13/send_out_port.raw
1158
562
  - features/open_flow13/set_arp_operation.feature
1159
563
  - features/open_flow13/set_arp_sender_hardware_address.feature
1160
564
  - features/open_flow13/set_arp_sender_protocol_address.feature
1161
565
  - features/open_flow13/set_destination_mac_address.feature
566
+ - features/open_flow13/set_ip_ttl.feature
1162
567
  - features/open_flow13/set_metadata.feature
1163
568
  - features/open_flow13/set_source_mac_address.feature
1164
569
  - features/open_flow13/stats_request.feature
1165
- - features/open_flow13/table_stats_reply.raw
1166
- - features/open_flow13/table_stats_request.raw
1167
570
  - features/open_flow13/write_metadata.feature
1168
571
  - features/open_flow_read.feature
1169
572
  - features/open_flow_version.feature
@@ -1171,18 +574,15 @@ test_files:
1171
574
  - features/step_definitions/dump_flows_steps.rb
1172
575
  - features/step_definitions/Gemfile
1173
576
  - features/step_definitions/Guardfile
1174
- - features/step_definitions/LICENSE
1175
577
  - features/step_definitions/open_flow_steps.rb
1176
578
  - features/step_definitions/packet_data_steps.rb
1177
579
  - features/step_definitions/Rakefile
1178
580
  - features/step_definitions/README.md
1179
581
  - features/step_definitions/rest_api_steps.rb
582
+ - features/step_definitions/ruby_steps.rb
1180
583
  - features/step_definitions/show_stats_steps.rb
1181
584
  - features/step_definitions/trema_steps.rb
1182
585
  - features/step_definitions/virtual_link_steps.rb
1183
586
  - features/support/env.rb
1184
587
  - features/support/hooks.rb
1185
588
  - features/udp.feature
1186
- - features/udp_no_payload.raw
1187
- - features/udp_with_payload.raw
1188
- has_rdoc: