NFS check the return of nfs4_negotiate_security in nfs4_submount
authorAndy Adamson <[email protected]>
Mon, 9 Jun 2014 19:33:19 +0000 (15:33 -0400)
committerTrond Myklebust <[email protected]>
Tue, 24 Jun 2014 22:46:57 +0000 (18:46 -0400)
Signed-off-by: Andy Adamson <[email protected]>
Tested-By: Steve Dickson <[email protected]>
Signed-off-by: Trond Myklebust <[email protected]>
fs/nfs/nfs4namespace.c

index 3d5dbf80d46a8c844bf7fd96c6db6935bb76d48b..1b86fef0b82822dad1dab8dda60a4520f4cb472b 100644 (file)
@@ -399,8 +399,11 @@ struct vfsmount *nfs4_submount(struct nfs_server *server, struct dentry *dentry,
                flavor = client->cl_auth->au_flavor;
        else {
                rpc_authflavor_t new = nfs4_negotiate_security(dir, name);
-               if ((int)new >= 0)
-                       flavor = new;
+               if ((int)new < 0) {
+                       mnt = ERR_PTR((int)new);
+                       goto out;
+               }
+               flavor = new;
        }
        mnt = nfs_do_submount(dentry, fh, fattr, flavor);
 out: