Habadasher has asked for the wisdom of the Perl Monks concerning the following question:
Here is the debug output from the sftp commandmy $sftp = Net::SFTP::Foreign->new($host, %args, ssh_cmd => 'plink');# +, ssh_cmd =>Net::SSH2); $sftp->die_on_error("Unable to establish SFTP connection"); #Change Remote Directory $sftp->setcwd($path) or die "unable to change cwd: " . $sftp->error; $sftp->rput("C:/Users/edawals/Desktop/ftpTestFolder/", "test/tessts/", + copy_perm => 0, overwrite => 1, late_set_perm => 1) or die "put fail +ed: " . $sftp->error;
Hope you can help! I'm a complete beginner with perl so I'm assuming there's something simple I've overlooked here...Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\edawals\Desktop>perl testFTP.pl #12844 1399483220.00000 new: This is Net::SFTP::Foreign 1.77 #12844 1399483220.00000 new: Loaded from C:/strawberry/perl/site/lib/N +et/SFTP/Fo reign.pm #12844 1399483220.00000 new: Running on Perl v5.18.2 for MSWin32 #12844 1399483220.00000 new: debug set to -1 #12844 1399483220.00000 new: ~0 is 18446744073709551615 #12844 1399483220.00000 new: Using backend Net::SFTP::Foreign::Backend +::Windows 1.70_08 #12844 1399483220.00000 _init_transport: ssh cmd: plink -pw <-----> -l + <-----> 193.180.14.34:22 -s sftp #12844 1399483220.00000 _queue_msg: queueing msg len: 5, code:1, id:3 +... [1] 00 00 00 05 01 00 00 00 03 | ......... #12844 1399483220.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:5, code:2, id:-, status +: - 02 00 00 00 03 | ..... #12844 1399483221.00000 _rel2abs: '' --> '.' #12844 1399483221.00000 _queue_msg: queueing msg len: 10, code:16, id: +0 ... [1] 00 00 00 0a 10 00 00 00 00 00 00 00 01 2e | .............. #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:79, code:104, id:0, sta +tus: - 68 00 00 00 00 00 00 00 01 00 00 00 01 2f 00 00 00 35 64 72 77 78 72 2 +d 78 2d 2d 2d 20 32 20 66 | h............/...5drwxr-x--- 2 f 74 70 61 64 6d 69 6e 20 66 74 70 61 64 6d 69 6e 20 20 20 20 20 20 20 2 +0 30 20 4a 61 6e 20 30 31 | tpadmin ftpadmin 0 Jan 01 20 31 39 37 30 20 2f 00 00 00 04 00 00 01 e8 | 1970 /........ #12844 1399483221.00000 __ANON__: rput handling C:\Users\edawals\Deskt +op\ftpTest Folder #12844 1399483221.00000 __ANON__: rpath: test/tessts #12844 1399483221.00000 _rel2abs: 'test/tessts' --> 'test/tessts' #12844 1399483221.00000 _queue_msg: queueing msg len: 20, code:17, id: +1 ... [1] 00 00 00 14 11 00 00 00 01 00 00 00 0b 74 65 73 74 2f 74 65 73 73 74 7 +3 | .............test/tessts #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:21, code:105, id:1, sta +tus: - 69 00 00 00 01 00 00 00 3c 00 00 41 e8 53 6a 68 99 53 6a 68 99 | i.......<..A.Sjh.Sjh. #12844 1399483221.00000 _set_error: _set_err code: 42, str: Remote dir +ectory 'te st/tessts' already exists #12844 1399483221.00000 __ANON__: rput handling C:\Users\edawals\Deskt +op\ftpTest Folder\test - Copy (2).txt #12844 1399483221.00000 _rel2abs: 'test/tessts/test - Copy (2).txt' -- +> 'test/te ssts/test - Copy (2).txt' #12844 1399483221.00000 put: local file size is 19 #12844 1399483221.00000 _rel2abs: 'test/tessts/test - Copy (2).txt' -- +> 'test/te ssts/test - Copy (2).txt' #12844 1399483221.00000 _queue_msg: queueing msg len: 52, code:3, id:2 + ... [1] 00 00 00 34 03 00 00 00 02 00 00 00 1f 74 65 73 74 2f 74 65 73 73 74 7 +3 2f 74 65 73 74 20 2d 20 | ...4.........test/tessts/test - 43 6f 70 79 20 28 32 29 2e 74 78 74 00 00 00 1a 00 00 00 04 00 00 01 b +6 | Copy (2).txt............ #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:11, code:102, id:2, sta +tus: - 66 00 00 00 02 00 00 00 02 37 35 | f........75 #12844 1399483221.00000 open: new remote file 'test/tessts/test - Copy + (2).txt' open, rid: 37 35 | 75 #12844 1399483221.00000 put: reading block at offset 0 block_size: 327 +68 #12844 1399483221.00000 put: block read, size: 19 #12844 1399483221.00000 put: writing block at offset 0, length 19 #12844 1399483221.00000 _queue_msg: queueing msg len: 42, code:6, id:3 + ... [1] 00 00 00 2a 06 00 00 00 03 00 00 00 02 37 35 00 00 00 00 00 00 00 00 0 +0 00 00 13 54 68 69 73 20 | ...*.........75............This 69 73 20 6f 6e 6c 79 20 61 20 74 65 73 74 | is only a test #12844 1399483221.00000 put: reading block at offset 19 block_size: 32 +768 #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:17, code:101, id:3, sta +tus: 0 65 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 | e................ #12844 1399483221.00000 _queue_msg: queueing msg len: 11, code:4, id:4 + ... [1] 00 00 00 0b 04 00 00 00 04 00 00 00 02 37 35 | .............75 #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:17, code:101, id:4, sta +tus: 0 65 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 | e................ #12844 1399483221.00000 _close: closing file handle, return: 1, rid: 37 35 | 75 #12844 1399483221.00000 _rel2abs: 'test/tessts/test - Copy (2).txt' -- +> 'test/te ssts/test - Copy (2).txt' #12844 1399483221.00000 _queue_msg: queueing msg len: 56, code:9, id:5 + ... [1] 00 00 00 38 09 00 00 00 05 00 00 00 1f 74 65 73 74 2f 74 65 73 73 74 7 +3 2f 74 65 73 74 20 2d 20 | ...8.........test/tessts/test - 43 6f 70 79 20 28 32 29 2e 74 78 74 00 00 00 0c 00 00 01 b6 53 6a 65 4 +b 53 6a 4a 9b | Copy (2).txt........SjeKSjJ. #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:44, code:101, id:5, sta +tus: 8 65 00 00 00 05 00 00 00 08 00 00 00 1b 53 53 48 53 65 72 76 65 72 41 5 +0 49 2e 53 46 54 50 2e 66 | e............SSHServerAPI.SFTP.f 78 70 5f 61 74 74 72 73 00 00 00 00 | xp_attrs.... #12844 1399483221.00000 _set_status: _set_status code: 8, str: SSHServ +erAPI.SFTP .fxp_attrs #12844 1399483221.00000 _set_error: _set_err code: 24, str: Couldn't s +etstat rem ote file: SSHServerAPI.SFTP.fxp_attrs #12844 1399483221.00000 DESTROY: Net::SFTP::Foreign::FileHandle=GLOB(0 +x2dac408)- >DESTROY called (sftp: <undef>) #12844 1399483221.00000 __ANON__: rput handling C:\Users\edawals\Deskt +op\ftpTest Folder\test - Copy.txt #12844 1399483221.00000 _rel2abs: 'test/tessts/test - Copy.txt' --> 't +est/tessts /test - Copy.txt' #12844 1399483221.00000 put: local file size is 19 #12844 1399483221.00000 _rel2abs: 'test/tessts/test - Copy.txt' --> 't +est/tessts /test - Copy.txt' #12844 1399483221.00000 _queue_msg: queueing msg len: 48, code:3, id:6 + ... [1] 00 00 00 30 03 00 00 00 06 00 00 00 1b 74 65 73 74 2f 74 65 73 73 74 7 +3 2f 74 65 73 74 20 2d 20 | ...0.........test/tessts/test - 43 6f 70 79 2e 74 78 74 00 00 00 1a 00 00 00 04 00 00 01 b6 | Copy.txt............ #12844 1399483221.00000 _get_msg: waiting for message... [1] #12844 1399483221.00000 _get_msg: got it!, len:11, code:102, id:6, sta +tus: - 66 00 00 00 06 00 00 00 02 37 36 | f........76 #12844 1399483221.00000 open: new remote file 'test/tessts/test - Copy +.txt' open , rid: 37 36 | 76 #12844 1399483222.00000 put: reading block at offset 0 block_size: 327 +68 #12844 1399483222.00000 put: block read, size: 19 #12844 1399483222.00000 put: writing block at offset 0, length 19 #12844 1399483222.00000 _queue_msg: queueing msg len: 42, code:6, id:7 + ... [1] 00 00 00 2a 06 00 00 00 07 00 00 00 02 37 36 00 00 00 00 00 00 00 00 0 +0 00 00 13 54 68 69 73 20 | ...*.........76............This 69 73 20 6f 6e 6c 79 20 61 20 74 65 73 74 | is only a test #12844 1399483222.00000 put: reading block at offset 19 block_size: 32 +768 #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:17, code:101, id:7, sta +tus: 0 65 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 | e................ #12844 1399483222.00000 _queue_msg: queueing msg len: 11, code:4, id:8 + ... [1] 00 00 00 0b 04 00 00 00 08 00 00 00 02 37 36 | .............76 #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:17, code:101, id:8, sta +tus: 0 65 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 | e................ #12844 1399483222.00000 _close: closing file handle, return: 1, rid: 37 36 | 76 #12844 1399483222.00000 _rel2abs: 'test/tessts/test - Copy.txt' --> 't +est/tessts /test - Copy.txt' #12844 1399483222.00000 _queue_msg: queueing msg len: 52, code:9, id:9 + ... [1] 00 00 00 34 09 00 00 00 09 00 00 00 1b 74 65 73 74 2f 74 65 73 73 74 7 +3 2f 74 65 73 74 20 2d 20 | ...4.........test/tessts/test - 43 6f 70 79 2e 74 78 74 00 00 00 0c 00 00 01 b6 53 6a 65 4a 53 6a 4a 9 +b | Copy.txt........SjeJSjJ. #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:44, code:101, id:9, sta +tus: 8 65 00 00 00 09 00 00 00 08 00 00 00 1b 53 53 48 53 65 72 76 65 72 41 5 +0 49 2e 53 46 54 50 2e 66 | e............SSHServerAPI.SFTP.f 78 70 5f 61 74 74 72 73 00 00 00 00 | xp_attrs.... #12844 1399483222.00000 _set_status: _set_status code: 8, str: SSHServ +erAPI.SFTP .fxp_attrs #12844 1399483222.00000 _set_error: _set_err code: 24, str: Couldn't s +etstat rem ote file: SSHServerAPI.SFTP.fxp_attrs #12844 1399483222.00000 DESTROY: Net::SFTP::Foreign::FileHandle=GLOB(0 +x2dabe68)- >DESTROY called (sftp: <undef>) #12844 1399483222.00000 __ANON__: rput handling C:\Users\edawals\Deskt +op\ftpTest Folder\test.txt #12844 1399483222.00000 _rel2abs: 'test/tessts/test.txt' --> 'test/tes +sts/test.t xt' #12844 1399483222.00000 put: local file size is 19 #12844 1399483222.00000 _rel2abs: 'test/tessts/test.txt' --> 'test/tes +sts/test.t xt' #12844 1399483222.00000 _queue_msg: queueing msg len: 41, code:3, id:1 +0 ... [1] 00 00 00 29 03 00 00 00 0a 00 00 00 14 74 65 73 74 2f 74 65 73 73 74 7 +3 2f 74 65 73 74 2e 74 78 | ...).........test/tessts/test.tx 74 00 00 00 1a 00 00 00 04 00 00 01 b6 | t............ #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:11, code:102, id:10, st +atus: - 66 00 00 00 0a 00 00 00 02 37 37 | f........77 #12844 1399483222.00000 open: new remote file 'test/tessts/test.txt' o +pen, rid: 37 37 | 77 #12844 1399483222.00000 put: reading block at offset 0 block_size: 327 +68 #12844 1399483222.00000 put: block read, size: 19 #12844 1399483222.00000 put: writing block at offset 0, length 19 #12844 1399483222.00000 _queue_msg: queueing msg len: 42, code:6, id:1 +1 ... [1] 00 00 00 2a 06 00 00 00 0b 00 00 00 02 37 37 00 00 00 00 00 00 00 00 0 +0 00 00 13 54 68 69 73 20 | ...*.........77............This 69 73 20 6f 6e 6c 79 20 61 20 74 65 73 74 | is only a test #12844 1399483222.00000 put: reading block at offset 19 block_size: 32 +768 #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:17, code:101, id:11, st +atus: 0 65 00 00 00 0b 00 00 00 00 00 00 00 00 00 00 00 00 | e................ #12844 1399483222.00000 _queue_msg: queueing msg len: 11, code:4, id:1 +2 ... [1] 00 00 00 0b 04 00 00 00 0c 00 00 00 02 37 37 | .............77 #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:17, code:101, id:12, st +atus: 0 65 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 00 | e................ #12844 1399483222.00000 _close: closing file handle, return: 1, rid: 37 37 | 77 #12844 1399483222.00000 _rel2abs: 'test/tessts/test.txt' --> 'test/tes +sts/test.t xt' #12844 1399483222.00000 _queue_msg: queueing msg len: 45, code:9, id:1 +3 ... [1] 00 00 00 2d 09 00 00 00 0d 00 00 00 14 74 65 73 74 2f 74 65 73 73 74 7 +3 2f 74 65 73 74 2e 74 78 | ...-.........test/tessts/test.tx 74 00 00 00 0c 00 00 01 b6 53 6a 4a 92 53 6a 4a 9b | t........SjJ.SjJ. #12844 1399483222.00000 _get_msg: waiting for message... [1] #12844 1399483222.00000 _get_msg: got it!, len:44, code:101, id:13, st +atus: 8 65 00 00 00 0d 00 00 00 08 00 00 00 1b 53 53 48 53 65 72 76 65 72 41 5 +0 49 2e 53 46 54 50 2e 66 | e............SSHServerAPI.SFTP.f 78 70 5f 61 74 74 72 73 00 00 00 00 | xp_attrs.... #12844 1399483222.00000 _set_status: _set_status code: 8, str: SSHServ +erAPI.SFTP .fxp_attrs #12844 1399483222.00000 _set_error: _set_err code: 24, str: Couldn't s +etstat rem ote file: SSHServerAPI.SFTP.fxp_attrs #12844 1399483222.00000 DESTROY: Net::SFTP::Foreign::FileHandle=GLOB(0 +x2dac480)- >DESTROY called (sftp: <undef>) put failed: Couldn't setstat remote file: SSHServerAPI.SFTP.fxp_attrs +at testFTP .pl line 27. #12844 1399483222.00000 DESTROY: Net::SFTP::Foreign=HASH(0x32b9e8)->DE +STROY call ed (current pid: 12844, disconnect_by_pid: ) #12844 1399483222.00000 disconnect: Net::SFTP::Foreign=HASH(0x32b9e8)- +>disconnec t called (ssh pid: 16072) #12844 1399483222.00000 _conn_lost: _conn_lost #12844 1399483222.00000 disconnect: process 16072 reaped
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: NET::SFTP::Foreign Error
by salva (Canon) on May 07, 2014 at 20:20 UTC |