From 2da3f6512b91853d4f2c4aff8ffc885e90579cc6 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 28 Jun 2016 15:13:26 -0700 Subject: [PATCH] s4: ldb: Canonicalize case before sscanf search. https://bugzilla.samba.org/show_bug.cgi?id=11838 Signed-off-by: Reviewed-by: Jeremy Allison --- source4/dsdb/samdb/ldb_modules/ranged_results.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source4/dsdb/samdb/ldb_modules/ranged_results.c b/source4/dsdb/samdb/ldb_modules/ranged_results.c index 60d7503..5af62b1 100644 --- a/source4/dsdb/samdb/ldb_modules/ranged_results.c +++ b/source4/dsdb/samdb/ldb_modules/ranged_results.c @@ -211,6 +211,13 @@ static int rr_search(struct ldb_module *module, struct ldb_request *req) if (strncasecmp(p, ";range=", strlen(";range=")) != 0) { continue; } + /* + * The sscanf below is looking for lower case but + * the check above ignores case. Canonicalize as + * lower case. + * https://bugzilla.samba.org/show_bug.cgi?id=11838 + */ + memcpy(p, ";range=", strlen(";range=")); end = (unsigned int)-1; if (sscanf(p, ";range=%u-*", &start) != 1) { if (sscanf(p, ";range=%u-%u", &start, &end) != 2) { -- 2.8.0.rc3.226.g39d4020