summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorZhanna Tsitkov <tsitkova@mit.edu>2009-12-30 19:53:16 +0000
committerZhanna Tsitkov <tsitkova@mit.edu>2009-12-30 19:53:16 +0000
commit913be2d995a7ea9cb8eea13f52fa06bef9c5fb40 (patch)
treec8def5964c0920a835652b050313f2c634174140 /src/lib
parentf164653ce35ed781acf29e59ab988fee89853166 (diff)
downloadkrb5-913be2d995a7ea9cb8eea13f52fa06bef9c5fb40.tar.gz
krb5-913be2d995a7ea9cb8eea13f52fa06bef9c5fb40.tar.xz
krb5-913be2d995a7ea9cb8eea13f52fa06bef9c5fb40.zip
Move krb5int_get_domain_realm_mapping into kdc_util.c as this function is a helper in kdc code
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23546 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/krb5/libkrb5.exports2
-rw-r--r--src/lib/krb5/os/def_realm.c59
2 files changed, 1 insertions, 60 deletions
diff --git a/src/lib/krb5/libkrb5.exports b/src/lib/krb5/libkrb5.exports
index e7c191b63..acfa2eaac 100644
--- a/src/lib/krb5/libkrb5.exports
+++ b/src/lib/krb5/libkrb5.exports
@@ -572,6 +572,7 @@ krb5_write_message
krb5int_accessor
krb5int_cc_default
krb5int_cleanup_library
+krb5int_clean_hostname
krb5int_cm_call_select
krb5int_copy_data_contents_add0
krb5int_find_authdata
@@ -580,7 +581,6 @@ krb5int_foreach_localaddr
krb5int_free_addrlist
krb5int_free_data_list
krb5int_get_authdata_containee_types
-krb5int_get_domain_realm_mapping
krb5int_init_context_kdc
krb5int_initialize_library
krb5int_pac_sign
diff --git a/src/lib/krb5/os/def_realm.c b/src/lib/krb5/os/def_realm.c
index 5b6f88d7e..878aa2906 100644
--- a/src/lib/krb5/os/def_realm.c
+++ b/src/lib/krb5/os/def_realm.c
@@ -51,8 +51,6 @@
#define MAXHOSTNAMELEN 64
#endif
-#define MAX_DNS_NAMELEN (15*(MAXHOSTNAMELEN + 1)+1)
-
#endif /* KRB5_DNS_LOOKUP */
/*
@@ -188,60 +186,3 @@ krb5_free_default_realm(krb5_context context, char *lrealm)
{
free (lrealm);
}
-
-krb5_error_code
-krb5int_get_domain_realm_mapping(krb5_context context, const char *host, char ***realmsp)
-{
- char **retrealms;
- char *realm, *cp, *temp_realm;
- krb5_error_code retval;
- char temp_host[MAX_DNS_NAMELEN+1];
-
- /* do sanity check and lower-case */
- retval = krb5int_clean_hostname(context, host, temp_host, sizeof temp_host);
- if (retval)
- return retval;
- /*
- Search for the best match for the host or domain.
- Example: Given a host a.b.c.d, try to match on:
- 1) a.b.c.d 2) .b.c.d. 3) b.c.d 4) .c.d 5) c.d 6) .d 7) d
- */
-
- cp = temp_host;
- realm = (char *)NULL;
- temp_realm = 0;
- while (cp ) {
- retval = profile_get_string(context->profile, KRB5_CONF_DOMAIN_REALM, cp,
- 0, (char *)NULL, &temp_realm);
- if (retval)
- return retval;
- if (temp_realm != (char *)NULL)
- break; /* Match found */
-
- /* Setup for another test */
- if (*cp == '.') {
- cp++;
- } else {
- cp = strchr(cp, '.');
- }
- }
- if (temp_realm != (char*)NULL) {
- realm = strdup(temp_realm);
- profile_release_string(temp_realm);
- if (!realm) {
- return ENOMEM;
- }
- }
- retrealms = (char **)calloc(2, sizeof(*retrealms));
- if (!retrealms) {
- if (realm != (char *)NULL)
- free(realm);
- return ENOMEM;
- }
-
- retrealms[0] = realm;
- retrealms[1] = 0;
-
- *realmsp = retrealms;
- return 0;
-}