tailscale/ipn/ipnlocal
Brad Fitzpatrick 8570f82c8b ipn/ipnlocal: finish/fix up filename validation & encoding on disk
It used to just store received files URL-escaped on disk, but that was
a half done lazy implementation, and pushed the burden to callers to
validate and write things to disk in an unescaped way.

Instead, do all the validation in the receive handler and only
accept filenames that are UTF-8 and in the intersection of valid
names that all platforms support.

Fixes tailscale/corp#1594

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-19 22:39:53 -07:00
..
local_test.go ipn/localapi: add API for getting file targets 2021-04-06 11:01:30 -07:00
local.go ipn, cmd/tailscale/cli: add pref to configure sudo-free operator user 2021-04-19 10:12:41 -07:00
loglines_test.go tailcfg: add Endpoint, EndpointType, MapRequest.EndpointType 2021-04-13 10:12:14 -07:00
peerapi_macios_ext.go ipn/{ipnlocal,localapi}: add localapi handler to dial/proxy file PUTs 2021-04-06 21:31:50 -07:00
peerapi_test.go ipn/ipnlocal: finish/fix up filename validation & encoding on disk 2021-04-19 22:39:53 -07:00
peerapi.go ipn/ipnlocal: finish/fix up filename validation & encoding on disk 2021-04-19 22:39:53 -07:00