Skip to content

Merge dev into main for v1.11.5#408

Merged
tvancott42 merged 2 commits intomainfrom
dev
Mar 5, 2026
Merged

Merge dev into main for v1.11.5#408
tvancott42 merged 2 commits intomainfrom
dev

Conversation

@tvancott42
Copy link
Collaborator

@tvancott42 tvancott42 commented Mar 5, 2026

Summary

  • Parse missing fields from legacy firewall rules (Pre-Zone-Based Support: VLAN Isolation not considering generic rule #251) - Adds connection state parsing (state_new/state_established/state_related/state_invalid), protocol_match_excepted, and proper ANY fallback for empty source/destination fields. Fixes false positive inter-VLAN isolation warnings for users with legacy "Allow Established/Related" rules above RFC1918 block rules.
  • Improve schedule form layout - CSS fixes for the Alerts/Schedule page on both mobile and desktop (field widths, button alignment, responsive adjustments).

Test plan

  • 414 lines of new parser and analyzer tests covering all edge cases
  • Verify inter-VLAN isolation audit no longer flags false positives for legacy firewall setups with established/related rules
  • Verify schedule form layout looks correct on mobile and desktop

Legacy (pre-zone-based) firewall rules have different field names than
zone-based rules. Three fields were not being mapped:

1. Connection state booleans (state_new, state_established, state_related,
   state_invalid) - without these, an "Allow Established/Related" rule was
   treated as allowing all connection states including NEW, potentially
   eclipsing block rules below it.

2. Empty source/destination fields - a LAN_IN rule with no source or
   destination specified means "any" within that zone scope. Previously
   these rules matched nothing due to the fallback comparing empty string
   to network IDs.

3. protocol_match_excepted - the legacy equivalent of match_opposite_protocol.
@tvancott42 tvancott42 merged commit 4d2092a into main Mar 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant