summaryrefslogtreecommitdiff
path: root/source4/lib/ldb
AgeCommit message (Collapse)AuthorFilesLines
2009-10-25Merge branch 'master' of ssh://git.samba.org/data/git/sambaAndrew Tridgell4-15/+15
2009-10-25s4-ldb: allow for unescaped '=' in a index DNAndrew Tridgell2-4/+13
The ldb_dn_explode code normally enforces all special characters, including a '=', must be escaped. Unfortunately this conflicts with the ltdb index DNs, which for binary attributes may be base64 encoded. This allows a unescaped '=' as a special case for index DNs.
2009-10-25ldb:backend "connect" functions - convert result values to LDB constantsMatthias Dieter Wallnöfer4-15/+15
I think this is better since "ldb_backend_connect" and "ldb_connect" which propagate those values should return only LDB constants. Therefore a conversion (especially for "-1") would be needed.
2009-10-25s4-ldb: ensure DNs pass validity tests in indexingAndrew Tridgell1-0/+4
2009-10-25s4-ldb: fixed string length handling on index recordsAndrew Tridgell1-2/+2
2009-10-25s4-ldb: don't allow modifies outside a transaction.Andrew Tridgell1-0/+8
2009-10-25s4-ldb: fixed re-index during a complex transactionAndrew Tridgell1-10/+31
We may have modified index objects in the in-memory index tdb
2009-10-23ldb python bindungs - better use the "enum ldb_scope" for the search scope ↵Matthias Dieter Wallnöfer1-2/+3
rather than "int"
2009-10-23s4-python: we need to include Python.h firstAndrew Tridgell1-1/+1
If we don't include Python.h first then we get a pile of warnings due to broken redefines of XOPEN_SOURCE in the Python includes.
2009-10-23s4-ldb: added ldb_transaction_cancel_noerr()Andrew Tridgell3-1/+20
This will be used to allow cancelling of transactions in a child after a fork()
2009-10-23s4-dsdb: create a static system_session contextAndrew Tridgell1-1/+1
This patch adds a system_session cache, preventing us from having to recreate it on every ldb open, and allowing us to detect when the same session is being used in ldb_wrap
2009-10-22s4-ldb: added a TODO about checking the indexlistAndrew Tridgell1-0/+2
2009-10-22s4-ldb: fixed some memory leaks in new indexing codeAndrew Tridgell1-1/+3
2009-10-22s4-ldb: don't try to index non-indexed attributesAndrew Tridgell1-0/+4
2009-10-22s4-ldb: ensure new dn_list elements are not owned by callerAndrew Tridgell1-1/+1
2009-10-22s4-ldb: over-allocate index records to save on realloc costsAndrew Tridgell1-1/+5
2009-10-22s4-ldb: fixed tdb error handling in ldb_index.cAndrew Tridgell1-3/+8
2009-10-22s4-ldb: delete empty index recordsAndrew Tridgell1-0/+8
2009-10-22s4-ldb: do more validation of idxptr listsAndrew Tridgell1-12/+31
2009-10-22s4-ldb: expose ltdb_err_map and ltdb_delete_noindexAndrew Tridgell2-2/+5
These will be used by ldb_index.c
2009-10-22s4-ldb: fast path for equal pointersAndrew Tridgell1-1/+1
We compare identical ldb_val values surprisingly often
2009-10-22s4-ldb: when taking a list intersection, the result can be as long as the ↵Andrew Tridgell1-1/+1
first list Intuitively you would think it couldn't be longer than the minimum of the two lists, but we are deliberately allowing for duplicates at this level of the indexing code, which means the result can be longer
2009-10-22s4-ldb: ldb indexing rewrite - part1Andrew Tridgell4-909/+739
This gets rid of the @IDXPTR approach to in-transaction indexing, instead using an in-memory tdb to hold index values during a transaction. This also cleans up a lot of the internal indexing logic, hopefully making it easier to understand. One of the big changes is in memory management, with a lot more use made of talloc tricks to avoid copying dn lists, and shortcuts used to avoid high intersection and union calculation costs. The overall result is that a re-provision on my laptop goes from 48s to a bit over 10s.
2009-10-22s4-ldb: ldb_oom() for modulesAndrew Tridgell1-0/+1
2009-10-22s4:ldb_sort - Add some more "const"Matthias Dieter Wallnöfer1-2/+2
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2009-10-21S4: ldb_map modules uses defines that are reservedTorgeir Lerkerød4-58/+58
On OpenSolaris MAP_RENAME and friends are defined in <sys/mman.h> e.g. mmap and friends. So on these systems MAP_* have a meaning. Cleaned up LDB name space by adding LDB_ in front of MAP_* e.g. MAP_RENAME => LDB_MAP_RENAME Signed-off-by: Torgeir Lerkerød <torgeir.lerkerod@gmail.com> Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-10-21s4-ldb: allow for non-null terminated ldb_val in ldb_dn_from_ldb_valAndrew Tridgell1-1/+1
The strlen() could go past the end of a non-null terminated value
2009-10-21s4:ldb_map Fix use-after-free of memory in ldb_mapAndrew Bartlett2-4/+8
We need to keep the old 'ares' from the remote server around so we can forward it back to the caller. We can't send the same controls (from the last search entry) twice (and it makes no sense anyway). Andrew Bartlett
2009-10-21s4:ldb Put ltdb_private under the 'module'Andrew Bartlett1-0/+1
This helps track the memory better, as we can then place it under the partition hirarchy. Andrew Bartlett
2009-10-21s4:ldb Add new function to create a cut down list of controlsAndrew Bartlett2-0/+47
This I hope will be useful for removing controls from the ldb_reply Andrew Bartlett
2009-10-21s4:ldb Add function to add controls to an LDB replyAndrew Bartlett2-0/+45
2009-10-19s4-pyldb: fixed 64 bit issuesAndrew Tridgell1-2/+4
The python argument parse functions take standard C types, not enums and time_t. This broken the python interface on PPC.
2009-10-18s4:ldb_msg_check_string_attribute - add a comment about the result valuesMatthias Dieter Wallnöfer2-1/+14
2009-10-18Revert "s4:ldb_msg - Use LDB constants on results"Matthias Dieter Wallnöfer1-3/+4
This reverts commit 56a8baff3df6a5120b6c7bbca771dfb7c6934fd5. Simo pointed out that I was wrong here.
2009-10-18s4:ldb_msg - Use LDB constants on resultsMatthias Dieter Wallnöfer1-5/+7
2009-10-18s4:ldb_ldap - Fix intendationMatthias Dieter Wallnöfer1-8/+8
2009-10-16s4:ldb - fixed dangling pointer in ldb_request_add_control()Endi S. Dewata1-2/+7
2009-10-15s4-ldaptest: "testgroup" is a bit too commonAndrew Tridgell1-2/+2
This failed on one of my test boxes that has a group called "testgroup". using "testgroupXX" should be a bit better.
2009-10-15s4-ldap: test the rDN size limitAndrew Tridgell1-0/+25
2009-10-15s4-ldb: removed bugus RDN length checkAndrew Tridgell1-5/+0
This isn't the rDN !
2009-10-12s4:ldb_tdb - Revert some introduced "trivial gotos"Matthias Dieter Wallnöfer1-21/+11
I hope that this makes abartlet & simo happy again (consider mailing list).
2009-10-12Revert "s4:ldb - add a check which has to be done on beginning of a "modify" ↵Matthias Dieter Wallnöfer1-8/+0
operation" This reverts commit f9990e9b391f330a8e6c5c158ee4e4eaa50f6176. abartlet claims that this behaviour is too AD specific to put here. Btw I had also some doubts if this is clean enough. I put it only here to make "ldap.py" pass. I'll try to find a new solution soon.
2009-10-12s4:ldb Allow a NULL module listAndrew Bartlett1-1/+1
2009-10-12Allow (and ignore) distinguishedName on special recordsAndrew Bartlett1-0/+2
They are not stored, so we can ignore them (makes copying records much easier) Andrew Bartlett
2009-10-12s4:ldb Reload the 'ltdb_cache' when @OPTIONS changesAndrew Bartlett1-0/+7
(Otherwise setting the check base on search option is not applied until after a reload). Andrew Bartlett
2009-10-12s4:ldb Allow a module string of ""Andrew Bartlett1-0/+6
(We may have no modules set) Andrew Bartlett
2009-10-08s4:ldb - SQLite: port some constraints from the TDB backend also to the ↵Matthias Dieter Wallnöfer1-0/+49
SQLITE one
2009-10-08s4:ldap.py - Further enhancementsMatthias Dieter Wallnöfer1-6/+236
- Enhance test for "distinguishedName" - Add a test for single-valued attributes - Add a test for multi-valued attributes - Add a test for empty messages - Add a test for empty attributes
2009-10-08s4:ldb - add a check which has to be done on beginning of a "modify" operationMatthias Dieter Wallnöfer1-0/+8
2009-10-08s4:ldb_tdb - Rework/VariousMatthias Dieter Wallnöfer1-192/+200
- Unify the error handling method with "done" mark in all longer functions - Fix up result codes to match more the real MS AD - Some cosmetic fixups