girl 0.61.0 → 0.62.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of girl might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c43d66efd27844b45b294a58757f9048b73aec8722d3285a642bb03e02a70ba8
4
- data.tar.gz: f79ac7e41ccda330001c63bce9b20f611ca388f8da374bdfd66fd5c3a773e3e5
3
+ metadata.gz: f3597360a30c0ba1226ed9fdeef1faf10687bbfc48ac58c07c063c5e6888dd50
4
+ data.tar.gz: 7d7429c890f3090c53b57c61587a4f03351d4e68775e310acd174baf91adfa74
5
5
  SHA512:
6
- metadata.gz: cead94f72a7167968a5f506d0a1d80e7cf01d95465be839c1e26b63ef69ae9aef044837ef4777a9d352f154a12a7776606ed89bd05650a6030e0c4e849fbc366
7
- data.tar.gz: 70548cfa8185971f22a9f3f1b70e3efd867e3a76c0f430cf466b2af042ef8b5bad5078129dea7d55de4f92f949a7c707581c59e39c85b461e59395b84c0fc8ac
6
+ metadata.gz: f0e09919d82be7c07a3342199af626487cdde4527e799609ec561fc9bef29929a616a075dbc10ce31656c00c7c5aab4311223edbf7ea45cf70e9798f0bc5f20e
7
+ data.tar.gz: 979e305bb9c5f9e846271ff9d9c1bb01438ca6714e96a95ab7b588493968aa5d25dccfda5ee4d36d288570034e655ac0c113a4e935fcc3410be23d091d74ea56
@@ -454,7 +454,13 @@ module Girl
454
454
  # sub http request
455
455
  #
456
456
  def sub_http_request( data )
457
- method, url, proto = data.split( "\r\n" ).first.split( ' ' )
457
+ lines = data.split( "\r\n" )
458
+
459
+ if lines.empty?
460
+ return [ data, nil ]
461
+ end
462
+
463
+ method, url, proto = lines.first.split( ' ' )
458
464
 
459
465
  if proto && url && proto[ 0, 4 ] == 'HTTP' && url[ 0, 7 ] == 'http://'
460
466
  domain_and_port = url.split( '/' )[ 2 ]
@@ -1012,6 +1018,12 @@ module Girl
1012
1018
  if data[ 0, 7 ] == 'CONNECT'
1013
1019
  # puts "debug1 CONNECT"
1014
1020
  domain_and_port = data.split( "\r\n" )[ 0 ].split( ' ' )[ 1 ]
1021
+
1022
+ unless domain_and_port
1023
+ puts "p#{ Process.pid } #{ Time.new } CONNECT miss domain"
1024
+ set_is_closing( src )
1025
+ return
1026
+ end
1015
1027
  elsif data[ 0 ].unpack( 'C' ).first == 5
1016
1028
  # puts "debug1 socks5 #{ data.inspect }"
1017
1029
 
@@ -1058,6 +1070,12 @@ module Girl
1058
1070
  unless domain_and_port
1059
1071
  # puts "debug1 not HTTP"
1060
1072
  domain_and_port = host_line.split( ' ' )[ 1 ]
1073
+
1074
+ unless domain_and_port
1075
+ puts "p#{ Process.pid } #{ Time.new } Host line miss domain"
1076
+ set_is_closing( src )
1077
+ return
1078
+ end
1061
1079
  end
1062
1080
 
1063
1081
  src_info[ :rbuffs ] << data
@@ -1,3 +1,3 @@
1
1
  module Girl
2
- VERSION = '0.61.0'.freeze
2
+ VERSION = '0.62.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: girl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.61.0
4
+ version: 0.62.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - takafan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-27 00:00:00.000000000 Z
11
+ date: 2020-06-09 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: while internet is evil, here's a girl.
14
14
  email: