summaryrefslogtreecommitdiff
path: root/source4/lib
AgeCommit message (Collapse)AuthorFilesLines
2009-06-02Fix more unresolved symbols.Jelmer Vernooij4-48/+49
2009-06-02python: Move helper functions for using param into a separate file ratherJelmer Vernooij1-1/+1
than linking against the python module.
2009-06-02Split up Python code a little bit so we don't hav eto link python modulesJelmer Vernooij1-0/+39
to each other.
2009-06-01use the unique flag on ldb attributes to optimise & clausesAndrew Tridgell1-46/+72
When a attribute is marked unique we know that if we find a match it will be the only possible match. This means that in a list of subtrees connected by an &, it is best to first load the index values for the unique entries, as if they find something then we know we won't have to look any further. This helps with searches like this: (&(objectclass=user)(samaccountname=tridge)) the old code would first have loaded the very large index for the objectclass=user attribute, and then loaded the single entry for samaccountname=tridge. Now we load the samaccountname=tridge entry first, notice that it gives us a single result, and stop, thereby skipping the load of the objectclass=user index record completely.
2009-06-01added support for unique indexing in ldbAndrew Tridgell2-7/+32
When a attribute is marked as LDB_ATTR_FLAG_UNIQUE_INDEX then attempts to add a 2nd record that has the same attribute value for this attribute as another record will fail. This provides a much more efficient mechanism for ensuring that attributes like objectGUID are unique
2009-06-01when comp_num is zero, the case folded DN is always ""Andrew Tridgell1-8/+2
This fixes a bug where we would look at an uninitialised dn->linearized
2009-05-28Merge branch 'master' of ssh://git.samba.org/data/git/sambaAndrew Tridgell5-7/+5
2009-05-28a useful debugging toolAndrew Tridgell1-0/+7
When looking at performance problems with ldb it can be useful to see which searches causes unindexed full searches. This makes it easy to enable that.
2009-05-28fixed one-level indexingAndrew Tridgell1-6/+2
one-level indexing was not always effective due to some broken logic in the indexing code. This change means that if normal indexing fails, we can still fall back on one-level indexing. This reduces the number of full unindexed searches in s4 quite a lot
2009-05-27s4:tevent: Increase trace debug level to 50.Andrew Kroeger1-1/+1
The sheer volume of messages generated by tevent when the trace level is set to 10 makes it difficult to debug issues in a level 10 log. Increasing this to 50 allows tevent tracing to be enabled if needed, but otherwise keeps the extra chatter out of a level 10 log.
2009-05-26s4:ldb:modules: Correct typos.Andrew Kroeger4-6/+4
2009-05-16Update copies of config.guess and config.sub.Jelmer Vernooij2-76/+282
2009-04-23Provide a ldb_global_init() function for compatibility with older versions ↵Jelmer Vernooij1-0/+6
of LDB (including the one in Samba 3).
2009-04-23Add a new non-convenience version of push_codepoint.Jelmer Vernooij1-20/+18
2009-04-14s4:ldb Make it possible to re-run ldap.py againAndrew Bartlett1-2/+6
The parentGUID test didn't clean up after itself correctly. Andrew Bartlett
2009-04-07don't load @ATTRIBUTES if we have an override handler in placeAndrew Tridgell1-0/+7
2009-04-07fixed internal handling of attribute deletionAndrew Tridgell1-13/+23
2009-04-02major upgrade to the ldb attribute handlingAndrew Tridgell8-35/+103
This is all working towards supporting the full WSPP schema without a major performance penalty. We now use binary searches when looking up classes and attributes. We also avoid the loop loading the attributes into ldb, by adding a hook to override the ldb attribute search function in a module. The attributes can thus be loaded once, and then saved as part of the global schema. Also added support for a few more key attribute syntaxes, as needed for the full schema.
2009-03-31change ldb version number (as ldb_module structure has changed)Andrew Tridgell1-1/+1
2009-03-31added support for a prepare_commit() op in ldb modulesAndrew Tridgell5-4/+35
This op will be used by the partition module to give us good transaction semantics across the 4 partitions that sam.ldb uses.
2009-03-23Merge branch 'master' of ssh://git.samba.org/data/git/sambaAndrew Tridgell3-90/+118
2009-03-21pyldb: Let conversion to LDIF up to the user of the API rather than doingJelmer Vernooij1-12/+1
it implicitly.
2009-03-21Remove unnecessary duplication of string in memory.Jelmer Vernooij1-5/+16
2009-03-20Adapt Zahari's test to the generic LDB Python tests.Jelmer Vernooij1-0/+13
2009-03-20Setting nTSecurityDescriptor via LDAP failszahari1-2/+4
Fix for the problem was substitute talloc_strndup() with talloc_memdup(), allocate 1 more character and put null character ('\0') in the extra place so data copied is null terminated. Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2009-03-20Add more comments.Jelmer Vernooij1-6/+25
2009-03-20s4:ldb Allow paged_searches to be mixed with other controlsAndrew Bartlett1-3/+3
I want to mix this with the server-side sort in particular. Andrew Bartlett
2009-03-20s4:ldb Fix the paged_searches moduleAndrew Bartlett1-58/+51
This simplifies the code, removes presumptions about being the only control in the reply, and allows it to function against Windows 2008. For searches which did not require a paged result, the module was simply returning a failure when the compleated search did not include a paged result control. Andrew Bartlett
2009-03-20Merge branch 'master' of git://git.samba.org/samba into minschemaJelmer Vernooij14-672/+132
2009-03-20pyldb: Improve exception message when a list is expected.Jelmer Vernooij1-8/+9
2009-03-19flush after showing the prompt in smbclientAndrew Tridgell1-0/+1
2009-03-17fix build on sles8 and other old popt installationsBjörn Jacke1-0/+4
Signed-off-by: Michael Adam <obnox@samba.org>
2009-03-17added support for parentGUIDAndrew Tridgell1-0/+30
This is made up of 4 parts: 1) change our schema to include the parentGUID attribute type 2) in the add hook in the objectclass module, get the objectGUID of the parent and add it to the message as parentGUID 3) in the rename hook in the objectclass module, get the objectGUID of the new parent, and insert an async modify request after the renmam is done 4) added a simple test suite
2009-03-15Merge branch 'tdr' of /home/jelmer/samba4Jelmer Vernooij5-660/+0
2009-03-14Move tdr to top-level.Jelmer Vernooij5-660/+0
2009-03-12s4:events: allow nested events until we fixed all code to avoid themStefan Metzmacher1-0/+2
metze
2009-03-12s4:ldb: allow nested events until the code is fixed to avoid themStefan Metzmacher1-1/+3
metze
2009-03-12s4:ldb: setup tevent debug functions on a selfcreated event contextStefan Metzmacher1-0/+35
metze
2009-03-10Fix extended operation return path.Simo Sorce1-8/+12
Extended operations return was not going thorugh the same patch as others leaving the ctx around. Plus we were neutralizing the spy too early so that it didn't set the request_terminated flag as it should have. This should hopefully fix the failures in the build farm.
2009-03-09Fix potential segfaults using freed memory.Simo Sorce4-10/+54
In some code paths ltdb_context was still referenced even after we were returned an error by one of the callbacks. Because the interface assumes that once an error is returned the ldb_request may be freed, and because the ltdb_context was allocated as a child of the request, this might cause access to freed memory. Allocate the ltdb_context on ldb, and keep track of what's going on with the request by adding a spy children on it. This way even if the request is freed before the ltdb_callback is called, we will safely free the ctx and just quietly return.
2009-03-05Remove parse_control from header, long after the function was removedAndrew Bartlett1-1/+0
Simo reminded me that when (long ago) I moved parse_controls away from this place, I forgot to update the manually maintained header file. Andrew Bartlett
2009-03-01s4: Use same function signature for convert_* as s3.Jelmer Vernooij4-21/+17
2009-03-01Add allow_badcharcnv argument to all conversion function, forJelmer Vernooij4-9/+9
consistency with Samba 3.
2009-02-26s4:ldb_map: include ldb_includes.h first to get replace.h as first headerStefan Metzmacher3-0/+3
This should bring the build on AIX one step further. metze
2009-02-25Use stdbool.h instead of manually defining boolSimo Sorce1-10/+1
2009-02-25s4:lib/events: map TEVENT_DEBUG_TRACE to debug level 10Stefan Metzmacher1-1/+1
metze
2009-02-24Make S4 build on OpenSolaris.Jeremy Allison2-1/+3
Jeremy.
2009-02-23Fix headers, ldb_includes.h is a private header,Simo Sorce21-35/+34
do not reference it from ldb.h
2009-02-23Make all transactions nested in ldb. The current samba4 code expects thisSimo Sorce2-59/+75
behavior anyway, and given we can only have one transaction active per ldb context this is the only sane model we can support. Fix ldb_tdb transactions, we could return back with an error with neither committing nor canceling the actual tdb transaction in some error paths within the ltdb commit and cancel transaction paths. Added also some debugging to trace what was going on.
2009-02-18Worked around a problem with select/poll/epoll and gnutls Andrew Tridgell2-1/+38
Our packet layer relies on the event system reliably telling us when a packet is available. When we are using a socket layer like TLS then things get a bit trickier, as there may be bytes in the encryption buffer which could be read even if there are no bytes at the socket level. The GNUTLS library is supposed to prevent this happening by always leaving some data at the socket level when there is data to be processed in its buffers, but it seems that this is not always reliable. To work around this I have added a new packet option packet_set_unreliable_select() which tells the packet layer to not assume that the socket layer has a reliable select, and to instead keep trying to read from the socket until it gets back no data. This option is set for the ldap client and server when TLS is negotiated. This seems to fix the problems with the ldaps tests.