summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortholo <tholo@openbsd.org>1996-10-14 02:27:14 +0000
committertholo <tholo@openbsd.org>1996-10-14 02:27:14 +0000
commitd337a71be9caece829f7eece36cef1a4051e51b8 (patch)
treed702e9ae86f2e17736d47417c22b349f7053b675
parentfpu_type -> fputype, use m68k/cpu.h--from NetBSD (diff)
downloadwireguard-openbsd-d337a71be9caece829f7eece36cef1a4051e51b8.tar.xz
wireguard-openbsd-d337a71be9caece829f7eece36cef1a4051e51b8.zip
Don't default a realm name to the domain part of a host name
-rw-r--r--kerberosIV/krb/getrealm.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/kerberosIV/krb/getrealm.c b/kerberosIV/krb/getrealm.c
index 4b3e0e92762..6ed07909c4a 100644
--- a/kerberosIV/krb/getrealm.c
+++ b/kerberosIV/krb/getrealm.c
@@ -75,14 +75,7 @@ krb_realmofhost(host)
/* prepare default */
if (domain) {
- char *cp;
-
- strncpy(ret_realm, &domain[1], REALM_SZ);
- ret_realm[REALM_SZ] = '\0';
- /* Upper-case realm */
- for (cp = ret_realm; *cp; cp++)
- if (islower(*cp))
- *cp = toupper(*cp);
+ ret_realm[0] = '\0';
} else {
krb_get_lrealm(ret_realm, 1);
}
@@ -94,14 +87,14 @@ krb_realmofhost(host)
strncat(tbuf, "/krb.realms", sizeof(tbuf));
tbuf[sizeof(tbuf)-1] = 0;
if ((trans_file = fopen(tbuf,"r")) == NULL)
- return(ret_realm); /* krb_errno = KRB_NO_TRANS */
+ return(ret_realm[0] ? ret_realm : NULL); /* krb_errno = KRB_NO_TRANS */
}
while (1) {
if ((retval = fscanf(trans_file, "%s %s",
trans_host, trans_realm)) != 2) {
if (retval == EOF) {
fclose(trans_file);
- return(ret_realm);
+ return(ret_realm[0] ? ret_realm : NULL);
}
continue; /* ignore broken lines */
}
@@ -111,7 +104,7 @@ krb_realmofhost(host)
/* exact match of hostname, so return the realm */
(void) strcpy(ret_realm, trans_realm);
fclose(trans_file);
- return(ret_realm);
+ return(ret_realm[0] ? ret_realm : NULL);
}
if ((trans_host[0] == '.') && domain) {
#if MATCH_SUBDOMAINS