From: Derrick Brashear Date: Fri, 19 Jan 2001 06:26:34 +0000 (+0000) Subject: krb-udp-cleanup-20010119 X-Git-Tag: BP-openafs-devel-autoconf~111 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=084d1b109f8d1cc526dd3e07ac89ceb1422fbab6;p=packages%2Fo%2Fopenafs.git krb-udp-cleanup-20010119 Make krb_udp try kerberos-iv as a fallback (from the original default of kerberos4) before going to "kerberos". "kerberos" incidentally is 88 on all modern platforms, so lord forbid you want to run this and something which can actually answer krb5 requests, if you're using the default services. Also minor fix for the size of an answer packet. --- diff --git a/src/kauth/krb_udp.c b/src/kauth/krb_udp.c index 568334fac..0d470a8c3 100644 --- a/src/kauth/krb_udp.c +++ b/src/kauth/krb_udp.c @@ -568,7 +568,7 @@ static err_packet (ksoc, pkt, code, reason) } ans.len = 2 + strlen(pkt->name) + strlen(pkt->inst) + strlen(pkt->realm) + - 3/* nulls */ + sizeof(afs_int32) + strlen (buf) + 1; + 3/* nulls */ + (2 * sizeof(afs_int32)) + strlen (buf) + 1; if (ans.len > sizeof(ans.data)) { printf ("Answer packet too long\n"); return; @@ -827,7 +827,13 @@ afs_int32 init_krb_udp () taddr.sin_family = AF_INET; /* added for NCR port */ if ( !sp ) { - /* if kerberos-4 is not available, try "kerberos" */ + /* if kerberos-4 is not available, try "kerberos-iv" */ + krb4name = "kerberos-iv"; + sp = getservbyname(krb4name, "udp"); + } + if ( !sp ) + { + /* if kerberos-iv is not available, try "kerberos" */ krb4name = "kerberos"; sp = getservbyname(krb4name, "udp"); }