As of this PR, `SessionServices` retains a `Option<StartedNetworkProxy>`, if appropriate. Now the `network` field on `Config` is `Option<NetworkProxySpec>` instead of `Option<NetworkProxy>`. Over in `Session::new()`, we invoke `NetworkProxySpec::start_proxy()` to create the `StartedNetworkProxy`, which is a new struct that retains the `NetworkProxy` as well as the `NetworkProxyHandle`. (Note that `Drop` is implemented for `NetworkProxyHandle` to ensure the proxies are shutdown when it is dropped.) The `NetworkProxy` from the `StartedNetworkProxy` is threaded through to the appropriate places. --- [//]: # (BEGIN SAPLING FOOTER) Stack created with [Sapling](https://sapling-scm.com). Best reviewed with [ReviewStack](https://reviewstack.dev/openai/codex/pull/11207). * #11285 * __->__ #11207 |
||
|---|---|---|
| .. | ||
| admin.rs | ||
| config.rs | ||
| http_proxy.rs | ||
| lib.rs | ||
| network_policy.rs | ||
| policy.rs | ||
| proxy.rs | ||
| reasons.rs | ||
| responses.rs | ||
| runtime.rs | ||
| socks5.rs | ||
| state.rs | ||
| upstream.rs | ||