Update tailscale to v1.92.4

This commit is contained in:
世界
2025-12-25 15:49:12 +08:00
parent 4273ffa77e
commit 511d1bb3fa
3 changed files with 24 additions and 46 deletions

View File

@@ -39,6 +39,7 @@ import (
"github.com/sagernet/tailscale/client/local"
"github.com/sagernet/tailscale/derp"
"github.com/sagernet/tailscale/derp/derphttp"
"github.com/sagernet/tailscale/derp/derpserver"
"github.com/sagernet/tailscale/net/netmon"
"github.com/sagernet/tailscale/net/stun"
"github.com/sagernet/tailscale/net/wsconn"
@@ -62,7 +63,7 @@ type Service struct {
listener *listener.Listener
stunListener *listener.Listener
tlsConfig tls.ServerConfig
server *derp.Server
server *derpserver.Server
configPath string
verifyClientEndpoint []string
verifyClientURL []*option.DERPVerifyClientURLOptions
@@ -141,7 +142,7 @@ func (d *Service) Start(stage adapter.StartStage) error {
return err
}
server := derp.NewServer(config.PrivateKey, func(format string, args ...any) {
server := derpserver.New(config.PrivateKey, func(format string, args ...any) {
d.logger.Debug(fmt.Sprintf(format, args...))
})
@@ -193,7 +194,7 @@ func (d *Service) Start(stage adapter.StartStage) error {
d.server = server
derpMux := http.NewServeMux()
derpHandler := derphttp.Handler(server)
derpHandler := derpserver.Handler(server)
derpHandler = addWebSocketSupport(server, derpHandler)
derpMux.Handle("/derp", derpHandler)
@@ -202,8 +203,8 @@ func (d *Service) Start(stage adapter.StartStage) error {
return E.New("invalid home value: ", d.home)
}
derpMux.HandleFunc("/derp/probe", derphttp.ProbeHandler)
derpMux.HandleFunc("/derp/latency-check", derphttp.ProbeHandler)
derpMux.HandleFunc("/derp/probe", derpserver.ProbeHandler)
derpMux.HandleFunc("/derp/latency-check", derpserver.ProbeHandler)
derpMux.HandleFunc("/bootstrap-dns", tsweb.BrowserHeaderHandlerFunc(handleBootstrapDNS(d.ctx)))
derpMux.Handle("/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
tsweb.AddBrowserHeaders(w)
@@ -213,7 +214,7 @@ func (d *Service) Start(stage adapter.StartStage) error {
tsweb.AddBrowserHeaders(w)
io.WriteString(w, "User-agent: *\nDisallow: /\n")
}))
derpMux.Handle("/generate_204", http.HandlerFunc(derphttp.ServeNoContent))
derpMux.Handle("/generate_204", http.HandlerFunc(derpserver.ServeNoContent))
err = d.tlsConfig.Start()
if err != nil {
@@ -289,7 +290,7 @@ func checkMeshKey(meshKey string) error {
return nil
}
func (d *Service) startMeshWithHost(derpServer *derp.Server, server *option.DERPMeshOptions) error {
func (d *Service) startMeshWithHost(derpServer *derpserver.Server, server *option.DERPMeshOptions) error {
meshDialer, err := dialer.NewWithOptions(dialer.Options{
Context: d.ctx,
Options: server.DialerOptions,
@@ -400,7 +401,7 @@ func getHomeHandler(val string) (_ http.Handler, ok bool) {
return nil, false
}
func addWebSocketSupport(s *derp.Server, base http.Handler) http.Handler {
func addWebSocketSupport(s *derpserver.Server, base http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
up := strings.ToLower(r.Header.Get("Upgrade"))