tool_cb_hdr: with -J, use the redirect name as a backup

The -J / --remote-header-name logic now records the file name part used
in the redirects so that it can use the last one as a name if no
Content-Disposition header arrives.

Add tests to verify:

1641: -J with a redirect and extract the CD contents in the second
response

1642: -J with a redirect but no Content-Disposition, use the name from
the Location: header

1643: -J with two redirects, using the last file name and also use
queries and fragments to verify them stripped off

Closes #20430
This commit is contained in:
Daniel Stenberg 2026-01-25 16:35:53 +01:00
parent 146de2460a
commit fa6a46473e
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
8 changed files with 267 additions and 43 deletions

View file

@ -36,7 +36,8 @@
* dynamically allocated and 'belongs' to this OutStruct, otherwise FALSE.
*
* 'is_cd_filename' member is TRUE when string pointed by 'filename' has been
* set using a server-specified Content-Disposition filename, otherwise FALSE.
* set using a server-specified Content-Disposition or Location filename,
* otherwise FALSE.
*
* 'regular_file' member is TRUE when output goes to a regular file, this also
* implies that output is 'seekable' and 'appendable' and also that member