miniproxy 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/miniproxy.rb +6 -2
- data/lib/miniproxy/fake_ssl_server.rb +3 -3
- data/lib/miniproxy/proxy_server.rb +3 -3
- data/lib/miniproxy/remote.rb +3 -1
- data/lib/miniproxy/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 41e22d9ed52e95e702ec166cbe0a4700b53bd9d57d2ef8692e053a59068f2f37
|
4
|
+
data.tar.gz: e440206808935f7fcfcb06df5279605829073b44c3e5e76c4157381d785d51bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 61f3e64831a177c3d6951d61384bb3cb2b4213e57eb4e105ccfe257e5e3d95f5a410ac2f2a79e4b2c5e87508dfa504a799a67ae08c2ef632fcb6959c6bf2b947
|
7
|
+
data.tar.gz: 509ffcd3f6b1ec80dbf19d22a2ca85efcf8c7588271159ec6857062046056783afb087b4ef37133c82dd38a199d396d018c81b4de1d0542c5018f52aa8e362cf
|
data/lib/miniproxy.rb
CHANGED
@@ -18,7 +18,11 @@ module MiniProxy
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def self.host
|
21
|
-
"127.0.0.1"
|
21
|
+
@host || "127.0.0.1"
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.host=(host)
|
25
|
+
@host = host
|
22
26
|
end
|
23
27
|
|
24
28
|
def self.ignore_all_requests
|
@@ -36,7 +40,7 @@ module MiniProxy
|
|
36
40
|
private_class_method def self.remote
|
37
41
|
Timeout.timeout(DRB_SERVICE_TIMEOUT) do
|
38
42
|
begin
|
39
|
-
remote = DRbObject.new(nil, Remote.server)
|
43
|
+
remote = DRbObject.new(nil, Remote.server(self.host))
|
40
44
|
|
41
45
|
until remote.started?
|
42
46
|
sleep 0.01
|
@@ -5,9 +5,9 @@ module MiniProxy
|
|
5
5
|
# MiniProxy fake SSL enabled server, which receives relayed requests from the ProxyServer
|
6
6
|
#
|
7
7
|
class FakeSSLServer < WEBrick::HTTPServer
|
8
|
-
ALLOWED_HOSTS = ["127.0.0.1", "localhost"].freeze
|
9
|
-
|
10
8
|
def initialize(config = {}, default = WEBrick::Config::HTTP)
|
9
|
+
@allowed_hosts = ["127.0.0.1", "localhost", config[:MiniProxyHost]].compact
|
10
|
+
|
11
11
|
config = config.merge({
|
12
12
|
Logger: WEBrick::Log.new(nil, 0), # silence logging
|
13
13
|
AccessLog: [], # silence logging
|
@@ -21,7 +21,7 @@ module MiniProxy
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def service(req, res)
|
24
|
-
if
|
24
|
+
if @allowed_hosts.include?(req.host)
|
25
25
|
super(req, res)
|
26
26
|
else
|
27
27
|
self.config[:MockHandlerCallback].call(req, res)
|
@@ -4,11 +4,11 @@ module MiniProxy
|
|
4
4
|
# MiniProxy server, which boots a WEBrick proxy server
|
5
5
|
#
|
6
6
|
class ProxyServer < WEBrick::HTTPProxyServer
|
7
|
-
ALLOWED_HOSTS = ["127.0.0.1", "localhost"].freeze
|
8
|
-
|
9
7
|
attr_accessor :requests
|
10
8
|
|
11
9
|
def initialize(config = {}, default = WEBrick::Config::HTTP)
|
10
|
+
@allowed_hosts = ["127.0.0.1", "localhost", config[:MiniProxyHost]].compact
|
11
|
+
|
12
12
|
config = config.merge({
|
13
13
|
Logger: WEBrick::Log.new(nil, 0), # silence logging
|
14
14
|
AccessLog: [], # silence logging
|
@@ -36,7 +36,7 @@ module MiniProxy
|
|
36
36
|
end
|
37
37
|
|
38
38
|
def service(req, res)
|
39
|
-
if
|
39
|
+
if @allowed_hosts.include?(req.host)
|
40
40
|
super(req, res)
|
41
41
|
else
|
42
42
|
if req.request_method == "CONNECT"
|
data/lib/miniproxy/remote.rb
CHANGED
@@ -20,7 +20,7 @@ module MiniProxy
|
|
20
20
|
false
|
21
21
|
end
|
22
22
|
|
23
|
-
def self.server
|
23
|
+
def self.server(host = "127.0.0.1")
|
24
24
|
@unix_socket_uri ||= begin
|
25
25
|
tempfile = Tempfile.new("mini_proxy")
|
26
26
|
socket_path = tempfile.path
|
@@ -37,6 +37,7 @@ module MiniProxy
|
|
37
37
|
begin
|
38
38
|
fake_server_port = SERVER_DYNAMIC_PORT_RANGE.sample
|
39
39
|
fake_server = FakeSSLServer.new(
|
40
|
+
MiniProxyHost: host,
|
40
41
|
Port: fake_server_port,
|
41
42
|
MockHandlerCallback: remote.method(:handler),
|
42
43
|
)
|
@@ -48,6 +49,7 @@ module MiniProxy
|
|
48
49
|
begin
|
49
50
|
remote.port = ENV["MINI_PROXY_PORT"] || SERVER_DYNAMIC_PORT_RANGE.sample
|
50
51
|
proxy = MiniProxy::ProxyServer.new(
|
52
|
+
MiniProxyHost: host,
|
51
53
|
Port: remote.port,
|
52
54
|
FakeServerPort: fake_server_port,
|
53
55
|
MockHandlerCallback: remote.method(:handler),
|
data/lib/miniproxy/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: miniproxy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The Conversation Dev Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-07-
|
11
|
+
date: 2018-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|