]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/networking/libraries/interfaces.rb
Allow openvpn connections over IPv6
[chef.git] / cookbooks / networking / libraries / interfaces.rb
index fa0a93c7d7347ed63f53b1adb08bf5aa849134ee..c2f170b9c73a2f56c290d0a0f3cc38110c563eae 100644 (file)
@@ -4,17 +4,16 @@ class Chef
       interfaces = []
 
       networking = construct_attributes[:networking] || {}
-      networking_interfaces = networking[:interfaces] || []
+      networking_interfaces = networking[:interfaces] || {}
 
       networking_interfaces.each_value  do |interface|
-        if options[:role].nil? || interface[:role].to_s == options[:role].to_s
-          if options[:family].nil? || interface[:family].to_s == options[:family].to_s
-            if block.nil?
-              interfaces << interface
-            else
-              block.call(interface)
-            end
-          end
+        next unless options[:role].nil? || interface[:role].to_s == options[:role].to_s
+        next unless options[:family].nil? || interface[:family].to_s == options[:family].to_s
+
+        if block.nil?
+          interfaces << interface
+        else
+          yield interface
         end
       end