You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/ipn/ipnlocal
Peter A. 91d05773f7
cmd/tailscale,ipn: add Unix socket support for serve
Based on PR #16700 by @lox, adapted to current codebase.

Adds support for proxying HTTP requests to Unix domain sockets via
tailscale serve unix:/path/to/socket, enabling exposure of services
like Docker, containerd, PHP-FPM over Tailscale without TCP bridging.

Adaptations from original PR:
- Use net.Dialer.DialContext instead of net.Dial for context propagation
- Use http.Transport with Protocols API (current h2c approach, not http2.Transport)
- Resolve conflicts with hasScheme variable in ExpandProxyTargetValue

Updates #9771

Signed-off-by: Peter A. <ink.splatters@pm.me>
5 days ago
..
testdata ipn/ipnlocal: fix the path for writing cert files (#7203) 3 years ago
breaktcp_darwin.go cmd/tailscale: add debug commands to break connections 2 years ago
breaktcp_linux.go cmd/tailscale: add debug commands to break connections 2 years ago
bus.go ipn/local: add the suggested exit node to the ipn bus (#16748) 3 months ago
bus_test.go ipn/ipnlocal: add IPN Bus NotifyRateLimit watch bit NotifyRateLimit 1 year ago
c2n.go types/netmap: remove PrivateKey from NetworkMap 2 weeks ago
c2n_pprof.go ipn/ipnlocal, engine: avoid runtime/pprof with two usages of ts_omit_debug 2 months ago
c2n_test.go types/netmap,*: remove some redundant fields from NetMap 2 weeks ago
captiveportal.go feature/featuretags: add build tag to remove captive portal detection 2 months ago
cert.go syncs: add Mutex/RWMutex alias/wrappers for future mutex debugging 2 weeks ago
cert_disabled.go feature/featuretags, all: add ts_omit_acme to disable TLS cert support 3 months ago
cert_test.go ipn/ipnlocal, envknob: make it possible to configure the cert client to act in read-only mode (#15250) 9 months ago
dnsconfig_test.go types/netmap,*: remove some redundant fields from NetMap 2 weeks ago
drive.go ipn/ipnlocal: fix panic in driveTransport on network error 1 week ago
drive_test.go ipn/ipnlocal: fix panic in driveTransport on network error 1 week ago
drive_tomove.go feature/drive: start factoring out Taildrive, add ts_omit_drive build tag 3 months ago
expiry.go ipn/ipnlocal: use eventbus.SubscribeFunc in expiryManager 2 months ago
expiry_test.go control/controlclient: introduce eventbus messages instead of callbacks (#16956) 3 months ago
extension_host.go ipn/ipnlocal: make GetExt work earlier, before extension init 7 months ago
extension_host_test.go health,ipn/ipnlocal: introduce eventbus in heath.Tracker (#17085) 3 months ago
hwattest.go Revert "control/controlclient: back out HW key attestation (#17664)" (#17732) 1 month ago
local.go syncs: add means of declare locking assumptions for debug mode validation 7 days ago
local_test.go ipn/ipnlocal: don't panic if there are no suitable exit nodes 1 week ago
loglines_test.go health,ipn/ipnlocal: introduce eventbus in heath.Tracker (#17085) 3 months ago
netstack.go ipn/ipnlocal: move last unconditional gvisor import, complete ts_omit_netstack support 2 months ago
network-lock.go tstest/integration: add integration test for Tailnet Lock 1 week ago
network-lock_test.go tstest/integration: add integration test for Tailnet Lock 1 week ago
node_backend.go types/netmap,*: remove some redundant fields from NetMap 2 weeks ago
node_backend_test.go ipn/ipnlocal: introduce the concept of client-side-reachability (#17367) 2 months ago
peerapi.go feature/featuretags: add features for c2n, peerapi, advertise/use routes/exit nodes 2 months ago
peerapi_drive.go feature/drive: start factoring out Taildrive, add ts_omit_drive build tag 3 months ago
peerapi_macios_ext.go net/netmon, add: add netmon.State type alias of interfaces.State 2 years ago
peerapi_test.go ipn/ipnlocal: fix another racy test (#17472) 2 months ago
prefs_metrics.go feature/featuretags: add features for c2n, peerapi, advertise/use routes/exit nodes 2 months ago
profiles.go types/netmap: remove PrivateKey from NetworkMap 2 weeks ago
profiles_notwindows.go ipn/ipnlocal: refactor and cleanup profileManager 1 year ago
profiles_test.go ipn{,/local},cmd/tailscale: add "sync" flag and pref to disable control map poll 2 weeks ago
profiles_windows.go ipn/ipnlocal: refactor and cleanup profileManager 1 year ago
serve.go cmd/tailscale,ipn: add Unix socket support for serve 5 days ago
serve_disabled.go all: add ts_omit_serve, start making tailscale serve/funnel be modular 3 months ago
serve_test.go ipn/ipnlocal: add validations when setting serve config (#17950) 2 weeks ago
serve_unix_test.go cmd/tailscale,ipn: add Unix socket support for serve 5 days ago
ssh.go ipn/ipnlocal: fix a case where ts_omit_ssh was still linking in x/crypto/ssh 3 months ago
ssh_stub.go ipn/ipnlocal: fix a case where ts_omit_ssh was still linking in x/crypto/ssh 3 months ago
ssh_test.go health,ipn/ipnlocal: introduce eventbus in heath.Tracker (#17085) 3 months ago
state_test.go types/key,wgengine/magicsock,control/controlclient,ipn: add debug disco key rotation 2 weeks ago
tailnetlock_disabled.go all: add ts_omit_tailnetlock as a start of making it build-time modular 3 months ago
web_client.go util/backoff: rename logtail/backoff package to util/backoff 2 months ago
web_client_stub.go derp/derpserver: split off derp.Server out of derp into its own package 2 months ago