r_socks 0.2.8 → 0.2.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f9f3daabf6b654e432702a1f8ec25cb8a31360cbd199badd407d3f8b0beb4a75
4
- data.tar.gz: 20a333f1b28ffd89094362e27b7dccd4c0b7053bd8f5e83154fd29c2485a11ab
3
+ metadata.gz: 46f22ff3b97fbaadccab67bf228ca67015b12edb0395ee8d7ef74e9b9327a591
4
+ data.tar.gz: 13f8da021a4f3693c68f1f6260a059a0dac445a37c3d602ad0e1c5bbcfb159ca
5
5
  SHA512:
6
- metadata.gz: 9cbb6b31615e0448dab30fb0eb6a6b39485415d091d8f559b01d4a60a1982496c998c45b0870971ee002b3ac4d9e0eba078b5efce546baa5909170600b525624
7
- data.tar.gz: 991c43cbb67f8f52c2ffce971bfd0e7cecdaad8a02565e0489494ac6893036e2464e5404053887f8b5cbaeca840927c698a1a41b9023afc34f41698d9c1d3fbc
6
+ metadata.gz: 30beb9843a14a9851372be0fb1cdc14677bdf2339c93dddc9a65ec2962c27d2a1dd69ca518a443040eba645d2c461943b6bb11cfdae0c1eeaaf8f1543a4dfe38
7
+ data.tar.gz: 7d43b76ad191f450fc68f7e54f04dea783c574d57e367acfbe3a781fb2586882c6f896f93009472bf15efee163aee24444d2fa13aae760550cb1705fd0824048
@@ -118,5 +118,13 @@ module RSocks
118
118
  def forward_addr=(value)
119
119
  @store[:forward_addr] = value.to_s
120
120
  end
121
+
122
+ def forward_white_list=(arr)
123
+ @store[:white_list] = arr
124
+ end
125
+
126
+ def forward_white_list
127
+ @store[:white_list] || []
128
+ end
121
129
  end
122
130
  end
@@ -26,6 +26,11 @@ module RSocks
26
26
  )
27
27
  end
28
28
  @port, @ip = Socket.unpack_sockaddr_in(get_peername)
29
+
30
+ white_list = @config.forward_white_list
31
+ if !white_list.empty? && !white_list.include?(@ip.to_s)
32
+ raise Error, "#{@ip} not in white list"
33
+ end
29
34
  rescue => e
30
35
  puts "post_init error: #{e.message}"
31
36
  close_connection
@@ -12,6 +12,7 @@ module RSocks
12
12
  @default_password = ENV['RSOCKS_PASSWORD'] || 'default'
13
13
  @adaptor = config.auth_adaptor
14
14
  @health_check_route = config.health_check_route
15
+ @need_auth = config.auth_method == :no_auth
15
16
  end
16
17
 
17
18
  def call(data)
@@ -27,9 +28,13 @@ module RSocks
27
28
  host_format_checking(temp.shift)
28
29
  generate_header(temp)
29
30
 
30
- state = auth_user
31
- raise RSocks::HttpAuthFailed unless state
32
- state
31
+ if @need_auth
32
+ state = auth_user
33
+ raise RSocks::HttpAuthFailed unless state
34
+ return state
35
+ end
36
+
37
+ true
33
38
  end
34
39
 
35
40
  def auth_user
@@ -1,3 +1,3 @@
1
1
  module RSocks
2
- VERSION = "0.2.8"
2
+ VERSION = "0.2.9"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: r_socks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick An