svn rev #22178: branches/krb5-1-6/src/lib/gssapi/spnego/

tlyu@MIT.EDU tlyu at MIT.EDU
Tue Apr 7 21:22:45 EDT 2009


http://src.mit.edu/fisheye/changelog/krb5/?cs=22178
Commit By: tlyu
Log Message:
ticket: 6426

Apply revised patch from Apple that ensures that a REJECT token is
sent on error.


Changed Files:
U   branches/krb5-1-6/src/lib/gssapi/spnego/spnego_mech.c
Modified: branches/krb5-1-6/src/lib/gssapi/spnego/spnego_mech.c
===================================================================
--- branches/krb5-1-6/src/lib/gssapi/spnego/spnego_mech.c	2009-04-07 23:59:25 UTC (rev 22177)
+++ branches/krb5-1-6/src/lib/gssapi/spnego/spnego_mech.c	2009-04-08 01:22:45 UTC (rev 22178)
@@ -1248,9 +1248,9 @@
 				 &negState, &return_token);
 	}
 cleanup:
-	if (return_token == INIT_TOKEN_SEND ||
-	    return_token == CONT_TOKEN_SEND) {
-		tmpret = make_spnego_tokenTarg_msg(negState, sc->internal_mech,
+	if (return_token != NO_TOKEN_SEND && return_token != CHECK_MIC) {
+		tmpret = make_spnego_tokenTarg_msg(negState,
+						   sc ? sc->internal_mech : GSS_C_NO_OID,
 						   &mechtok_out, mic_out,
 						   return_token,
 						   output_token);
@@ -2465,6 +2465,8 @@
 
 	if (outbuf == GSS_C_NO_BUFFER)
 		return (GSS_S_DEFECTIVE_TOKEN);
+	if (sendtoken == INIT_TOKEN_SEND && mech_wanted == GSS_C_NO_OID)
+	    return (GSS_S_DEFECTIVE_TOKEN);
 
 	outbuf->length = 0;
 	outbuf->value = NULL;




More information about the cvs-krb5 mailing list