libssh: error on bad chown number and store the value
No binary (build failed)
—
(log yok)
| @@ -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) || | |