summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/common/ldb_msg.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r13803: fixed two errors found with 'make valgrindtest'Andrew Tridgell1-1/+1
(This used to be commit 4257fd91ceca34dd868a9168efc28b6cb63f0357)
2007-10-10r13616: Add new ldb functions: ldb_msg_add_steal_string() andAndrew Bartlett1-0/+32
ldb_msg_add_steal_value(). These try to maintain the talloc heirachy, which must be correct otherwise talloc_steal operations of entire attribute lists fails. This fixes the currentTime value, found by using Microsoft's dcdiag tool (before this commit, it pointed to invalid memory, due to the changes in -r 13606) Andrew Bartlett (This used to be commit 424df1bb369fddcfd358cf26dd0da9d3851d181e)
2007-10-10r13324: From now on check attribute names obey rfc2251Simo Sorce1-0/+5
Also add a way to provide utf8 compliant functions by registering them with ldb_set_utf8_fns() Next comes code to register samba internal utf8 functions. Simo. (This used to be commit ac9b8a41ffca8e06c5e849d544d3203a665b8e0d)
2007-10-10r12829: fix ldb headers, to not include '<...>' files in .c filesStefan Metzmacher1-4/+1
this helps in getting symbol -fvisibility=hidden (GCC 4 feature) working later. metze (This used to be commit 380938e97f31c7860aed1e73cc0110c6e17b472e)
2007-10-10r12746: An initial version of the kludge_acls module.Andrew Bartlett1-4/+6
This should be replaced with real ACLs, which tridge is working on. In the meantime, the rules are very simple: - SYSTEM and Administrators can read all. - Users and anonymous cannot read passwords, can read everything else - list of 'password' attributes is hard-coded Most of the difficult work in this was fighting with the C/js interface to add a system_session() all, as it still doesn't get on with me :-) Andrew Bartlett (This used to be commit be9d0cae8989429ef47a713d8f0a82f12966fc78)
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-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-10r10918: - fixed standalone ldb buildAndrew Tridgell1-1/+1
- 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 Tridgell1-27/+44
- 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-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 Tridgell1-23/+88
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-10r10477: expose transactions outside ldb and change the API once moreSimo Sorce1-1/+1
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-10r10304: check for basic ldb_message sanity and return appropriateSimo Sorce1-0/+30
LDB_ERR_ value (This used to be commit 610f5646f0816820ac9342e81d46d139e26cc918)
2007-10-10r9771: - Prevent ldb crash when a invalid DN is addedJelmer Vernooij1-1/+1
- Don't silently drop records with empty attributes tridge/simo: Could you please verify this patch is correct? (This used to be commit 505c9b1d3d39475da141d3b3c156a7e5ba06790c)
2007-10-10r9391: Convert all the code to use struct ldb_dn to ohandle ldap like ↵Simo Sorce1-15/+4
distinguished names Provide more functions to handle DNs in this form (This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10r7602: fix some compiler warningsDerrell Lipman1-1/+1
(This used to be commit ce9966e091d36f66d409ac6f7b5e462c9dc37325)
2007-10-10r7527: - added a ldb_search_bytree() interface, which takes a ldb_parse_treeAndrew Tridgell1-2/+1
instead of a search expression. This allows our ldap server to pass its ASN.1 parsed search expressions straight to ldb, instead of going via strings. - updated all the ldb modules code to handle the new interface - got rid of the separate ldb_parse.h now that the ldb_parse structures are exposed externally - moved to C99 structure initialisation in ldb - switched ldap server to using ldb_search_bytree() (This used to be commit 96620ab2ee5d440bbbc51c1bc0cad9977770f897)
2007-10-10r6833: split out the routine that calculates the diff between two ldb ↵Andrew Tridgell1-0/+55
messages from ldbedit, so other progs can use it. (This used to be commit fa4f33558af3c65ff31424c01db16cb9d427503d)
2007-10-10r5665: the data within el2->values can still be used at this point, so don't ↵Andrew Tridgell1-1/+0
free (This used to be commit 12d03f96637b9298e0cbc7ee544ca97fffcab9f8)
2007-10-10r5357: added ldb_msg_add_fmt(), for creating formatted ldb record valuesAndrew Tridgell1-0/+22
(This used to be commit 18fb48204f4c0e22ea7e61575b3f174f30ff035c)
2007-10-10r5092: Add a bit more const - moving it further into the LDB layer.Andrew Bartlett1-2/+2
Andrew Bartlett (This used to be commit ffad9b22be595279b247fa72d51145830fecbb06)
2007-10-10r4714: move the ldb code to the new talloc interface (eg remove _p suffix)Simo Sorce1-8/+8
this helps standalone building of ldb renew the schema module split code into functions to improve readability and code reuse add and modify works correctly but we need a proper testsuite Simo (This used to be commit a681ae365ff1b5a2771b42ebd90336651ce1e513)
2007-10-10r4678: Add some const to LDB.Andrew Bartlett1-1/+1
Andrew Bartlett (This used to be commit d4da9fb1600dba5daca9acb83f528c8f5f42f0ce)
2007-10-10r4474: - converted ldb to use talloc internallyAndrew Tridgell1-29/+25
- added gcov flags to Makefile.ldb - expanded ldb test suite to get more coverage (This used to be commit 0ab98f50a7e0fe15347a99e5c29a6590a87729a0)
2007-10-10r4427: - added ldb_msg_*() functions for sorting, comparing and copying messagesAndrew Tridgell1-0/+134
- added a ldb_msg_canonicalize() function that fixes a record to not have any duplicate elements - changed ldbedit to use ldb_msg_canonicalize(). This fixes a bug when you rename multiple elements in a record in one edit (This used to be commit f006e724400843419c8b6155cbeae1876983855e)
2007-10-10r3783: - don't use make proto for ldb anymoreStefan Metzmacher1-0/+27
- split ldh.h out of samba's includes.h - make ldb_context and ldb_module private to the subsystem - use ltdb_ prefix for all ldb_tdb functions metze (This used to be commit f5ee40d6ce8224e280070975efc9911558fe675c)
2007-10-10r1374: Fix signed/unsigned warnings (actually found by g++) after unsigned intTim Potter1-3/+3
changes in r1018. (This used to be commit 45b4016530fc0bfa13146f73a503866b5dbed517)
2007-10-10r1018: fix a const and unsigned int problem in ldbAndrew Tridgell1-2/+2
(This used to be commit 3d52ca93731ad67c14ac42f627e3feb1a964b29a)
2007-10-10r873: converted samba4 to use real 64 bit integers instead ofAndrew Tridgell1-0/+22
structures. This was suggested by metze recently. I checked on the build farm and all the machines we have support 64 bit ints, and support the LL suffix for 64 bit constants. I suspect some won't support strtoll() and related functions, so we will probably need replacements for those. (This used to be commit 9a9244a1c66654c12abe4379661cba83a73c4c21)
2007-10-10r601: added the server code for all the samr_SetUserInfo and ↵Andrew Tridgell1-14/+22
samr_QueryUserInfo levels except for the password set levels. This means that a large part of the RPC-SAMR torture test now runs correctly against Samba4 (This used to be commit ec0a51898f543578e755207d81ed5c1524861c64)
2007-10-10r574: - another attempt at const cleanliness in ldbAndrew Tridgell1-0/+47
- fixed a problem with searching for values containing an '=' sign - fixed the semantics of attempting an attribute deletion on an attribute that doesn't exist. - added some more ldb_msg_*() utilities (This used to be commit 62b4ec367d170330d837b0f1fe5cd13205a53b59)
2007-10-10r502: modified ldb to allow the use of an external pool memoryAndrew Tridgell1-5/+8
allocator. The way to use this is to call ldb_set_alloc() with a function pointer to whatever memory allocator you like. It includes a context pointer to allow for pool based allocators. (This used to be commit 3955c482e6c2c9e975a4bb809ec8cb6068e48e34)
2007-10-10r435: a major upgrade for ldbAndrew Tridgell1-2/+69
- added the ability to mark record attributes as being CASE_INSENSITIVE, WILDCARD or INTEGER. - added the ability to support objectclass subclasses, and to search by a parent class - added internal support for case insensitive versus case sensitive indexing (not UTF8 compliant yet) - cleaned up a number of const warnings - added a number of helper functions for fetching integers, strings and doubles - added a in-memory cache for important database properties, supported by a database sequence number - changed some variable names to avoid conflicts with C++ (This used to be commit f2bf06f25c2e6c744817711c7bedbd1d3b52f994)
2007-10-10r152: a quick airport commit ....Andrew Tridgell1-0/+133
added ldbedit, a _really_ useful command added ldbadd, ldbdel, ldbsearch and ldbmodify to build solved lots of timezone issues, we now pass the torture tests with client and server in different zones fixed several build issues I know this breaks the no-LDAP build. Wait till I arrive in San Jose for that fix. (This used to be commit af34710d4da1841653624fe304b1c8d812c0fdd9)