rack-detect-tor 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rack-detect-tor.rb +1 -26
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ca95a72a1819a0419c4eb93a4f4fd21ffd46167f
4
- data.tar.gz: 5ebe2469cb14b0306f989c942c2ea8a3f9b64857
3
+ metadata.gz: 689e8a3e35aa0b9b8eb807e9a295f0674e0f20f8
4
+ data.tar.gz: 88f0f4160574255bac09f48a9e233f958b1693b1
5
5
  SHA512:
6
- metadata.gz: 9299cf11e242970a1f9a7b08ce8b127f6373c7cf1bb6902d1b2481f2e9d6a2c85a5cd8eb536acc88ac22f3fc15bfc711e0b2ff098adb1ada2de7052501f347c0
7
- data.tar.gz: c2b87df5d9c00998f6267205dbd8917aa1f6d97ce7d5c17904336c7cc265745a14dbdb393d9074e9080466d3a93305c4631f893eb5026e41973dd3e90b11e93e
6
+ metadata.gz: 1bfd6e3a4f0eca63f8f6e60f0ed125ed69c4094eafd3876f6b5ed9c3c071113e427c0ef7dd9008a03019b950f6205dfde40246709d203d59b297d9fd4a3c402a
7
+ data.tar.gz: 37e278a94d8499600acc328b99c33db71befa4bebae143eb8669ea8d154d7108361defe3be6b35609a85a2987def6feb3e40046b1a4c35e7ba11b91a4afb39d0
@@ -26,7 +26,7 @@ module Rack
26
26
  end
27
27
 
28
28
  def call(env)
29
- env['tor_exit_user'] = @tor_exits.include? request_ip(env)
29
+ env['tor_exit_user'] = @tor_exits.include? Rack::Request.new(env).ip
30
30
  @app.call(env)
31
31
  end
32
32
 
@@ -81,30 +81,5 @@ module Rack
81
81
  $stderr.puts "Rack::DetectTor [#{@identifier}]: ERROR: #{message}"
82
82
  end
83
83
 
84
- # below yanked from https://github.com/rack/rack/blob/master/lib/rack/request.rb
85
-
86
- def request_ip(env)
87
- remote_addrs = split_ip_addresses(env['REMOTE_ADDR'])
88
- remote_addrs = reject_trusted_ip_addresses(remote_addrs)
89
-
90
- return remote_addrs.first if remote_addrs.any?
91
-
92
- forwarded_ips = split_ip_addresses(env['HTTP_X_FORWARDED_FOR'])
93
-
94
- return reject_trusted_ip_addresses(forwarded_ips).last || env["REMOTE_ADDR"]
95
- end
96
-
97
- def trusted_proxy?(ip)
98
- ip =~ /\A127\.0\.0\.1\Z|\A(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.|\A::1\Z|\Afd[0-9a-f]{2}:.+|\Alocalhost\Z|\Aunix\Z|\Aunix:/i
99
- end
100
-
101
- def reject_trusted_ip_addresses(ip_addresses)
102
- ip_addresses.reject { |ip| trusted_proxy?(ip) }
103
- end
104
-
105
- def split_ip_addresses(ip_addresses)
106
- ip_addresses ? ip_addresses.strip.split(/[,\s]+/) : []
107
- end
108
-
109
84
  end
110
85
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-detect-tor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Warren Guy