1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-26 04:23:49 +03:00
Commit Graph

207 Commits

Author SHA1 Message Date
Andrew Bartlett
a99bd2e033 r15176: Ensure we don't segfault when we try and delete @FOO records.
Don't try and steal the result of a search on failure, it has already
been talloc_free()'ed by the ildb code.

Andrew Bartlett
2007-10-10 14:04:12 -05:00
Tim Potter
456a1de2b9 r15113: Add a ldb_strerror() function. 2007-10-10 14:04:09 -05:00
Jelmer Vernooij
614f062748 r14606: Fix paths in developer mode. This allows 'make quicktest' to work when
building with --enable-dso
2007-10-10 13:59:00 -05:00
Jelmer Vernooij
6cdefd8945 r14599: Pass ACLs down the registry layer. 2007-10-10 13:58:59 -05:00
Jelmer Vernooij
06f7a8c692 r14594: Fix some dependencies (required for shared library build) 2007-10-10 13:58:58 -05:00
Jelmer Vernooij
f10fae23f0 r14592: Add support for loading shared modules to LDB. 2007-10-10 13:58:58 -05:00
Andrew Tridgell
b607be9cda r14430: ret can be NULL at the end of this loop 2007-10-10 13:57:22 -05:00
Simo Sorce
e8075e6a06 r13998: From now on ldb_request() will require an alloced request
By freeing the request you will be sure everything down the path get freed.

this also means you have to steal the results if you want to keep them :)

simo.
2007-10-10 13:52:36 -05:00
Simo Sorce
ef1b3e6368 r13996: simplify ldb_async_wait() some more 2007-10-10 13:52:36 -05:00
Simo Sorce
3347322d13 r13992: change the way ldb_async_wait() works.
I think I should change the name of this function
to ldb_async_process(), any opinions ?
2007-10-10 13:52:34 -05:00
Jelmer Vernooij
988ea27e22 r13990: Fix issues with function renaming. 2007-10-10 13:52:34 -05:00
Stefan Metzmacher
30af3be22b r13973: fix the build
metze
2007-10-10 13:52:33 -05:00
Simo Sorce
8340ab26dd r13901: Backends need to be initialized even if there are no modules 2007-10-10 13:52:20 -05:00
Simo Sorce
cf7ad70757 r13900: don't segfault on error 2007-10-10 13:52:20 -05:00
Jelmer Vernooij
fb2f70de4f r13839: Use registration mechanism for backends as well (in the same sense
my previous patch added it for modules). This is the next step towards
LDB backends and modules as run-time loadable .so files.
2007-10-10 13:52:14 -05:00
Simo Sorce
b4202cf030 r13823: make async_wait part of the modules ops 2007-10-10 13:52:13 -05:00
Andrew Tridgell
4257fd91ce r13803: fixed two errors found with 'make valgrindtest' 2007-10-10 13:52:12 -05:00
Jelmer Vernooij
52a2356505 r13786: [merge] Add registration functions for LDB modules
Applications that use LDB modules will now have to run ldb_global_init()
before they can use LDB.

The next step will be adding support for loading LDB modules from .so
files. This will also allow us to use one LDB without difference between the
standalone and the Samba-specific build
2007-10-10 13:52:11 -05:00
Andrew Bartlett
424df1bb36 r13616: Add new ldb functions: ldb_msg_add_steal_string() and
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
2007-10-10 13:51:59 -05:00
Simo Sorce
d5b467b7c1 r13615: Make ldb_set_errstring get ldb instead of module as parameter.
The module was just used to get to the ldb so it was meningless.

Also add LDB_WAIT_ONCE e relative code in ldb_ildap.c
2007-10-10 13:51:59 -05:00
Simo Sorce
1e2c13b2d5 r13609: Get in the initial work on making ldb async
Currently only ldb_ildap is async, the plan
is to first make all backend support the async calls,
and then remove the sync functions from backends and
keep the only in the API.

Modules will need to be transformed along the way.

Simo
2007-10-10 13:51:59 -05:00
Stefan Metzmacher
24c6e2f731 r13359: make sure we don't look at s[-1]
metze
2007-10-10 13:51:49 -05:00
Simo Sorce
513ff49907 r13349: In the end I could not use ldb_caseless_cmp
in attrib_handler.c functions

remove it again

Simo
2007-10-10 13:51:47 -05:00
Simo Sorce
e12f070958 r13347: - Now we compare values with an optimized utf8
safe function if the user provides an utf8
compliant casefold function to ldb.

- Fix toupper_m and tolower_m to not crash if
the case tables are not found

- Let load_case_table() search into the correct
directory in the search tree for the case
tables so that we can test utf8

Simo
2007-10-10 13:51:47 -05:00
Simo Sorce
6104f90086 r13335: Fix the build and add an utf8 safe ldb_hadler_fold function
based on ldb_casefold
2007-10-10 13:51:45 -05:00
Simo Sorce
3b4eb2413b r13333: revert previous commit I will use ldb_caseless_cmp in attrib_handlers
to correctly support utf8 comparisons

add an ldb_attr_Casefold function for attribute names and use it
instead of casefold in the right places
2007-10-10 13:51:45 -05:00
Simo Sorce
afda68d7bf r13328: After the attribute name check cleanup it turned up ldb_caseless_cmp()
was used just in one places and by mistake, as there we should have
been using ldb_attr_cmp()

Remove ldb_caseless_cmp() ... going on with the cleanup and utf8 compliance
effort.

Simo.
2007-10-10 13:51:44 -05:00
Simo Sorce
ac9b8a41ff r13324: From now on check attribute names obey rfc2251
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.
2007-10-10 13:51:44 -05:00
Andrew Tridgell
6ec71ffbc1 r13278: remove a silly strcasecmp() replacement 2007-10-10 13:51:42 -05:00
Simo Sorce
900f4fd343 r12941: Add Attribute Scoped Search control
want to see what it does ?

do aq make test and try:
./bin/ldbsearch -H st/private/sam.ldb --controls=asq:1:member -s base -b 'CN=Administrators,CN=Builtin,DC=samba,DC=example,DC=com' 'objectclass=*'

have fun.
simo.
2007-10-10 13:51:11 -05:00
Stefan Metzmacher
a6f279bc43 r12909: add an ldb module for the wins.ldb,
it currently doesn't do much, but it's later
prevent adding corrupted records via ldbedit,
and will take care of the versionID counter

metze
2007-10-10 13:51:02 -05:00
Stefan Metzmacher
1876e245c4 r12830: this can be const
metze
2007-10-10 13:50:03 -05:00
Stefan Metzmacher
380938e97f r12829: fix ldb headers, to not include '<...>' files in .c files
this helps in getting symbol -fvisibility=hidden (GCC 4 feature) working later.

metze
2007-10-10 13:50:03 -05:00
Simo Sorce
72a86d74a9 r12827: This was a very well concealed bug.
Thank to Andrew Bartlet for finding out a test case that showed it up.

Simo.
2007-10-10 13:50:03 -05:00
Simo Sorce
d4454287cf r12770: Remove the alloca.h header as it is not used in the code afaics 2007-10-10 13:49:52 -05:00
Simo Sorce
7ba341d6c3 r12748: Fix wrong handling of separation characters for RDNs
allow escaped separation chars as part of the attr value
of an RDN
2007-10-10 13:49:49 -05:00
Andrew Bartlett
be9d0cae89 r12746: An initial version of the kludge_acls module.
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
2007-10-10 13:49:48 -05:00
Simo Sorce
5e8b365fa2 r12743: Remove the ugly way we had to make a second stage init and introduce
a second_stage_init private function for modules that need a second stage init.

Simo.
2007-10-10 13:49:48 -05:00
Simo Sorce
df1ccca349 r12734: forgot to add qsort 2007-10-10 13:49:47 -05:00
Simo Sorce
77125feaff r12733: Merge ldap/ldb controls into main tree
There's still lot of work to do but the patch is stable
enough to be pushed into the main samba4 tree.

Simo.
2007-10-10 13:49:47 -05:00
Andrew Bartlett
41948c4bdb r12600: Add a new module to sort the objectclass attribute on store. The
module is perhaps not the most efficient, but I think it is
reasonable.

This should restore operation of MMC against Samba4 (broken by the
templating fixes).

Andrew Bartlett
2007-10-10 13:49:01 -05:00
Andrew Bartlett
e902274321 r12599: This new LDB module (and associated changes) allows Samba4 to operate
using pre-calculated passwords for all kerberos key types.
(Previously we could only use these for the NT# type).

The module handles all of the hash/string2key tasks for all parts of
Samba, which was previously in the rpc_server/samr/samr_password.c
code.  We also update the msDS-KeyVersionNumber, and the password
history.  This new module can be called at provision time, which
ensures we start with a database that is consistent in this respect.

By ensuring that the krb5key attribute is the only one we need to
retrieve, this also simplifies the run-time KDC logic.  (Each value of
the multi-valued attribute is encoded as a 'Key' in ASN.1, using the
definition from Heimdal's HDB.  This simplfies the KDC code.).

It is hoped that this will speed up the KDC enough that it can again
operate under valgrind.
2007-10-10 13:49:01 -05:00
Andrew Bartlett
b1c8adcfe1 r12553: Steal the error string onto this context, so that the caller doesn't
have to think about exactly what the right context to hang it of is.

Andrew Bartlett
2007-10-10 13:47:57 -05:00
Andrew Bartlett
2f54d7f774 r12534: Make the transaction code fill the error string on failure.
Andrew Bartlett
2007-10-10 13:47:53 -05:00
Andrew Bartlett
8308cf6e04 r12361: Add a new function: ldb_binary_encode_string()
This is for use on user-supplied arguments to printf style format
strings which will become ldb filters.  I have used it on LSA, SAMR
and the auth/ code so far.

Also add comments to cracknames code.

Andrew Bartlett
2007-10-10 13:47:30 -05:00
Andrew Tridgell
2be62eb2dd r12157: ldb_dump_results() is useful to call from within gdb, so you can see a
set of results
2007-10-10 13:47:15 -05:00
Andrew Tridgell
b8d4afb14a r11958: - fixed memory leaks in the ldb_result handling in ldb operations
- removed an unnecessary level of pointer in ldb_search structure
2007-10-10 13:46:51 -05:00
Andrew Tridgell
7d8b11174c r11953: enabled the rootdse module in the ldb modules code 2007-10-10 13:46:50 -05:00
Andrew Tridgell
cd567bcb24 r11594: ensure ldb_search() sets *res to NULL on failure (some of the updated
ldb_result code coud rely on that)
2007-10-10 13:45:55 -05:00
Simo Sorce
22c8c97e6f r11567: Ldb API change patch.
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.
2007-10-10 13:45:53 -05:00