Solomon Boulos has uploaded this change for review.

View Change

Implement RENAME3, the last obvious NFSv3 op.

Initial state, before attempting to rename my-first-link (conflicts with my-fifo)

$ ls -l proxy-mount/
total 7036
-rw-r--r-- 1 boulos boulos 3584000 Mar 5 23:11 bytes-again.txt
-rw-r--r-- 1 boulos boulos 3584000 Mar 4 17:59 bytes.txt
drwxr-xr-x 2 boulos boulos 4096 Mar 10 22:56 code
-rw-r--r-- 2 boulos boulos 16 Feb 15 00:15 hard-link.txt
-rw-r--r-- 2 boulos boulos 16 Feb 15 00:15 hello.txt
prw-r--r-- 1 boulos boulos 0 Mar 11 00:40 my-fifo
lrwxrwxrwx 1 boulos boulos 14 Mar 10 23:05 my-first-link.txt -> code/hello.txt
drwxr-xr-x 2 boulos boulos 4096 Mar 10 17:40 newdir
-rw-r--r-- 1 boulos boulos 8 Mar 4 23:39 new.txt
drwxr-xr-x 2 boulos boulos 4096 Mar 10 17:30 sub
drwxr-xr-x 2 boulos boulos 4096 Mar 7 00:29 subdir
-rw-r--r-- 1 boulos boulos 8 Feb 26 02:35 woohoo.txt
-rw-r--r-- 1 boulos boulos 11 Feb 15 00:15 yo.txt

$ mv proxy-mount/my-first-link.txt proxy-mount/link.txt
$ ls -l proxy-mount/
total 7036
-rw-r--r-- 1 boulos boulos 3584000 Mar 5 23:11 bytes-again.txt
-rw-r--r-- 1 boulos boulos 3584000 Mar 4 17:59 bytes.txt
drwxr-xr-x 2 boulos boulos 4096 Mar 10 22:56 code
-rw-r--r-- 2 boulos boulos 16 Feb 15 00:15 hard-link.txt
-rw-r--r-- 2 boulos boulos 16 Feb 15 00:15 hello.txt
lrwxrwxrwx 1 boulos boulos 14 Mar 10 23:05 link.txt -> code/hello.txt
prw-r--r-- 1 boulos boulos 0 Mar 11 00:40 my-fifo
drwxr-xr-x 2 boulos boulos 4096 Mar 10 17:40 newdir
-rw-r--r-- 1 boulos boulos 8 Mar 4 23:39 new.txt
drwxr-xr-x 2 boulos boulos 4096 Mar 10 17:30 sub
drwxr-xr-x 2 boulos boulos 4096 Mar 7 00:29 subdir
-rw-r--r-- 1 boulos boulos 8 Feb 26 02:35 woohoo.txt
-rw-r--r-- 1 boulos boulos 11 Feb 15 00:15 yo.txt

And to make sure that subdirectory support and actual "renaming" works:

$ mv proxy-mount/new.txt proxy-mount/newdir/renamed.txt
$ ls -l proxy-mount/
total 7032
-rw-r--r-- 1 boulos boulos 3584000 Mar 5 23:11 bytes-again.txt
-rw-r--r-- 1 boulos boulos 3584000 Mar 4 17:59 bytes.txt
drwxr-xr-x 2 boulos boulos 4096 Mar 10 22:56 code
-rw-r--r-- 2 boulos boulos 16 Feb 15 00:15 hard-link.txt
-rw-r--r-- 2 boulos boulos 16 Feb 15 00:15 hello.txt
lrwxrwxrwx 1 boulos boulos 14 Mar 10 23:05 link.txt -> code/hello.txt
prw-r--r-- 1 boulos boulos 0 Mar 11 00:40 my-fifo
drwxr-xr-x 2 boulos boulos 4096 Mar 11 00:59 newdir
drwxr-xr-x 2 boulos boulos 4096 Mar 10 17:30 sub
drwxr-xr-x 2 boulos boulos 4096 Mar 7 00:29 subdir
-rw-r--r-- 1 boulos boulos 8 Feb 26 02:35 woohoo.txt
-rw-r--r-- 1 boulos boulos 11 Feb 15 00:15 yo.txt
$ ls -l proxy-mount/newdir/
total 4
-rw-r--r-- 1 boulos boulos 8 Mar 4 23:39 renamed.txt

Change-Id: Ic6cb030021f3ec4e180926c2c5bc21dea6152f00
Signed-off-by: Solomon Boulos <boulos@google.com>
---
M src/FSAL/FSAL_PROXY_V3/main.c
1 file changed, 52 insertions(+), 1 deletion(-)

git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/68/487468/1

To view, visit change 487468. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: Ic6cb030021f3ec4e180926c2c5bc21dea6152f00
Gerrit-Change-Number: 487468
Gerrit-PatchSet: 1
Gerrit-Owner: Solomon Boulos <boulos@google.com>
Gerrit-MessageType: newchange