logstash-filter-cidr 3.1.2-java → 3.1.3-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6c4204d30726e8c53f727afa65dcd9ef920a51972fdcec978859b71ed7cedfbf
4
- data.tar.gz: 6ffc644e74c4d045d0f853f159993db7c493d404b3bf7c925906de086e746184
3
+ metadata.gz: 3af9ea6ead9d2e16e392a8d5288a738884b83668d5536250172d69e87ee1d6a0
4
+ data.tar.gz: 41f7dca503104b5d7a3d9fae086b31c721de0f5d350c81e54435d34760a1052d
5
5
  SHA512:
6
- metadata.gz: ad1e973711f313c554ef4adf8d4395bb4b70af60151c5198d59e15d52fc0c32df2f579536d08469bc858ff4799b6e0930fe15339ec7d30ba6a6ad15784aeb646
7
- data.tar.gz: ad159d13977302043626352ee483b37ab62da944291df3f6451dcc1d40cc16369a9e5ec1246cd689f3591e9b45b200a8c6f0c27524b2ca1a7b5f26576b95f6b0
6
+ metadata.gz: 12c49c20c3a36734536d74191d69540d667d4d8a6c7dae93d35563d099be10d4865af4b6271f020ae95111331e01458104a61d8e1ab7acf77fd6bbf91c7ccf5c
7
+ data.tar.gz: 6d4a84645515f0b7964a0f3563898a65cfcd1ec86a4f9584cd97f3a481a38103464d94a76ed21ce7b815a98568c3be3e21f8572745f71f06253a42fb41a12947
@@ -1,3 +1,6 @@
1
+ ## 3.1.3
2
+ - Support string arrays in network setting
3
+
1
4
  ## 3.1.2
2
5
  - Update gemspec summary
3
6
 
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012–2016 Elasticsearch <http://www.elastic.co>
1
+ Copyright (c) 2012-2018 Elasticsearch <http://www.elastic.co>
2
2
 
3
3
  Licensed under the Apache License, Version 2.0 (the "License");
4
4
  you may not use this file except in compliance with the License.
@@ -125,7 +125,7 @@ class LogStash::Filters::CIDR < LogStash::Filters::Base
125
125
  begin
126
126
  IPAddr.new(event.sprintf(a))
127
127
  rescue ArgumentError => e
128
- @logger.warn("Invalid IP address, skipping", :address => a, :event => event)
128
+ @logger.warn("Invalid IP address, skipping", :address => a, :event => event.to_hash)
129
129
  nil
130
130
  end
131
131
  end
@@ -147,18 +147,18 @@ class LogStash::Filters::CIDR < LogStash::Filters::Base
147
147
  IPAddr.new(n)
148
148
  end
149
149
  rescue ArgumentError => e
150
- @logger.warn("Invalid IP network, skipping", :network => n, :event => event)
150
+ @logger.warn("Invalid IP network, skipping", :network => n, :event => event.to_hash)
151
151
  nil
152
152
  end
153
153
  end
154
154
 
155
155
  else #networks come from array in config file
156
156
 
157
- network = @network.collect do |n|
157
+ network = @network.map {|nw| event.sprintf(nw) }.map {|nw| nw.split(",") }.flatten.collect do |n|
158
158
  begin
159
- IPAddr.new(event.sprintf(n))
159
+ IPAddr.new(n.strip)
160
160
  rescue ArgumentError => e
161
- @logger.warn("Invalid IP network, skipping", :network => n, :event => event)
161
+ @logger.warn("Invalid IP network, skipping", :network => n, :event => event.to_hash)
162
162
  nil
163
163
  end
164
164
  end
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-filter-cidr'
4
- s.version = '3.1.2'
4
+ s.version = '3.1.3'
5
5
  s.platform = 'java'
6
6
  s.licenses = ['Apache License (2.0)']
7
7
  s.summary = "Checks IP addresses against a list of network blocks"
@@ -70,6 +70,37 @@ describe LogStash::Filters::CIDR do
70
70
  end
71
71
 
72
72
  end
73
+ describe "IPV4 match, passing a string with a list to network" do
74
+ config <<-CONFIG
75
+ filter {
76
+ cidr {
77
+ address => [ "%{clientip}"]
78
+ network => [ "10.0.0.0/8,172.16.0.0/12,192.168.0.0/16"]
79
+ add_tag => [ "matched" ]
80
+ }
81
+ }
82
+ CONFIG
83
+
84
+ sample("clientip" => "192.168.0.30") do
85
+ insist { subject.get("tags") }.include?("matched")
86
+ end
87
+
88
+ context "when network list comes in a field reference" do
89
+ config <<-CONFIG
90
+ filter {
91
+ cidr {
92
+ address => [ "%{clientip}"]
93
+ network => [ "%{whitelist}"]
94
+ add_tag => [ "matched" ]
95
+ }
96
+ }
97
+ CONFIG
98
+ sample("whitelist" => [ "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"], "clientip" => "192.168.0.30") do
99
+ insist { subject.get("tags") }.include?("matched")
100
+ end
101
+ end
102
+ end
103
+
73
104
 
74
105
  # IPV6
75
106
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-filter-cidr
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.2
4
+ version: 3.1.3
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-07 00:00:00.000000000 Z
11
+ date: 2019-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
@@ -86,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
86
  version: '0'
87
87
  requirements: []
88
88
  rubyforge_project:
89
- rubygems_version: 2.6.11
89
+ rubygems_version: 2.6.13
90
90
  signing_key:
91
91
  specification_version: 4
92
92
  summary: Checks IP addresses against a list of network blocks