diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2012-10-15 13:38:25 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2012-10-15 13:38:25 +0000 |
commit | 6496473bfee6f6a2d16c5125ded8f99073d0cc37 (patch) | |
tree | ca45c1954d0af101de09a8559450a8e744086f3e /sys | |
parent | 5ef1c68c3e247a26c0b126f87459dec55746119c (diff) | |
download | FreeBSD-src-6496473bfee6f6a2d16c5125ded8f99073d0cc37.zip FreeBSD-src-6496473bfee6f6a2d16c5125ded8f99073d0cc37.tar.gz |
Add a comment describing why r241097 was done.
Suggested by: rwatson
MFC after: 1 week
Diffstat (limited to 'sys')
-rw-r--r-- | sys/rpc/rpcsec_gss/svc_rpcsec_gss.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c b/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c index dadd36e..0437189 100644 --- a/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c +++ b/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c @@ -1024,6 +1024,17 @@ svc_rpc_gss_validate(struct svc_rpc_gss_client *client, struct rpc_msg *msg, if (maj_stat != GSS_S_COMPLETE) { rpc_gss_log_status("gss_verify_mic", client->cl_mech, maj_stat, min_stat); + /* + * Attila Bogar and Herbert Poeckl reported similar problems + * w.r.t. a Linux NFS client doing a krb5 NFS mount against the + * FreeBSD server. We determined this was a Linux bug: + * http://www.spinics.net/lists/linux-nfs/msg32466.html, where + * the mount failed to work because a Destroy operation with a + * bogus encrypted checksum destroyed the authenticator handle. + * Since the checksum is bogus (gss_verify_mic() failed), it + * doesn't make sense to destroy the handle and not doing so + * fixes the Linux mount. + */ if (gcproc != RPCSEC_GSS_DESTROY) client->cl_state = CLIENT_STALE; return (FALSE); |