summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/modules
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r10918: - fixed standalone ldb buildAndrew Tridgell2-222/+4
- added note about allowedAttributesEffective (will be needed for mmc) - fixed some more ldb warnings (This used to be commit e9e4d81b6976549db8a7668572a5da466fbec4a9)
2007-10-10r10917: copy the element name in a ldb_msg_rename_attr() and ↵Andrew Tridgell1-3/+8
ldb_msg_copy_attr() to ensure that callers (like the ldap server) can talloc_steal the name (This used to be commit 9c914542cc346758c82f89990c80eb096a9c0959)
2007-10-10r10916: - finished the 'operational' ldb moduleAndrew Tridgell2-11/+98
- removed the timestamps module, replacing it with the operational module - added a ldb_msg_copy_shallow() function which should be used when a module wants to add new elements to a message on add/modify. This is needed because the caller might be using a constant structure, or may want to re-use the structure again - enabled the UTC time attribute syntaxes in the operational module (This used to be commit 61e8b010223ac6a0573185008f3719ba29574688)
2007-10-10r10913: This patch isn't as big as it looks ...Andrew Tridgell5-76/+267
most of the changes are fixes to make all the ldb code compile without warnings on gcc4. Unfortunately That required a lot of casts :-( I have also added the start of an 'operational' module, which will replace the timestamp module, plus add support for some other operational attributes In ldb_msg_*() I added some new utility functions to make the operational module sane, and remove the 'ldb' argument from the ldb_msg_add_*() functions. That argument was only needed back in the early days of ldb when we didn't use the hierarchical talloc and thus needed a place to get the allocation function from. Now its just a pain to pass around everywhere. Also added a ldb_debug_set() function that calls ldb_debug() plus sets the result using ldb_set_errstring(). That saves on some awkward coding in a few places. (This used to be commit f6818daecca95760c12f79fd307770cbe3346f57)
2007-10-10r10759: make modules easier to write by allowing modules to only implement theAndrew Tridgell4-126/+4
functions they care about, instead of all functions. This also makes it more likely that future changes to ldb will not break existing modules (This used to be commit 45f0c967b58e7c1b2e900a4d74cfde2a2c527dfa)
2007-10-10r10753: don't require every ldb module to implement both a search_bytree() andAndrew Tridgell5-61/+13
a search() function, instead each module now only implements the bytree method, and the expression based search is handled generically by the modules code. This makes for more consistency and less code duplication. fixed the tdb backend to handle BASE searches much more efficiently. They now always only lookup one record, regardless of the search expression (This used to be commit 7e44f9153c5578624e2fca04cdc0a00af0fd9eb4)
2007-10-10r10477: expose transactions outside ldb and change the API once moreSimo Sorce5-14/+46
do not autostart transactions on ldb operations if a transaction is already in place test transactions on winsdb all my tests passes so far tridge please confirm this is ok for you (This used to be commit c2bb2a36bdbe0ec7519697a9a9ba7526a0defac2)
2007-10-10r10305: start implementing better error handlingSimo Sorce5-157/+62
changed the prioivate modules API error string are now not spread over all modules but are kept in a single place. This allows a better control of memory and error reporting. (This used to be commit 3fc676ac1d6f59d08bedbbd9377986154cf84ce4)
2007-10-10r10299: remove the public (un)lock functions and introduce a transaction basedSimo Sorce5-76/+76
private ldb API ldb_sqlite3 is already working with this model and ldb_tdb will do as soon as tridge finishes the tdb transaction code. currently the transactions are always implicit and wrap any single ldb API call except searching, the transaction functions are currently not made public on purpose. Simo. (This used to be commit 1da4ac2cdcb7e54076f85242a93784260dced918)
2007-10-10r9948: Be a bit less verboseJelmer Vernooij1-1/+1
(This used to be commit 071dba2d0ae964e9901adf0c4870894deed43650)
2007-10-10r9918: Fix two copy-n-paste bugs that were preventing the modificationJelmer Vernooij2-3/+3
of special DN's when the rdn_name or timestamps modules were in use. (This used to be commit c61efb2ff851f8f55b4747c8068c7e780083e35c)
2007-10-10r9915: Some more mappings. Fix weird sAMAccountName values.Jelmer Vernooij1-4/+32
(This used to be commit 8ff1358f401e0086b941f4ff73af5d4c38a1f8bf)
2007-10-10r9912: Fix another bug in ldb_map.Jelmer Vernooij2-72/+97
(This used to be commit 4c3b37d660e798764e35a31221f4939ab6f36948)
2007-10-10r9908: Generate posixUser and posixGroup as wellJelmer Vernooij1-55/+61
(This used to be commit ebed25b47d3d8bd350b51b462d605d713f17602d)
2007-10-10r9899: Be more conservative about what is sent to the remote server in ldb_map.Jelmer Vernooij2-167/+350
(This used to be commit 76e943d4416e38ce4cce27d5403bc3e133d0025b)
2007-10-10r9881: I can't believe this can make a difference...Tim Potter1-2/+2
(This used to be commit 31069bfd18c4b7355dbf85df9fb479705b0e3b4b)
2007-10-10r9880: Convert remaining initialisers to more portable form. This shouldTim Potter1-6/+10
clean out a lot of build farm breakage. (This used to be commit c34fbdc6c3fd2c066c713bdd84e6f40f6aa8cd43)
2007-10-10r9879: A quick check to see if nested initialisers (?) is portable across theTim Potter1-1/+5
build farm. I have a feeling it isn't. (This used to be commit 7cc8df0c2f46fb9ce753e368ce645bcb69585334)
2007-10-10r9857: Fix rename/delete issuesJelmer Vernooij1-11/+24
(This used to be commit d6dce7ef3eb21a5e90244cf2ce7403ab43b12d63)
2007-10-10r9854: Finish ldb_map testsuiteJelmer Vernooij1-13/+12
Update PLAN Some more small other fixes (This used to be commit de2bde2526ffaf521253e3b9e58fc11417986321)
2007-10-10r9842: More error checks in the ldb_map modules, extend testsuiteJelmer Vernooij1-44/+99
(This used to be commit b7992de4b7d42a55e00509c887a269a07c19627d)
2007-10-10r9835: Make ldb_map compile in the stand-alone LDB buildJelmer Vernooij2-43/+46
(This used to be commit 2283a336e0e31e6857621d9806bba54c400bd986)
2007-10-10r9789: Patch from Volker that fixes the build on AIX.Jelmer Vernooij1-21/+32
(This used to be commit 9a1a7fb60e6531ff74e6817313548f3cee37a990)
2007-10-10r9786: Move ldb_map into ldb/modules/Jelmer Vernooij2-0/+1259
Move samba3sam to dsdb/ (This used to be commit eb9d615bcd49328131613f64745760a90553b7f2)
2007-10-10r9391: Convert all the code to use struct ldb_dn to ohandle ldap like ↵Simo Sorce4-84/+69
distinguished names Provide more functions to handle DNs in this form (This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10r8740: Extend the rdn_name module to handle adding the rdn as an attribute. ie:Andrew Bartlett1-1/+26
dn: cn=foo,ou=bar objectClass: person implies dn: cn=foo,ou=bar objectClass: person cn: foo (as well as a pile more default attributes) We also correct the case in the attirbute to match that in the DN (win2k3 behaviour) and I have a testsuite (in ejs) to prove it. This module also found a bug in our provision.ldif, so and reduces code complexity in the samdb module. Andrew Bartlett (This used to be commit 0cc58f5c3cce12341ad0f7a90cdd85a3fab786b3)
2007-10-10r8669: The objectguid module belongs in Samba's ldb module collection, not inAndrew Bartlett1-220/+0
ldb, as it can't build without the NDR and GUID code. Also make it properly use the NDR encoding for the GUID (I forgot last time, and used a string), as well as set the dependencies on the module correctly. Andrew Bartlett (This used to be commit 8054abc76e5e3588cebc7fc01062a1223b7f140b)
2007-10-10r8667: Further simply the provision script, by removing the 'name' attribute.Andrew Bartlett2-21/+292
This is now calculated on the fly for every add and modify. Andrew Bartlett (This used to be commit ed1f2e029c840d2b3ecb49dbe6e8cd67588eeeed)
2007-10-10r8650: Use the timestamps and a new objectguid module rather than placingAndrew Bartlett1-0/+220
boilerplate attributes in every entry in provision.ldif. The next step will be to use templates. Andrew Bartlett (This used to be commit 940ed9827f5ab83b668a60a2b0110567dd54c3e2)
2007-10-10r7527: - added a ldb_search_bytree() interface, which takes a ldb_parse_treeAndrew Tridgell3-18/+36
instead of a search expression. This allows our ldap server to pass its ASN.1 parsed search expressions straight to ldb, instead of going via strings. - updated all the ldb modules code to handle the new interface - got rid of the separate ldb_parse.h now that the ldb_parse structures are exposed externally - moved to C99 structure initialisation in ldb - switched ldap server to using ldb_search_bytree() (This used to be commit 96620ab2ee5d440bbbc51c1bc0cad9977770f897)
2007-10-10r6937: some minor fixes and updatesStefan Metzmacher1-13/+15
metze (This used to be commit 03b1ff48f97fa81c515f90a398c6f8cde579cb51)
2007-10-10r6935: don't do three things at a time :-)Simo Sorce1-2/+2
(This used to be commit a97eb63c11be6ce2bb94bca61078b303f15c9b9a)
2007-10-10r6934: thanks to HotaruT for pointing out skel.c was not in line with the ↵Simo Sorce1-6/+20
rest of the code (This used to be commit 9f0963c97f94687a1226d224f80b2aac1128d1a0)
2007-10-10r6470: Remove ldb_search_free() it is not needed anymore.Simo Sorce3-22/+1
Just use talloc_free() to release the memory after an ldb_search(). (This used to be commit 4f0948dab0aa5e8b6a4ce486f3668ca8dfae23db)
2007-10-10r6360: Quieten unused variable warning.Tim Potter1-1/+1
(This used to be commit 5a598f5da17b60ad52b2ae9d8e4484286e492a1f)
2007-10-10r5769: Fix unused variable warning.Tim Potter1-1/+1
(This used to be commit 80dfac3640443a41f7e45e9164ca1a6749494011)
2007-10-10r5670: simplify and clarify ldb_modules.c codeSimo Sorce1-6/+7
rectify the test schema correct a glitch in schema module (This used to be commit 0579b5f7adfe160be8ecf124934b6593a02ed06f)
2007-10-10r5585: LDB interfaces change:Simo Sorce3-90/+100
changes: - ldb_wrap disappears from code and become a private structure of db_wrap.c thanks to our move to talloc in ldb code, we do not need to expose it anymore - removal of ldb_close() function form the code thanks to our move to talloc in ldb code, we do not need it anymore use talloc_free() to close and free an ldb database - some minor updates to ldb modules code to cope with the change and fix some bugs I found out during the process (This used to be commit d58be9e74b786a11a57e89df36081d55730dfe0a)
2007-10-10r4863: schema_find_attribute() should be staticAndrew Tridgell1-1/+1
(This used to be commit e7262dccce1ccc563fad48023c733c1d13929b4b)
2007-10-10r4862: - better structure schema testsSimo Sorce1-3/+13
- fix check for deletion of required attributes on modify removed by mistake with the previous commits (This used to be commit 0315159daf157b64ef3452372dd74199600e24b8)
2007-10-10r4859: changed a numbe rof things:Simo Sorce1-244/+150
- Try to no tcopy memory if not necessary - let the searches hang around until we finish the operation - greatly simplify the modify operation still todo: - check attributes syntax - check objectclasses type, we cannot allow to add a new structural objectclass to an exixting entry unless the existing one is a parent - more tests (This used to be commit c6257379e094881987cd11e05502129b2ce1c5a0)
2007-10-10r4844: - Remove the unused attrsyn structureSimo Sorce1-175/+164
- Change 0 to NULL when checking allocations - Introduce the schema_attr_cmp hepler function - Do not allow auxiliary classes to be missing - Try to ease code readability and try to get main code out of loops when possibile. (This used to be commit a30f647b8abe6b77ef73018f58af2f8a11689b91)
2007-10-10r4801: remove the two bogus ctype.h includesAndrew Tridgell1-2/+0
(This used to be commit b221c3dbb9a7af88f917562b6f907fd0617eb05f)
2007-10-10r4786: forgot to commit the exclusion for schema checking against our ↵Simo Sorce1-0/+8
control entries (This used to be commit e895fcf4a33aeaf228d8b4b367c4e768506275bb)
2007-10-10r4784: finally make schema module use a single ldbSimo Sorce1-51/+14
add the new test-schema test (This used to be commit 42a20f6fa4073fc5ea1ca6254137a4ef53caee01)
2007-10-10r4781: the tolower() in schema.c is a premature optimisation. I suspect theAndrew Tridgell1-9/+8
"distinguishedName" checking in that module is incorrect and should be removed, but meanwhile, lets not make it slow down the compile of every other module. (This used to be commit 6534ce650bef7405e0926c9b75b185943429ed18)
2007-10-10r4775: use schema_attr_cmp wrapper to check for the special ↵Simo Sorce1-35/+57
dn/distinguishedName case alias (This used to be commit 18cd6cb67404830b8a5d28fa4106dadb275a5222)
2007-10-10r4759: use ldb_attr_cmp() to compare attribute namesSimo Sorce2-34/+53
check required attributes are not deleted on modify operation if the objectclass is deleted then deny the operation if orphan atributes are left behind (This used to be commit 8c11038d67c495f8d5f06cf1fdfe976088864b45)
2007-10-10r4714: move the ldb code to the new talloc interface (eg remove _p suffix)Simo Sorce2-540/+275
this helps standalone building of ldb renew the schema module split code into functions to improve readability and code reuse add and modify works correctly but we need a proper testsuite Simo (This used to be commit a681ae365ff1b5a2771b42ebd90336651ce1e513)
2007-10-10r4513: add experimental modification attribute checkingSimo Sorce1-1/+451
still not complete but works with add and replace, not tested with delete lot of duplicated code to remove (This used to be commit ea051f6cd39d0e729bb425eb08034a0eee0996dc)