ftplistparser: clear strings.target if not symlink

When the struct is passed to the CURLOPT_CHUNK_BGN_FUNCTION callback,
clear the pointer if the provided data is not a symlink.

Closes #21884
This commit is contained in:
Daniel Stenberg 2026-06-06 23:38:22 +02:00
parent 38b72f3b56
commit 317bf7e8a8
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2

View file

@ -310,8 +310,9 @@ static CURLcode ftp_pl_insert_finfo(struct Curl_easy *data,
str + parser->offsets.group : NULL;
finfo->strings.perm = parser->offsets.perm ?
str + parser->offsets.perm : NULL;
finfo->strings.target = parser->offsets.symlink_target ?
str + parser->offsets.symlink_target : NULL;
finfo->strings.target = parser->offsets.symlink_target &&
(finfo->filetype == CURLFILETYPE_SYMLINK) ?
str + parser->offsets.symlink_target : NULL;
finfo->strings.time = str + parser->offsets.time;
finfo->strings.user = parser->offsets.user ?
str + parser->offsets.user : NULL;