DevHeads.net

Review Request 120761: Added support for NFSv3, major refactoring, fixed bugs

Review request for KDE Runtime.

Repository: kde-runtime

Description
This patch adds proper support for NFSv3 in the kio module, it still supports NFSv2 servers of course. I implemented it in such a way that it loops through the versions trying to find a compatible one.
I also found when working with it that the code was far from optimal, so I have done some major refactoring and optimisation work which also fixes a couple of bugs. That's why the patch is so big.

This is a backport of <a href="https://git.reviewboard.kde.org/r/120343/" title="https://git.reviewboard.kde.org/r/120343/">https://git.reviewboard.kde.org/r/120343/</a>.

Diffs
kioslave/nfs/rpc_mnt2_xdr.c PRE-CREATION
kioslave/nfs/rpc_mnt3.h PRE-CREATION
kioslave/nfs/rpc_mnt3_xdr.c PRE-CREATION
kioslave/nfs/rpc_nfs2_prot.h PRE-CREATION
kioslave/nfs/rpc_nfs2_prot_xdr.c PRE-CREATION
kioslave/nfs/rpc_nfs3_prot.h PRE-CREATION
kioslave/nfs/rpc_nfs3_prot.x PRE-CREATION
kioslave/nfs/rpc_nfs3_prot_xdr.c PRE-CREATION
kioslave/nfs/nfsv2.h PRE-CREATION
kioslave/nfs/nfsv2.cpp PRE-CREATION
kioslave/nfs/nfsv3.h PRE-CREATION
kioslave/nfs/nfsv3.cpp PRE-CREATION
kioslave/nfs/nfs_prot.h 5ed218f20d2fda219adda6899a1321fc3d384d1e
kioslave/nfs/nfs_prot.x
kioslave/nfs/nfs_prot_xdr.c cd1354668d40616a0a0864bc6b3d68ccc5ef3e4f
kioslave/nfs/mount_xdr.c 433a8596884bdb4fe05795c74de21767ed88d6eb
kioslave/nfs/nfs.protocol 4781b3ca1424473c913e7ee265ee6fffa50cce39
kioslave/nfs/mount.h c3b8c217f3574c8afd2410ad2b50ec98828e31bb
kioslave/nfs/mount.x
kioslave/nfs/kio_nfs.h ec52564f5fa2c5ce38f354bbe94b86a75fb7f6b0
kioslave/nfs/kio_nfs.cpp 3f94b9129bf9f126aef1e4356dc533420151ae2a
kioslave/nfs/CMakeLists.txt b973a736393388af5d66b8b7d6b055f497f3bdf8
kioslave/nfs/README 9d92d73104ede629e617aeb8e117802ebf4190c2
kioslave/nfs/TODO 6e5525127454c936f829028c521999ba4f046c08

Diff: <a href="https://git.reviewboard.kde.org/r/120761/diff/" title="https://git.reviewboard.kde.org/r/120761/diff/">https://git.reviewboard.kde.org/r/120761/diff/</a>

Testing
I've tried browsing NFS servers that are compatible with both version 2 and 3, as well as one server that was only compatible with version 3 (see bug #309113).
In addition to that I've tried most things I can think of like copying, changing permissions, creating files and directories etc.

Due to its size it will most likely require more testing, but my tests have so far been successful.

Thanks,

Mathias Tillman

Comments

Re: Review Request 120761: Added support for NFSv3, major refact

By Mathias Tillman at 11/16/2014 - 10:23

(Updated Nov. 16, 2014, 2:23 p.m.)

Review request for KDE Runtime and Albert Astals Cid.

Repository: kde-runtime

Description
This patch adds proper support for NFSv3 in the kio module, it still supports NFSv2 servers of course. I implemented it in such a way that it loops through the versions trying to find a compatible one.
I also found when working with it that the code was far from optimal, so I have done some major refactoring and optimisation work which also fixes a couple of bugs. That's why the patch is so big.

This is a backport of <a href="https://git.reviewboard.kde.org/r/120343/" title="https://git.reviewboard.kde.org/r/120343/">https://git.reviewboard.kde.org/r/120343/</a>.

Diffs
kioslave/nfs/rpc_mnt2_xdr.c PRE-CREATION
kioslave/nfs/rpc_mnt3.h PRE-CREATION
kioslave/nfs/rpc_mnt3_xdr.c PRE-CREATION
kioslave/nfs/rpc_nfs2_prot.h PRE-CREATION
kioslave/nfs/rpc_nfs2_prot_xdr.c PRE-CREATION
kioslave/nfs/rpc_nfs3_prot.h PRE-CREATION
kioslave/nfs/rpc_nfs3_prot.x PRE-CREATION
kioslave/nfs/rpc_nfs3_prot_xdr.c PRE-CREATION
kioslave/nfs/nfsv2.h PRE-CREATION
kioslave/nfs/nfsv2.cpp PRE-CREATION
kioslave/nfs/nfsv3.h PRE-CREATION
kioslave/nfs/nfsv3.cpp PRE-CREATION
kioslave/nfs/nfs_prot.h 5ed218f20d2fda219adda6899a1321fc3d384d1e
kioslave/nfs/nfs_prot.x
kioslave/nfs/nfs_prot_xdr.c cd1354668d40616a0a0864bc6b3d68ccc5ef3e4f
kioslave/nfs/mount_xdr.c 433a8596884bdb4fe05795c74de21767ed88d6eb
kioslave/nfs/nfs.protocol 4781b3ca1424473c913e7ee265ee6fffa50cce39
kioslave/nfs/mount.h c3b8c217f3574c8afd2410ad2b50ec98828e31bb
kioslave/nfs/mount.x
kioslave/nfs/kio_nfs.h ec52564f5fa2c5ce38f354bbe94b86a75fb7f6b0
kioslave/nfs/kio_nfs.cpp 3f94b9129bf9f126aef1e4356dc533420151ae2a
kioslave/nfs/CMakeLists.txt b973a736393388af5d66b8b7d6b055f497f3bdf8
kioslave/nfs/README 9d92d73104ede629e617aeb8e117802ebf4190c2
kioslave/nfs/TODO 6e5525127454c936f829028c521999ba4f046c08

Diff: <a href="https://git.reviewboard.kde.org/r/120761/diff/" title="https://git.reviewboard.kde.org/r/120761/diff/">https://git.reviewboard.kde.org/r/120761/diff/</a>

Testing
I've tried browsing NFS servers that are compatible with both version 2 and 3, as well as one server that was only compatible with version 3 (see bug #309113).
In addition to that I've tried most things I can think of like copying, changing permissions, creating files and directories etc.

Due to its size it will most likely require more testing, but my tests have so far been successful.

Thanks,

Mathias Tillman

Re: Review Request 120761: Added support for NFSv3, major refact

By Mathias Tillman at 12/17/2014 - 06:05

(Updated Dec. 17, 2014, 10:05 a.m.)

Status
This change has been marked as submitted.

Review request for KDE Runtime and Albert Astals Cid.

Repository: kde-runtime

Description
This patch adds proper support for NFSv3 in the kio module, it still supports NFSv2 servers of course. I implemented it in such a way that it loops through the versions trying to find a compatible one.
I also found when working with it that the code was far from optimal, so I have done some major refactoring and optimisation work which also fixes a couple of bugs. That's why the patch is so big.

This is a backport of <a href="https://git.reviewboard.kde.org/r/120343/" title="https://git.reviewboard.kde.org/r/120343/">https://git.reviewboard.kde.org/r/120343/</a>.

Diffs
kioslave/nfs/rpc_mnt2_xdr.c PRE-CREATION
kioslave/nfs/rpc_mnt3.h PRE-CREATION
kioslave/nfs/rpc_mnt3_xdr.c PRE-CREATION
kioslave/nfs/rpc_nfs2_prot.h PRE-CREATION
kioslave/nfs/rpc_nfs2_prot_xdr.c PRE-CREATION
kioslave/nfs/rpc_nfs3_prot.h PRE-CREATION
kioslave/nfs/rpc_nfs3_prot.x PRE-CREATION
kioslave/nfs/rpc_nfs3_prot_xdr.c PRE-CREATION
kioslave/nfs/nfsv2.h PRE-CREATION
kioslave/nfs/nfsv2.cpp PRE-CREATION
kioslave/nfs/nfsv3.h PRE-CREATION
kioslave/nfs/nfsv3.cpp PRE-CREATION
kioslave/nfs/nfs_prot.h 5ed218f20d2fda219adda6899a1321fc3d384d1e
kioslave/nfs/nfs_prot.x
kioslave/nfs/nfs_prot_xdr.c cd1354668d40616a0a0864bc6b3d68ccc5ef3e4f
kioslave/nfs/mount_xdr.c 433a8596884bdb4fe05795c74de21767ed88d6eb
kioslave/nfs/nfs.protocol 4781b3ca1424473c913e7ee265ee6fffa50cce39
kioslave/nfs/mount.h c3b8c217f3574c8afd2410ad2b50ec98828e31bb
kioslave/nfs/mount.x
kioslave/nfs/kio_nfs.h ec52564f5fa2c5ce38f354bbe94b86a75fb7f6b0
kioslave/nfs/kio_nfs.cpp 3f94b9129bf9f126aef1e4356dc533420151ae2a
kioslave/nfs/CMakeLists.txt b973a736393388af5d66b8b7d6b055f497f3bdf8
kioslave/nfs/README 9d92d73104ede629e617aeb8e117802ebf4190c2
kioslave/nfs/TODO 6e5525127454c936f829028c521999ba4f046c08

Diff: <a href="https://git.reviewboard.kde.org/r/120761/diff/" title="https://git.reviewboard.kde.org/r/120761/diff/">https://git.reviewboard.kde.org/r/120761/diff/</a>

Testing
I've tried browsing NFS servers that are compatible with both version 2 and 3, as well as one server that was only compatible with version 3 (see bug #309113).
In addition to that I've tried most things I can think of like copying, changing permissions, creating files and directories etc.

Due to its size it will most likely require more testing, but my tests have so far been successful.

Thanks,

Mathias Tillman

Re: Review Request 120761: Added support for NFSv3, major refact

By Christoph Feck at 11/16/2014 - 10:24

Albert, this is a backport of <a href="https://git.reviewboard.kde.org/r/120343/" title="https://git.reviewboard.kde.org/r/120343/">https://git.reviewboard.kde.org/r/120343/</a>

David Faure already approved a backport to KDE 4 there, but was not sure if release team is okey with the backport.

- Christoph Feck

On Nov. 16, 2014, 2:23 p.m., Mathias Tillman wrote:

Re: Review Request 120761: Added support for NFSv3, major refact

By Albert Astals Cid at 12/14/2014 - 13:02

Mathias can you please commit this to kde-runtime master branch?

- Albert

On nov. 16, 2014, 2:23 p.m., Mathias Tillman wrote:

Re: Review Request 120761: Added support for NFSv3, major refact

By Albert Astals Cid at 11/16/2014 - 12:45

I've the feeling i've already weighted in my opinion on this, but i'll give it again :)
kde-runtime 4.14 is not having more releases so imho doesn't make sense in commiting there. kde-runtime Applications/14.12 is in beta stage and master is open for new features, i'll leave to someone else to decide if this is a bugfix or a feature.

- Albert

On nov. 16, 2014, 2:23 p.m., Mathias Tillman wrote: