aboutsummaryrefslogtreecommitdiff
path: root/sys/rpc
diff options
context:
space:
mode:
authorRick Macklem <rmacklem@FreeBSD.org>2009-06-13 23:16:40 +0000
committerRick Macklem <rmacklem@FreeBSD.org>2009-06-13 23:16:40 +0000
commitaae53bae730cc643c9274fb74c7acdf272f6bf2c (patch)
tree628f8e705ca2c34dcb7b7660f8895c4fd66a12ab /sys/rpc
parentcfed37836e37354fd3601ab9240b73b68a185742 (diff)
downloadsrc-aae53bae730cc643c9274fb74c7acdf272f6bf2c.tar.gz
src-aae53bae730cc643c9274fb74c7acdf272f6bf2c.zip
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)
Notes
Notes: svn path=/head/; revision=194133
Diffstat (limited to 'sys/rpc')
-rw-r--r--sys/rpc/rpcsec_gss/svc_rpcsec_gss.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c b/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
index e2469fdedc54..eb9314b6e55a 100644
--- a/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
+++ b/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
@@ -1442,7 +1442,7 @@ svc_rpc_gss_wrap(SVCAUTH *auth, struct mbuf **mp)
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);
}