PwnedCheck 1.0.13 → 1.0.14
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 +4 -4
- checksums.yaml.gz.sig +3 -1
- data/README.md +3 -3
- data/lib/pwnedcheck.rb +13 -20
- data.tar.gz.sig +0 -0
- metadata +2 -30
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 034b9ae698d982ce469ab65c4448723eae12037d
|
|
4
|
+
data.tar.gz: 392aa84d61fd03830271f7d7f34611eab374ee93
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f0c77f2ed31db656e0aa689fc764fd4588b1e46e8d9933f0861b2daf2464c6cb2f17f91cb0c3db71887ea70ab9cfa714b119929fe726e43ca9a04bc48683315a
|
|
7
|
+
data.tar.gz: 0f1a6602f1ad34884111abcf136340baedb2f90a81b3c3ea21c20bb56cefb779748c72395e97fc0a0691f04a3fa7c2b0cf9b038a6befdef25a1f25c0e6aa4c07
|
checksums.yaml.gz.sig
CHANGED
data/README.md
CHANGED
|
@@ -5,7 +5,7 @@ Ruby gem to check to see if an email address is on http://haveibeenpwned.com
|
|
|
5
5
|
<table>
|
|
6
6
|
<tr>
|
|
7
7
|
<th>Version</th>
|
|
8
|
-
<td>1.0.
|
|
8
|
+
<td>1.0.14</td>
|
|
9
9
|
</tr>
|
|
10
10
|
<tr>
|
|
11
11
|
<th>Author</th>
|
|
@@ -45,8 +45,8 @@ addresses.each do |address|
|
|
|
45
45
|
puts "#{address} --> #{site}"
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
|
-
rescue PwnedCheck::
|
|
49
|
-
puts "#{address} -->
|
|
48
|
+
rescue PwnedCheck::InvalidEmail => e
|
|
49
|
+
puts "#{address} --> #{e.message}"
|
|
50
50
|
end
|
|
51
51
|
end
|
|
52
52
|
`````
|
data/lib/pwnedcheck.rb
CHANGED
|
@@ -21,16 +21,16 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
|
21
21
|
SOFTWARE.
|
|
22
22
|
=end
|
|
23
23
|
|
|
24
|
-
require '
|
|
25
|
-
require '
|
|
24
|
+
require 'net/http'
|
|
25
|
+
require 'cgi'
|
|
26
26
|
require 'json'
|
|
27
27
|
|
|
28
28
|
# PwnedCheck module
|
|
29
29
|
module PwnedCheck
|
|
30
30
|
# Thrown if the email address being checked does not have a valid format
|
|
31
|
-
class
|
|
31
|
+
class InvalidEmail < Exception
|
|
32
32
|
def initialize
|
|
33
|
-
super
|
|
33
|
+
super 'Invalid email address format'
|
|
34
34
|
end
|
|
35
35
|
end
|
|
36
36
|
|
|
@@ -39,22 +39,15 @@ module PwnedCheck
|
|
|
39
39
|
# @param address [String] the email address to check
|
|
40
40
|
# @return [Array] an array of sites that the email address is associated with
|
|
41
41
|
def self.check(address)
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
when '400'
|
|
52
|
-
raise BadRequest
|
|
53
|
-
else
|
|
54
|
-
raise ex
|
|
55
|
-
end
|
|
56
|
-
else
|
|
57
|
-
JSON.parse(page.content)
|
|
42
|
+
uri = URI.parse "http://haveibeenpwned.com/api/breachedaccount/#{CGI::escape(address)}"
|
|
43
|
+
response = Net::HTTP.get_response uri
|
|
44
|
+
case response.code
|
|
45
|
+
when '200'
|
|
46
|
+
JSON.parse response.body
|
|
47
|
+
when '404'
|
|
48
|
+
[]
|
|
49
|
+
when '400'
|
|
50
|
+
fail InvalidEmail
|
|
58
51
|
end
|
|
59
52
|
end
|
|
60
53
|
end
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: PwnedCheck
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.14
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Carl Sampson
|
|
@@ -30,35 +30,7 @@ cert_chain:
|
|
|
30
30
|
QpRFRIGkUba0uOnrpDYGuuDffqcLmyWY2QNiM6h/V43zrVhJ
|
|
31
31
|
-----END CERTIFICATE-----
|
|
32
32
|
date: 2013-12-16 00:00:00.000000000 Z
|
|
33
|
-
dependencies:
|
|
34
|
-
- !ruby/object:Gem::Dependency
|
|
35
|
-
name: mechanize
|
|
36
|
-
requirement: !ruby/object:Gem::Requirement
|
|
37
|
-
requirements:
|
|
38
|
-
- - ">="
|
|
39
|
-
- !ruby/object:Gem::Version
|
|
40
|
-
version: '0'
|
|
41
|
-
type: :runtime
|
|
42
|
-
prerelease: false
|
|
43
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
44
|
-
requirements:
|
|
45
|
-
- - ">="
|
|
46
|
-
- !ruby/object:Gem::Version
|
|
47
|
-
version: '0'
|
|
48
|
-
- !ruby/object:Gem::Dependency
|
|
49
|
-
name: addressable
|
|
50
|
-
requirement: !ruby/object:Gem::Requirement
|
|
51
|
-
requirements:
|
|
52
|
-
- - ">="
|
|
53
|
-
- !ruby/object:Gem::Version
|
|
54
|
-
version: '0'
|
|
55
|
-
type: :runtime
|
|
56
|
-
prerelease: false
|
|
57
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - ">="
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '0'
|
|
33
|
+
dependencies: []
|
|
62
34
|
description: Checks an email address against haveibeenpwned.com.
|
|
63
35
|
email: chs@chs.us
|
|
64
36
|
executables: []
|
metadata.gz.sig
CHANGED
|
Binary file
|