summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/include
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r20184: change ldb_attrib_handler into ldb_schema_attribute, which has a pointerStefan Metzmacher2-27/+22
to a ldb_schema_syntax struct. the default attribute handler is now registered dynamicly as "*" attribute, instead of having its own code path. ldb_schema_attribute's can be added to the ldb_schema given a ldb_schema_syntax struct or the syntax name we may also need to introduce a ldb_schema_matching_rule, and add a pointer to a default ldb_schema_matching_rule in the ldb_schema_syntax. metze (This used to be commit b97b8f5dcbce006f005e53ca79df3330e62f117b)
2007-10-10r20168: start separating attributes and syntaxesStefan Metzmacher2-2/+10
metze (This used to be commit 8dda4342f648aa71878ac9eeb7941710e2813aee)
2007-10-10r20046: Add ldb_search_exp_fmt and port comment to 4Volker Lendecke1-3/+10
(This used to be commit 879dfed8d8356aae6a11352b89bdc0f2d9f28970)
2007-10-10r20034: Start using ldb_search_exp_fmt()Simo Sorce1-0/+3
(This used to be commit 4f07542143ddf5066f0360d965f26a8470504047)
2007-10-10r19906: ldb_attr_cmp is used a lotSimo Sorce1-1/+5
remove unneded overhead of a function call (This used to be commit 3ca25867621af049c6cc52e919fa46dd26c31918)
2007-10-10r19888: make it possible to use default attrib handlers from extensionsSimo Sorce1-0/+68
list more DN attributes as part of samba attribute handlers (nCName moved here) (This used to be commit 627ed8b5165c9a1cc0e2c67329b364f9cd8a1726)
2007-10-10r19832: better prototypes for the linearization functions:Simo Sorce1-2/+2
- ldb_dn_get_linearized returns a const string - ldb_dn_alloc_linearized allocs astring with the linearized dn (This used to be commit 3929c086d5d0b3f08b1c4f2f3f9602c3f4a9a4bd)
2007-10-10r19831: Big ldb_dn optimization and interfaces enhancement patchSimo Sorce2-46/+50
This patch changes a lot of the code in ldb_dn.c, and also removes and add a number of manipulation functions around. The aim is to avoid validating a dn if not necessary as the validation code is necessarily slow. This is mainly to speed up internal operations where input is not user generated and so we can assume the DNs need no validation. The code is designed to keep the data as a string if possible. The code is not yet 100% perfect, but pass all the tests so far. A memleak is certainly present, I'll work on that next. Simo. (This used to be commit a580c871d3784602a9cce32d33419e63c8236e63)
2007-10-10r19731: Modify the ldb_map infrustructure to always map from requestedAndrew Bartlett1-0/+2
attributes to backend (remote) attributes. We can't do a reverse mapping safely where the remote attribute may be a source for multiple local attributes. (We end up with the wrong attributes returned). In doing this, I've modified the samba3sam.js test to be more realistic, and fixed some failures in the handling of primaryGroupID. I've added a new (private) helper function ldb_msg_remove_element() to avoid a double lookup of the element name. I've also re-formatted many of the function headers, to fit into standard editor widths. Andrew Bartlett (This used to be commit 186766e3095e71ba716c69e681592e217a3bc420)
2007-10-10r19531: Make struct ldb_dn opaque and local to ldb_dn.cSimo Sorce1-35/+27
(This used to be commit 889fb983ba1cf8a11424a8b3dc3a5ef76e780082)
2007-10-10r19489: Change ldb_msg_add_value and ldb_msg_add_empty to take a foruth ↵Simo Sorce1-3/+7
argument. This is a pointer to an element pointer. If it is not null it will be filled with the pointer of the manipulated element. Will avoid double searches on the elements list in some cases. (This used to be commit 0fa5d4bc225b83e9f63ac6d75bffc4c08eb6b620)
2007-10-10r19455: forgot thisSimo Sorce1-0/+1
(This used to be commit 2b770885cd234027f92ba543706df5d55f16f739)
2007-10-10r19453: Expose helper functionsSimo Sorce1-1/+140
(This used to be commit ee86e88e4f523d67900b52b5a4d4040a76360c61)
2007-10-10r19365: fixed a memory leak in the ldb attribute handlingAndrew Tridgell1-0/+3
(This used to be commit d7e07685164141f8fb2c2a6258e1fcb46ff9d06c)
2007-10-10r19196: merge from samba3:Stefan Metzmacher1-3/+3
pass always a mem_ctx to functions and a ldb_context where needed metze (This used to be commit 67a6a41ba3af840cd8226de73576a90ecf602caa)
2007-10-10r18942: add a ldb_set_create_perms() function in ldb. I didn't call itAndrew Tridgell2-0/+3
ldb_set_umask() (which is what we had discussed) as it doesn't actually set the umask (in effect it sets the inverse of the umask - the perms to be used for the file) (This used to be commit 7e2ec875908c112d5c3b0f6d18f9a8bbacf33539)
2007-10-10r18831: minor build changes for samba3. The logging changes will be removedAndrew Tridgell2-1/+12
when the tdb api is updated (This used to be commit 6ace943fac101839e35cbc83dc54fde2068f704b)
2007-10-10r18781: Move the usnCreated and usnChanged handling around again.Andrew Bartlett2-5/+16
This moves these attributes from objectguid into an optional backend (objectguid), used by ltdb. For OpenLDAP, the entryUUID module converts entryCSN into usnChanged. This also changes the sequence number API, and uses 'time based' sequence numbers, when an LDAP or similar backend is detected. To assist this, we also store the last modified time in the TDB, whenever we change a value. Andrew Bartlett (This used to be commit 72858f859483c0c532dddb2c146d6bd7b9be5072)
2007-10-10r18777: add helper functions to create an ldb_request structureSimo Sorce1-1/+2
(This used to be commit bcbe82873f2f0a4e2552ed27eb171028de4560a7)
2007-10-10r18129: moved the system includes into libreplace - this gives much moreAndrew Tridgell1-29/+4
isolation of our portability environment from the main code, and also simplifies the includes system (no separate #ifdef _SAMBA_BUILD for tdb. ldb etc now) (This used to be commit 77d1a468e06290aba789e2f3affc769fc5159a21)
2007-10-10r18115: comparison_fn_t is defined in libreplace nowAndrew Tridgell1-3/+0
(This used to be commit e9ee8b1053875fd3ddc950e3b21feb106eb3850c)
2007-10-10r18112: really make use of libreplace in ldbAndrew Tridgell1-7/+1
(This used to be commit 2057159c7575479c9808aeffe711fc861e53f3c8)
2007-10-10r18031: Merge my replace fixes:Jelmer Vernooij1-8/+6
* libreplace can now build stand-alone * add stub testsuite for libreplace * make talloc/tdb/ldb use libreplace (This used to be commit fe7ca4b1454e01a33ed0d53791ebffdd349298b4)
2007-10-10r17830: Set the default_basedn (hey, it comes from the "default" naming ↵Simo Sorce1-1/+2
contex :-) once at connection time, after modules have been loaded. Introduce a function to retrieve the value where needed. (This used to be commit 0caf6a44e03393c645030a9288e7dfd31e97c98b)
2007-10-10r17821: changed ldb_search() and the ldbsearch command line utility toAndrew Tridgell1-0/+5
automatically work out the basedn when basedn==NULL. The basedn is fetched from the rootDSE defaultNamingContext value (if there is one) This means we don't have to have the defaultNamingContext logic in lots of places. It makes a lot of sense to me to have basedn==NULL mean "use the default, as given by the database" Note that explicitly specifing a basedn of '' is not the same thing, and will not trigger this code The baseDN is cached in a ldb opaque, so we only have to fetch it once (This used to be commit 5d1b66b68fc517ce684f75e466ed5f25e46857d5)
2007-10-10r17743: fix compiler warningsStefan Metzmacher2-10/+10
metze (This used to be commit 694a56b0ae0125594d6a23d8465249f011b6284e)
2007-10-10r17741: tru64 uses inttypes.h not stdint.h.Andrew Tridgell1-0/+3
ain't standards wonderful? (This used to be commit 5eb59e5be09cd16bb0796b55575aa92dfd22650a)
2007-10-10r17720: in standalone ldb build, some systems need sys/stat.h and a defn ofAndrew Tridgell1-0/+5
comparison_fn_t (This used to be commit 99915268e60f6f877b639f1788ebdcf8105d6073)
2007-10-10r17580: Add a new tools to convert back from AD-like schema to OpenLDAP.Andrew Bartlett1-0/+3
Add attribute syntax mapping to the existing OpenLDAP -> AD tool. Andrew Bartlett (This used to be commit ba1c652bae700a82acde166e70035d61c320e233)
2007-10-10r17579: make ldb build g++ friendlyAndrew Tridgell1-3/+3
(This used to be commit 403cbd335594112e0c58fd68d20f0e3faad7d186)
2007-10-10r17516: Change helper function names to make more clear what they are meant ↵Simo Sorce1-21/+21
to do (This used to be commit ad75cf869550af66119d0293503024d41d834e02)
2007-10-10r17514: Simplify the way to set ldb errors and add anotherSimo Sorce1-1/+2
helper function to set them. (This used to be commit 260868bae56194fcb98d55afc22fc66d96a303df)
2007-10-10r17503: Add a useful function to search for a DNSimo Sorce1-0/+4
(This used to be commit 8c6efd7b55e4ad45e1bd10519a1b91285a4e0347)
2007-10-10r17474: Allow the partitions module to load modules for specific backends.Andrew Bartlett1-0/+3
Andrew Bartlett (This used to be commit c016db2187120991e8ad779b9df35480d7c19400)
2007-10-10r17430: implement the LDAP_SERVER_PERMISSIVE_MODIFY control in the clientStefan Metzmacher1-0/+8
metze (This used to be commit 96259f0f24b114e505241c9d2deb702a8b40f1b6)
2007-10-10r17429: implement the LDAP_SERVER_SHOW_DELETED control in the clientStefan Metzmacher1-0/+7
metze (This used to be commit 40dc7c1787c16bfc15ac87fee81d2d2d1f3d2fde)
2007-10-10r17420: add client support for the LDAP_SERVER_DOMAIN_SCOPE controlStefan Metzmacher1-0/+7
metze (This used to be commit 84e74a759cfa49ebc8b4ba1b8e729d6d920fc55a)
2007-10-10r17419: add client support for the LDAP_SERVER_SEARCH_OPTIONS support.Stefan Metzmacher1-0/+24
with this you can limit a search to a specific partitions or a search over all partitions without getting referrals. (Witch is the default behavior on the Global Catalog Port) metze (This used to be commit 4ccd0f8171f3748ee6efe1abd3f894d2cdf46bf4)
2007-10-10r17418: add client support for the LDAP_SERVER_SD_FLAGS controlStefan Metzmacher1-0/+17
metze (This used to be commit 23759a1e9b05c4fde475a9016cb0b7447656d7e7)
2007-10-10r17368: Add 'const' to ldb_match_msg().Andrew Bartlett1-2/+2
Andrew Bartlett (This used to be commit 54eda4b85975c44c993a7dc45f6caa898076f163)
2007-10-10r17350: Avoid a couple of memleaks, unnecessary code and use a more linear styleSimo Sorce1-0/+16
(This used to be commit 97c4d41a30a5d85145abb781cb7001b502bc7dcb)
2007-10-10r17225: Fix the build by fixing the spelling of START-TLS.Andrew Bartlett1-1/+1
Andrew Bartlett (This used to be commit 4827a6b171d7b007f1641ef422d23449fb5a1606)
2007-10-10r17195: Start thinking how to implement extended operations.Simo Sorce2-0/+18
Ad supports three extended operations: - start tls - dynamic objects - fast binds none of these are a priority. (This used to be commit 523e8f3ed4bf5fcf9dc0c9e2100e4ac3b8032be7)
2007-10-10r17186: "async" word abuse clean-up part 2Simo Sorce1-8/+6
(This used to be commit c6aa60c7e69abf1f83efc150b1c3ed02751c45fc)
2007-10-10r17185: Oh, I wanted to do this for sooo long time.Simo Sorce2-9/+9
Finally acknowledge that ldb is inherently async and does not have a dual personality anymore Rename all ldb_async_XXX functions to ldb_XXX except for ldb_async_result, it is now ldb_reply to reflect the real function of this structure. Simo. (This used to be commit 25fc7354049d62efeba17681ef1cdd326bc3f2ef)
2007-10-10r16972: Replace the sequence_number function pointer in ldb with the ldb flags.Andrew Bartlett1-3/+2
The function pointer was meant to be unused, this patch fixes partition.c to use ldb_sequence_number(). (No backend provided the pointer any more). Set the flags onto the ldb structure, so that all backends opened by the partitions module inherit the flags. Set the read-ony flag when accessed as the global catalog Modify the LDAP server to track that this query is for the global catalog (by incoming port), and set a opqaue pointer. Next step is to read that opaque pointer in the partitions module. Andrew Bartlett (This used to be commit a1161cb30e4ffa09657a89e03ca85dd6efd4feba)
2007-10-10r16825: Make ldb_sainity_check() set an error string. This makes it muchAndrew Bartlett1-1/+2
easier to chase down what modules or application code gets wrong. Ensure not to leave memory allocated on failure in ldb_search() Andrew Bartlett (This used to be commit 0828739951ed879640f8ed6e4700d8ca6b8221b8)
2007-10-10r16264: Add, but do not yet enable, the partitions module.Andrew Bartlett1-2/+9
This required changes to the rootDSE module, to allow registration of partitions. In doing so I renamed the 'register' operation to 'register_control' and 'register_partition', which changed a few more modules. Due to the behaviour of certain LDAP servers, we create the baseDN entry in two parts: Firstly, we allow the admin to export a simple LDIF file to add to their server. Then we perform a modify to add the remaining attributes. To delete all users in partitions, we must now search and delete all objects in the partition, rather than a simple search from the root. Against LDAP, this might not delete all objects, so we allow this to fail. In testing, we found that the 'Domain Controllers' container was misnamed, and should be 'CN=', rather than 'OU='. To avoid the Templates being found in default searches, they have been moved to CN=Templates from CN=Templates,${BASEDN}. Andrew Bartlett (This used to be commit b49a4fbb57f10726bd288fdc9fc95c0cbbe9094a)
2007-10-10r16084: Add private prototype for new ldb_connect_backend() function.Andrew Bartlett1-0/+5
Andrew Bartlett (This used to be commit 684126223046d88d1ff446767ab6783f6391b50c)
2007-10-10r16083: Make it possible to initialise a backend module, without it setting upAndrew Bartlett2-3/+15
the whole ldb structure. Because the sequence number was a fn pointer on the main ldb context, turn it into a full request (currently sync). Andrew Bartlett (This used to be commit fbe7d0ca9031e292b2d2fae263233c973982980a)