diff options
| author | NeilBrown <neilb@suse.de> | 2010-08-12 17:04:07 +1000 | 
|---|---|---|
| committer | J. Bruce Fields <bfields@redhat.com> | 2010-09-21 19:16:31 -0400 | 
| commit | 2ed5282cd9b44686a6e718269abb5c5cd332d8f1 (patch) | |
| tree | 7c7c00b3b1f52f4d038e04bcc46d1e8cd4eff8ff /net/sunrpc/auth_gss/svcauth_gss.c | |
| parent | 839049a8732d689d02051e0198fb60a22f7ccb4b (diff) | |
| download | olio-linux-3.10-2ed5282cd9b44686a6e718269abb5c5cd332d8f1.tar.xz olio-linux-3.10-2ed5282cd9b44686a6e718269abb5c5cd332d8f1.zip  | |
svcauth_gss: replace a trivial 'switch' with an 'if'
Code like:
  switch(xxx) {
  case -error1:
  case -error2:
     ..
     return;
  case 0:
     stuff;
  }
  can more naturally be written:
  if (xxx < 0)
      return;
  stuff;
Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'net/sunrpc/auth_gss/svcauth_gss.c')
| -rw-r--r-- | net/sunrpc/auth_gss/svcauth_gss.c | 41 | 
1 files changed, 19 insertions, 22 deletions
diff --git a/net/sunrpc/auth_gss/svcauth_gss.c b/net/sunrpc/auth_gss/svcauth_gss.c index ed005af3ef5..dec2a6fc7c1 100644 --- a/net/sunrpc/auth_gss/svcauth_gss.c +++ b/net/sunrpc/auth_gss/svcauth_gss.c @@ -1034,30 +1034,27 @@ static int svcauth_gss_handle_init(struct svc_rqst *rqstp,  	rsi_free(&rsikey);  	if (!rsip)  		return SVC_CLOSE; -	switch (cache_check(&rsi_cache, &rsip->h, &rqstp->rq_chandle)) { -	case -EAGAIN: -	case -ETIMEDOUT: -	case -ENOENT: +	if (cache_check(&rsi_cache, &rsip->h, &rqstp->rq_chandle) < 0)  		/* No upcall result: */  		return SVC_CLOSE; -	case 0: -		ret = SVC_CLOSE; -		/* Got an answer to the upcall; use it: */ -		if (gss_write_init_verf(rqstp, rsip)) -			goto out; -		if (resv->iov_len + 4 > PAGE_SIZE) -			goto out; -		svc_putnl(resv, RPC_SUCCESS); -		if (svc_safe_putnetobj(resv, &rsip->out_handle)) -			goto out; -		if (resv->iov_len + 3 * 4 > PAGE_SIZE) -			goto out; -		svc_putnl(resv, rsip->major_status); -		svc_putnl(resv, rsip->minor_status); -		svc_putnl(resv, GSS_SEQ_WIN); -		if (svc_safe_putnetobj(resv, &rsip->out_token)) -			goto out; -	} + +	ret = SVC_CLOSE; +	/* Got an answer to the upcall; use it: */ +	if (gss_write_init_verf(rqstp, rsip)) +		goto out; +	if (resv->iov_len + 4 > PAGE_SIZE) +		goto out; +	svc_putnl(resv, RPC_SUCCESS); +	if (svc_safe_putnetobj(resv, &rsip->out_handle)) +		goto out; +	if (resv->iov_len + 3 * 4 > PAGE_SIZE) +		goto out; +	svc_putnl(resv, rsip->major_status); +	svc_putnl(resv, rsip->minor_status); +	svc_putnl(resv, GSS_SEQ_WIN); +	if (svc_safe_putnetobj(resv, &rsip->out_token)) +		goto out; +  	ret = SVC_COMPLETE;  out:  	cache_put(&rsip->h, &rsi_cache);  |