From c326cfa73357be922105dd8ce42b39273fe21f37 Mon Sep 17 00:00:00 2001 From: Jakub Hrozek Date: Fri, 27 May 2011 11:42:38 +0200 Subject: Add a utility function to escape IPv6 address for use in URIs --- src/util/sss_ldap.c | 8 ++++++++ src/util/sss_ldap.h | 3 +++ 2 files changed, 11 insertions(+) diff --git a/src/util/sss_ldap.c b/src/util/sss_ldap.c index f098e7d6d..94a10386d 100644 --- a/src/util/sss_ldap.c +++ b/src/util/sss_ldap.c @@ -18,6 +18,7 @@ along with this program. If not, see . */ #include +#include #include "config.h" @@ -68,3 +69,10 @@ int sss_ldap_control_create(const char *oid, int iscritical, return LDAP_SUCCESS; #endif } + +inline const char * +sss_ldap_escape_ip_address(TALLOC_CTX *mem_ctx, int family, const char *addr) +{ + return family == AF_INET6 ? talloc_asprintf(mem_ctx, "[%s]", addr) : + talloc_strdup(mem_ctx, addr); +} diff --git a/src/util/sss_ldap.h b/src/util/sss_ldap.h index 14747dffc..c71349ba1 100644 --- a/src/util/sss_ldap.h +++ b/src/util/sss_ldap.h @@ -27,4 +27,7 @@ int sss_ldap_control_create(const char *oid, int iscritical, struct berval *value, int dupval, LDAPControl **ctrlp); +inline const char * +sss_ldap_escape_ip_address(TALLOC_CTX *mem_ctx, int family, const char *addr); + #endif /* __SSS_LDAP_H__ */ -- cgit