summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMark Eichin <eichin@mit.edu>1995-05-03 00:54:34 +0000
committerMark Eichin <eichin@mit.edu>1995-05-03 00:54:34 +0000
commit8391f4e5927624bafcfa95656ca59dc834159088 (patch)
treec24c645e2ecfee6e089cb8220f9742d6f203831d /src
parent9299aa33b1b73b5f4c05d0a47a9379fd79f38ee0 (diff)
downloadkrb5-8391f4e5927624bafcfa95656ca59dc834159088.tar.gz
krb5-8391f4e5927624bafcfa95656ca59dc834159088.tar.xz
krb5-8391f4e5927624bafcfa95656ca59dc834159088.zip
* get_krbhst.c (krb5_get_krbhst): look in KRB5_ENV_KDC
(KERBEROS_SERVER) for a REALM:SERVER string. This overrides anything else for that realm and is intended for un-installed client use, testsuite use, and diagnostic use. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5686 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/os/ChangeLog7
-rw-r--r--src/lib/krb5/os/get_krbhst.c18
2 files changed, 25 insertions, 0 deletions
diff --git a/src/lib/krb5/os/ChangeLog b/src/lib/krb5/os/ChangeLog
index 9ee5d941b..fd1eaf908 100644
--- a/src/lib/krb5/os/ChangeLog
+++ b/src/lib/krb5/os/ChangeLog
@@ -1,3 +1,10 @@
+Tue May 2 20:51:14 1995 Mark Eichin <eichin@cygnus.com>
+
+ * get_krbhst.c (krb5_get_krbhst): look in KRB5_ENV_KDC
+ (KERBEROS_SERVER) for a REALM:SERVER string. This overrides
+ anything else for that realm and is intended for un-installed
+ client use, testsuite use, and diagnostic use.
+
Mon May 1 17:05:21 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
* init_os_ctx.c (krb5_set_config_files): Added required const to
diff --git a/src/lib/krb5/os/get_krbhst.c b/src/lib/krb5/os/get_krbhst.c
index 2a0042bbb..ba0f878b0 100644
--- a/src/lib/krb5/os/get_krbhst.c
+++ b/src/lib/krb5/os/get_krbhst.c
@@ -77,6 +77,24 @@ krb5_get_krbhst(context, realm, hostlist)
* case.
*/
+ cp = getenv(KRB5_ENV_KDC);
+ /* Format is REALM:SERVER */
+ if (cp != NULL
+ && strncmp (realm->data, cp, realm->length) == 0
+ && cp[realm->length] == ':') {
+ rethlist = (char **)calloc(2, sizeof (*rethlist));
+ if (rethlist == NULL)
+ return ENOMEM;
+ rethlist[0] = strdup(cp + realm->length + 1);
+ if (rethlist[0] == NULL) {
+ krb5_xfree(rethlist);
+ return ENOMEM;
+ }
+ rethlist[1] = NULL;
+ *hostlist = rethlist;
+ return 0;
+ }
+
krb5_find_config_files();
if (!(config_file = fopen(krb5_config_file, "r")))
/* can't open */