curl/docs/cmdline-opts
Jay Satiro b7e769dc87 vtls: stop offering alpn http/1.1 for http2-prior-knowledge
- For HTTPS if http2-prior-knowledge is set then only offer h2 (HTTP/2)
  alpn to the server for protocol negotiation.

Prior to this change both HTTP/2 ("h2") and HTTP/1.1 ("http/1.1") were
offered for ALPN when http2-prior-knowledge was set.

CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (tool: --http2-prior-knowledge) is
meant to send non-TLS HTTP requests HTTP/2 when it is known the server
supports them. However when HTTPS is used then it attempts to first
negotiate the connection with ALPN. In that case the user likely does
not want to offer http/1.1 to the server as an acceptable protocol.

Reported-by: kit-ty-kate@users.noreply.github.com

Fixes https://github.com/curl/curl/issues/9963
Closes https://github.com/curl/curl/pull/14266
2024-08-04 17:59:04 -04:00
..
_AUTHORS.md
_BUGS.md
_DESCRIPTION.md
_ENVIRONMENT.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
_EXITCODES.md
_FILES.md
_GLOBBING.md
_NAME.md
_OPTIONS.md curl: --help [option] displays documentation for given cmdline option 2024-08-04 16:06:17 +02:00
_OUTPUT.md
_PROGRESS.md
_PROTOCOLS.md
_PROXYPREFIX.md
_SEEALSO.md
_SYNOPSIS.md
_URL.md
_VARIABLES.md
_VERSION.md
_WWW.md
.gitignore
abstract-unix-socket.md
alt-svc.md
anyauth.md
append.md
aws-sigv4.md
basic.md
ca-native.md curl: support embedding a CA bundle 2024-08-03 09:22:26 +02:00
cacert.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
capath.md curl: support embedding a CA bundle 2024-08-03 09:22:26 +02:00
cert-status.md
cert-type.md
cert.md
ciphers.md
CMakeLists.txt cmake: tidy-ups 2024-08-03 20:49:15 +02:00
compressed-ssh.md
compressed.md
config.md
connect-timeout.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
connect-to.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
continue-at.md
cookie-jar.md cookie-jar.md: see also --junk-session-cookies 2024-06-24 11:17:41 +02:00
cookie.md
create-dirs.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
create-file-mode.md
crlf.md managen: "added in" fixes 2024-06-24 16:20:03 +02:00
crlfile.md
curves.md
data-ascii.md
data-binary.md
data-raw.md
data-urlencode.md
data.md cmdline-opts: language cleanups 2024-03-12 15:42:33 +01:00
delegation.md
digest.md
disable-eprt.md
disable-epsv.md
disable.md cmdline-docs: "added in" cleanups 2024-06-24 16:56:52 +02:00
disallow-username-in-url.md
dns-interface.md
dns-ipv4-addr.md
dns-ipv6-addr.md
dns-servers.md
doh-cert-status.md
doh-insecure.md
doh-url.md doh-url.md: point out DOH server IP pinning 2024-08-04 15:57:45 +02:00
dump-ca-embed.md curl: support embedding a CA bundle 2024-08-03 09:22:26 +02:00
dump-header.md tool_operate: support --dump-header % to direct to stderr 2024-08-04 16:02:24 +02:00
ech.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
egd-file.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
engine.md
etag-compare.md
etag-save.md
expect100-timeout.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
fail-early.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
fail-with-body.md
fail.md
false-start.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
form-escape.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
form-string.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
form.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
ftp-account.md
ftp-alternative-to-user.md
ftp-create-dirs.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
ftp-method.md
ftp-pasv.md
ftp-port.md
ftp-pret.md
ftp-skip-pasv-ip.md
ftp-ssl-ccc-mode.md
ftp-ssl-ccc.md
ftp-ssl-control.md
get.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
globoff.md
happy-eyeballs-timeout-ms.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
haproxy-clientip.md
haproxy-protocol.md
head.md
header.md cmdline-docs: "added in" cleanups 2024-06-24 16:56:52 +02:00
help.md curl: --help [option] displays documentation for given cmdline option 2024-08-04 16:06:17 +02:00
hostpubmd5.md help: add flags to output and ssh categories 2024-07-04 09:58:23 +02:00
hostpubsha256.md help: add flags to output and ssh categories 2024-07-04 09:58:23 +02:00
hsts.md
http0.9.md
http1.0.md
http1.1.md
http2-prior-knowledge.md vtls: stop offering alpn http/1.1 for http2-prior-knowledge 2024-08-04 17:59:04 -04:00
http2.md
http3-only.md
http3.md
ignore-content-length.md
insecure.md help: add flags to output and ssh categories 2024-07-04 09:58:23 +02:00
interface.md
ip-tos.md docs/cmdline-opts: remove two superfluous "Added in" mentions 2024-06-24 11:18:53 +02:00
ipfs-gateway.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
ipv4.md
ipv6.md
json.md
junk-session-cookies.md
keepalive-cnt.md misc: cleanup after removing years from copyright 2024-07-30 14:11:48 +02:00
keepalive-time.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
key-type.md
key.md
krb.md
libcurl.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
limit-rate.md
list-only.md
local-port.md
location-trusted.md cmdline-opts: shorten six help texts 2024-07-02 07:51:57 +02:00
location.md
login-options.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
mail-auth.md
mail-from.md
mail-rcpt-allowfails.md
mail-rcpt.md
mainpage.idx
Makefile.am cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
Makefile.inc curl: add --skip-existing 2024-08-04 23:28:09 +02:00
MANPAGE.md managen: introduce "Multi: per-URL" 2024-06-28 08:42:47 +02:00
manual.md
max-filesize.md
max-redirs.md
max-time.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
metalink.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
mptcp.md
negotiate.md
netrc-file.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
netrc-optional.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
netrc.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
next.md cmdline-opts: shorten six help texts 2024-07-02 07:51:57 +02:00
no-alpn.md
no-buffer.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
no-clobber.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
no-keepalive.md
no-npn.md curl: move more options to deprecated category 2024-07-05 20:45:00 +02:00
no-progress-meter.md
no-sessionid.md
noproxy.md
ntlm-wb.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
ntlm.md
oauth2-bearer.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
output-dir.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
output.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
parallel-immediate.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
parallel-max.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
parallel.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
pass.md code: language cleanup in comments 2024-07-01 22:58:55 +02:00
path-as-is.md
pinnedpubkey.md cmdline-opts: shorten six help texts 2024-07-02 07:51:57 +02:00
post301.md
post302.md
post303.md
preproxy.md
progress-bar.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
proto-default.md
proto-redir.md managen: "added in" fixes 2024-06-24 16:20:03 +02:00
proto.md
proxy1.0.md
proxy-anyauth.md
proxy-basic.md
proxy-ca-native.md curl: support embedding a CA bundle 2024-08-03 09:22:26 +02:00
proxy-cacert.md curl: support embedding a CA bundle 2024-08-03 09:22:26 +02:00
proxy-capath.md curl: support embedding a CA bundle 2024-08-03 09:22:26 +02:00
proxy-cert-type.md
proxy-cert.md
proxy-ciphers.md
proxy-crlfile.md
proxy-digest.md
proxy-header.md docs/cmdline: change to .md for cmdline docs 2024-01-23 14:30:15 +01:00
proxy-http2.md
proxy-insecure.md
proxy-key-type.md
proxy-key.md
proxy-negotiate.md
proxy-ntlm.md
proxy-pass.md cmdline-opts: shorten six help texts 2024-07-02 07:51:57 +02:00
proxy-pinnedpubkey.md
proxy-service-name.md
proxy-ssl-allow-beast.md cmdline-opts: shorten six help texts 2024-07-02 07:51:57 +02:00
proxy-ssl-auto-client-cert.md
proxy-tls13-ciphers.md
proxy-tlsauthtype.md
proxy-tlspassword.md
proxy-tlsuser.md
proxy-tlsv1.md
proxy-user.md
proxy.md
proxytunnel.md
pubkey.md help: add flags to output and ssh categories 2024-07-04 09:58:23 +02:00
quote.md
random-file.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
range.md
rate.md getparam: make --rate accept "number of units" 2024-08-03 20:27:29 +02:00
raw.md
referer.md
remote-header-name.md
remote-name-all.md
remote-name.md tool_operate: for -O, use "default" as filename when the URL has none 2024-08-04 15:59:51 +02:00
remote-time.md
remove-on-error.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
request-target.md
request.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
resolve.md cmdline-docs: "added in" cleanups 2024-06-24 16:56:52 +02:00
retry-all-errors.md
retry-connrefused.md
retry-delay.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
retry-max-time.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
retry.md
sasl-authzid.md
sasl-ir.md
service-name.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
show-error.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
show-headers.md tool_getparam: make --show-headers the same as --include 2024-08-03 19:56:57 +02:00
silent.md
skip-existing.md curl: add --skip-existing 2024-08-04 23:28:09 +02:00
socks4.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
socks4a.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
socks5-basic.md
socks5-gssapi-nec.md
socks5-gssapi-service.md
socks5-gssapi.md
socks5-hostname.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
socks5.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
speed-limit.md
speed-time.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
ssl-allow-beast.md
ssl-auto-client-cert.md
ssl-no-revoke.md
ssl-reqd.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
ssl-revoke-best-effort.md
ssl.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
sslv2.md curl: move more options to deprecated category 2024-07-05 20:45:00 +02:00
sslv3.md curl: move more options to deprecated category 2024-07-05 20:45:00 +02:00
stderr.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
styled-output.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
suppress-connect-headers.md docs/cmdline-opts: update see-also to use show-headers 2024-08-03 20:29:30 +02:00
tcp-fastopen.md
tcp-nodelay.md
telnet-option.md
tftp-blksize.md
tftp-no-options.md
time-cond.md
tls13-ciphers.md
tls-max.md
tlsauthtype.md
tlspassword.md
tlsuser.md
tlsv1.0.md
tlsv1.1.md
tlsv1.2.md
tlsv1.3.md
tlsv1.md
tr-encoding.md
trace-ascii.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
trace-config.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
trace-ids.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
trace-time.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
trace.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00
unix-socket.md
upload-file.md managen: introduce "Multi: per-URL" 2024-06-28 08:42:47 +02:00
url-query.md
url.md managen: "added in" fixes 2024-06-24 16:20:03 +02:00
use-ascii.md tidy-up: OS names 2024-08-04 19:17:45 +02:00
user-agent.md
user.md
variable.md variable.md: make example use expand 2024-07-08 23:15:56 +02:00
verbose.md docs/cmdline-opts: update see-also to use show-headers 2024-08-03 20:29:30 +02:00
version.md
vlan-priority.md docs/cmdline-opts: remove two superfluous "Added in" mentions 2024-06-24 11:18:53 +02:00
write-out.md managen: "added in" fixes 2024-06-24 16:20:03 +02:00
xattr.md cmdline-opts: category cleanup 2024-07-05 11:05:50 +02:00