feat: implement selective routing for "scope_*" users

- Users with "scope_{name}" prefix are routed to upstreams where {name}
  is present in the "scopes" property (comma-separated).
- Strict separation: Scoped upstreams are excluded from general routing, and vice versa.
- Constraint: SOCKS upstreams and DIRECT(`use_middle_proxy =
false`) mode only.

Example:
  User "scope_hello" matches an upstream with `scopes = "world,hello"`
This commit is contained in:
unuunn
2026-02-17 13:14:50 +03:00
parent 03a6493147
commit c7464d53e1
4 changed files with 57 additions and 11 deletions

View File

@@ -208,6 +208,8 @@ impl ProxyConfig {
upstream_type: UpstreamType::Direct { interface: None },
weight: 1,
enabled: true,
scopes: String::new(),
selected_scope: String::new(),
});
}