summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Dieter Wallnöfer <mdw@samba.org>2010-06-05 19:09:51 +0200
committerMatthias Dieter Wallnöfer <mdw@samba.org>2010-06-07 14:47:23 +0200
commitbd910952ba2256ff54c0e48a6feda285b9fbb8a5 (patch)
tree395854f12405e3d4d96a0350a73b0725f78576d8
parent2586cbaadcdf9baf77be5ec5b612cff324ab19a8 (diff)
downloadsamba-bd910952ba2256ff54c0e48a6feda285b9fbb8a5.tar.gz
samba-bd910952ba2256ff54c0e48a6feda285b9fbb8a5.tar.bz2
samba-bd910952ba2256ff54c0e48a6feda285b9fbb8a5.zip
s4:remove the "validate_update" LDB module - the task is now handled by the far more complete "objectclass_attrs" LDB module
-rw-r--r--source4/dsdb/samdb/ldb_modules/samba_dsdb.c1
-rw-r--r--source4/dsdb/samdb/ldb_modules/validate_update.c120
-rw-r--r--source4/dsdb/samdb/ldb_modules/wscript_build7
-rw-r--r--source4/dsdb/schema/schema_syntax.c13
4 files changed, 0 insertions, 141 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/samba_dsdb.c b/source4/dsdb/samdb/ldb_modules/samba_dsdb.c
index ebd2f13ab6..3c9fd75651 100644
--- a/source4/dsdb/samdb/ldb_modules/samba_dsdb.c
+++ b/source4/dsdb/samdb/ldb_modules/samba_dsdb.c
@@ -182,7 +182,6 @@ static int samba_dsdb_init(struct ldb_module *module)
"password_hash",
"operational",
"objectclass_attrs",
- "validate_update",
"kludge_acl",
"schema_load",
"instancetype",
diff --git a/source4/dsdb/samdb/ldb_modules/validate_update.c b/source4/dsdb/samdb/ldb_modules/validate_update.c
deleted file mode 100644
index 3615ff768a..0000000000
--- a/source4/dsdb/samdb/ldb_modules/validate_update.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- ldb database library
-
- Copyright (C) Stefan Metzmacher <metze@samba.org> 2009
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "includes.h"
-#include "ldb_module.h"
-#include "dsdb/samdb/samdb.h"
-
-static int validate_update_message(struct ldb_context *ldb,
- struct dsdb_schema *schema,
- const struct ldb_message *msg)
-{
- int i;
-
- for (i=0; i < msg->num_elements; i++) {
- WERROR werr;
-
- werr = dsdb_attribute_validate_ldb(ldb, schema,
- &msg->elements[i]);
- if (!W_ERROR_IS_OK(werr)) {
- int j;
-
- ldb_debug(ldb, LDB_DEBUG_ERROR,
- "TODO: object[%s] add/modify attribute[%d|%s] num_values[%d] - %s\n",
- ldb_dn_get_linearized(msg->dn),
- i, msg->elements[i].name,
- msg->elements[i].num_values,
- win_errstr(werr));
-
- for (j=0; j < msg->elements[i].num_values; j++) {
- ldb_debug(ldb, LDB_DEBUG_ERROR,
- "TODO: value[%lu] len[%lu]\n", (long unsigned int)j,
- (long unsigned int)msg->elements[i].values[j].length);
- dump_data(0,
- msg->elements[i].values[j].data,
- msg->elements[i].values[j].length);
- }
-
- return LDB_ERR_INVALID_ATTRIBUTE_SYNTAX;
- }
- }
-
- return LDB_SUCCESS;
-}
-
-static int validate_update_add(struct ldb_module *module, struct ldb_request *req)
-{
- struct ldb_context *ldb;
- struct dsdb_schema *schema;
- int ret;
-
- ldb = ldb_module_get_ctx(module);
- schema = dsdb_get_schema(ldb, NULL);
-
- if (!schema) {
- return ldb_next_request(module, req);
- }
-
- /* do not manipulate our control entries */
- if (ldb_dn_is_special(req->op.add.message->dn)) {
- return ldb_next_request(module, req);
- }
-
- ret = validate_update_message(ldb, schema,
- req->op.add.message);
- if (ret != LDB_SUCCESS) {
- return ret;
- }
-
- return ldb_next_request(module, req);
-}
-
-static int validate_update_modify(struct ldb_module *module, struct ldb_request *req)
-{
- struct ldb_context *ldb;
- struct dsdb_schema *schema;
- int ret;
-
- ldb = ldb_module_get_ctx(module);
- schema = dsdb_get_schema(ldb, NULL);
-
- if (!schema) {
- return ldb_next_request(module, req);
- }
-
- /* do not manipulate our control entries */
- if (ldb_dn_is_special(req->op.mod.message->dn)) {
- return ldb_next_request(module, req);
- }
-
- ret = validate_update_message(ldb, schema,
- req->op.mod.message);
- if (ret != LDB_SUCCESS) {
- return ret;
- }
-
- return ldb_next_request(module, req);
-}
-
-_PUBLIC_ const struct ldb_module_ops ldb_validate_update_module_ops = {
- .name = "validate_update",
- .add = validate_update_add,
- .modify = validate_update_modify,
-};
-
diff --git a/source4/dsdb/samdb/ldb_modules/wscript_build b/source4/dsdb/samdb/ldb_modules/wscript_build
index dfcc2665eb..b6f287d91d 100644
--- a/source4/dsdb/samdb/ldb_modules/wscript_build
+++ b/source4/dsdb/samdb/ldb_modules/wscript_build
@@ -306,10 +306,3 @@ bld.SAMBA_MODULE('ldb_lazy_commit',
)
-bld.SAMBA_MODULE('ldb_validate_update',
- source='validate_update.c',
- subsystem='LIBLDB',
- init_function='LDB_MODULE(validate_update)',
- deps='talloc LIBEVENTS LIBSECURITY SAMDB'
- )
-
diff --git a/source4/dsdb/schema/schema_syntax.c b/source4/dsdb/schema/schema_syntax.c
index e3ccab0904..51c1b29f35 100644
--- a/source4/dsdb/schema/schema_syntax.c
+++ b/source4/dsdb/schema/schema_syntax.c
@@ -2554,16 +2554,3 @@ WERROR dsdb_attribute_ldb_to_drsuapi(struct ldb_context *ldb,
return sa->syntax->ldb_to_drsuapi(ldb, schema, sa, in, mem_ctx, out);
}
-WERROR dsdb_attribute_validate_ldb(struct ldb_context *ldb,
- const struct dsdb_schema *schema,
- const struct ldb_message_element *in)
-{
- const struct dsdb_attribute *sa;
-
- sa = dsdb_attribute_by_lDAPDisplayName(schema, in->name);
- if (!sa) {
- return WERR_DS_ATTRIBUTE_TYPE_UNDEFINED;
- }
-
- return sa->syntax->validate_ldb(ldb, schema, sa, in);
-}