[ 
https://issues.apache.org/jira/browse/SSHD-100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12966763#action_12966763
 ] 

Bobby Powers commented on SSHD-100:
-----------------------------------

I'm willing to take a stab with it monday or tuesday, but since I'm completely 
unfamiliar with the codebase I'd appreciate any pointers you folks can give.

> [sftp] open(2) w/ O_CREAT|O_TRUNC works, but O_CREAT alone fails
> ----------------------------------------------------------------
>
>                 Key: SSHD-100
>                 URL: https://issues.apache.org/jira/browse/SSHD-100
>             Project: MINA SSHD
>          Issue Type: Bug
>            Reporter: Bobby Powers
>         Attachments: test.c
>
>
> Hi folks,
> I've mounted an sftp directory using sshfs like so: 
> # sshfs -d -p 9022 bpow...@$server_name:/bpowers /home/bpowers/Desktop/wintest
> The following sequences of commands shows the problem:
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# rm -f bar
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# touch bar
> touch: cannot touch `bar': No such file or directory
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# echo "foo" > bar
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# cat bar
> foo
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# rm bar
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# touch bar
> touch: cannot touch `bar': No such file or directory
> ...
> I've reduced it to a simple test case.  Running the attached program gives me 
> the following:
> r...@bpowers-laptop:/home/bpowers/Desktop/wintest/test# 
> /home/bpowers/creat_test 
> /home/bpowers/Desktop/wintest/test/abc2: No such file or directory
> /home/bpowers/Desktop/wintest/test/abc3: worked.
> The difference is in the flags passed to open(2), and the consequence of this 
> is that I cannot use cp or rsync to create any files over sftp (although they 
> will update existing files).  
> see attachment for the source of creat_test, which can be compiled with:
> $ gcc -o creat_test test.c
> and
> $ man 2 open
> for a description of the flags.
> Debugging output from sshfs shows the following:
> unique: 39, opcode: LOOKUP (1), nodeid: 1, insize: 45
> LOOKUP /test
> getattr /test
>      NODEID: 2
>      unique: 39, success, outsize: 144
> unique: 40, opcode: LOOKUP (1), nodeid: 2, insize: 45
> LOOKUP /test/abc2
> getattr /test/abc2
>      unique: 40, error: -2 (No such file or directory), 
> outsize: 16
> unique: 41, opcode: CREATE (35), nodeid: 2, insize: 61
> create flags: 0x8041 /test/abc2 0100644 umask=0022
>      unique: 41, error: -2 (No such file or directory), 
> outsize: 16
> unique: 42, opcode: LOOKUP (1), nodeid: 2, insize: 45
> LOOKUP /test/abc3
> getattr /test/abc3
>      unique: 42, error: -2 (No such file or directory), 
> outsize: 16
> unique: 43, opcode: CREATE (35), nodeid: 2, insize: 61
> create flags: 0x8241 /test/abc3 0100644 umask=0022
>      create[25271456] flags: 0x8241 /test/abc3
> fgetattr[25271456] /test/abc3
>      NODEID: 4
>      unique: 43, success, outsize: 160
> unique: 44, opcode: FLUSH (25), nodeid: 4, insize: 64
> flush[25271456]
>      unique: 44, success, outsize: 16
> unique: 45, opcode: RELEASE (18), nodeid: 4, insize: 64
> release[25271456] flags: 0x8001
>      unique: 45, success, outsize: 16

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to