Projects STRLCPY tun2socks Commits ce15b1b2
🤬
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
  • ■ ■ ■ ■ ■
    tunnel/statistic/tracker.go
    skipped 29 lines
    30 30   manager *Manager
    31 31  }
    32 32   
    33  -func NewTCPTracker(conn net.Conn, metadata *M.Metadata, manager *Manager) *tcpTracker {
     33 +func NewTCPTracker(conn net.Conn, metadata *M.Metadata, manager *Manager) net.Conn {
    34 34   id, _ := uuid.NewRandom()
    35 35   
    36 36   tt := &tcpTracker{
    skipped 10 lines
    47 47   
    48 48   manager.Join(tt)
    49 49   return tt
     50 +}
     51 + 
     52 +// DefaultTCPTracker returns a new net.Conn(*tcpTacker) with default manager.
     53 +func DefaultTCPTracker(conn net.Conn, metadata *M.Metadata) net.Conn {
     54 + return NewTCPTracker(conn, metadata, DefaultManager)
    50 55  }
    51 56   
    52 57  func (tt *tcpTracker) ID() string {
    skipped 28 lines
    81 86   manager *Manager
    82 87  }
    83 88   
    84  -func NewUDPTracker(conn net.PacketConn, metadata *M.Metadata, manager *Manager) *udpTracker {
     89 +func NewUDPTracker(conn net.PacketConn, metadata *M.Metadata, manager *Manager) net.PacketConn {
    85 90   id, _ := uuid.NewRandom()
    86 91   
    87 92   ut := &udpTracker{
    skipped 10 lines
    98 103   
    99 104   manager.Join(ut)
    100 105   return ut
     106 +}
     107 + 
     108 +// DefaultUDPTracker returns a new net.PacketConn(*udpTacker) with default manager.
     109 +func DefaultUDPTracker(conn net.PacketConn, metadata *M.Metadata) net.PacketConn {
     110 + return NewUDPTracker(conn, metadata, DefaultManager)
    101 111  }
    102 112   
    103 113  func (ut *udpTracker) ID() string {
    skipped 24 lines
  • ■ ■ ■ ■ ■
    tunnel/tcp.go
    skipped 19 lines
    20 20   tcpWaitTimeout = 5 * time.Second
    21 21  )
    22 22   
    23  -func newTCPTracker(conn net.Conn, metadata *M.Metadata) net.Conn {
    24  - return statistic.NewTCPTracker(conn, metadata, statistic.DefaultManager)
    25  -}
    26  - 
    27 23  func handleTCPConn(localConn adapter.TCPConn) {
    28 24   defer localConn.Close()
    29 25   
    skipped 13 lines
    43 39   }
    44 40   metadata.MidIP, metadata.MidPort = parseAddr(targetConn.LocalAddr())
    45 41   
    46  - targetConn = newTCPTracker(targetConn, metadata)
     42 + targetConn = statistic.DefaultTCPTracker(targetConn, metadata)
    47 43   defer targetConn.Close()
    48 44   
    49 45   log.Infof("[TCP] %s <-> %s", metadata.SourceAddress(), metadata.DestinationAddress())
    skipped 54 lines
  • ■ ■ ■ ■ ■
    tunnel/udp.go
    skipped 21 lines
    22 22   _udpSessionTimeout = t
    23 23  }
    24 24   
    25  -func newUDPTracker(conn net.PacketConn, metadata *M.Metadata) net.PacketConn {
    26  - return statistic.NewUDPTracker(conn, metadata, statistic.DefaultManager)
    27  -}
    28  - 
    29 25  // TODO: Port Restricted NAT support.
    30 26  func handleUDPConn(uc adapter.UDPConn) {
    31 27   defer uc.Close()
    skipped 14 lines
    46 42   }
    47 43   metadata.MidIP, metadata.MidPort = parseAddr(pc.LocalAddr())
    48 44   
    49  - pc = newUDPTracker(pc, metadata)
     45 + pc = statistic.DefaultUDPTracker(pc, metadata)
    50 46   defer pc.Close()
    51 47   
    52 48   var remote net.Addr
    skipped 86 lines
Please wait...
Page is in error, reload to recover