Blob Blame History Raw
diff -up openssh-5.8p1/sshconnect2.c.canohost openssh-5.8p1/sshconnect2.c
--- openssh-5.8p1/sshconnect2.c.canohost	2011-02-14 15:15:15.000000000 +0100
+++ openssh-5.8p1/sshconnect2.c	2011-02-14 15:21:45.000000000 +0100
@@ -697,14 +697,17 @@ userauth_gssapi(Authctxt *authctxt)
 	static u_int mech = 0;
 	OM_uint32 min;
 	int ok = 0;
-	const char *gss_host;
+	const char *gss_host = NULL;
 
 	if (options.gss_server_identity)
 		gss_host = options.gss_server_identity;
 	else if (options.gss_trust_dns)
 		gss_host = get_canonical_hostname(1);
-	else
-		gss_host = authctxt->host;
+	else {
+		gss_host = get_canonical_hostname(1);
+		if ( strcmp( gss_host, "UNKNOWN" )  == 0 )
+			gss_host = authctxt->host;
+	}
 
 	/* Try one GSSAPI method at a time, rather than sending them all at
 	 * once. */