summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2011-06-27 15:44:40 +0200
committerStephen Gallagher <sgallagh@redhat.com>2011-06-30 14:09:10 -0400
commitfda9ee900387d9d793e3696cd32b73c253097fe3 (patch)
tree3f146a606604283cc7c6b20191f6235fa77f02e2 /src
parent0eb8bf8c05a5535ed44c71342f4bed5b821cfa06 (diff)
downloadsssd-fda9ee900387d9d793e3696cd32b73c253097fe3.tar.gz
sssd-fda9ee900387d9d793e3696cd32b73c253097fe3.tar.xz
sssd-fda9ee900387d9d793e3696cd32b73c253097fe3.zip
Use name based URI instead of IP address based URIs
Diffstat (limited to 'src')
-rw-r--r--src/providers/ipa/ipa_common.c2
-rw-r--r--src/providers/ldap/ldap_common.c39
2 files changed, 3 insertions, 38 deletions
diff --git a/src/providers/ipa/ipa_common.c b/src/providers/ipa/ipa_common.c
index 89a8751be..9972c3411 100644
--- a/src/providers/ipa/ipa_common.c
+++ b/src/providers/ipa/ipa_common.c
@@ -643,7 +643,7 @@ static void ipa_resolve_callback(void *private_data, struct fo_server *server)
return;
}
- new_uri = talloc_asprintf(service, "ldap://%s", safe_address);
+ new_uri = talloc_asprintf(service, "ldap://%s", fo_get_server_name(server));
if (!new_uri) {
DEBUG(2, ("Failed to copy URI ...\n"));
talloc_free(tmp_ctx);
diff --git a/src/providers/ldap/ldap_common.c b/src/providers/ldap/ldap_common.c
index 997e027c4..2ffa878d8 100644
--- a/src/providers/ldap/ldap_common.c
+++ b/src/providers/ldap/ldap_common.c
@@ -534,13 +534,9 @@ static void sdap_uri_callback(void *private_data, struct fo_server *server)
TALLOC_CTX *tmp_ctx = NULL;
struct sdap_service *service;
struct resolv_hostent *srvaddr;
- char *address;
- const char *safe_address;
struct sockaddr_storage *sockaddr;
const char *tmp;
char *new_uri;
- LDAPURLDesc *lud;
- int ret;
tmp_ctx = talloc_new(NULL);
if (tmp_ctx == NULL) {
@@ -564,13 +560,6 @@ static void sdap_uri_callback(void *private_data, struct fo_server *server)
return;
}
- address = resolv_get_string_address(tmp_ctx, srvaddr);
- if (address == NULL) {
- DEBUG(1, ("resolv_get_string_address failed.\n"));
- talloc_free(tmp_ctx);
- return;
- }
-
sockaddr = resolv_get_sockaddr_address(tmp_ctx, srvaddr,
fo_get_server_port(server));
if (sockaddr == NULL) {
@@ -579,40 +568,16 @@ static void sdap_uri_callback(void *private_data, struct fo_server *server)
return;
}
- safe_address = sss_ldap_escape_ip_address(tmp_ctx,
- srvaddr->family,
- address);
- talloc_zfree(address);
- if (safe_address == NULL) {
- DEBUG(1, ("sss_ldap_escape_ip_address failed.\n"));
- talloc_free(tmp_ctx);
- return;
- }
-
if (fo_is_srv_lookup(server)) {
if (!tmp) {
DEBUG(1, ("Unknown service, using ldap\n"));
tmp = SSS_LDAP_SRV_NAME;
}
new_uri = talloc_asprintf(service, "%s://%s:%d",
- tmp, safe_address,
+ tmp, fo_get_server_name(server),
fo_get_server_port(server));
} else {
- if (tmp && ldap_is_ldap_url(tmp)) {
- ret = ldap_url_parse(tmp, &lud);
- if (ret != LDAP_SUCCESS) {
- DEBUG(0, ("Failed to parse ldap URI (%s)!\n", tmp));
- talloc_free(tmp_ctx);
- return;
- }
- new_uri = talloc_asprintf(service, "%s://%s:%d",
- lud->lud_scheme,
- safe_address,
- fo_get_server_port(server));
- ldap_free_urldesc(lud);
- } else {
- new_uri = talloc_asprintf(service, "ldap://%s", safe_address);
- }
+ new_uri = talloc_strdup(service, tmp);
}
if (!new_uri) {