MCPcopy Create free account
hub / github.com/coder/wush / DERPMapTailscale

Function DERPMapTailscale

tsserver/server.go:46–65  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

44)
45
46func DERPMapTailscale(ctx context.Context) (*tailcfg.DERPMap, error) {
47 req, err := http.NewRequestWithContext(ctx, "GET", "https://controlplane.tailscale.com/derpmap/default", nil)
48 if err != nil {
49 return nil, fmt.Errorf("make ts derpmap req: %w", err)
50 }
51
52 res, err := http.DefaultClient.Do(req)
53 if err != nil {
54 return nil, fmt.Errorf("get ts derpmap: %w", err)
55 }
56 defer res.Body.Close()
57
58 dm := &tailcfg.DERPMap{}
59 err = json.NewDecoder(res.Body).Decode(dm)
60 if err != nil {
61 return nil, fmt.Errorf("decode ts derpmap: %w", err)
62 }
63
64 return dm, nil
65}
66
67func NewServer(ctx context.Context, logger *slog.Logger, ov overlay.Overlay, dm *tailcfg.DERPMap) (*server, error) {
68 s := &server{

Callers 3

newWushFunction · 0.92
derpMapFunction · 0.92
rsyncCmdFunction · 0.92

Calls 1

CloseMethod · 0.45

Tested by

no test coverage detected