curl-library
Re: question of curl_easy_getinfo on sftp
Date: Sat, 18 Jan 2014 18:26:53 -0800
On Jan 16, 2014, at 8:53 AM, Daniel Stenberg <daniel_at_haxx.se> wrote:
> Yeah, I can see how the state machine in lib/ssh.c stops too early if CURLOPT_NOBODY is set. Any chance you can see if you can fix this and send us a patch?
I was trying to find a contribution opportunity for the long weekend today and cam across this. YingWei, I hope you don’t mind that I took a stab at fixing this.
For download, CURLOPT_NOBODY will now cause curl disconnect and stop after the stat phase, so curl now reports the correct CURLINFO_CONTENT_LENGTH_DOWNLOAD. For readdir the behavior of CURLOPT_NOBODY is unchanged.
Since the documentation for CURLINFO_CONTENT_LENGTH_DOWNLOAD says
> Since 7.19.4, this returns -1 if the size isn't known.
The patch is also setting CURLINFO_CONTENT_LENGTH_DOWNLOAD to -1 if either the stat call failed or a readdir was running, because the size is unknown in these cases.
Patch is attached and your feedback is greatly appreciated, I’d be happy to send an updated patch incorporating it.
Regards,
Fabian
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
- application/x-gzip attachment: curl_sftp_nobody.patch.gz