From: Felix Hädicke Date: Wed, 24 Jul 2019 09:47:51 +0000 (+0200) Subject: ssh-libssh: do not specify O_APPEND when not in append mode X-Git-Tag: curl-7_66_0~201 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=62617495102c60124db8a909f592f063e38a89aa;p=curl ssh-libssh: do not specify O_APPEND when not in append mode Specifying O_APPEND in conjunction with O_TRUNC and O_CREAT does not make much sense. And this combination of flags is not accepted by all SFTP servers (at least not Apache SSHD). Fixes #4147 Closes #4148 --- diff --git a/lib/ssh-libssh.c b/lib/ssh-libssh.c index ca1337677..879358eba 100644 --- a/lib/ssh-libssh.c +++ b/lib/ssh-libssh.c @@ -1119,7 +1119,7 @@ static CURLcode myssh_statemach_act(struct connectdata *conn, bool *block) flags = O_WRONLY|O_APPEND; else /* Clear file before writing (normal behaviour) */ - flags = O_WRONLY|O_APPEND|O_CREAT|O_TRUNC; + flags = O_WRONLY|O_CREAT|O_TRUNC; if(sshc->sftp_file) sftp_close(sshc->sftp_file);