curl/docs/cmdline-opts/connect-to.md
Daniel Stenberg 2abfc759b9
cmdline-opts: category cleanup
Option cleanups:

 --get is not upload
 --form* are post
 - added several options into ldap, smtp, imap and pop3
 - shortened the category descriptions in the list

category curl fixes:

 --create-dirs removed from 'curl'
 --ftp-create-dirs removed from 'curl'
 --netrc moved to 'auth' from 'curl'
 --netrc-file moved to 'auth' from 'curl'
 --netrc-optional moved to 'auth' from 'curl'
 --no-buffer moved to 'output' from 'curl'
 --no-clobber removed from 'curl'
 --output removed from 'curl'
 --output-dir removed from 'curl'
 --remove-on-error removed from 'curl'

Add a "global" category:

- Made all "global" options set this category

Add a "deprecated" category:

- Moved the deprecated options to it (maybe they should not be in any
 category long term)

Add a 'timeout' category

- Put a number of appropriate options in it

Add an 'ldap' category

- Put the LDAP related option in there

Remove categories "ECH" and "ipfs"

- They should not be categories. Had only one single option each.

Remove category "misc"

- It should not be a category as it is impossible to know when to browse
  it.

--use-ascii moved to ftp and output
--xattr moved to output
--service-name moved to auth

Managen fixes:

- errors if an option is given a category name that is not already setup
  for in code

- verifies that options set `scope: global` also is put in category
  `global´

Closes #14101
2024-07-05 11:05:50 +02:00

1.3 KiB

c SPDX-License-Identifier Long Arg Help Added Category Multi See-also Example
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. curl connect-to <HOST1:PORT1:HOST2:PORT2> Connect to host2 instead of host1 7.49.0 connection dns append
resolve
header
--connect-to example.com:443:example.net:8443 $URL

--connect-to

For a request intended for the HOST1:PORT1 pair, connect to HOST2:PORT2 instead. This option is only used to establish the network connection. It does NOT affect the hostname/port number that is used for TLS/SSL (e.g. SNI, certificate verification) or for the application protocols.

HOST1 and PORT1 may be empty strings, meaning any host or any port number. HOST2 and PORT2 may also be empty strings, meaning use the request's original hostname and port number.

A hostname specified to this option is compared as a string, so it needs to match the name used in request URL. It can be either numerical such as 127.0.0.1 or the full host name such as example.org.

Example: redirect connects from the example.com hostname to 127.0.0.1 independently of port number:

curl --connect-to example.com::127.0.0.1: https://example.com/

Example: redirect connects from all hostnames to 127.0.0.1 independently of port number:

curl --connect-to ::127.0.0.1: http://example.com/