summaryrefslogtreecommitdiff
path: root/source4/ldap_server/ldap_simple_ldb.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r12227: I realised that I wasn't yet seeing authenticated LDAP for the ldbAndrew Bartlett1-5/+2
backend. The idea is that every time we open an LDB, we can provide a session_info and/or credentials. This would allow any ldb to be remote to LDAP. We should also support provisioning to a authenticated ldap server. (They are separate so we can say authenticate as foo for remote, but here we just want a token of SYSTEM). Andrew Bartlett (This used to be commit ae2f3a64ee0b07575624120db45299c65204210b)
2007-10-10r11958: - fixed memory leaks in the ldb_result handling in ldb operationsAndrew Tridgell1-2/+2
- removed an unnecessary level of pointer in ldb_search structure (This used to be commit b8d4afb14a18dfd8bac79882a035e74d3ed312bd)
2007-10-10r11567: Ldb API change patch.Simo Sorce1-57/+69
This patch changes the way lsb_search is called and the meaning of the returned integer. The last argument of ldb_search is changed from struct ldb_message to struct ldb_result which contains a pointer to a struct ldb_message list and a count of the number of messages. The return is not the count of messages anymore but instead it is an ldb error value. I tryed to keep the patch as tiny as possible bu as you can guess I had to change a good amount of places. I also tried to double check all my changes being sure that the calling functions would still behave as before. But this patch is big enough that I fear some bug may have been introduced anyway even if it passes the test suite. So if you are currently working on any file being touched please give it a deep look and blame me for any error. Simo. (This used to be commit 22c8c97e6fb466b41859e090e959d7f1134be780)
2007-10-10r11408: fixed the mapping of ldb errors to ldap errors in the ldap serverAndrew Tridgell1-41/+20
(This used to be commit 647cb90360d1a790c8da34d48c46737762046e1b)
2007-10-10r10820: Use talloc_get_type as suggested by tridge.Andrew Bartlett1-6/+6
Andrew Bartlett (This used to be commit 9c511a16f829df5f177b94c7234875d4ec8afe52)
2007-10-10r10810: This adds the hooks required to communicate the current user from theAndrew Bartlett1-13/+63
authenticated session down into LDB. This associates a session info structure with the open LDB, allowing a future ldb_ntacl module to allow/deny operations on that basis. Along the way, I cleaned up a few things, and added new helper functions to assist. In particular the LSA pipe uses simpler queries for some of the setup. In ldap_server, I have removed the 'ldasrv:hacked' module, which hasn't been worked on (other than making it continue to compile) since January, and I think the features of this module are being put into ldb anyway. I have also changed the partitions in ldap_server to be initialised after the connection, with the private pointer used to associate the ldb with the incoming session. Andrew Bartlett (This used to be commit fd7203789a2c0929eecea8125b57b833a67fed71)
2007-10-10r9391: Convert all the code to use struct ldb_dn to ohandle ldap like ↵Simo Sorce1-51/+42
distinguished names Provide more functions to handle DNs in this form (This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10r8520: fixed a pile of warnings from the build farm gcc -Wall output onAndrew Tridgell1-1/+2
S390. This is an attempt to avoid the panic we're seeing in the automatic builds. The main fixes are: - assumptions that sizeof(size_t) == sizeof(int), mostly in printf formats - use of NULL format statements to perform dn searches. - assumption that sizeof() returns an int (This used to be commit a58ea6b3854973b694d2b1e22323ed7eb00e3a3f)
2007-10-10r8222: 0 entries are no error, unless it's a base searchStefan Metzmacher1-1/+5
metze (This used to be commit 0297943ff201b06cc7a3c4aba5d81481a4cc5966)
2007-10-10r7777: allow for overriding the location of the sam databasein the ldap ↵Andrew Tridgell1-6/+6
server, using ldapsrv:samdb option. This allows the following: sam database=ldap://localhost ldapsrv:samdb=tdb:///home/tridge/samba/samba4/prefix/private/sam.ldb which allows us to test putting the sam on an ldap server using our own ldap server. This is a great stress test for the ldap code. (This used to be commit 40948ba3848e2cfd69ee5ef77031170a652e389b)
2007-10-10r7747: - simplified the ldap server buffer handlingAndrew Tridgell1-11/+13
- got rid of the special cases for sasl buffers - added a tls_socket_pending() call to determine how much data is waiting on a tls connection - removed the attempt at async handling of ldap calls. The buffers/sockets are all async, but the calls themselves are sync. (This used to be commit 73cb4aad229d08e17e22d5792580bd43a61b142a)
2007-10-10r7596: next step in ldap cleanup. I'm aiming to get rid of the cut&pastedAndrew Tridgell1-1/+1
ldif parsing code in libcli/ldap/ldap_ldif.c, and instead use the ldb ldif code. To do that I have changed the ldap code to use 'struct ldb_message_element' instead of 'struct ldap_attribute'. They are essentially the same structure anyway, so by making them really the same it will be much easier to use the ldb code in libcli/ldap/ I have also made 'struct ldb_val' the same as a DATA_BLOB, which will simplify data handling in quite a few places (I haven't yet removed all the code that maps between these two, that will come later) (This used to be commit 87fc3073392236221a3a6b933284e9e477c24ae5)
2007-10-10r7593: simplified the memory management in the ldap code. Having a mem_ctxAndrew Tridgell1-7/+10
element in a structure is not necessary any more. (This used to be commit 912d0427f52eac811b27bf7e385b0642f7dc7f53)
2007-10-10r7527: - added a ldb_search_bytree() interface, which takes a ldb_parse_treeAndrew Tridgell1-2/+2
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-10r5585: LDB interfaces change:Simo Sorce1-19/+19
changes: - ldb_wrap disappears from code and become a private structure of db_wrap.c thanks to our move to talloc in ldb code, we do not need to expose it anymore - removal of ldb_close() function form the code thanks to our move to talloc in ldb code, we do not need it anymore use talloc_free() to close and free an ldb database - some minor updates to ldb modules code to cope with the change and fix some bugs I found out during the process (This used to be commit d58be9e74b786a11a57e89df36081d55730dfe0a)
2007-10-10r5307: removed db_wrap.h from includes.hAndrew Tridgell1-0/+1
(This used to be commit 826baec7b348814a7bbdcdbec8c8526514f25da1)
2007-10-10r5037: got rid of all of the TALLOC_DEPRECATED stuff. My apologies for theAndrew Tridgell1-9/+9
large commit. I thought this was worthwhile to get done for consistency. (This used to be commit ec32b22ed5ec224f6324f5e069d15e92e38e15c0)
2007-10-10r4709: fix compiler warningsStefan Metzmacher1-12/+6
metze (This used to be commit 7aa86445e3290021fe40c5c9425ecdbc2dda1618)
2007-10-10r4629: we now have a global macro NT_STATUS_HAVE_NO_MEMORY()Stefan Metzmacher1-39/+32
so don't use a local one metze (This used to be commit dd217f7916c885e1395f6f2a78e38e10f56e5f0f)
2007-10-10r4628: this function should be staticStefan Metzmacher1-1/+1
metze (This used to be commit 590afa88f15c32bc14b2c23e2c57b3401d9c3de7)
2007-10-10r4475: fixed smbd to work with the small changes in the ldb API (the most ↵Andrew Tridgell1-8/+4
important change was in the ldb_msg_add_*() routines, which now use the msg as a context, and thus it needs to be a talloc ptr) (This used to be commit 1a4713bfd0e519f3eb7b3241121ff914a6eeef18)
2007-10-10r4037: fixed a bunch of "might be uninitialised" warnings after enabling -O1 ↵Andrew Tridgell1-5/+5
in my compile (This used to be commit 0928b1f5b68c858922c3ea6c27ed03b5091c6221)
2007-10-10r3783: - don't use make proto for ldb anymoreStefan Metzmacher1-0/+1
- 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-10r3754: merge in ldb modules support from the tmp branch ldbPluginsSimo Sorce1-7/+2
(This used to be commit 71323f424b4561af1fdddd2358629049be3dad8c)
2007-10-10r3464: split out registry.h, rap.h and ldap_server.hAndrew Tridgell1-0/+1
(This used to be commit 70d2090f6bf2c7e0caf1e9c020f330de88871f8e)
2007-10-10r3099: implment sldb_ModifyDN()Stefan Metzmacher1-1/+100
metze (This used to be commit a25d1c44198fe9dd2c0a1c3472b58000f2d95e60)
2007-10-10r3098: - fix segfault in sldb_Compare()Stefan Metzmacher1-22/+21
- be more verbose on the INVALID_DN errstr metze (This used to be commit 4b8d90866efb0ed7fcc8e44e29c3d84f7537621c)
2007-10-10r3097: - an empty string is a valid DNStefan Metzmacher1-94/+107
- detect in valid DN's - some error handling fixes metze (This used to be commit d92eff232864aaf1e0e3c6bb26079cd5abb29d79)
2007-10-10r2875: some fixes + (C) noteSimo Sorce1-1/+2
(This used to be commit d878c3c36505f548158297a3cb3b1e3b18b24c55)
2007-10-10r2855: fix error codes for CompareStefan Metzmacher1-4/+4
metze (This used to be commit d23335bc14de7f0402e3d536006d04e813403893)
2007-10-10r2836: removed a couple of unused variablesAndrew Tridgell1-2/+0
(This used to be commit 391b09dad1cb549b4ce508265a9925c405201e47)
2007-10-10r2820: complete the parsing routing with correct support for escaped charsSimo Sorce1-136/+86
clean up simple_ldb functions (This used to be commit 3af61cb6cd43c8609f06d66d2678994726805063)
2007-10-10r2815: add some more docsSimo Sorce1-5/+16
add a nearly complete rfc conformat dn parsing function (This used to be commit 1bc5a94488f48ae5c8e67db169f24f5f24c4a234)
2007-10-10r2792: got rid of talloc_ldb_alloc() and instead created talloc_realloc_fn(),Andrew Tridgell1-5/+5
so talloc now doesn't contain any ldb specific functions. allow NULL to be passed to a couple more talloc() functions (This used to be commit 1246f80d806fb5f63cfbf3879de6d546384552a8)
2007-10-10r2757: some minor fixesStefan Metzmacher1-3/+1
metze (This used to be commit 991b4777c8690337bb319c57550e918ced5d7503)
2007-10-10r2754: Change sldb_trim_dn() to be sldb_fix_dn() as we are not really trimming.Simo Sorce1-29/+60
Make it handle all cases: - remove spaces before and after ',' - remove spaces after '=' TODO: check if there are escape chars in the RFC, they are not handled here yet. Simo. (This used to be commit ba2970c3a44562f071309198494c4b68659b2f3f)
2007-10-10r2748: implement sldb_Compare()Stefan Metzmacher1-1/+63
Simo: this commit should not conflict much with your changes:-) metze (This used to be commit 6825e78e01a220bc837ea51aa6afbf3f26a02c49)
2007-10-10r2722: remove tmp debug messagesStefan Metzmacher1-4/+1
metze (This used to be commit 60dcba3e91cedca78d2eb7e01bc04790739a4aad)
2007-10-10r2720: -implement sldb_Modify() callStefan Metzmacher1-1/+117
metze (This used to be commit e74d3895f01369606254250f77376ae6ba3682ac)
2007-10-10r2714: - add sldb_Add() implementationStefan Metzmacher1-36/+185
- fix some errstr settings metze (This used to be commit 7419c6dabbe09b4a5628fc36c7636a1763e4876f)
2007-10-10r2695: revert "Del" renamingSimo Sorce1-6/+6
(This used to be commit ddd74dae8efe4e04b5a56ee9ecd9d4f87f99d104)
2007-10-10r2693: - send a reply when no attributes thereStefan Metzmacher1-3/+11
- add some debug messages metze (This used to be commit 1de1beca66da68e5af0869629d2c50016c25e776)
2007-10-10r2689: Use consistent naming Del -> DeleteSimo Sorce1-1/+44
Add delete functionality to ldb simple lda server backend add some const in ldap.h (This used to be commit 5ed9a6eb184f34eb572dd81202237042518ec7cd)
2007-10-10r2688: - fix case where listed attributes are askedStefan Metzmacher1-23/+36
- use the return code of the functions and only call ldapsrv_terminate_connection from ldapsrv_recv() or ldapsrv_send() - the rootdse is now a normal partition metze (This used to be commit af1501a28d700f90cd2243fbfdce6527a0f62961)
2007-10-10r2685: ALLOC_CHECK() after talloc_steal() isn't neededStefan Metzmacher1-4/+0
(thanks simo:-) metze (This used to be commit e62cd75d3786f3d638ac2a27d6e864c826eaa48f)
2007-10-10r2682: as sambdb holds all search data, don't double free the dataStefan Metzmacher1-2/+0
metze (This used to be commit 740347255b8f1aafda1ebd10d63fdde1c4041af0)
2007-10-10r2681: commit the first semi working search implementationStefan Metzmacher1-2/+88
which exports data from a ldb. I commit this code, so that someone can help me to find a strange bug metze (This used to be commit 67bb49172567af9d106ded55c1257b808d2a97ff)
2007-10-10r2527: - add a dummy for a simple ldb backendStefan Metzmacher1-0/+55
- handle the complete rootDSE search (maybe this will be also a partition module) metze (This used to be commit 6fc904a71cf5305d0c5c260ad1665499ea6c6f9a)