- Timestamp:
- Aug 11, 2020, 8:24:54 AM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/upstream.go
r369 r381 99 99 case "ircs": 100 100 addr := u.Host 101 if _, _, err := net.SplitHostPort(addr); err != nil { 102 addr = addr + ":6697" 101 host, _, err := net.SplitHostPort(u.Host) 102 if err != nil { 103 host = u.Host 104 addr = u.Host + ":6697" 103 105 } 104 106 105 107 logger.Printf("connecting to TLS server at address %q", addr) 106 108 107 var tlsConfig *tls.Config109 tlsConfig := &tls.Config{ServerName: host} 108 110 if network.SASL.Mechanism == "EXTERNAL" { 109 111 if network.SASL.External.CertBlob == nil { … … 117 119 return nil, fmt.Errorf("failed to parse private key: %v", err) 118 120 } 119 tlsConfig = &tls.Config{ 120 Certificates: []tls.Certificate{ 121 { 122 Certificate: [][]byte{network.SASL.External.CertBlob}, 123 PrivateKey: key.(crypto.PrivateKey), 124 }, 121 tlsConfig.Certificates = []tls.Certificate{ 122 { 123 Certificate: [][]byte{network.SASL.External.CertBlob}, 124 PrivateKey: key.(crypto.PrivateKey), 125 125 }, 126 126 } … … 128 128 } 129 129 130 netConn, err = tls.DialWithDialer(&dialer, "tcp", addr, tlsConfig)130 netConn, err = dialer.Dial("tcp", addr) 131 131 if err != nil { 132 132 return nil, fmt.Errorf("failed to dial %q: %v", addr, err) 133 133 } 134 135 // Don't do the TLS handshake immediately, because we need to register 136 // the new connection with identd ASAP. See: 137 // https://todo.sr.ht/~emersion/soju/69#event-41859 138 netConn = tls.Client(netConn, tlsConfig) 134 139 case "irc+insecure": 135 140 addr := u.Host
Note:
See TracChangeset
for help on using the changeset viewer.