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
Brad Fitzpatrick 8ec07b5f7f ipn/ipnauth: don't crash on OpenBSD trying to log username of unknown peer
We never implemented the peercred package on OpenBSD (and I just tried
again and failed), but we've always documented that the creds pointer
can be nil for operating systems where we can't map the unix socket
back to its UID. On those platforms, we set the default unix socket
permissions such that only the admin can open it anyway and we don't
have a read-only vs read-write distinction. OpenBSD was always in that
camp, where any access to Tailscale's unix socket meant full access.

But during some refactoring, we broke OpenBSD in that we started
assuming during one logging path (during login) that Creds was non-nil
when looking up an ipnauth.Actor's username, which wasn't relevant (it
was called from a function "maybeUsernameOf" anyway, which threw away
errors).

Verified on an OpenBSD VM. We don't have any OpenBSD integration tests yet.

Fixes #17209
Updates #17221

Change-Id: I473c5903dfaa645694bcc75e7f5d484f3dd6044d
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
3 months ago
..
auditlog ipn/ipnext: remove some interface indirection to add hooks 8 months ago
conffile ipn/conffile: don't depend on hujson on iOS/Android 1 year ago
desktop util/syspolicy: finish plumbing policyclient, add feature/syspolicy, move global impl 4 months ago
ipnauth ipn/ipnauth: don't crash on OpenBSD trying to log username of unknown peer 3 months ago
ipnext ipn/ipnlocal: make GetExt work earlier, before extension init 7 months ago
ipnlocal ipn/ipnlocal: use eventbus.Monitor in expiryManager (#17204) 3 months ago
ipnserver ipn/ipnauth: don't crash on OpenBSD trying to log username of unknown peer 3 months ago
ipnstate cmd/tailscale, ipn/ipnstate, wgengine/magicsock: update ping output for peer relay (#16515) 6 months ago
lapitest health,ipn/ipnlocal: introduce eventbus in heath.Tracker (#17085) 3 months ago
localapi feature/featuretags, all: add ts_omit_acme to disable TLS cert support 3 months ago
policy ipn,tailconfig: clean up unreleased and removed app connector service 2 years ago
store ipn/store/kubestore,kube: fix cert error in admin UI (#16717) 5 months ago
backend.go ipn: fix the string representation of an empty ipn.Notify 3 months ago
backend_test.go ipn: fix the string representation of an empty ipn.Notify 3 months ago
conf.go ipn: ensure that conffile is source of truth for advertised services. (#15361) 9 months ago
doc.go ipn: generate LoginProfileView and use it instead of *LoginProfile where appropriate 11 months ago
ipn_clone.go cmd/tailscale/cli,ipn,ipn/ipnlocal: add AutoExitNode preference for automatic exit node selection 6 months ago
ipn_test.go all: do not depend on the testing package 2 years ago
ipn_view.go cmd/viewer: add field comments to generated view methods 4 months ago
prefs.go cmd/tailscale: use tailnet display name on cli (#17079) 4 months ago
prefs_test.go ipn: warn about self as the exit node if backend is running (#17018) 4 months ago
serve.go cmd/tailscale/cli: revert key for web config for services to FQDN (#16627) 5 months ago
serve_test.go cmd/tailscale/cli: Add service flag to serve command (#16191) 5 months ago
store.go tailcfg: report StateEncrypted in Hostinfo (#16434) 6 months ago
store_test.go ipn/store: automatically migrate between plaintext and encrypted state (#16318) 6 months ago