Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Jun 2009 23:16:40 +0000 (UTC)
From:      Rick Macklem <rmacklem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r194133 - head/sys/rpc/rpcsec_gss
Message-ID:  <200906132316.n5DNGekM027163@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rmacklem
Date: Sat Jun 13 23:16:40 2009
New Revision: 194133
URL: http://svn.freebsd.org/changeset/base/194133

Log:
  When a Solaris10 client does an NFS mount using krb5i or krb5p, the
  server would crash because the Solaris10 client would attempt to use
  Sun's NFSACL protocol, which FreeBSD doesn't support. When the server
  generated the error reply via svcerr_noprog(), it would cause a crash
  because it would try and wrap a NULL reply. According to RFC2203, no
  wrapping is required for error cases. This one line change avoids
  wrapping of NULL replies.
  
  Reviewed by:	dfr
  Approved by:	kib (mentor)

Modified:
  head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c

Modified: head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
==============================================================================
--- head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c	Sat Jun 13 23:05:54 2009	(r194132)
+++ head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c	Sat Jun 13 23:16:40 2009	(r194133)
@@ -1442,7 +1442,7 @@ svc_rpc_gss_wrap(SVCAUTH *auth, struct m
 	cc = (struct svc_rpc_gss_cookedcred *) auth->svc_ah_private;
 	client = cc->cc_client;
 	if (client->cl_state != CLIENT_ESTABLISHED
-	    || cc->cc_service == rpc_gss_svc_none) {
+	    || cc->cc_service == rpc_gss_svc_none || *mp == NULL) {
 		return (TRUE);
 	}
 	



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906132316.n5DNGekM027163>