summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb/ldb_modules/subtree_rename.c
AgeCommit message (Collapse)AuthorFilesLines
2013-07-24dsdb: Rework subtree_rename module to use recursive LDB_SCOPE_ONELEVEL searchesAndrew Bartlett1-103/+98
This should be more efficient, particularly in the leaf node case when renaming and deleting entries on large databases. Andrew Bartlett Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2013-04-19s4:dsdb: Fix warnings about not set / set but unused / shadowed variablesMatthieu Patou1-2/+0
Reviewed-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Fri Apr 19 13:15:40 CEST 2013 on sn-devel-104
2011-10-20dsdb: improve debug messageAndrew Tridgell1-1/+1
show the reply type in "Invalid reply type" messages Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Thu Oct 20 00:57:05 CEST 2011 on sn-devel-104
2011-08-10s4:subtree_rename LDB module - fix the move/rename constraintsMatthias Dieter Wallnöfer1-10/+7
s4:subtree_rename LDB module - fix the move/rename constraints By the inspiration of an email request by ekacnet I have rechecked the move/rename constraints and re-read the chapter 3.1.1.5.4.1 located in the MS-ADTS technical documentation. It really turns out that the constraint checking is only performed on the root object of a request. In addition add my copyright notice (I've written these constraint checks). Autobuild-User: Matthieu Patou <mat@samba.org> Autobuild-Date: Wed Aug 10 01:05:19 CEST 2011 on sn-devel-104
2011-02-07s4-dsdb: make subtree_rename errors clearerAndrew Tridgell1-10/+10
2010-11-16s4:subtree_rename LDB module - make use of "dsdb_find_nc_root"Matthias Dieter Wallnöfer1-22/+27
This is exactly what's needed there. Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org> Autobuild-Date: Tue Nov 16 08:42:07 UTC 2010 on sn-devel-104
2010-11-01s4-ldb: enable version checking in dsdb ldb modulesAndrew Tridgell1-0/+1
2010-11-01s4-dsdb: convert the rest of the ldb modules to the new module typeAndrew Tridgell1-1/+6
2010-10-03s4:subtree_rename LDB module - also already deleted objects have to be renamedMatthias Dieter Wallnöfer1-2/+13
This is needed if the SYSTEM_FLAG_DISALLOW_MOVE_ON_DELETE flag was specified and the parent is renamed. To be able to do this we also need to relax the constraint checks (using the "isDeleted" proof). Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-09-25ldb: mark the location of a lot more ldb requestsAndrew Tridgell1-0/+2
2010-08-15s4:subtree_rename.c - relax the checks when requestedMatthias Dieter Wallnöfer1-0/+5
(Needed by upgradeprovision for example)
2010-08-01s4:subtree_rename LDB module - rename "check_system_flags" into ↵Matthias Dieter Wallnöfer1-9/+43
"check_constraints" and perform more checks Always considering MS-ADTS 3.1.1.5.4.1.2.
2010-08-01s4:subtree_rename LDB module - introduce out of memory checksMatthias Dieter Wallnöfer1-0/+4
2010-08-01s4:subtree_rename LDB module - introduce the "systemFlags" protection rulesMatthias Dieter Wallnöfer1-2/+122
This is done in a dedicated call "check_system_flags".
2010-07-31s4:subtree_rename LDB module - "subren_ctx_init" - fix the "out of memory" ↵Matthias Dieter Wallnöfer1-3/+2
return
2010-07-07s4-dsdb: use ldb_operr() in the dsdb codeAndrew Tridgell1-3/+3
this replaces "return LDB_ERR_OPERATIONS_ERROR" with "return ldb_operr(ldb)" in places in the dsdb code where we don't already explicitly set an error string. This should make is much easier to track down dsdb module bugs that result in an operations error.
2010-07-04s4:subtree_rename LDB module - Cosmetic fixesMatthias Dieter Wallnöfer1-3/+4
2010-06-19dsdb: Fix includes when building against system ldb.Jelmer Vernooij1-0/+2
2010-06-19dsdb: Use Samba includes so _PUBLIC_ is defined.Jelmer Vernooij1-1/+1
2010-06-19dsdb: Make module ops struct for each module public.Jelmer Vernooij1-1/+1
2010-05-04s4/rodc: Fix the callbacks up the stack to handle referrals on modify requestsAnatoliy Atanasov1-0/+4
2009-01-30Fix the mess with ldb includes.Simo Sorce1-5/+16
Separate again the public from the private headers. Add a new header specific for modules. Also add service function for modules as now ldb_context and ldb_module are opaque structures for them.
2008-09-29LDB ASYNC: samba4 modulesSimo Sorce1-180/+152
2008-03-29Fix more valgrind issues.Andrew Bartlett1-1/+15
This passes down the timeout more consistantly, and ensures that no matter how the modules screw up, we don't free() the memory we are going to write into the ASN1 packet until we actually write it out. Andrew Bartlett (This used to be commit eefd46289b90967ce6b4cd385fb1f7e1d6f9b343)
2008-02-20Use struct-based rather than function-based initialization for ldb modules ↵Jelmer Vernooij1-6/+1
everywhere. (This used to be commit 85c96a325867f7bcdb412ebc53f8a47dbf7cd89b)
2007-12-21r25942: Make various ldb modules handle an LDB backend that enforces validityAndrew Bartlett1-122/+10
of Base DNs in searches (returning an error of LDB_ERR_NO_SUCH_ENTRY). We need to handle this if ldb_tdb is to behave correctly compared with LDAP, as well as if we are using an LDAP backend. In doing so, I realised that subtree_rename and subtree_delete (prevention) need rather different wait loops, so it seemed easier to split it out into it's own module. I've fixed the licence on both of these modules to be GPLv3. Andrew Bartlett (This used to be commit d3894c90f31fb45e038ab478cd9d7d34962d069b)
2007-12-21r25762: This test belongs best with the other checks for a valid parent, inAndrew Bartlett1-8/+0
the objectclass module. Andrew Bartlett (This used to be commit 16a292fcb134adec110cbc4c8f0fb03323750a45)
2007-12-21r25761: Rename to be a DN to be a child of itself wasn't being checked for.Andrew Bartlett1-0/+8
This prevents CN=test,dc=samba,dc=example,dc=com being renamed into CN=test2,cn=test,dc=samba,dc=example,dc=com Andrew Bartlett (This used to be commit 958a92ed0c6bee19d8b86df7c66330d2bba23e46)
2007-12-21r25729: Fix silly regression in the subtree_rename - I broke normal renames.Andrew Bartlett1-1/+1
Bug 5041 Andrew Bartlett (This used to be commit 7e68051bb7a9ac5f1b232c32b7614db61c3c1bc4)
2007-12-21r25723: Add a check to prevent deletion of entries with children. Sadly MMCAndrew Bartlett1-1/+112
doesn't trigger it's recursive delete correctly, but the error return is correct (but perhaps needs a different LDAP wire format). Andrew Bartlett (This used to be commit 10ba3ae6990098e772683de9144b13b3f1d45a36)
2007-12-21r25710: Finally fix subtree renames. Untested code is broken code and in thisAndrew Bartlett1-17/+1
case an oddity of the javascript caused the test to 'pass'. For the same oddity, we have a failure in ldb's handling of spaces in DNs. We need to resolve that too. Andrew Bartlett (This used to be commit e8cbac1a46f4d3b083e6bb5a509ef1ba47bebff1)
2007-12-21r25693: Implement the rest of subtree renames, now that tridge waved his magicAndrew Bartlett1-22/+34
over the ldb_tdb part of the problem. Andrew Bartlett (This used to be commit daca0cfd2fc2ec3344415d2d31f399ee3bf16151)
2007-10-10r24793: The subtree_rename module is a work of fiction. An resemblance to aAndrew Bartlett1-16/+7
working module, live or dead, is purely co-incidental. Andrew Bartlett (This used to be commit 64cc31642fd2ded149631d07bc022213f19595b8)
2007-10-10r24761: Permit subtree renames in Samba4.Andrew Bartlett1-0/+290
The module is scary: On a rename, it does a search for all entries under that entry (including itself), and fires off a seperate rename call for each result. This will fail miserably on an LDAP backend, but I'll need to work on using hdb for OpenLDAP, and hope Fedora DS can implement subtree renames at some point. Andrew Bartlett (This used to be commit 13908a8cb4dd810503213203efb8d51f77f1f379)