summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/common
AgeCommit message (Collapse)AuthorFilesLines
2010-09-28ldb-dn: don't crash on NULL in ldb_binary_encode_string()Andrew Tridgell1-0/+3
Thanks to Nadya for finding this one!
2010-09-27s4-ldb: Added ldb_request_replace_controlNadezhda Ivanova1-0/+22
It is the same as ldb_request_add_control, except it will replace an existing control. Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Mon Sep 27 19:00:38 UTC 2010 on sn-devel-104
2010-09-25ldb: added request location trackingAndrew Tridgell2-0/+28
this is used to help debug async ldb requests. The ldb request handle now contains a location string and the parent request pointer. This allows us to print a backtrace of ldb requests in the dsdb modules.
2010-09-24ldb:ldb_match.c - fix counter variable typeMatthias Dieter Wallnöfer1-1/+1
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-09-24ldb:ldb_msg_add_linearized_dn - handle NULL DNsMatthias Dieter Wallnöfer1-2/+8
Don't let the routine crash Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-08-20s4-ldb: added support for rodc_control in ldbAndrew Tridgell1-0/+27
this allows you to specify the RODC join control in python ldb calls or on the command line Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-08-17s4-ldb: added LDB_FLAG_INTERNAL_MASKAndrew Tridgell1-0/+26
This ensures that internal bits for the element flags in add/modify requests are not set via the ldb API Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-07-29s4-ldb: use TALLOC_CTX type instead of 'void'Kamen Mazdrashki7-44/+44
2010-07-19s4-dsdb: use ldb_msg_normalize() in ldb_msg_difference()Kamen Mazdrashki1-6/+8
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-dsdb: use ldb_msg_normalize() in source4/lib/ldb/common/ldb.cKamen Mazdrashki1-5/+7
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-ldb: Add ldb_msg_normalize() to accept a memory context from clientKamen Mazdrashki1-12/+41
Previos implementation from ldb_msg_canonicalize() was moved into this function and now ldb_msg_canonicalize() is based on ldb_msg_normalize() Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-ldb: Use _ldb_msg_add_el() in ldb_msg_add()Kamen Mazdrashki1-4/+10
Previous implementation was 'leaking' attribute name string, that is allocated by ldb_msg_add_empty() Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-ldb: Use _ldb_msg_add_el() in ldb_msg_add_empty()Kamen Mazdrashki1-22/+17
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-ldb: Add separate function to add empty element into ldb_msgKamen Mazdrashki1-0/+30
It just adds another element, nothing more. Caller is responsible to fill-in the added element and determine how to handle data allocation contexts. Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-ldb: Write more explanatory comment for ldb_msg_add()Kamen Mazdrashki1-3/+8
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19s4-ldb: Implement ldb_msg_difference() function to accept a memory context ↵Kamen Mazdrashki1-23/+72
from client Old implementation from ldb_msg_diff() was moved into this this function but with changed interface so that a memory context may be passed. ldb_msg_diff() function is now based on ldb_msg_difference(), which fixes a hidden leak - internal ldb_msg object (returned from ldb_msg_canonicalize) wasn't freed and stays attached to ldb_context for the connection lifetime. Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-09ldb:common/ldb_dn.c - "ldb_dn_get_parent" - no need to manipulate the real DNMatthias Dieter Wallnöfer1-6/+0
Since the parent DN is a duplication of the passed DN parameter.
2010-07-09s4: fix warning: unused variable ‘i’Kamen Mazdrashki1-1/+0
2010-07-07s4-ldb: added ldb_error() and ldb_operr()Andrew Tridgell1-0/+16
These will be used to help avoid the problem we have with hundreds of places that do "return LDB_ERR_OPERATIONS_ERROR" without an explanation. It is very difficult to track down ldb errors which don't have any explanation. By replacing "return LDB_ERR_OPERATIONS_ERROR;" with "return ldb_operr(ldb);" we at least get a file:line message in the ldb error string. It isn't an ideal error message, but it is much better than just "operations error" This change also makes ldb_oom() return the error code (LDB_ERR_OPERATIONS_ERROR) so you can do: return ldb_oom(ldb); instead of: ldb_oom(ldb); return LDB_ERR_OPERATIONS_ERROR;
2010-07-07s4-ldb: added ldb_options_find()Andrew Tridgell2-4/+76
ldb_options_find() allows backends to find options in the options[] array passed to the connect operation. This will be used by the ldb_ldap bind code
2010-06-29ldb:ldb_modules.c - "ldb_dso_load_symbol" - remove unneeded caste before "dlsym"Matthias Dieter Wallnöfer1-2/+1
2010-06-29s4:ldb - "ldb_dn_update_components" - fix free of invalid DN partsMatthias Dieter Wallnöfer1-4/+3
Use "LDB_FREE" for such free operations and in addition wipe also the casefolded DN out.
2010-06-29ldb:ldb_dn.c - "ldb_dn_set_extended_component" - free the linearized string ↵Matthias Dieter Wallnöfer1-2/+4
when the components change
2010-06-29s4:ldb_dn.c - make the code parts which free extended components consistentMatthias Dieter Wallnöfer1-9/+7
Cosmetic
2010-06-29ldb:ldb_dn - "ldb_dn_explode" - move the "dn->comp_num" initalisation ↵Matthias Dieter Wallnöfer1-3/+3
upwards and use "LDB_FREE" for freeing "dn->components" Mostly cosmetic - no behaviour change
2010-06-20ldb:controls - add the "TREE_DELETE" control for allowing subtree deletesMatthias Dieter Wallnöfer1-0/+27
2010-06-20ldb: add a new control bypassioperationnalMatthieu Patou1-0/+27
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-06-19ldb:ldb_dn.c - don't support "ldb_dn_add_child" on a "" parent DNMatthias Dieter Wallnöfer1-0/+7
It's meaningless and could end in DNs as "cn=child,".
2010-06-15ldb: Fix included ldb build.Jelmer Vernooij1-0/+4
2010-06-06ldb:ldb_msg_remove_attr - provide a better implementationMatthias Dieter Wallnöfer1-2/+3
We can have some special (bad) messages which contain multiple message elements for the same attribute. The AD password change ones are such an example.
2010-06-02s4:ldb_msg_element_compare - fix typo in commentMatthias Dieter Wallnöfer1-1/+1
2010-05-31ldb:ldb_msg_add_steal_string - prevent also there the addition of strings ↵Matthias Dieter Wallnöfer1-0/+5
with length 0
2010-05-22s4:ldb_controls: make it possible to pass arbitrary control via the command lineStefan Metzmacher1-0/+34
--controls=local_oid:1.3.6.1.4.1.7165.4.3.7:1 To specify the DSDB_CONTROL_PASSWORD_HASH_VALUES_OID control as critical. metze
2010-05-13ldb:ldb_msg.c - use result constantMatthias Dieter Wallnöfer1-1/+1
2010-05-10s4/dn: handle case 'base' dn has no componentsKamen Mazdrashki1-1/+1
This could if the 'base' dn is special for example.
2010-05-04s4/rodc: Support read-only databaseAnatoliy Atanasov1-0/+48
Check on modify if we are RODC and return referral. On the ldap backend side now we pass context and ldb_modify_default_callback to propagate the referral error to the client.
2010-04-12s4-ldb: fixed a crash bug for non-UTF8 stringsAndrew Tridgell1-1/+3
when one of the strings was not valid UTF8, we would try to dereference NULL
2010-03-09Fix typo and convert spaces to tabsSimo Sorce1-4/+4
2010-03-09s4:ldb fix escape parsingSimo Sorce1-2/+24
sscanf can return also on short reads, in this case an invalid escape sequence like '\1k' would be accepted, returning 1 as value and swallowing the 'k'. Use an auxiliar function to validate and convert hex escapes.
2010-03-08LDB:common - Change counters to "unsigned" where appropriateMatthias Dieter Wallnöfer11-67/+76
To count LDB objects use variables of type "unsigned (int)" or "long long int" on binary or downto searches. To count characters in strings use "size_t". To calculate differences between pointers use "ptrdiff_t".
2010-03-01s4:LDB - cosmetic fix for a "for" loopMatthias Dieter Wallnöfer1-1/+1
2010-02-26s4:ldb_dn: fix an uninitialized variable (found by make valgrindtest)Stefan Metzmacher1-1/+1
metze
2010-02-26s4:ldb_dn: remove dn->ext_linearized when ext_components is modified.Stefan Metzmacher1-3/+4
metze
2010-02-26s4:ldb_dn: reset dn->ext_comp_num in ldb_dn_explode()Stefan Metzmacher1-2/+2
metze
2010-02-22LDB related spelling fixes.Brad Hards4-4/+4
Signed-off-by: Matthias Dieter Wallnöfer <mwallnoefer@yahoo.de>
2010-02-14s4-ldb: use TYPESAFE_QSORT() in the rest of the ldb codeAndrew Tridgell2-4/+4
2010-02-11ldb_match - Ignore ":dn" part of extended matches for nowMatthias Dieter Wallnöfer1-2/+5
It's not fully clear what this ":dn" part means for us. What we know is that older AD implementations (Windows Server 2000, 2003) need it to have extended matches working in the expected way. To be able to interoperate with s3's winbind and other tools I and gd decided to transform this into a warning until we know what to do. This should fix bug #6511.
2010-01-13s4:ldb_msg: first try to decode integers as signed and then fallback to unsignedStefan Metzmacher1-0/+18
LDAP only knowns about signed integers, so let ldb_msg_find_attr_as_uint() and ldb_msg_find_attr_as_uint64() cope with it. metze
2010-01-13s4:ldb: be more strict in parsing ldb time stringsStefan Metzmacher1-4/+4
metze
2010-01-09s4-ldb: validate the type of the ldb argument to ldb_dn_new()Andrew Tridgell1-1/+7
It has been a common bug to get the first two arguments the wrong way around