xjasonlyu/tun2socks

View on GitHub
proxy/relay.go

Summary

Maintainability
A
2 hrs
Test Coverage

Method Relay.dialContext has 54 lines of code (exceeds 50 allowed). Consider refactoring.
Open

func (rl *Relay) dialContext(ctx context.Context, metadata *M.Metadata) (rc *relayConn, err error) {
    var c net.Conn

    c, err = dialer.DialContext(ctx, "tcp", rl.Addr())
    if err != nil {
Severity: Minor
Found in proxy/relay.go - About 1 hr to fix

    Method Relay.dialContext has 7 return statements (exceeds 4 allowed).
    Open

    func (rl *Relay) dialContext(ctx context.Context, metadata *M.Metadata) (rc *relayConn, err error) {
        var c net.Conn
    
        c, err = dialer.DialContext(ctx, "tcp", rl.Addr())
        if err != nil {
    Severity: Major
    Found in proxy/relay.go - About 45 mins to fix

      Method relayConn.Read has 5 return statements (exceeds 4 allowed).
      Open

      func (rc *relayConn) Read(b []byte) (n int, err error) {
          rc.once.Do(func() {
              if rc.wbuf != nil {
                  err = readRelayResponse(rc.Conn)
              }
      Severity: Major
      Found in proxy/relay.go - About 35 mins to fix

        There are no issues that match your filters.

        Category
        Status