Commit Graph
426 Commits
Author SHA1 Message Date
世界 28da06ecee Use Prefixable for ip_cidr rule options 2026-11-09 15:17:20 +00:00
世界 0b44b3715d Fix bridge forwarding with auto-redirect 2026-11-09 15:17:20 +00:00
世界 34009e2188 Add go TUN stack 2026-11-09 15:17:20 +00:00
世界 240682c3aa Use screen state to end device pause on iOS 2026-11-09 15:17:20 +00:00
世界 a5ed1b5c22 Improve process search 2026-11-09 15:17:20 +00:00
世界 01aa07ca2c Improve idle connection management 2026-11-09 15:17:20 +00:00
世界 d95a2dd87b Load rule-sets through mmap on iOS 2026-11-09 15:17:20 +00:00
世界 d8de1e0bac Fix duplicated word in listen packet error 2026-11-08 13:43:29 +00:00
世界 47e898a269 Fix sniffed buffers not released on routing errors 2026-11-08 13:43:29 +00:00
世界 bb9fdd5cf1 Fix legacy route wrappers leaking on routing errors 2026-11-08 13:43:29 +00:00
世界 878a861e3f Fix reversed order of cached sniff payloads 2026-11-08 12:55:01 +00:00
世界 37bddc915c Fix close handler skipped on packet handshake failure 2026-10-23 19:57:09 +08:00
世界 5372a195b3 Fix URL test failover for routed connections 2026-10-23 19:57:09 +08:00
世界 92fe54be05 Fix flow close racing with tracker attach 2026-10-23 19:57:09 +08:00
世界 0164ce7b8e Fix shared connections inheriting external interrupt mark 2026-10-23 19:57:08 +08:00
世界 03335338a0 Fix outbound group resolution and interruption for nested groups 2026-10-23 19:57:08 +08:00
世界 a130b482d4 Flush systemd-resolved cache on DNS changes 2026-10-23 19:57:04 +08:00
世界 b6fc3a4863 Remove unimplemented direct rule action 2026-10-23 19:57:04 +08:00
世界 a691a44023 Refactor lifecycle to scoped cleanup 2026-10-09 12:36:03 +08:00
世界 a364ff4794 Remove unimplemented hot reload from managers 2026-10-09 12:36:03 +08:00
世界 52f9bad034 Fix protocol input validation 2026-10-09 12:36:03 +08:00
世界 07130365d1 Improve idle connection management 2026-10-02 18:00:09 +08:00
世界 fd9a076d25 Close idle connections of unreferenced outbounds and DNS servers 2026-10-02 18:00:09 +08:00
世界 83aec4222f Fix missing handshake success report for hijack-dns 2026-09-24 17:23:36 +08:00
世界 111ecb3483 Fix network reset on every startup 2026-09-24 17:23:36 +08:00
世界 60f0a0369b Fix half-close not propagating through connection wrappers 2026-09-20 22:24:38 +08:00
世界 9be5fcf4e1 Fix dial contexts cancelled while connections are still in use 2026-09-20 22:24:38 +08:00
世界 491813c360 Bind network reset dispatch to manager lifecycle 2026-09-20 22:24:38 +08:00
世界 8d0500eded Fix auto redirect pre-match and L3 forwarding 2026-09-10 14:59:10 +08:00
世界 f909997082 Fix bypass with outbound not bypassing in pre-match 2026-09-08 16:30:59 +08:00
世界 288411b0b9 Fix crash when interface monitor is unavailable 2026-09-06 14:56:27 +08:00
世界 a556d49491 Separate Clash mode management from Clash API server 2026-09-01 22:39:21 +08:00
世界 b807ff30d0 Reduce rule matching memory allocations 2026-09-01 21:32:13 +08:00
世界 3e185071eb Reduce network environment update overhead 2026-08-31 20:55:53 +08:00
世界 c53c2375c4 Improve power report 2026-08-30 17:41:47 +08:00
世界 673485755c Fix fakeip UDP reply address mapping 2026-08-30 17:41:47 +08:00
世界 08986ad405 Fix address filter matching for inverted legacy DNS rules
Inverted rules whose address filter conditions come from rule sets or
logical rules were rejected during pre-lookup matching, so the lookup was
never sent and the rules never matched; for plain ip rule sets this was a
regression from the rule-set invert fix in 1.12.22. Pre-lookup matching
now tracks whether the result depends on deferred address filter
conditions and defers such rules to the response phase, while results
already determined by evaluated conditions are still decided during
pre-lookup.
2026-08-30 17:41:46 +08:00
世界 e6b7c6ca75 Invalidate remote rule-set cache when URL changes 2026-08-30 17:41:46 +08:00
世界 ba4146ea31 Reformat code 2026-08-30 17:41:46 +08:00
世界 6720a27109 Handle network update callbacks in background 2026-08-30 17:41:46 +08:00
世界 2e238abe01 Fix network environment log 2026-08-30 17:41:46 +08:00
世界 b3a45e0839 Add query_client_subnet and query_dnssec DNS rule items and remove_client_subnet DNS route action option 2026-08-30 17:41:45 +08:00
世界 4e91d92c5f Refactor local DNS cache partitioning 2026-08-30 17:41:45 +08:00
世界 a8091761d7 Fix missing process info in hijacked DNS queries 2026-08-30 17:41:45 +08:00
世界 0dd17d78d8 Fix DNS response buffer headroom 2026-08-30 17:41:45 +08:00
世界 1698e6cf66 Add initial_path option to remote rule-sets 2026-08-30 17:41:44 +08:00
世界 6e09f2892a Add JSON schema support 2026-08-30 17:41:44 +08:00
世界 e09e3b49f9 dns: Add namespace and parallel support for evaluate 2026-08-30 17:41:44 +08:00
世界 510586c4f8 route: simplify rule_set matching semantics
Since b0c6762bc, every rule inside a referenced rule-set was evaluated
as if merged into the outer rule, which required tracking per-branch
group states and let outer rules and rule-set rules satisfy each
other's grouped conditions in both directions.

Restrict merging to the only designed case: a rule-set containing
exactly one non-inverted default rule is merged into the outer rule as
before. Any other rule-set now matches as an ordinary condition of the
outer rule: it matches when any of its rules matches on its own, and
its rules no longer exchange grouped match state with the outer rule
in either direction. Multiple referenced rule-sets keep OR semantics.

Flat address rule-sets such as generated geosite/geoip sets contain a
single default rule, so their behavior is unchanged. The group-state
set machinery is replaced by a single required/satisfied mask pair.

Also update the route and DNS rule docs.
2026-08-30 17:41:44 +08:00
世界 e4c8b49eaf Improve network reset 2026-08-30 17:41:43 +08:00