ddis 1.0.1 → 1.2.0

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.
Files changed (4) hide show
  1. data/bin/ddis +1 -0
  2. data/lib/ddis.rb +2 -7
  3. data/lib/ddis/store_ips.rb +4 -2
  4. metadata +73 -56
data/bin/ddis CHANGED
@@ -31,6 +31,7 @@ ip = ddis.iterator.ip
31
31
  ddis.test_ip ip
32
32
  ip = ddis.iterator.iterate
33
33
  end
34
+ ddis.save
34
35
  warn "Sleeping for #{secs} seconds" if verbose
35
36
  sleep secs
36
37
  end
@@ -28,17 +28,12 @@ class DDis
28
28
  end
29
29
 
30
30
  def test_ip ip
31
- begin
32
- hostname = @resolv.getname ip
33
- rescue
34
- warn "Couldn't get host for #{ip}"
35
- return nil
36
- end
31
+ hostname = @resolv.getname( ip ) || nil
37
32
 
38
33
  @ping.host = ip
39
34
  up = @ping.ping?
40
35
 
41
- if up and hostname =~ /#{@unass}/
36
+ if up and ( hostname =~ /#{@unass}/ or hostname.nil? )
42
37
  warn "#{ip} is up yet has an invalid hostname" if @verbose
43
38
  @db.up_no_dns( ip )
44
39
  end
@@ -17,13 +17,11 @@ class StoreIPs
17
17
  def up_no_dns ip
18
18
  @red.srem "ip.#{@db}.down", ip
19
19
  @red.sadd "ip.#{@db}.up", ip
20
- @red.save
21
20
  end
22
21
 
23
22
  def down_with_dns ip
24
23
  @red.srem "ip.#{@db}.up", ip
25
24
  @red.sadd "ip.#{@db}.down", ip
26
- @red.save
27
25
  end
28
26
 
29
27
  def dump
@@ -34,4 +32,8 @@ class StoreIPs
34
32
  }
35
33
  end
36
34
 
35
+ def save
36
+ @red.save
37
+ end
38
+
37
39
  end
metadata CHANGED
@@ -1,73 +1,80 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: ddis
3
- version: !ruby/object:Gem::Version
4
- version: 1.0.1
3
+ version: !ruby/object:Gem::Version
4
+ hash: 31
5
5
  prerelease:
6
+ segments:
7
+ - 1
8
+ - 2
9
+ - 0
10
+ version: 1.2.0
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - jspc
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2012-11-07 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2013-01-19 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: net-ping
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: 1.5.3
22
- type: :runtime
23
22
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
23
+ requirement: &id001 !ruby/object:Gem::Requirement
25
24
  none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 5
29
+ segments:
30
+ - 1
31
+ - 5
32
+ - 3
29
33
  version: 1.5.3
30
- - !ruby/object:Gem::Dependency
31
- name: netaddr
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: 1.5.0
38
34
  type: :runtime
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: netaddr
39
38
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
39
+ requirement: &id002 !ruby/object:Gem::Requirement
41
40
  none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ hash: 3
45
+ segments:
46
+ - 1
47
+ - 5
48
+ - 0
45
49
  version: 1.5.0
46
- - !ruby/object:Gem::Dependency
47
- name: redis
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: 3.0.2
54
50
  type: :runtime
51
+ version_requirements: *id002
52
+ - !ruby/object:Gem::Dependency
53
+ name: redis
55
54
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
55
+ requirement: &id003 !ruby/object:Gem::Requirement
57
56
  none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ hash: 3
61
+ segments:
62
+ - 3
63
+ - 0
64
+ - 2
61
65
  version: 3.0.2
66
+ type: :runtime
67
+ version_requirements: *id003
62
68
  description: A small utility to determine the conformity of an IP on a network
63
69
  email: james@zero-internet.org.uk
64
- executables:
70
+ executables:
65
71
  - ddis
66
72
  extensions: []
67
- extra_rdoc_files:
73
+
74
+ extra_rdoc_files:
68
75
  - LICENSE.txt
69
76
  - README.md
70
- files:
77
+ files:
71
78
  - LICENSE.txt
72
79
  - RATIONALE.txt
73
80
  - README.md
@@ -77,26 +84,36 @@ files:
77
84
  - lib/ddis/store_ips.rb
78
85
  homepage: https://github.com/jspc/ddis
79
86
  licenses: []
87
+
80
88
  post_install_message:
81
89
  rdoc_options: []
82
- require_paths:
90
+
91
+ require_paths:
83
92
  - lib
84
- required_ruby_version: !ruby/object:Gem::Requirement
93
+ required_ruby_version: !ruby/object:Gem::Requirement
85
94
  none: false
86
- requirements:
87
- - - ! '>='
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- required_rubygems_version: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ hash: 3
99
+ segments:
100
+ - 0
101
+ version: "0"
102
+ required_rubygems_version: !ruby/object:Gem::Requirement
91
103
  none: false
92
- requirements:
93
- - - ! '>='
94
- - !ruby/object:Gem::Version
95
- version: '0'
104
+ requirements:
105
+ - - ">="
106
+ - !ruby/object:Gem::Version
107
+ hash: 3
108
+ segments:
109
+ - 0
110
+ version: "0"
96
111
  requirements: []
112
+
97
113
  rubyforge_project:
98
114
  rubygems_version: 1.8.24
99
115
  signing_key:
100
116
  specification_version: 3
101
117
  summary: A small utility to determine the conformity of an IP on a network
102
118
  test_files: []
119
+