~stepbrobd/tailscale

d4222fae95c04102e75dbf97a8c3517a136881a4 — Brad Fitzpatrick a month ago 45da3a4
tsnet: add accessor to get tsd.System

Pulled of otherwise unrelated PR #13884.

Updates tailscale/corp#22075

Change-Id: I5b539fcb4aca1b93406cf139c719a5e3c64ff7f7
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
1 files changed, 9 insertions(+), 0 deletions(-)

M tsnet/tsnet.go
M tsnet/tsnet.go => tsnet/tsnet.go +9 -0
@@ 126,6 126,7 @@ type Server struct {
	initOnce         sync.Once
	initErr          error
	lb               *ipnlocal.LocalBackend
	sys              *tsd.System
	netstack         *netstack.Impl
	netMon           *netmon.Monitor
	rootPath         string // the state directory


@@ 518,6 519,7 @@ func (s *Server) start() (reterr error) {
	}

	sys := new(tsd.System)
	s.sys = sys
	if err := s.startLogger(&closePool, sys.HealthTracker(), tsLogf); err != nil {
		return err
	}


@@ 1227,6 1229,13 @@ func (s *Server) CapturePcap(ctx context.Context, pcapFile string) error {
	return nil
}

// Sys returns a handle to the Tailscale subsystems of this node.
//
// This is not a stable API, nor are the APIs of the returned subsystems.
func (s *Server) Sys() *tsd.System {
	return s.sys
}

type listenKey struct {
	network string
	host    netip.Addr // or zero value for unspecified