← Commit list

df8244c30f

Daniel Stenberg
Daniel Stenberg
2025-09-20
FAILED Duration: 500s

Subject

libssh: error on bad chown number and store the value

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

lib/vssh/libssh.c+2 -3
@@ -1838,9 +1838,7 @@ static int myssh_in_SFTP_QUOTE_STAT(struct Curl_easy *data,
else if(!strncmp(cmd, "chown", 5)) {
const char *p = sshc->quote_path1;
curl_off_t uid;
- (void)curlx_str_number(&p, &uid, UINT_MAX);
- if(sshc->quote_attrs->uid == 0 && !ISDIGIT(sshc->quote_path1[0]) &&
- !sshc->acceptfail) {
+ if(curlx_str_number(&p, &uid, UINT_MAX)) {
Curl_safefree(sshc->quote_path1);
Curl_safefree(sshc->quote_path2);
failf(data, "Syntax error: chown uid not a number");
@@ -1849,6 +1847,7 @@ static int myssh_in_SFTP_QUOTE_STAT(struct Curl_easy *data,
sshc->actualcode = CURLE_QUOTE_ERROR;
return SSH_NO_ERROR;
}
+ sshc->quote_attrs->uid = (uint32_t)uid;
sshc->quote_attrs->flags |= SSH_FILEXFER_ATTR_UIDGID;
}
else if(!strncmp(cmd, "atime", 5) ||