summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/common
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r12743: Remove the ugly way we had to make a second stage init and introduceSimo Sorce2-10/+24
a second_stage_init private function for modules that need a second stage init. Simo. (This used to be commit 5e8b365fa2d93801a5de1d9ea76ce9d5546bd248)
2007-10-10r12734: forgot to add qsortSimo Sorce1-0/+256
(This used to be commit df1ccca3499015d68a6f9f86286d9f66b6c0476c)
2007-10-10r12733: Merge ldap/ldb controls into main treeSimo Sorce4-1/+161
There's still lot of work to do but the patch is stable enough to be pushed into the main samba4 tree. Simo. (This used to be commit 77125feaff252cab44d26593093a9c211c846ce8)
2007-10-10r12600: Add a new module to sort the objectclass attribute on store. TheAndrew Bartlett1-0/+1
module is perhaps not the most efficient, but I think it is reasonable. This should restore operation of MMC against Samba4 (broken by the templating fixes). Andrew Bartlett (This used to be commit 41948c4bdbfca1160a01a92994324f9e22422afe)
2007-10-10r12599: This new LDB module (and associated changes) allows Samba4 to operateAndrew Bartlett1-0/+1
using pre-calculated passwords for all kerberos key types. (Previously we could only use these for the NT# type). The module handles all of the hash/string2key tasks for all parts of Samba, which was previously in the rpc_server/samr/samr_password.c code. We also update the msDS-KeyVersionNumber, and the password history. This new module can be called at provision time, which ensures we start with a database that is consistent in this respect. By ensuring that the krb5key attribute is the only one we need to retrieve, this also simplifies the run-time KDC logic. (Each value of the multi-valued attribute is encoded as a 'Key' in ASN.1, using the definition from Heimdal's HDB. This simplfies the KDC code.). It is hoped that this will speed up the KDC enough that it can again operate under valgrind. (This used to be commit e9022743210b59f19f370d772e532e0f08bfebd9)
2007-10-10r12553: Steal the error string onto this context, so that the caller doesn'tAndrew Bartlett1-1/+1
have to think about exactly what the right context to hang it of is. Andrew Bartlett (This used to be commit b1c8adcfe16c72252b0312e65676edcdbe472f09)
2007-10-10r12534: Make the transaction code fill the error string on failure.Andrew Bartlett1-3/+30
Andrew Bartlett (This used to be commit 2f54d7f774434f2a8b89ae01e993c4a1d16ce861)
2007-10-10r12361: Add a new function: ldb_binary_encode_string()Andrew Bartlett1-0/+13
This is for use on user-supplied arguments to printf style format strings which will become ldb filters. I have used it on LSA, SAMR and the auth/ code so far. Also add comments to cracknames code. Andrew Bartlett (This used to be commit 8308cf6e0472790c1c9d521d19322557907f4418)
2007-10-10r12157: ldb_dump_results() is useful to call from within gdb, so you can see aAndrew Tridgell1-0/+17
set of results (This used to be commit 2be62eb2dde9250f8bfe3a3272851e152a1d6b68)
2007-10-10r11958: - fixed memory leaks in the ldb_result handling in ldb operationsAndrew Tridgell1-63/+66
- removed an unnecessary level of pointer in ldb_search structure (This used to be commit b8d4afb14a18dfd8bac79882a035e74d3ed312bd)
2007-10-10r11953: enabled the rootdse module in the ldb modules codeAndrew Tridgell1-0/+1
(This used to be commit 7d8b11174c97a3797673254c351c94436aa716b7)
2007-10-10r11594: ensure ldb_search() sets *res to NULL on failure (some of the updatedAndrew Tridgell1-0/+2
ldb_result code coud rely on that) (This used to be commit cd567bcb24125827c746c1c0902631b0e7c2cea5)
2007-10-10r11567: Ldb API change patch.Simo Sorce2-152/+113
This patch changes the way lsb_search is called and the meaning of the returned integer. The last argument of ldb_search is changed from struct ldb_message to struct ldb_result which contains a pointer to a struct ldb_message list and a count of the number of messages. The return is not the count of messages anymore but instead it is an ldb error value. I tryed to keep the patch as tiny as possible bu as you can guess I had to change a good amount of places. I also tried to double check all my changes being sure that the calling functions would still behave as before. But this patch is big enough that I fear some bug may have been introduced anyway even if it passes the test suite. So if you are currently working on any file being touched please give it a deep look and blame me for any error. Simo. (This used to be commit 22c8c97e6fb466b41859e090e959d7f1134be780)
2007-10-10r11378: Fix an uninitialized variable warning. Tridge, I'm 99.999% sure this ↵Volker Lendecke1-1/+1
was a simple cut&paste error, but you might recheck this. Volker (This used to be commit 55b5b100e9ef7e04832d5ba4c10c45916be3513e)
2007-10-10r11364: added a ldb_attr_dn() function for testing if an attribute name isAndrew Tridgell2-4/+14
"dn" or "distinguishedName". This makes us a bit more consistent (This used to be commit b41b374b55f9a056c47ffa2ff88aa5272dbc42fc)
2007-10-10r11353: a bit of an improvement to the ldb_tdb error handlingAndrew Tridgell1-20/+22
(This used to be commit 896704f5c139c8bce30dfc898bb3a12be10035ed)
2007-10-10r11109: fixed the error code return from most ldb functions (the change to useAndrew Tridgell1-6/+16
ldb_transaction_cancel() broke it) (This used to be commit dc41994ea72c7c7f571efa009930cf36d7a9897a)
2007-10-10r10980: Use ldb_attr_cmp and ldb_dn_escape_valueAndrew Bartlett1-6/+6
Andrew Bartlett (This used to be commit 2b1c88f628b27ffda08de3f4ac83c1f3b052a078)
2007-10-10r10959: fix compiler warningsStefan Metzmacher1-2/+3
metze (This used to be commit 9a9311fa6b4bbb2a385413c056c8be57cdb9eb59)
2007-10-10r10957: make a comment clearerAndrew Tridgell1-1/+1
(This used to be commit d379fb5f101155edd5f266ae9aaae4e7ac7bd76b)
2007-10-10r10956: Tridge thought some comments might be a good idea :-)Andrew Bartlett1-2/+14
Andrew Bartlett (This used to be commit c0d6126effdf31e0a107c06a400973c731e0e263)
2007-10-10r10954: added support for canonicalName in the operational module, using theAndrew Tridgell1-0/+13
dn->canonicalName function abartlet just committed (This used to be commit 197e8a27f0557869eacd17b74e1b14e0665883b1)
2007-10-10r10953: Add a new function to form a canonicalName out of a DN to ldb_dn.cAndrew Bartlett1-0/+55
Use this new function in the client and server for the CrackNames case, where we particularly need it. Andrew Bartlett (This used to be commit 380037ee09ef8293bdb288d6c015e7c80f180a30)
2007-10-10r10918: - fixed standalone ldb buildAndrew Tridgell2-5/+6
- 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-5/+9
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-28/+45
- 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-10r10915: added a standard attribute handler for a ldap UTC time stringAndrew Tridgell2-11/+53
(This used to be commit efd7dd1a775c06f21924f35760f7768b4e8db449)
2007-10-10r10914: moved the ldap time string functions into ldb so they can be used byAndrew Tridgell1-0/+43
the time attribute handling functions (This used to be commit 93c296d52718e77f8b702e1721b548eaadc56c76)
2007-10-10r10913: This patch isn't as big as it looks ...Andrew Tridgell8-63/+195
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-10r10897: added in a hackish ldb proxy module that I am using to experiment withAndrew Tridgell1-0/+1
mmc management support (This used to be commit 99a5b088810e8e2f4e28b99a4a0e5e7dc9301594)
2007-10-10r10895: allow 'dn=string' searches to work again. Windows doesn't allow these,Andrew Tridgell1-7/+2
but they are so very useful for things like dn=@MODULES that I think its worth supporting them (This used to be commit e2e3193a98b0f81c7bdb02c98db375ca0449022a)
2007-10-10r10894: make the handling of dn/distinguishedName much closer to realAndrew Tridgell2-2/+7
ldap. Also ensure we put a objectclass on our private ldb's, so they have some chance of being stored in ldap if you want to (This used to be commit 1af2cc067f70f6654d08387fc28def67229bb06a)
2007-10-10r10790: allow updating of existing ldb opaque values (thanks to abartlet forAndrew Tridgell1-1/+11
spotting this) (This used to be commit ef13569ca94da00cc410318e61505e70f3606674)
2007-10-10r10759: make modules easier to write by allowing modules to only implement theAndrew Tridgell2-48/+72
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-10r10757: remove the proxy module (it is not complete yet)Andrew Tridgell1-1/+0
(This used to be commit 3c5f3032fcb092545580b986e0ce58bb49e4d9cb)
2007-10-10r10756: another fix for the construction of expressions from subtrees forAndrew Tridgell1-4/+6
SUBSTRING searches. This time fix multi-part substring searches. (This used to be commit bf5cef6f00466fc1dc3c2864a109f1ccd92681b0)
2007-10-10r10755: fixed the construction of expressions from subtrees for SUBSTRING ↵Andrew Tridgell1-1/+8
searches (This used to be commit 71c06778d4a3ac1ca4198071ae3351acdc0656d9)
2007-10-10r10753: don't require every ldb module to implement both a search_bytree() andAndrew Tridgell3-18/+37
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-10r10665: fixed some crash errors and an error encoding AND and OR operations ↵Andrew Tridgell1-3/+16
in the expression parsing code (This used to be commit 0d4a900ce5705856d61c6dd4ccb8fdbd049d22b7)
2007-10-10r10603: neaten up the ldb module initialisation codeAndrew Tridgell1-63/+29
(This used to be commit 8e7c4c98a7b4fd814f298fba1b6b686cb58339f8)
2007-10-10r10477: expose transactions outside ldb and change the API once moreSimo Sorce3-30/+88
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-10r10312: fix compiler warningStefan Metzmacher1-1/+1
metze (This used to be commit 3309a0f4d90f01e1f6182b797e2bfe3f8380e59c)
2007-10-10r10305: start implementing better error handlingSimo Sorce2-9/+34
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-10r10304: check for basic ldb_message sanity and return appropriateSimo Sorce2-13/+55
LDB_ERR_ value (This used to be commit 610f5646f0816820ac9342e81d46d139e26cc918)
2007-10-10r10303: check no attribute is given emptySimo Sorce1-0/+5
(This used to be commit f0ad9495e45ee0d41ef8ca182984599c8e11cabb)
2007-10-10r10299: remove the public (un)lock functions and introduce a transaction basedSimo Sorce2-23/+39
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-10r10250: the comparison is caseless so we must caseless subtractSimo Sorce1-1/+1
otherwise we get the wrong result when comparing upper case chars with lower case chars (This used to be commit f6ea6e9382f954be819ec82e28598cdf9cf88661)
2007-10-10r10231: seem I flipped these, fix.Simo Sorce1-2/+2
(This used to be commit 8ddf4de162f42ed53ab0603dd0e1536796f9197e)
2007-10-10r9929: Fix indentationAndrew Bartlett1-2/+2
Andrew Bartlett (This used to be commit d6f57ec921839b46534eb64a7b6374161ff37835)
2007-10-10r9928: ncName is a DN, and needs to use DN matching rules.Andrew Bartlett1-0/+1
Andrew Bartlett (This used to be commit b89e7a7fcdf80f2cab581f138358b4324d15d6bc)