PageRenderTime 47ms CodeModel.GetById 21ms RepoModel.GetById 0ms app.codeStats 0ms

/puphpet/puppet/modules/firewall/spec/fixtures/ip6tables/conversion_hash.rb

https://github.com/innesm4/Environment-setup
Ruby | 107 lines | 98 code | 2 blank | 7 comment | 0 complexity | 0d88a4226fdf28dd55e30f7e6d4a1cb7 MD5 | raw file
Possible License(s): Apache-2.0
  1. # These hashes allow us to iterate across a series of test data
  2. # creating rspec examples for each parameter to ensure the input :line
  3. # extrapolates to the desired value for the parameter in question. And
  4. # vice-versa
  5. # This hash is for testing a line conversion to a hash of parameters
  6. # which will be used to create a resource.
  7. ARGS_TO_HASH6 = {
  8. 'source_destination_ipv6_no_cidr' => {
  9. :line => '-A INPUT -s 2001:db8:85a3::8a2e:370:7334 -d 2001:db8:85a3::8a2e:370:7334 -m comment --comment "000 source destination ipv6 no cidr"',
  10. :table => 'filter',
  11. :provider => 'ip6tables',
  12. :params => {
  13. :source => '2001:db8:85a3::8a2e:370:7334/128',
  14. :destination => '2001:db8:85a3::8a2e:370:7334/128',
  15. },
  16. },
  17. 'source_destination_ipv6_netmask' => {
  18. :line => '-A INPUT -s 2001:db8:1234::/ffff:ffff:ffff:0000:0000:0000:0000:0000 -d 2001:db8:4321::/ffff:ffff:ffff:0000:0000:0000:0000:0000 -m comment --comment "000 source destination ipv6 netmask"',
  19. :table => 'filter',
  20. :provider => 'ip6tables',
  21. :params => {
  22. :source => '2001:db8:1234::/48',
  23. :destination => '2001:db8:4321::/48',
  24. },
  25. },
  26. }
  27. # This hash is for testing converting a hash to an argument line.
  28. HASH_TO_ARGS6 = {
  29. 'zero_prefixlen_ipv6' => {
  30. :params => {
  31. :name => '100 zero prefix length ipv6',
  32. :table => 'filter',
  33. :provider => 'ip6tables',
  34. :source => '::/0',
  35. :destination => '::/0',
  36. },
  37. :args => ['-t', :filter, '-p', :tcp, '-m', 'comment', '--comment', '100 zero prefix length ipv6'],
  38. },
  39. 'source_destination_ipv4_no_cidr' => {
  40. :params => {
  41. :name => '000 source destination ipv4 no cidr',
  42. :table => 'filter',
  43. :provider => 'ip6tables',
  44. :source => '1.1.1.1',
  45. :destination => '2.2.2.2',
  46. },
  47. :args => ['-t', :filter, '-s', '1.1.1.1/32', '-d', '2.2.2.2/32', '-p', :tcp, '-m', 'comment', '--comment', '000 source destination ipv4 no cidr'],
  48. },
  49. 'source_destination_ipv6_no_cidr' => {
  50. :params => {
  51. :name => '000 source destination ipv6 no cidr',
  52. :table => 'filter',
  53. :provider => 'ip6tables',
  54. :source => '2001:db8:1234::',
  55. :destination => '2001:db8:4321::',
  56. },
  57. :args => ['-t', :filter, '-s', '2001:db8:1234::/128', '-d', '2001:db8:4321::/128', '-p', :tcp, '-m', 'comment', '--comment', '000 source destination ipv6 no cidr'],
  58. },
  59. 'source_destination_ipv6_netmask' => {
  60. :params => {
  61. :name => '000 source destination ipv6 netmask',
  62. :table => 'filter',
  63. :provider => 'ip6tables',
  64. :source => '2001:db8:1234::/ffff:ffff:ffff:0000:0000:0000:0000:0000',
  65. :destination => '2001:db8:4321::/ffff:ffff:ffff:0000:0000:0000:0000:0000',
  66. },
  67. :args => ['-t', :filter, '-s', '2001:db8:1234::/48', '-d', '2001:db8:4321::/48', '-p', :tcp, '-m', 'comment', '--comment', '000 source destination ipv6 netmask'],
  68. },
  69. 'frag_ishasmorefrags' => {
  70. :params => {
  71. :name => "100 has more fragments",
  72. :ishasmorefrags => true,
  73. :provider => 'ip6tables',
  74. :table => "filter",
  75. },
  76. :args => ["-t", :filter, "-p", :tcp, "-m", "frag", "--fragid", "0", "--fragmore", "-m", "comment", "--comment", "100 has more fragments"],
  77. },
  78. 'frag_islastfrag' => {
  79. :params => {
  80. :name => "100 last fragment",
  81. :islastfrag => true,
  82. :provider => 'ip6tables',
  83. :table => "filter",
  84. },
  85. :args => ["-t", :filter, "-p", :tcp, "-m", "frag", "--fragid", "0", "--fraglast", "-m", "comment", "--comment", "100 last fragment"],
  86. },
  87. 'frag_isfirstfrags' => {
  88. :params => {
  89. :name => "100 first fragment",
  90. :isfirstfrag => true,
  91. :provider => 'ip6tables',
  92. :table => "filter",
  93. },
  94. :args => ["-t", :filter, "-p", :tcp, "-m", "frag", "--fragid", "0", "--fragfirst", "-m", "comment", "--comment", "100 first fragment"],
  95. },
  96. 'hop_limit' => {
  97. :params => {
  98. :name => "100 hop limit",
  99. :hop_limit => 255,
  100. :provider => 'ip6tables',
  101. :table => "filter",
  102. },
  103. :args => ["-t", :filter, "-p", :tcp, "-m", "comment", "--comment", "100 hop limit", "-m", "hl", "--hl-eq", 255],
  104. },
  105. }