This is on WinXP, cygwin, the latest installed today, the 22nd. the command used: scp -rv directoryname user@server:public_html This creates the directory that is supposed to be recursively copied, but does not copy the content. I have tried many directories on my windows box, and I have tried scp-ing to multiple solaris and linux boxes. Never worked. So I am not suspecting diskspace issues, or permissions on either side. Below is a part of a run of scp -rvvv. There was no error message that I noticed of any kind. I have tried running it from cmd window, bash, sh; no change. GregT ------ verbose output ---- debug1: Sending command: scp -v -r -t . debug2: channel 0: request exec confirm 0 debug2: callback done debug2: channel 0: open confirm rwindow 0 rmax 16384 debug2: channel 0: rcvd adjust 32768 Entering directory: D0770 0 windows debug2: channel 0: read<=0 rfd 4 len 0 debug2: channel 0: read failed debug2: channel 0: close_read debug2: channel 0: input open -> drain debug2: channel 0: ibuf empty debug2: channel 0: send eof debug2: channel 0: input drain -> closed debug2: channel 0: rcvd eof debug2: channel 0: output open -> drain debug2: channel 0: obuf empty debug2: channel 0: close_write debug2: channel 0: output drain -> closed debug1: client_input_channel_req: channel 0 rtype exit-status reply 0 debug2: channel 0: rcvd close debug3: channel 0: will not send data after close debug2: channel 0: almost dead debug2: channel 0: gc: notify user debug2: channel 0: gc: user detached debug2: channel 0: send close debug2: channel 0: is dead debug2: channel 0: garbage collecting debug1: channel 0: free: client-session, nchannels 1 debug3: channel 0: status: The following connections are open: #0 client-session (t4 r0 i3/0 o3/0 fd -1/-1 cfd -1) debug3: channel 0: close_fds r -1 w -1 e 6 c -1 debug3: fd 0 is not O_NONBLOCK debug3: fd 1 is not O_NONBLOCK debug1: Transferred: stdin 0, stdout 0, stderr 0 bytes in 0.7 seconds debug1: Bytes per second: stdin 0.0, stdout 0.0, stderr 0.0 debug1: Exit status 0
I can't replicate this. $ mkdir -p foo/bar $ touch foo/baz $ scp -rv foo dtucker@server:foo creates the foo/ tree on the server as expected. Could you please attach a tarball of an example directory tree and tell us the exact scp invocation that exhibits the problem with that directory tree? Presumably the 4.3p1 is on the cygwin side, what version of OpenSSH is on the server side?
Created attachment 1079 [details] strace of scp -rvvvvv foo .... This is a file ganerated by the following: mkdir foo cd foo touch bar touch bar cd .. strace scp -rvvvv foo tokarsg@storm.larimer.org:. > stracessh
What's the CYGWIN environment setting on those machines? Mine is "ntsec tty".
Created attachment 1081 [details] Skip d_ino test in scp Please try this patch.
Created attachment 1082 [details] Same patch as #1081 autoconf-ed. If you want to test this one you'll need to run "autoconf" to rebuild configure, but patch #1081 ought to prove whether or not this fixes it.
BTW, according to Corinna d_ino is planned to return to the cygwin library shortly after its brief vacation (if it hasn't already), at which point the patch will be unnecessary.
d_ino is back in cygwin so the patches here are no longer required and scp should work as expected. Please reopent if this is not the case.
With the release of 4.4, we believe that this bug is now closed. For information about the release please see http://www.openssh.com/txt/release-4.4 .