Check that the KDC seem to there and answering us, we can't do better
then that wen checking if we will accept the credential. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@19400 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		@@ -46,6 +46,11 @@ OM_uint32 _gss_ntlm_acquire_cred
 | 
				
			|||||||
            OM_uint32 * time_rec
 | 
					            OM_uint32 * time_rec
 | 
				
			||||||
           )
 | 
					           )
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					    OM_uint32 major_status;
 | 
				
			||||||
 | 
					    krb5_error_code ret;
 | 
				
			||||||
 | 
					    ntlm_ctx ctx;
 | 
				
			||||||
 | 
					    ntlm_name name = (ntlm_name)desired_name;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    *minor_status = 0;
 | 
					    *minor_status = 0;
 | 
				
			||||||
    if (output_cred_handle)
 | 
					    if (output_cred_handle)
 | 
				
			||||||
	*output_cred_handle = GSS_C_NO_CREDENTIAL;
 | 
						*output_cred_handle = GSS_C_NO_CREDENTIAL;
 | 
				
			||||||
@@ -53,5 +58,28 @@ OM_uint32 _gss_ntlm_acquire_cred
 | 
				
			|||||||
	*actual_mechs = GSS_C_NO_OID_SET;
 | 
						*actual_mechs = GSS_C_NO_OID_SET;
 | 
				
			||||||
    if (time_rec)
 | 
					    if (time_rec)
 | 
				
			||||||
	*time_rec = GSS_C_INDEFINITE;
 | 
						*time_rec = GSS_C_INDEFINITE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    major_status = _gss_ntlm_allocate_ctx(minor_status, &ctx);
 | 
				
			||||||
 | 
					    if (major_status != GSS_S_COMPLETE)
 | 
				
			||||||
 | 
						return GSS_S_FAILURE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ret = krb5_ntlm_init_request(ctx->context, 
 | 
				
			||||||
 | 
									 ctx->ntlm,
 | 
				
			||||||
 | 
									 NULL,
 | 
				
			||||||
 | 
									 ctx->id,
 | 
				
			||||||
 | 
									 NTLM_NEG_UNICODE|NTLM_NEG_NTLM,
 | 
				
			||||||
 | 
									 name->domain,
 | 
				
			||||||
 | 
									 NULL);
 | 
				
			||||||
 | 
					    if (ret) {
 | 
				
			||||||
 | 
						*minor_status = ret;
 | 
				
			||||||
 | 
						return GSS_S_FAILURE;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
						gss_ctx_id_t context = (gss_ctx_id_t)ctx;
 | 
				
			||||||
 | 
						_gss_ntlm_delete_sec_context(minor_status, &context, NULL);
 | 
				
			||||||
 | 
						*minor_status = 0;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (GSS_S_COMPLETE);
 | 
					    return (GSS_S_COMPLETE);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user