Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f394baad authored by J. Bruce Fields's avatar J. Bruce Fields
Browse files

nfsd4: kill unnecessary same_name() in setclientid_confirm



If conf and unconf are both found in the lookup by cl_clientid, then
they share the same cl_clientid.  We always create a unique new
cl_clientid field when creating a new client--the only exception is the
"probable callback update" case in setclientid, where we copy the old
cl_clientid from another clientid with the same name.

Therefore two clients with the same cl_client field also always share
the same cl_name field, and a couple of the checks here are redundant.

Thanks to Simon Holm Thøgersen for a compile fix.

Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
Cc: Simon Holm Thøgersen <odie@cs.aau.dk>
parent deda2faa
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -838,7 +838,6 @@ nfsd4_setclientid_confirm(struct svc_rqst *rqstp,
	if ((conf && unconf) && 
	    (same_verf(&unconf->cl_confirm, &confirm)) &&
	    (same_verf(&conf->cl_verifier, &unconf->cl_verifier)) &&
	    (same_name(conf->cl_recdir,unconf->cl_recdir))  &&
	    (!same_verf(&conf->cl_confirm, &unconf->cl_confirm))) {
		/*
		 * RFC 3530 14.2.34 CASE 1:
@@ -858,8 +857,7 @@ nfsd4_setclientid_confirm(struct svc_rqst *rqstp,
		}
	} else if ((conf && !unconf) ||
	    ((conf && unconf) && 
	     (!same_verf(&conf->cl_verifier, &unconf->cl_verifier) ||
	      !same_name(conf->cl_recdir, unconf->cl_recdir)))) {
	     !same_verf(&conf->cl_verifier, &unconf->cl_verifier))) {
		/*
		 * RFC 3530 14.2.34 CASE 2:
		 * probable retransmitted request; play it safe and