When RPC messages is received with RPCSEC_GSS, and if the RPCSEC_GSS include unkown services (not RPC_GSS_SVC_NONE, RPC_GSS_SVC_INTEGRITY and RPC_GSS_SVC_PRIVACY), the response is considered as AUTH_BADCRED in svcauth_gss_accept(), but the response be drop by svcauth_gss_release(). I think response with AUTH_BADCRED is correct one. So this patch fixed it. Signed-off-by: Wei Yongjun <yjwei@xxxxxxxxxxxxxx> --- static int svcauth_gss_accept(struct svc_rqst *rqstp, __be32 *authp) { switch (gc->gc_svc) { case RPC_GSS_SVC_NONE: ... case RPC_GSS_SVC_INTEGRITY: ... case RPC_GSS_SVC_PRIVACY: ... default: goto auth_err; <-- reply with AUTH_BADCRED } ... } static int svcauth_gss_release(struct svc_rqst *rqstp) { ... switch (gc->gc_svc) { case RPC_GSS_SVC_NONE: break; case RPC_GSS_SVC_INTEGRITY: ... case RPC_GSS_SVC_PRIVACY: ... default: goto out_err; <--- will drop it } ... } --- net/sunrpc/auth_gss/svcauth_gss.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/net/sunrpc/auth_gss/svcauth_gss.c b/net/sunrpc/auth_gss/svcauth_gss.c index 2278a50..6dce327 100644 --- a/net/sunrpc/auth_gss/svcauth_gss.c +++ b/net/sunrpc/auth_gss/svcauth_gss.c @@ -1370,7 +1370,7 @@ svcauth_gss_release(struct svc_rqst *rqstp) goto out_err; break; default: - goto out_err; + goto out; } out: -- 1.6.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html