mirror of
https://github.com/juanfont/headscale.git
synced 2026-01-23 02:24:10 +00:00
When autogroup:self was combined with other ACL rules (e.g., group:admin -> *:*), tagged nodes became invisible to users who should have access. The BuildPeerMap function had two code paths: - Global filter path: used symmetric OR logic (if either can access, both see each other) - Autogroup:self path: used asymmetric logic (only add peer if that specific direction has access) This caused problems with one-way rules like admin -> tagged-server. The admin could access the server, but since the server couldn't access the admin, neither was added to the other's peer list. Fix by using symmetric visibility in the autogroup:self path, matching the global filter path behavior: if either node can access the other, both should see each other as peers. Credit: vdovhanych <vdovhanych@users.noreply.github.com> Fixes #2990 |
||
|---|---|---|
| .. | ||
| assets | ||
| capver | ||
| db | ||
| derp | ||
| dns | ||
| mapper | ||
| policy | ||
| routes | ||
| state | ||
| templates | ||
| types | ||
| util | ||
| app.go | ||
| auth.go | ||
| auth_tags_test.go | ||
| auth_test.go | ||
| debug.go | ||
| grpcv1.go | ||
| grpcv1_test.go | ||
| handlers.go | ||
| metrics.go | ||
| noise.go | ||
| oidc.go | ||
| oidc_template_test.go | ||
| oidc_test.go | ||
| platform_config.go | ||
| poll.go | ||
| tailsql.go | ||
| templates_consistency_test.go | ||