class Puppet::Provider::Firewall < Puppet::Provider
-
+
# Prefetch our rule list. This is ran once every time before any other
# action (besides initialization of each object).
def self.prefetch(resources)
# Executed if method is missing. In this case we are going to catch
# unqualified property methods for dynamic property setting and getting.
def method_missing(meth, *args, &block)
- dynamic_methods = @@resource_map.keys
+ dynamic_methods = self.class.instance_variable_get('@resource_map').keys
dynamic_methods << :chain
dynamic_methods << :table
defaultfor :operatingsystem => [:redhat, :debian, :ubuntu, :fedora, :suse, :centos, :sles, :oel, :ovm]
confine :operatingsystem => [:redhat, :debian, :ubuntu, :fedora, :suse, :centos, :sles, :oel, :ovm]
- @@resource_map = {
+ @resource_map = {
:burst => "--limit-burst",
:destination => "-d",
:dport => "-m multiport --dports",
:tosource => "--to-source",
}
- @@resource_list = [:table, :source, :destination, :iniface, :outiface,
+ @resource_list = [:table, :source, :destination, :iniface, :outiface,
:proto, :sport, :dport, :name, :state, :icmp, :limit, :burst, :jump,
:todest, :tosource, :toports, :log_level, :log_prefix, :reject]
keys = []
values = line.dup
- @@resource_list.reverse.each do |k|
- if values.slice!(@@resource_map[k])
+ @resource_list.reverse.each do |k|
+ if values.slice!(@resource_map[k])
keys << k
end
end
def general_args
debug "Current resource: %s" % resource.class
args = []
- @@resource_list.each do |res|
+ self.class.instance_variable_get('@resource_list').each do |res|
if(resource.value(res))
- args << @@resource_map[res].split(' ')
+ args << self.class.instance_variable_get('@resource_map')[res].split(' ')
if resource[res].is_a?(Array)
args << resource[res].join(',')
else