summaryrefslogtreecommitdiffstats
path: root/source4/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* s4:dsdb Use new dsdb_dn code in LDB modules and Samba4 schemaAndrew Bartlett2009-11-121-0/+12
| | | | | | | | | | This converts the code from using the binary DN code in ldb_dn to using a special Samba-specfic wrapper around ldb_dn. We also use the dsdb_dn code for DN+Binary and DN+String comparisons (changed from treating them as Binary blobs) Andrew Bartlett
* s4:ldb-samba Use new ldb_any_comparison helper function in ldb-sambaAndrew Bartlett2009-11-121-41/+5
|
* s4:ldb Add a helper function for 'canonicalise' both strings base comparesAndrew Bartlett2009-11-122-0/+33
| | | | | | | This will help simplify boilerplate comparison functions where we don't have a shortcut way to compare. Andrew Bartlett
* lib/util Split data_blob_hex_string() into upper and lowerAndrew Bartlett2009-11-122-2/+2
| | | | | | | | | | | | Rather than have a repeat of the bugs we found at the plugfest where hexidecimal strings must be in upper or lower case in particular places, ensure that each caller chooses which case they want. This reverts most of the callers back to upper case, as things were before tridge's patch. The critical call in the extended DN code is of course handled in lower case. Andrew Bartlett
* Fixes for some tests not eorking against Windows or Samba.Nadezhda Ivanova2009-11-101-12/+8
|
* s4-samdb: remove the rDN size constraint of 64Andrew Tridgell2009-11-091-1/+4
| | | | | | This size constraint is not correct in it's current form, as windows does send us rDN values for CN with lengths longer than 64. Once we know how this constraint really works we can add it back in.
* s4:lib/messaging - fix up the python bindingsMatthias Dieter Wallnöfer2009-11-072-7/+8
| | | | | | This fixes up the broken "send" method of the python bindings and corrects some other parameter lists in parsing functions (this is only cosmetic). The reason for the bug was a superfluous "|"!
* ldb_init: use constant for result of "ldb_setup_wellknown_attributes"Matthias Dieter Wallnöfer2009-11-071-1/+1
|
* s4/ldb: Fix double allocation for "ldb_url"Kamen Mazdrashki2009-11-061-2/+2
| | | | Signed-off-by: Stefan Metzmacher <metze@samba.org>
* Python tests for the acl module.Zahari Zahariev2009-11-051-0/+1104
| | | | | | Signed-off-by: Nadezhda Ivanova <nadezhda.ivanova@postpath.com> Author: Zahari Zahariev <zahari.zahariev@postpath.com>
* s4:dsdb - Store SID as string in FDS.Endi S. Dewata2009-11-021-2/+2
|
* s4:ldb Remove debug traces duplicated by the new generic trace codeAndrew Bartlett2009-11-021-3/+0
|
* ldb:tdb backend - be also here more careful with the result valueMatthias Dieter Wallnöfer2009-10-271-2/+2
| | | | "msg_delete_attribute" doesn't return an LDB result constant.
* ldb:python bindings - make the intention by Jelmer ("int" vs. "enum") more clearMatthias Dieter Wallnöfer2009-10-271-0/+2
|
* Revert "ldb python bindungs - better use the "enum ldb_scope" for the search ↵Matthias Dieter Wallnöfer2009-10-271-3/+2
| | | | | | | | scope rather than "int"" This reverts commit 4f8826ff7f4789c5b5f363b733a42053f72aa526. Jelmer pointed out that the "enum"s don't work so well in combination with python.
* s4-dsdb: call dsdb_make_schema_global() from ldb_wrapAndrew Tridgell2009-10-271-0/+5
| | | | | | | Calling it from samdb_connect() can cause a stale schema to be put into the global schema. Thanks to Andrew Bartlett for spotting this.
* s4-ldb: '+' can also happen in base64 encoded index DNsAndrew Tridgell2009-10-271-1/+1
|
* s4:ldb Add detail to failures in the indexing codeAndrew Bartlett2009-10-271-2/+8
|
* s4:ldb Add additional tracing of the ldb APIAndrew Bartlett2009-10-272-4/+80
| | | | | | | This helps pin down where errors occour, by printing a call stack and setting error strings and trace messages in the transaction case. Andrew Bartlett
* Merge branch 'master' of ssh://git.samba.org/data/git/sambaAndrew Tridgell2009-10-254-15/+15
|\
| * ldb:backend "connect" functions - convert result values to LDB constantsMatthias Dieter Wallnöfer2009-10-254-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.
* | s4-ldb: allow for unescaped '=' in a index DNAndrew Tridgell2009-10-252-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.
* s4-ldb: ensure DNs pass validity tests in indexingAndrew Tridgell2009-10-251-0/+4
|
* s4-ldb: fixed string length handling on index recordsAndrew Tridgell2009-10-251-2/+2
|
* s4-ldb: don't allow modifies outside a transaction.Andrew Tridgell2009-10-251-0/+8
|
* s4-ldb: fixed re-index during a complex transactionAndrew Tridgell2009-10-251-10/+31
| | | | We may have modified index objects in the in-memory index tdb
* ldb python bindungs - better use the "enum ldb_scope" for the search scope ↵Matthias Dieter Wallnöfer2009-10-231-2/+3
| | | | rather than "int"
* s4-python: we need to include Python.h firstAndrew Tridgell2009-10-234-4/+4
| | | | | 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.
* s4-ldb: move the tdb_reopen_all() calls to ldb_wrap.cAndrew Tridgell2009-10-231-1/+8
|
* s4-ldb: use ldb_wrap_fork_hook() to cancel child transactionsAndrew Tridgell2009-10-231-1/+5
|
* s4-ldb: added ldb_transaction_cancel_noerr()Andrew Tridgell2009-10-233-1/+20
| | | | | This will be used to allow cancelling of transactions in a child after a fork()
* s4-ldbwrap: added re-use of ldb contexts in ldb_wrap_connect()Andrew Tridgell2009-10-233-30/+99
| | | | | | | | | This allows us to reuse a ldb context if it is open twice, instead of going through the expensive process of a full ldb open. We can reuse it if all of the parameters are the same. The change relies on callers using talloc_unlink() or free of a parent to close a ldb context.
* s4-dsdb: create a static system_session contextAndrew Tridgell2009-10-231-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
* s4-ldb: added a TODO about checking the indexlistAndrew Tridgell2009-10-221-0/+2
|
* s4-ldb: fixed some memory leaks in new indexing codeAndrew Tridgell2009-10-221-1/+3
|
* s4-ldb: don't try to index non-indexed attributesAndrew Tridgell2009-10-221-0/+4
|
* s4-ldb: ensure new dn_list elements are not owned by callerAndrew Tridgell2009-10-221-1/+1
|
* s4-ldb: over-allocate index records to save on realloc costsAndrew Tridgell2009-10-221-1/+5
|
* s4-ldb: fixed tdb error handling in ldb_index.cAndrew Tridgell2009-10-221-3/+8
|
* s4-ldb: delete empty index recordsAndrew Tridgell2009-10-221-0/+8
|
* s4-ldb: do more validation of idxptr listsAndrew Tridgell2009-10-221-12/+31
|
* s4-ldb: expose ltdb_err_map and ltdb_delete_noindexAndrew Tridgell2009-10-222-2/+5
| | | | These will be used by ldb_index.c
* s4-ldb: fast path for equal pointersAndrew Tridgell2009-10-221-1/+1
| | | | We compare identical ldb_val values surprisingly often
* s4-ldb: when taking a list intersection, the result can be as long as the ↵Andrew Tridgell2009-10-221-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
* s4-ldb: ldb indexing rewrite - part1Andrew Tridgell2009-10-224-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.
* s4-ldb: ldb_oom() for modulesAndrew Tridgell2009-10-221-0/+1
|
* s4:ldb_sort - Add some more "const"Matthias Dieter Wallnöfer2009-10-221-2/+2
| | | | Signed-off-by: Andrew Bartlett <abartlet@samba.org>
* S4: ldb_map modules uses defines that are reservedTorgeir Lerkerød2009-10-214-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>
* s4-ldb: allow for non-null terminated ldb_val in ldb_dn_from_ldb_valAndrew Tridgell2009-10-211-1/+1
| | | | The strlen() could go past the end of a non-null terminated value
* s4:ldb_map Fix use-after-free of memory in ldb_mapAndrew Bartlett2009-10-212-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