xref: /curl/docs/cmdline-opts/preproxy.md (revision 2494b8dd)
1---
2c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
3SPDX-License-Identifier: curl
4Long: preproxy
5Arg: [protocol://]host[:port]
6Help: Use this proxy first
7Added: 7.52.0
8Category: proxy
9Multi: single
10See-also:
11  - proxy
12  - socks5
13Example:
14  - --preproxy socks5://proxy.example -x http://http.example $URL
15---
16
17# `--preproxy`
18
19Use the specified SOCKS proxy before connecting to an HTTP or HTTPS --proxy. In
20such a case curl first connects to the SOCKS proxy and then connects (through
21SOCKS) to the HTTP or HTTPS proxy. Hence pre proxy.
22
23The pre proxy string should be specified with a protocol:// prefix to specify
24alternative proxy protocols. Use socks4://, socks4a://, socks5:// or
25socks5h:// to request the specific SOCKS version to be used. No protocol
26specified makes curl default to SOCKS4.
27
28If the port number is not specified in the proxy string, it is assumed to be
291080.
30
31User and password that might be provided in the proxy string are URL decoded
32by curl. This allows you to pass in special characters such as @ by using %40
33or pass in a colon with %3a.
34