4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'lib/siteguard_lite/custom_signature/yaml_loader.rb', line 4
def self.load(yaml)
y = ::YAML.load(yaml)
rules = []
y['rules'].each do |r|
rule = SiteguardLite::CustomSignature::Rule.new(
name: r['name'],
action: r['action'],
filter_lifetime: r['filter_lifetime'],
comment: r['comment'],
exclusion_action: r['exclusion_action'],
signature: r['signature']
)
r['conditions'].each do |c|
rule.add_condition(c['key'], c['value'], c['comparison_methods'])
end
rules << rule
end
rules
end
|