mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-29 04:55:31 +00:00
Revert "cmd/tailscaled, ipn/{ipnlocal,ipnserver}: let netstack get access to LocalBackend"
This reverts commit2bc518dcb2
. @namansood didn't end up needing it in his770aa71ffb
.
This commit is contained in:
parent
9eb65601ef
commit
27c4dd9a97
@ -29,7 +29,6 @@
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/go-multierror/multierror"
|
"github.com/go-multierror/multierror"
|
||||||
"tailscale.com/ipn/ipnlocal"
|
|
||||||
"tailscale.com/ipn/ipnserver"
|
"tailscale.com/ipn/ipnserver"
|
||||||
"tailscale.com/logpolicy"
|
"tailscale.com/logpolicy"
|
||||||
"tailscale.com/net/socks5"
|
"tailscale.com/net/socks5"
|
||||||
@ -228,8 +227,6 @@ func run() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
localBEFuture := ipnlocal.NewLocalBackendFuture()
|
|
||||||
|
|
||||||
var ns *netstack.Impl
|
var ns *netstack.Impl
|
||||||
if useNetstack {
|
if useNetstack {
|
||||||
tunDev, magicConn := e.(wgengine.InternalsGetter).GetInternals()
|
tunDev, magicConn := e.(wgengine.InternalsGetter).GetInternals()
|
||||||
@ -301,7 +298,6 @@ func run() error {
|
|||||||
LegacyConfigPath: paths.LegacyConfigPath(),
|
LegacyConfigPath: paths.LegacyConfigPath(),
|
||||||
SurviveDisconnects: true,
|
SurviveDisconnects: true,
|
||||||
DebugMux: debugMux,
|
DebugMux: debugMux,
|
||||||
OnBackendCreated: localBEFuture.Set,
|
|
||||||
}
|
}
|
||||||
err = ipnserver.Run(ctx, logf, pol.PublicID.String(), ipnserver.FixedEngine(e), opts)
|
err = ipnserver.Run(ctx, logf, pol.PublicID.String(), ipnserver.FixedEngine(e), opts)
|
||||||
// Cancelation is not an error: it is the only way to stop ipnserver.
|
// Cancelation is not an error: it is the only way to stop ipnserver.
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
// Copyright (c) 2021 Tailscale Inc & AUTHORS All rights reserved.
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
package ipnlocal
|
|
||||||
|
|
||||||
import "sync"
|
|
||||||
|
|
||||||
// LocalBackendFuture is a Future that returns a *LocalBackend.
|
|
||||||
type LocalBackendFuture struct {
|
|
||||||
getOnce sync.Once
|
|
||||||
ch chan *LocalBackend
|
|
||||||
v *LocalBackend
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *LocalBackendFuture) Get() *LocalBackend {
|
|
||||||
f.getOnce.Do(f.get)
|
|
||||||
return f.v
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *LocalBackendFuture) get() { f.v = <-f.ch }
|
|
||||||
func (f *LocalBackendFuture) Set(v *LocalBackend) { f.ch <- v }
|
|
||||||
|
|
||||||
func NewLocalBackendFuture() *LocalBackendFuture {
|
|
||||||
return &LocalBackendFuture{
|
|
||||||
ch: make(chan *LocalBackend, 1),
|
|
||||||
}
|
|
||||||
}
|
|
@ -92,10 +92,6 @@ type Options struct {
|
|||||||
// DebugMux, if non-nil, specifies an HTTP ServeMux in which
|
// DebugMux, if non-nil, specifies an HTTP ServeMux in which
|
||||||
// to register a debug handler.
|
// to register a debug handler.
|
||||||
DebugMux *http.ServeMux
|
DebugMux *http.ServeMux
|
||||||
|
|
||||||
// OnBackendCreated, if non-nil, is called once when the LocalBackend
|
|
||||||
// is created.
|
|
||||||
OnBackendCreated func(*ipnlocal.LocalBackend)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// server is an IPN backend and its set of 0 or more active connections
|
// server is an IPN backend and its set of 0 or more active connections
|
||||||
@ -743,10 +739,6 @@ func Run(ctx context.Context, logf logger.Logf, logid string, getEngine func() (
|
|||||||
return smallzstd.NewDecoder(nil)
|
return smallzstd.NewDecoder(nil)
|
||||||
})
|
})
|
||||||
|
|
||||||
if opts.OnBackendCreated != nil {
|
|
||||||
opts.OnBackendCreated(b)
|
|
||||||
}
|
|
||||||
|
|
||||||
if opts.DebugMux != nil {
|
if opts.DebugMux != nil {
|
||||||
opts.DebugMux.HandleFunc("/debug/ipn", func(w http.ResponseWriter, r *http.Request) {
|
opts.DebugMux.HandleFunc("/debug/ipn", func(w http.ResponseWriter, r *http.Request) {
|
||||||
serveHTMLStatus(w, b)
|
serveHTMLStatus(w, b)
|
||||||
|
Loading…
Reference in New Issue
Block a user