From: Douglas Bagnall Date: Wed, 23 Dec 2015 04:34:15 +0000 (+1300) Subject: vlv: better syntax for parsing greater than or equal strings X-Git-Tag: tdb-1.3.9~480 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=177ca764fc33e84f35fd6ffdf7c5dbb686704fb4;p=thirdparty%2Fsamba.git vlv: better syntax for parsing greater than or equal strings This makes the gt_eq case different from the indexed case in the eyes of sscanf(). Pair-programmed-with: Garming Sam Signed-off-by: Douglas Bagnall Reviewed-by: Andrew Bartlett Reviewed-by: Garming Sam --- diff --git a/lib/ldb/common/ldb_controls.c b/lib/ldb/common/ldb_controls.c index 8d7b430d4a8..c76054031cd 100644 --- a/lib/ldb/common/ldb_controls.c +++ b/lib/ldb/common/ldb_controls.c @@ -464,7 +464,7 @@ struct ldb_control *ldb_parse_control_from_string(struct ldb_context *ldb, TALLO p = &(control_strings[sizeof(LDB_CONTROL_VLV_REQ_NAME)]); ret = sscanf(p, "%d:%d:%d:%d:%d:%1023[^$]", &crit, &bc, &ac, &os, &cc, ctxid); if (ret < 5) { - ret = sscanf(p, "%d:%d:%d:%1023[^:]:%1023[^$]", &crit, &bc, &ac, attr, ctxid); + ret = sscanf(p, "%d:%d:%d:>=%1023[^:]:%1023[^$]", &crit, &bc, &ac, attr, ctxid); } if ((ret < 4) || (crit < 0) || (crit > 1)) {