2023-01-27 13:37:20 -08:00
|
|
|
// Copyright (c) Tailscale Inc & AUTHORS
|
|
|
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
2022-04-19 15:33:29 -07:00
|
|
|
|
|
|
|
|
//go:build linux
|
|
|
|
|
|
|
|
|
|
package tshttpproxy
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"net/http"
|
|
|
|
|
"net/url"
|
|
|
|
|
|
2025-09-30 09:12:42 -07:00
|
|
|
"tailscale.com/feature/buildfeatures"
|
2022-04-19 15:33:29 -07:00
|
|
|
"tailscale.com/version/distro"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
|
sysProxyFromEnv = linuxSysProxyFromEnv
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func linuxSysProxyFromEnv(req *http.Request) (*url.URL, error) {
|
2025-09-30 09:12:42 -07:00
|
|
|
if buildfeatures.HasSynology && distro.Get() == distro.Synology {
|
2022-04-19 15:33:29 -07:00
|
|
|
return synologyProxyFromConfigCached(req)
|
|
|
|
|
}
|
|
|
|
|
return nil, nil
|
|
|
|
|
}
|