@@ -237,8 +237,8 @@ func (h *socks5) pid() (x string) {
237237 return
238238}
239239
240- func (h * socks5 ) route (network , src , dst string ) * Tab {
241- return h .listener .Route (h .id , h .pid (), network , src , dst )
240+ func (h * socks5 ) route (network , src , dst string ) * x. Tab {
241+ return h .listener .SvcRoute (h .id , h .pid (), network , src , dst )
242242}
243243
244244func (h * socks5 ) candial () error {
@@ -260,7 +260,7 @@ func (h *socks5) setDeadline(c net.Conn, secs int) error {
260260}
261261
262262type pipefin struct {
263- ex int // bytes exchanged
263+ ex int64 // bytes exchanged
264264 err error // error, if any
265265}
266266
@@ -272,7 +272,7 @@ func (h *socks5) pipe(r, w net.Conn, finch chan<- pipefin) {
272272 * bptr = bf
273273 core .Recycle (bptr )
274274 }()
275- ex := 0
275+ ex := int64 ( 0 )
276276 laddr := r .LocalAddr ()
277277 raddr := w .RemoteAddr ()
278278 for {
@@ -281,7 +281,7 @@ func (h *socks5) pipe(r, w net.Conn, finch chan<- pipefin) {
281281 break
282282 }
283283 n , err := r .Read (bf [:])
284- ex += n
284+ ex += int64 ( n )
285285 if err != nil {
286286 log .E ("svcsocks5: tcp: %s; read %s; err: %v" , h .ID (), laddr , err )
287287 finch <- pipefin {ex , err }
@@ -304,10 +304,10 @@ func (h *socks5) tcphandle(s *tx.Server, ingress *net.TCPConn, r *tx.Request) (e
304304 var cid string
305305 var egress * net.TCPConn
306306 cid , egress , err = h .Connect (r , ingress )
307- summary := serverSummary (h .Type (), h .ID (), h .pid (), cid )
307+ ssu := serverSummary (h .Type (), h .ID (), h .pid (), cid )
308308 defer func () {
309- summary .done (err )
310- go h .listener .OnComplete ( summary )
309+ ssu .done (err )
310+ go h .listener .OnSvcComplete ( ssu . ServerSummary )
311311 }()
312312
313313 log .D ("svcsocks5: proxy-tcp: %s; socks5-connect %s" , cid , r .Address ())
@@ -329,8 +329,8 @@ func (h *socks5) tcphandle(s *tx.Server, ingress *net.TCPConn, r *tx.Request) (e
329329
330330 err = core .JoinErr (finrx .err , fintx .err )
331331
332- summary .Rx = finrx .ex
333- summary .Tx = fintx .ex
332+ ssu .Rx = finrx .ex
333+ ssu .Tx = fintx .ex
334334
335335 return err
336336 }
@@ -386,7 +386,7 @@ func (h *socks5) udphandle(s *tx.Server, addr *net.UDPAddr, pkt *tx.Datagram) (e
386386 // writing to egress conn
387387 n , werr := egress .RemoteConn .Write (data )
388388 if ssu != nil {
389- ssu .Tx += n
389+ ssu .Tx += int64 ( n )
390390 }
391391 log .D ("svcsocks5: udp: %s; data sent; (err: %v / summary? %t)? client: %s server: %s remote: %s sz: %d" , cid , werr , ssu != nil , uecaddr , ueladdr , ueraddr , n )
392392 if werr != nil {
@@ -409,7 +409,7 @@ func (h *socks5) udphandle(s *tx.Server, addr *net.UDPAddr, pkt *tx.Datagram) (e
409409 ssu := serverSummary (h .Type (), h .ID (), h .pid (), cid )
410410 defer func () {
411411 ssu .done (err )
412- go h .listener .OnComplete (ssu )
412+ go h .listener .OnSvcComplete (ssu . ServerSummary )
413413 }()
414414
415415 log .D ("svcsocks5: udp: %s; dst %s" , cid , dst )
@@ -473,7 +473,7 @@ func (h *socks5) udphandle(s *tx.Server, addr *net.UDPAddr, pkt *tx.Datagram) (e
473473 log .E ("svcsocks5: udp: %s; read err: %v" , cid , err )
474474 return
475475 }
476- ssu .Rx += n
476+ ssu .Rx += int64 ( n )
477477 log .D ("svcsocks5: udp: %s; got data; client: %s server: %s remote: %s data: %d" , cid , uecaddr , ueladdr , ueraddr , n )
478478 a , addr , port , err := tx .ParseAddress (dst )
479479 if err != nil {
0 commit comments