[Midnightbsd-cvs] src [8206] trunk/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c: work around a linux bug
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Sep 17 11:52:04 EDT 2016
Revision: 8206
http://svnweb.midnightbsd.org/src/?rev=8206
Author: laffer1
Date: 2016-09-17 11:52:04 -0400 (Sat, 17 Sep 2016)
Log Message:
-----------
work around a linux bug
Modified Paths:
--------------
trunk/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
Modified: trunk/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
===================================================================
--- trunk/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c 2016-09-17 15:51:04 UTC (rev 8205)
+++ trunk/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c 2016-09-17 15:52:04 UTC (rev 8206)
@@ -984,7 +984,7 @@
static bool_t
svc_rpc_gss_validate(struct svc_rpc_gss_client *client, struct rpc_msg *msg,
- gss_qop_t *qop)
+ gss_qop_t *qop, rpc_gss_proc_t gcproc)
{
struct opaque_auth *oa;
gss_buffer_desc rpcbuf, checksum;
@@ -1024,7 +1024,8 @@
if (maj_stat != GSS_S_COMPLETE) {
rpc_gss_log_status("gss_verify_mic", client->cl_mech,
maj_stat, min_stat);
- client->cl_state = CLIENT_STALE;
+ if (gcproc != RPCSEC_GSS_DESTROY)
+ client->cl_state = CLIENT_STALE;
return (FALSE);
}
@@ -1358,7 +1359,7 @@
break;
}
- if (!svc_rpc_gss_validate(client, msg, &qop)) {
+ if (!svc_rpc_gss_validate(client, msg, &qop, gc.gc_proc)) {
result = RPCSEC_GSS_CREDPROBLEM;
break;
}
More information about the Midnightbsd-cvs
mailing list