girl 0.73.1 → 0.74.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 +4 -4
- data/lib/girl/proxy_worker.rb +19 -17
- data/lib/girl/proxyd_worker.rb +13 -12
- data/lib/girl/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: '094ccee84b18d04b1061a8c29663acabd184ac524437b2347b34a30cb14a5880'
|
4
|
+
data.tar.gz: 37ef3aa95152d92cf36609eb32bb6658780fea3927ea1b30e062029e7ef1de10
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '095868fe1a0d43435db1f8c461f09abd28114cac5f99494a02c5062ede1c476589b623c453e852ca2674727ff9e371c17d5ddc1cce46a408a085ef71c75fcaeb'
|
7
|
+
data.tar.gz: 7a1190902d3f2ef39965f2154d91ab15cabe63adae1613a3ad745a14cd2f46b3c70a3f06174dbda5929af6dd57970a9ca5085c521fd00dcefeaf9009a6fbad16
|
data/lib/girl/proxy_worker.rb
CHANGED
@@ -113,7 +113,7 @@ module Girl
|
|
113
113
|
|
114
114
|
@tun_info[ :src_exts ].each do | src_id, src_ext |
|
115
115
|
if src_ext[ :src ].closed? && ( now - src_ext[ :last_continue_at ] > EXPIRE_AFTER )
|
116
|
-
puts "p#{ Process.pid } #{ Time.new } expire src ext #{
|
116
|
+
puts "p#{ Process.pid } #{ Time.new } expire src ext #{ src_ext[ :destination_domain ] }"
|
117
117
|
del_src_ext( src_id )
|
118
118
|
end
|
119
119
|
end
|
@@ -124,7 +124,7 @@ module Girl
|
|
124
124
|
|
125
125
|
@src_infos.each do | src, src_info |
|
126
126
|
if now - src_info[ :last_continue_at ] > EXPIRE_AFTER
|
127
|
-
puts "p#{ Process.pid } #{ Time.new } expire src"
|
127
|
+
puts "p#{ Process.pid } #{ Time.new } expire src #{ src_info[ :destination_domain ] }"
|
128
128
|
set_is_closing( src )
|
129
129
|
need_trigger = true
|
130
130
|
end
|
@@ -393,27 +393,29 @@ module Girl
|
|
393
393
|
new_a_tun
|
394
394
|
end
|
395
395
|
|
396
|
+
src_info = @src_infos[ src ]
|
397
|
+
src_id = src_info[ :id ]
|
398
|
+
destination_port = src_info[ :destination_port ]
|
399
|
+
destination_domain = src_info[ :destination_domain ]
|
400
|
+
|
396
401
|
src_ext = {
|
397
|
-
src: src,
|
398
|
-
dst_port: nil,
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
402
|
+
src: src, # src
|
403
|
+
dst_port: nil, # 远端dst端口
|
404
|
+
destination_domain: destination_domain, # 目的地域名
|
405
|
+
wmems: {}, # 写后 pack_id => data
|
406
|
+
send_ats: {}, # 上一次发出时间 pack_id => send_at
|
407
|
+
relay_pack_id: 0, # 转发到几
|
408
|
+
continue_dst_pack_id: 0, # 收到几
|
409
|
+
pieces: {}, # 跳号包 dst_pack_id => data
|
410
|
+
is_dst_closed: false, # dst是否已关闭
|
411
|
+
biggest_dst_pack_id: 0, # dst最大包号码
|
412
|
+
completed_pack_id: 0, # 完成到几(对面收到几)
|
413
|
+
last_continue_at: Time.new # 上一次发生流量的时间
|
408
414
|
}
|
409
415
|
|
410
|
-
src_info = @src_infos[ src ]
|
411
|
-
src_id = src_info[ :id ]
|
412
416
|
@tun_info[ :src_exts ][ src_id ] = src_ext
|
413
417
|
src_info[ :proxy_type ] = :tunnel
|
414
418
|
|
415
|
-
destination_port = src_info[ :destination_port ]
|
416
|
-
destination_domain = src_info[ :destination_domain ]
|
417
419
|
destination_domain_port = [ destination_domain, destination_port ].join( ':' )
|
418
420
|
data = [ [ 0, A_NEW_SOURCE, src_id ].pack( 'Q>CQ>' ), @custom.encode( destination_domain_port ) ].join
|
419
421
|
loop_send_a_new_source( src_ext, data )
|
data/lib/girl/proxyd_worker.rb
CHANGED
@@ -112,7 +112,7 @@ module Girl
|
|
112
112
|
|
113
113
|
tund_info[ :dst_exts ].each do | dst_local_port, dst_ext |
|
114
114
|
if dst_ext[ :dst ].closed? && ( now - dst_ext[ :last_continue_at ] > EXPIRE_AFTER )
|
115
|
-
puts "p#{ Process.pid } #{ Time.new } expire dst ext #{
|
115
|
+
puts "p#{ Process.pid } #{ Time.new } expire dst ext #{ dst_ext[ :domain_port ] }"
|
116
116
|
del_dst_ext( tund, dst_local_port )
|
117
117
|
end
|
118
118
|
end
|
@@ -264,17 +264,18 @@ module Girl
|
|
264
264
|
tund_info = @tund_infos[ tund ]
|
265
265
|
tund_info[ :dst_local_ports ][ src_id ] = local_port
|
266
266
|
tund_info[ :dst_exts ][ local_port ] = {
|
267
|
-
dst: dst,
|
268
|
-
src_id: src_id,
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
267
|
+
dst: dst, # dst
|
268
|
+
src_id: src_id, # 近端src id
|
269
|
+
domain_port: destination_domain_port, # 域名和端口
|
270
|
+
wmems: {}, # 写后 pack_id => data
|
271
|
+
send_ats: {}, # 上一次发出时间 pack_id => send_at
|
272
|
+
relay_pack_id: 0, # 转发到几
|
273
|
+
continue_src_pack_id: 0, # 收到几
|
274
|
+
pieces: {}, # 跳号包 src_pack_id => data
|
275
|
+
is_src_closed: false, # src是否已关闭
|
276
|
+
biggest_src_pack_id: 0, # src最大包号码
|
277
|
+
completed_pack_id: 0, # 完成到几(对面收到几)
|
278
|
+
last_continue_at: Time.new # 上一次发生流量的时间
|
278
279
|
}
|
279
280
|
|
280
281
|
data = [ 0, PAIRED, src_id, local_port ].pack( 'Q>CQ>n' )
|
data/lib/girl/version.rb
CHANGED
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.
|
4
|
+
version: 0.74.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-07-
|
11
|
+
date: 2020-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: while internet is evil, here's a girl.
|
14
14
|
email:
|