summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2011-05-25 10:54:17 +0200
committerStephen Gallagher <sgallagh@redhat.com>2011-10-26 10:28:39 -0400
commitb77509a68f3bd925cec4d5acc9c68dc40e1beff7 (patch)
tree4a3d109a56da0132222d46b135d0aa246b81e5f6
parentc7a827f9bf55fbdad21997ad85dce04f6d698458 (diff)
downloadsssd-b77509a68f3bd925cec4d5acc9c68dc40e1beff7.tar.gz
sssd-b77509a68f3bd925cec4d5acc9c68dc40e1beff7.tar.xz
sssd-b77509a68f3bd925cec4d5acc9c68dc40e1beff7.zip
Sanitize username during initgroups call
-rw-r--r--src/providers/ldap/sdap_async_accounts.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/providers/ldap/sdap_async_accounts.c b/src/providers/ldap/sdap_async_accounts.c
index f42fff294..4c909408b 100644
--- a/src/providers/ldap/sdap_async_accounts.c
+++ b/src/providers/ldap/sdap_async_accounts.c
@@ -2870,6 +2870,7 @@ struct tevent_req *sdap_get_initgr_send(TALLOC_CTX *memctx,
const char *base_dn;
char *filter;
int ret;
+ char *clean_name;
DEBUG(9, ("Retrieving info for initgroups call\n"));
@@ -2886,9 +2887,14 @@ struct tevent_req *sdap_get_initgr_send(TALLOC_CTX *memctx,
state->grp_attrs = grp_attrs;
state->orig_user = NULL;
+ ret = sss_filter_sanitize(state, name, &clean_name);
+ if (ret != EOK) {
+ return NULL;
+ }
+
filter = talloc_asprintf(state, "(&(%s=%s)(objectclass=%s))",
state->opts->user_map[SDAP_AT_USER_NAME].name,
- state->name,
+ clean_name,
state->opts->user_map[SDAP_OC_USER].name);
if (!filter) {
talloc_zfree(req);