summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb/ldb_modules
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r19299: Fix possible memleaksSimo Sorce1-1/+3
(This used to be commit 6fad80bb09113a60689061a2de67711c9924708b)
2007-10-10r18945: fix compiler warnings and end-of-non-void function bugsStefan Metzmacher2-11/+17
metze (This used to be commit ed195999c0c7d89cdc61e980576d191fc05d65d7)
2007-10-10r18908: Store the schema structure into an opaque pointer so that it can be ↵Simo Sorce1-6/+14
reused by multiple connections (This used to be commit ca8827d8f9a9f6ec60afed29b0b85f491d725d1c)
2007-10-10r18781: Move the usnCreated and usnChanged handling around again.Andrew Bartlett4-18/+396
This moves these attributes from objectguid into an optional backend (objectguid), used by ltdb. For OpenLDAP, the entryUUID module converts entryCSN into usnChanged. This also changes the sequence number API, and uses 'time based' sequence numbers, when an LDAP or similar backend is detected. To assist this, we also store the last modified time in the TDB, whenever we change a value. Andrew Bartlett (This used to be commit 72858f859483c0c532dddb2c146d6bd7b9be5072)
2007-10-10r18504: Handle mappings for RENAME and KEEP attributes better. We don't needAndrew Bartlett1-2/+2
to mess with the values in these cases. Where we do convert the values, try and convert substrings. This isn't going to be perfect, but we should try rather than segfault. This also avoids using the wrong arm of the union for the attribute name The change in the entryUUID module is to correct the case of sAMAccountName, due to the case sensitive ldap.js test. Andrew Bartlett (This used to be commit 81d9a692c1e74ec9078bf718003eafdba85b4324)
2007-10-10r18495: More work on the LDAP backend (which now passes a lot of our tests!)Andrew Bartlett3-19/+50
This adds a list of attributes that are in our wildcard seaches, but the remote server requires to be explicitly listed. This also cleans up the handling of wildcards in ldb_map to be more consistant. Also fix the partitions module to rebase the search, if on the GC port, we do a subtree search. (Otherwise backends can rightly complain that the search is not in their scope). Andrew Bartlett (This used to be commit bc58792b7102f086b19353635d5d5ef9d40a0aae)
2007-10-10r18441: Allow searching for the high bit in these bitfields, when the clientAndrew Bartlett1-1/+38
asks for them as large integers, rather than a negative integer. Due to an OpenLDAP bug, this only works reliably against OpenLDAP CVS as of today. (but mostly works in older versions, depending on a thread-specific value fo errno in the server). Andrew Bartlett (This used to be commit 3b5354aededc619ac6656611eacd43888e74260a)
2007-10-10r18368: Don't list GENSEC mechs that only have client implementations in ourAndrew Bartlett1-1/+1
supportedSASLMechanism list. Andrew Bartlett (This used to be commit 3e69637b5f79e4132026ebaf9d57cf67ef3826c1)
2007-10-10r18367: When converting to entryUUID, ensure we don't double-convert aAndrew Bartlett1-13/+16
string-format GUID. Andrew Bartlett (This used to be commit 11cc6408c93f46f4d9ae7ae0ee18dac836fe270d)
2007-10-10r18301: I discovered how to load the warnings from a build farm build intoAndrew Tridgell2-11/+2
emacs compile mode (hint, paste to a file, and compile as "cat filename"). This allowed me to fix nearly all the warnings for a IA_64 SuSE build very quickly. (This used to be commit eba6c84efff735bb0ca941ac4b755ce2b0591667)
2007-10-10r18240: Make it clearer when we store the plaintext password.Andrew Bartlett2-5/+21
Store the plaintext password in userPassword in the LDAP backend so that the OpenLDAP server can use DIGEST-MD5. Andrew Bartlett (This used to be commit 1b02c604b2c55e1c9e15ac1f266e7df74d619dbd)
2007-10-10r18031: Merge my replace fixes:Jelmer Vernooij1-1/+11
* libreplace can now build stand-alone * add stub testsuite for libreplace * make talloc/tdb/ldb use libreplace (This used to be commit fe7ca4b1454e01a33ed0d53791ebffdd349298b4)
2007-10-10r17998: start working on syntaxesSimo Sorce4-29/+441
(This used to be commit b49b8f5cb5ffa29a3b63f70a1f437c9720d2228c)
2007-10-10r17955: Don't search for the dnsDomain attribute, it is invented (not in theAndrew Bartlett1-7/+23
AD schema). Andrew Bartlett (This used to be commit fac27e4dddc98288dc765e135db6b168fbec760c)
2007-10-10r17930: Merge noinclude branch:Jelmer Vernooij2-2/+2
* Move dlinklist.h, smb.h to subsystem-specific directories * Clean up ads.h and move what is left of it to dsdb/ (only place where it's used) (This used to be commit f7afa1cb77f3cfa7020b57de12e6003db7cfcc42)
2007-10-10r17898: handle objectcategory and isdefunct for classesSimo Sorce1-17/+60
(This used to be commit 7664b52b89bfac6f2db52fae2daa65c856acd1ac)
2007-10-10r17894: better name for the internal syntax typeSimo Sorce1-3/+3
(This used to be commit 4241a1bb832461ca44ce0f20cb770ea2b6f2d7e3)
2007-10-10r17870: This module (for the moment) handles the modifyTimestamp generation. ↵Andrew Bartlett1-0/+1
For that, it needs to hook into the modify operation. Andrew Bartlett (This used to be commit d22117a53bafa4bb72c854353620099b5a6f81d8)
2007-10-10r17860: Let's commit the work down up to now on the new schema module.Simo Sorce2-0/+1320
At the moment it is able to validate an object has no conflicting objectlasses that it meets the criteria to be inserted as child of the parent and also sorts and create the objectclass hierarchy so that the objectclass .c module can be obsoleted. Not activated by default as we have to completely rework the current provisioning method. (In my tests I could not activate it before all other ldif except for the one that create users were loaded, make test seem to be happy anyway if it is activated after provisioning). Next steps will be attribute and attribute syntax checking on add operation. And then the modify operation will follow. Simo. (This used to be commit 0c444ba1adfb9ce5cfa736bf0620aa3bec66050d)
2007-10-10r17830: Set the default_basedn (hey, it comes from the "default" naming ↵Simo Sorce1-1/+1
contex :-) once at connection time, after modules have been loaded. Introduce a function to retrieve the value where needed. (This used to be commit 0caf6a44e03393c645030a9288e7dfd31e97c98b)
2007-10-10r17824: add a wrapper for the common partitions_basedn calculationAndrew Tridgell1-1/+1
(This used to be commit 09007b0907662a0d147e8eb21d5bdfc90dbffefc)
2007-10-10r17823: get rid of most of the samdb_base_dn() calls, as they are no longerAndrew Tridgell1-2/+2
needed in searches (This used to be commit a5ea749f0ac63bf495a55ee8d9d002208ab93572)
2007-10-10r17788: fix compiler warningsStefan Metzmacher1-3/+3
metze (This used to be commit 00fcc4f16a01a0c6a70f86c8bd9d1f9801dfd9df)
2007-10-10r17703: Fixes to enable the entryUUID module to work for it's objectClass ->Andrew Bartlett2-6/+7
OID mappings. The key point is to 'enable' the partitions in the partitions module before the init is complete. That way, the modules can perform searches that use partitions. Andrew Bartlett (This used to be commit 420d1920a6824a6c0cb70b4ba832ddb90b0e95ff)
2007-10-10r17699: Remove more printf calls.Andrew Bartlett1-11/+9
Try to cope with partital initialisation. Andrew Bartlett (This used to be commit 3c497405fea2f3e48a0d1bb2818b6a1ff345d368)
2007-10-10r17694: Don't use printf() in a module...Andrew Bartlett1-6/+5
(This used to be commit 9f810ddd1436672e16a6b80500bb14aa21e097de)
2007-10-10r17690: Demonstrate how we can read the schema to find out details needed forAndrew Bartlett1-3/+182
translation. I hope to have this reading a schema structure in the future. Andrew Bartlett (This used to be commit fb085a651ff60ab9b5d120a1ea228ff3edf0c224)
2007-10-10r17639: Martin Kuhl noticed that we loaded an incorrect value forAndrew Bartlett1-0/+9
distinguisedName on templated objects. In looking how to handle distinguishedName correctly on LDAP, I was very glad to find it supported entryDN, and this adds another mapping. Andrew Bartlett (This used to be commit 3b5c973988648a2b2a5e1885ee894607e4d9679b)
2007-10-10r17553: Actually enable the samba3sam module. Should help 'make test'.Andrew Bartlett1-1/+0
Andrew Bartlett (This used to be commit 0e19d159697e99f6c45879cf42c39c9b2b134ffa)
2007-10-10r17529: Simo doesn't like the use of the internal ldb_errstring in functionsAndrew Bartlett1-8/+28
not used purely as ldb module helper functions. This now passes these strings back as explicit parameters. Andrew Bartlett (This used to be commit 9c1cd9c2c6bcd9d056a7c9caafacdd573562ebbc)
2007-10-10r17526: Move timestamp generation into the objectGUID module. It probablyAndrew Bartlett1-1/+88
needs to be renamed (operation_add?). This allows me to match the behaviour and substitute with the entryUUID module for remote LDAP connections. Andrew Bartlett (This used to be commit af02b4d7c631bb15bf5a5f73f9fdc23075d50f60)
2007-10-10r17525: This is a merge from the Google Summer of Code 2006 project by ↵Andrew Bartlett3-2/+227
Martin Kühl <mkhl@samba.org>. Martin took over the work done last year by Jelmer, in last year's SoC. This was a substanital task, as the the ldb modules API changed significantly during the past year, with the addition of async calls. This changeset reimplements and enables the ldb_map ldb module and adapts the example module and test case, both named samba3sam, to the implementation. The ldb_map module supports splitting an ldb database into two parts (called the "local" and "remote" part) and storing the data in one of them (the remote database) in a different format while the other acts as a fallback. This allows ldb to e.g. store to and load data from a remote LDAP server and present it according to the Samba4 schema while still allowing the LDAP to present and modify its data separately. A complex example of this is the samba3sam module (by Jelmer Vernooij), which maps data between the samba3 and samba4 schemas. A simpler example is given by the entryUUID module (by Andrew Bartlett), which handles some of the differences between AD and OpenLDAP in operational attributes. It principally maps objectGUID, to and from entryUUID elements. This is also an example of a module that doesn't use the local backend as fallback storage. This merge also splits the ldb_map.c file into smaller, more manageable parts. (This used to be commit af2bece4d343a9f787b2e3628848b266cec2b9f0)
2007-10-10r17516: Change helper function names to make more clear what they are meant ↵Simo Sorce4-21/+21
to do (This used to be commit ad75cf869550af66119d0293503024d41d834e02)
2007-10-10r17514: Simplify the way to set ldb errors and add anotherSimo Sorce8-130/+125
helper function to set them. (This used to be commit 260868bae56194fcb98d55afc22fc66d96a303df)
2007-10-10r17505: we are setting the timeout with the provide function right after.Simo Sorce1-1/+0
(This used to be commit 6520e3c83acfbb7b6aa63d1cbebe8f8801db292f)
2007-10-10r17474: Allow the partitions module to load modules for specific backends.Andrew Bartlett1-4/+75
Andrew Bartlett (This used to be commit c016db2187120991e8ad779b9df35480d7c19400)
2007-10-10r17331: Oops, how did I commit this empty file...Andrew Bartlett1-0/+0
Andrew Bartlett (This used to be commit 3b81f21d4153350b1febe23daad9a08efc617954)
2007-10-10r17303: More testing results: Don't try and call a NULL callback, and use theAndrew Bartlett1-1/+6
correct parameter, as this is called for more than just 'add'. Andrew Bartlett (This used to be commit be51b7240889bfcc752f92a2920d8b6a2eccecd6)
2007-10-10r17302: Testing!Andrew Bartlett2-5/+7
This confirms that records are replicated into the correct databases, and that the case insensitive flags really work. Andrew Bartlett (This used to be commit ad463c1a5243019548bdbeea3070ec2e6cbcfcdf)
2007-10-10r17299: Improve the partition module to replicate attribute records into allAndrew Bartlett1-59/+181
partitions. Test that we do that correctly. Andrew Bartlett (This used to be commit 90c07b88010b848423dee9556a24e8d181c365dd)
2007-10-10r17298: Fix up the local_password module to the current LDB API, and build ↵Andrew Bartlett2-96/+108
it by default. Andrew Bartlett (This used to be commit c1ea0a350cdc2c5ddfd71e08f8c3907d97fc1efd)
2007-10-10r17289: Fix the build: I havn't commited this module yet.Andrew Bartlett1-10/+0
Andrew Bartlett (This used to be commit 8b0f6e637ee3ef0767be4017b4106877c185d7c7)
2007-10-10r17288: Don't mess with entries in the local password prefix, and fix constAndrew Bartlett1-5/+21
warnings. Andrew Bartlett (This used to be commit 4569c58a42e1d65ae71ee57e391b9e3dbaba2218)
2007-10-10r17287: Add the local_password module to the tree, so it doesn't get lost inAndrew Bartlett3-3/+904
ldb API changes. Andrew Bartlett (This used to be commit 44806c67dbabe2952fe355de76d7fa51f772775f)
2007-10-10r17186: "async" word abuse clean-up part 2Simo Sorce7-78/+78
(This used to be commit c6aa60c7e69abf1f83efc150b1c3ed02751c45fc)
2007-10-10r17185: Oh, I wanted to do this for sooo long time.Simo Sorce5-78/+78
Finally acknowledge that ldb is inherently async and does not have a dual personality anymore Rename all ldb_async_XXX functions to ldb_XXX except for ldb_async_result, it is now ldb_reply to reflect the real function of this structure. Simo. (This used to be commit 25fc7354049d62efeba17681ef1cdd326bc3f2ef)
2007-10-10r17103: Big updates to the not-yet-enabled partitions module. It now servicesAndrew Bartlett1-4/+189
the Global Catalog port 'correctly' (in a very simple sense) in that it should be no worse than what we had before. We now combine partitions together to search over the whole tree, when we are marked as 'global catalog'. Andrew Bartlett (This used to be commit 0a354a1ddeccd9a6b1610bc6813a86fcdfc4d310)
2007-10-10r16972: Replace the sequence_number function pointer in ldb with the ldb flags.Andrew Bartlett1-1/+1
The function pointer was meant to be unused, this patch fixes partition.c to use ldb_sequence_number(). (No backend provided the pointer any more). Set the flags onto the ldb structure, so that all backends opened by the partitions module inherit the flags. Set the read-ony flag when accessed as the global catalog Modify the LDAP server to track that this query is for the global catalog (by incoming port), and set a opqaue pointer. Next step is to read that opaque pointer in the partitions module. Andrew Bartlett (This used to be commit a1161cb30e4ffa09657a89e03ca85dd6efd4feba)
2007-10-10r16933: Sort the partitions in order from most, to least specific.Andrew Bartlett1-2/+13
Remember to perform operations on the base database as well. Andrew Bartlett (This used to be commit eae232530c967fe949355cf1914ca0cb8c0ea8c2)
2007-10-10r16914: Add more tests for the partition module.Andrew Bartlett1-25/+137
Andrew Bartlett (This used to be commit 2728b60dfa50ded03e06f0bd53eee55fce5143bd)