ldb: validate ldb_dn_set_component input parameters even more strictly
authorAndrew Bartlett <abartlet@samba.org>
Sun, 3 Jan 2016 23:13:40 +0000 (12:13 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Tue, 5 Jan 2016 23:33:21 +0000 (00:33 +0100)
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Wed Jan  6 00:33:21 CET 2016 on sn-devel-144

lib/ldb/common/ldb_dn.c

index a912fdb2a7337f68c21f00b7ea31ab39e06a1130..5bf72ac2f6bba62af444ccb401d71b7dca9a9b72 100644 (file)
@@ -1912,6 +1912,14 @@ int ldb_dn_set_component(struct ldb_dn *dn, int num,
                return LDB_ERR_OTHER;
        }
 
+       if (num < 0) {
+               return LDB_ERR_OTHER;
+       }
+
+       if (v.length > v.length + 1) {
+               return LDB_ERR_OTHER;
+       }
+
        n = talloc_strdup(dn, name);
        if ( ! n) {
                return LDB_ERR_OTHER;