FreeBSD/crypto/openssh/auth2-gss.c
/*
 * This is called when the client thinks we've completed authentication.
 * It should only be enabled in the dispatch handler by the function above,
 * which only enables it once the GSSAPI exchange is complete.
 */
This is called when the client thinks we've completed authentication.
It should only be enabled in the dispatch handler by the function above,
which only enables it once the GSSAPI exchange is complete.
This is called when the client thinks we ' ve completed authentication . It should only be enabled in the dispatch handler by the function above which only enables it once the GSSAPI exchange is complete .
static int
input_gssapi_exchange_complete(int type, u_int32_t plen, void *ctxt)
{
	Authctxt *authctxt = ctxt;
	int authenticated;
	if (authctxt == NULL || (authctxt->methoddata == NULL && !use_privsep))
		fatal("No authentication or GSSAPI context");
	packet_check_eom();
	authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user));
	authctxt->postponed = 0;
	dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL);
	dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_ERRTOK, NULL);
	dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_MIC, NULL);
	dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETE, NULL);
	userauth_finish(authctxt, authenticated, "gssapi-with-mic", NULL);
	return 0;
}
static int input_gssapi_exchange_complete ( int type , u_int32_t plen , void * ctxt ) { Authctxt * authctxt = ctxt ; int authenticated ; if ( authctxt == NULL || ( authctxt -> methoddata == NULL && ! use_privsep ) ) fatal ( " " ) ; packet_check_eom ( ) ; authenticated = PRIVSEP ( ssh_gssapi_userok ( authctxt -> user ) ) ; authctxt -> postponed = 0 ; dispatch_set ( SSH2_MSG_USERAUTH_GSSAPI_TOKEN , NULL ) ; dispatch_set ( SSH2_MSG_USERAUTH_GSSAPI_ERRTOK , NULL ) ; dispatch_set ( SSH2_MSG_USERAUTH_GSSAPI_MIC , NULL ) ; dispatch_set ( SSH2_MSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETE , NULL ) ; userauth_finish ( authctxt , authenticated , " " , NULL ) ; return 0 ; }
This is called when the client thinks we've completed authentication.
This is called when the client thinks we ' ve completed authentication .
/*
	 * We don't need to check the status, because we're only enabled in
	 * the dispatcher once the exchange is complete
	 */