Add support for TLS/TCP
This commit is contained in:
parent
476833709e
commit
b3dc633abe
21
dial.go
21
dial.go
@ -18,12 +18,21 @@ type Dialer struct {
|
|||||||
TLSConfig *tls.Config
|
TLSConfig *tls.Config
|
||||||
}
|
}
|
||||||
|
|
||||||
// Dial opens a connection to a server. The network must be one of "quic",
|
// Dial opens a connection to a server. The network must be one of:
|
||||||
// "quic4", (IPv4-only) "quic6" (IPv6-only), or "unix". For now, quic is not
|
//
|
||||||
// supported.
|
// - "quic"
|
||||||
|
// - "quic4" (IPv4-only)
|
||||||
|
// - "quic6" (IPv6-only)
|
||||||
|
// - "tcp"
|
||||||
|
// - "tcp4" (IPv4-only)
|
||||||
|
// - "tcp6" (IPv6-only)
|
||||||
|
// - "unix"
|
||||||
|
//
|
||||||
|
// For now, QUIC is unsupported.
|
||||||
func (diale Dialer) Dial(ctx context.Context, network, address string) (Conn, error) {
|
func (diale Dialer) Dial(ctx context.Context, network, address string) (Conn, error) {
|
||||||
switch network {
|
switch network {
|
||||||
case "quic", "quic4", "quic6": return diale.dialQUIC(ctx, network, address)
|
case "quic", "quic4", "quic6": return diale.dialQUIC(ctx, network, address)
|
||||||
|
case "tcp", "tcp4", "tcp6": return diale.dialTLS(ctx, network, address)
|
||||||
case "unix": return diale.dialUnix(ctx, network, address)
|
case "unix": return diale.dialUnix(ctx, network, address)
|
||||||
default: return nil, ErrUnknownNetwork
|
default: return nil, ErrUnknownNetwork
|
||||||
}
|
}
|
||||||