Skip to content
File

Blob: cmd/client/dialer.go

go42 lines
1package client
2 
3import (
4 "context"
5 "net"
6 
7 "go.miragespace.co/specter/tun/client/dialer"
8 
9 "github.com/urfave/cli/v3"
10 "go.uber.org/zap"
11)
12 
13func tlsDialer(ctx context.Context, cmd *cli.Command, logger *zap.Logger, parsed *dialer.ParsedApex, norebootstrap bool) (net.Addr, dialer.TransportDialer, error) {
14 // used in integration test
15 dialerCtx := ctx
16 if v, ok := cmd.Root().Metadata["connectOverride"]; ok {
17 dialerCtx = dialer.WithServerNameOverride(ctx, v.(string))
18 }
19 
20 return dialer.TLSDialer(dialerCtx, dialer.DialerConfig{
21 Logger: logger,
22 Parsed: parsed,
23 InsecureSkipVerify: cmd.Bool("insecure"),
24 NoReconnection: norebootstrap,
25 })
26}
27 
28func quicDialer(ctx context.Context, cmd *cli.Command, logger *zap.Logger, parsed *dialer.ParsedApex, norebootstrap bool) (net.Addr, dialer.TransportDialer, error) {
29 // used in integration test
30 dialerCtx := ctx
31 if v, ok := cmd.Root().Metadata["connectOverride"]; ok {
32 dialerCtx = dialer.WithServerNameOverride(ctx, v.(string))
33 }
34 
35 return dialer.QuicDialer(dialerCtx, dialer.DialerConfig{
36 Logger: logger,
37 Parsed: parsed,
38 InsecureSkipVerify: cmd.Bool("insecure"),
39 NoReconnection: norebootstrap,
40 })
41}