mirror of
https://github.com/curl/curl.git
synced 2026-06-13 12:45:38 +03:00
Add `data->state.origin` as the origin the transfer is sending the current request to/gets the response from. Use it for request specific properties like authentication, hsts and cookie handling, etc. Unless talking to a forwarding HTTP proxy (e.g. not tunneling), `data->state.origin` and `conn->origin` are the same. With a forwarding HTTP proxy in play, `conn->origin` is set to `conn->http_proxy.peer` and `conn->bits.origin_is_proxy` (a new bit) is set. Remove the connection bits, now replaced with: * `conn->bits.socksproxy` -> `conn->socks_proy.peer` * `conn->bits.httpproxy` -> `conn->http_proy.peer` * `conn->bits.proxy` -> `(conn->socks_proy.peer || conn->http_proy.peer`) * `conn->bits.tunnel_proxy` -> (`conn->http_proy.peer && !conn->bits.origin_is_proxy`) * `(conn->bits.httpproxy && !conn->bits.tunnel_proxy)` -> `conn->bits.origin_is_proxy` Rename `noproxy.[ch]` to `proxy.[ch]`. Move the connection proxy setup code from `url.c` to `proxy.c`. Remove `data->info.conn_remote_port` as no one uses it. Add test_40_02b for a SOCKS connection to a forwarding HTTPS proxy. Update internal documentation about peers and creds. Closes #21967 |
||
|---|---|---|
| .. | ||
| testenv | ||
| .gitignore | ||
| CMakeLists.txt | ||
| config.ini.in | ||
| conftest.py | ||
| Makefile.am | ||
| requirements.txt | ||
| scorecard.py | ||
| test_01_basic.py | ||
| test_02_download.py | ||
| test_03_goaway.py | ||
| test_04_stuttered.py | ||
| test_05_errors.py | ||
| test_06_eyeballs.py | ||
| test_07_upload.py | ||
| test_08_caddy.py | ||
| test_09_push.py | ||
| test_10_proxy.py | ||
| test_11_unix.py | ||
| test_12_reuse.py | ||
| test_13_proxy_auth.py | ||
| test_14_auth.py | ||
| test_15_tracing.py | ||
| test_16_info.py | ||
| test_17_ssl_use.py | ||
| test_18_methods.py | ||
| test_19_shutdown.py | ||
| test_20_websockets.py | ||
| test_21_resolve.py | ||
| test_22_httpsrr.py | ||
| test_30_vsftpd.py | ||
| test_31_vsftpds.py | ||
| test_32_ftps_vsftpd.py | ||
| test_40_socks.py | ||
| test_50_scp.py | ||
| test_51_sftp.py | ||
| test_60_h3_proxy.py | ||