Files
headscale/hscontrol
Kristoffer Dalby bbea92033c policy/v2: wire PolicyManager through compiledGrant, delete old paths
Store compiledGrants and userNodeIndex on PolicyManager. Both
filterForNodeLocked and BuildPeerMap now derive from the same
compiled grants, eliminating the dual-path architecture.

Delete:
- compileViaGrant (filter.go): replaced by compileViaForNode
- compileGrantWithAutogroupSelf (filter.go): replaced by
  compileGrants + compileAutogroupSelf
- compileFilterRulesForNodeLocked (policy.go): replaced by
  filterRulesForNodeLocked
- compiledFilterRulesMap cache (policy.go): no longer needed
- usesAutogroupSelf field and method: detection now happens
  during grant compilation (grantCategorySelf/grantCategoryVia)
- hasViaGrants method: same

The needsPerNodeFilter flag is now derived from the compiled grants
via hasPerNodeGrants. filterForNodeLocked no longer returns error
since the new path cannot fail.

Updates #3157
2026-04-04 13:18:15 +00:00
..
2026-03-03 05:59:40 +01:00
2026-03-01 13:38:22 +01:00
2026-03-01 13:38:22 +01:00
2026-03-01 13:38:22 +01:00