diff options
author | Ondrej Kos <okos@redhat.com> | 2012-08-21 16:03:32 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2012-08-23 14:25:23 +0200 |
commit | e4c29d1f8e3b2c2b268105f169e5156a0a36aebf (patch) | |
tree | 5e2940d4366e363d993e63a90693282acfffce32 /src/providers | |
parent | e523233315f44b8f77ab9c5143a3d80364ebf955 (diff) | |
download | sssd-e4c29d1f8e3b2c2b268105f169e5156a0a36aebf.tar.gz sssd-e4c29d1f8e3b2c2b268105f169e5156a0a36aebf.tar.xz sssd-e4c29d1f8e3b2c2b268105f169e5156a0a36aebf.zip |
Consolidation of functions that make realm upper-case
Diffstat (limited to 'src/providers')
-rw-r--r-- | src/providers/ad/ad_common.c | 7 | ||||
-rw-r--r-- | src/providers/ipa/ipa_common.c | 10 | ||||
-rw-r--r-- | src/providers/ipa/ipa_subdomains.c | 18 |
3 files changed, 4 insertions, 31 deletions
diff --git a/src/providers/ad/ad_common.c b/src/providers/ad/ad_common.c index 90cfe412f..7568798ab 100644 --- a/src/providers/ad/ad_common.c +++ b/src/providers/ad/ad_common.c @@ -33,7 +33,6 @@ ad_get_common_options(TALLOC_CTX *mem_ctx, { errno_t ret; int gret; - size_t i; struct ad_options *opts = NULL; char *domain; char *server; @@ -98,16 +97,12 @@ ad_get_common_options(TALLOC_CTX *mem_ctx, /* Always use the upper-case AD domain for the kerberos realm */ - realm = talloc_strdup(opts, domain); + realm = get_uppercase_realm(opts, domain); if (!realm) { ret = ENOMEM; goto done; } - for (i = 0; realm[i]; i++) { - realm[i] = toupper(realm[i]); - } - ret = dp_opt_set_string(opts->basic, AD_KRB5_REALM, realm); if (ret != EOK) { goto done; diff --git a/src/providers/ipa/ipa_common.c b/src/providers/ipa/ipa_common.c index 6ad67845d..2e5047381 100644 --- a/src/providers/ipa/ipa_common.c +++ b/src/providers/ipa/ipa_common.c @@ -47,7 +47,6 @@ int ipa_get_options(TALLOC_CTX *memctx, char *realm; char *ipa_hostname; int ret; - int i; char hostname[HOST_NAME_MAX + 1]; opts = talloc_zero(memctx, struct ipa_options); @@ -95,18 +94,13 @@ int ipa_get_options(TALLOC_CTX *memctx, /* First check whether the realm has been manually specified */ realm = dp_opt_get_string(opts->basic, IPA_KRB5_REALM); if (!realm) { - /* No explicit krb5_realm, use the IPA domain */ - realm = talloc_strdup(opts, domain); + /* No explicit krb5_realm, use the IPA domain, transform to upper-case */ + realm = get_uppercase_realm(opts, domain); if (!realm) { ret = ENOMEM; goto done; } - /* Use the upper-case IPA domain for the kerberos realm */ - for (i = 0; realm[i]; i++) { - realm[i] = toupper(realm[i]); - } - ret = dp_opt_set_string(opts->basic, IPA_KRB5_REALM, realm); if (ret != EOK) { diff --git a/src/providers/ipa/ipa_subdomains.c b/src/providers/ipa/ipa_subdomains.c index 98c7de346..1da2b8cd4 100644 --- a/src/providers/ipa/ipa_subdomains.c +++ b/src/providers/ipa/ipa_subdomains.c @@ -178,22 +178,6 @@ done: return ret; } -static char *name_to_realm(TALLOC_CTX *memctx, const char *name) -{ - char *realm; - char *p; - - realm = talloc_strdup(memctx, name); - if (!realm) { - return NULL; - } - for (p = realm; *p; p++) { - *p = toupper(*p); - } - - return realm; -} - static errno_t ipa_subdom_parse(TALLOC_CTX *memctx, struct sysdb_attrs *attrs, struct sysdb_subdom *subdom) @@ -219,7 +203,7 @@ static errno_t ipa_subdom_parse(TALLOC_CTX *memctx, if (subdom->realm == NULL) { /* Add Realm as upper(domain name), this is generally always correct * with AD domains */ - subdom->realm = name_to_realm(memctx, subdom->name); + subdom->realm = get_uppercase_realm(memctx, subdom->name); if (!subdom->realm) { return ENOMEM; } |