1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-21 18:04:06 +03:00

4680 Commits

Author SHA1 Message Date
Wilco Baan Hofman
45bb24e939 Fix trailing garbage in the hbin block.
This specifically fixes a problem showing extra bytes of garbage in list and
print in regshell, even though the vk.data_length has the correct size.

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2009-11-15 19:26:50 +01:00
Zahari Zahariev
1e984e6630 Added tests for descriptor inheritance on ldap modify.
Fixed some expected owners and groups.

Signed-off-by: Nadezhda Ivanova <nadezhda.ivanova@postpath.com>
2009-11-15 19:26:02 +02:00
Matthias Dieter Wallnöfer
cc080742bd ldb:python bindings - add a context on "py_ldb_delete"
So the converted DN will be freed after usage.
2009-11-15 14:26:41 +01:00
Matthias Dieter Wallnöfer
6cf43db7fc s4:ldap.py - enhance schema addition test
Don't add only a new objectclass but also a new attribute. Plus let now the
server itself calculate the "lDAPDisplayName" attribute and compare the result.
2009-11-15 14:26:41 +01:00
Matthias Dieter Wallnöfer
8e320aea71 s4:ldap.py - Deactivates some at the moment pointless test parts
I think those parts should be deactivated since they're result set checks for
lookups which are commented out already.
2009-11-15 10:38:30 +01:00
Andrew Tridgell
dbae29de1c s4-ldb: make DN escaping/unescaping consistent
The DN escape function was using the form \c where c is any
character. The unescape function was using \XX where XX is a 2 digit
hex number. The asymmetry led to quite a few problems when we start to
deal with DNs containing escape chars, such as CN=foo\0ADEL:XXX. The
result was a DN that was not accessible.

This patch changes the escaping to follow RFC2253 much more
closely. We accept either type of escape, and produce the two types of
escape, depending on the character being escaped
2009-11-13 19:32:46 +11:00
Andrew Bartlett
ae72153daa s4:ldb Allow ldb_msg_canonicalize to handle empty elements
(These are deliberately there in DRS replication).

Andrew Bartlett
2009-11-12 16:34:15 +11:00
Andrew Bartlett
5940ca60e2 s4:ldb Don't segfault if we somehow get an unknown extended dn element 2009-11-12 16:34:14 +11:00
Andrew Bartlett
716bba5457 s4:ldb Change ldb_request_add_control to the normal 'for loop' pattern 2009-11-12 16:34:14 +11:00
Andrew Bartlett
d6d0c23d49 s4:ldb Add Well Known GUID (WKGUID) tests to ldap.py 2009-11-12 16:34:06 +11:00
Andrew Bartlett
f5890ddd83 s4:ldb Remove DN+Binary code from the core ldb_dn
This is now in dsdb_dn.  Removing this to a specific wrapper avoids a
number of bugs where Binary DNs were being handled incorrectly.

This reverts much of tridge's commit
fd22e0304782e20b9bbb29464b6c745d409ff4c6

Andrew Bartlett
2009-11-12 16:34:05 +11:00
Andrew Bartlett
f0d43e9e56 s4:dsdb Use new dsdb_dn code in LDB modules and Samba4 schema
This converts the code from using the binary DN code in ldb_dn to
using a special Samba-specfic wrapper around ldb_dn.

We also use the dsdb_dn code for DN+Binary and DN+String comparisons
(changed from treating them as Binary blobs)

Andrew Bartlett
2009-11-12 16:34:04 +11:00
Andrew Bartlett
973197cd9d s4:ldb-samba Use new ldb_any_comparison helper function in ldb-samba 2009-11-12 16:34:04 +11:00
Andrew Bartlett
3abc3e7a3a s4:ldb Add a helper function for 'canonicalise' both strings base compares
This will help simplify boilerplate comparison functions where we
don't have a shortcut way to compare.

Andrew Bartlett
2009-11-12 16:34:02 +11:00
Andrew Bartlett
fd5174e88c lib/util Split data_blob_hex_string() into upper and lower
Rather than have a repeat of the bugs we found at the plugfest where
hexidecimal strings must be in upper or lower case in particular
places, ensure that each caller chooses which case they want.

This reverts most of the callers back to upper case, as things were
before tridge's patch.  The critical call in the extended DN code is
of course handled in lower case.

Andrew Bartlett
2009-11-12 16:34:01 +11:00
Nadezhda Ivanova
cee83ac34a Fixes for some tests not eorking against Windows or Samba. 2009-11-10 15:58:52 +02:00
Andrew Tridgell
932cda330a s4-samdb: remove the rDN size constraint of 64
This size constraint is not correct in it's current form, as windows
does send us rDN values for CN with lengths longer than 64. Once we
know how this constraint really works we can add it back in.
2009-11-09 22:19:52 +11:00
Matthias Dieter Wallnöfer
f6eacfcf1d s4:lib/messaging - fix up the python bindings
This fixes up the broken "send" method of the python bindings and corrects some
other parameter lists in parsing functions (this is only cosmetic). The reason
for the bug was a superfluous "|"!
2009-11-07 18:02:05 +01:00
Matthias Dieter Wallnöfer
843be3bcd9 ldb_init: use constant for result of "ldb_setup_wellknown_attributes" 2009-11-07 10:18:26 +01:00
Kamen Mazdrashki
716eb62b5d s4/ldb: Fix double allocation for "ldb_url"
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06 14:05:36 +01:00
Zahari Zahariev
5fb9d06607 Python tests for the acl module.
Signed-off-by: Nadezhda Ivanova <nadezhda.ivanova@postpath.com>

Author:    Zahari Zahariev <zahari.zahariev@postpath.com>
2009-11-05 17:40:54 +02:00
Endi S. Dewata
bf01937549 s4:dsdb - Store SID as string in FDS. 2009-11-02 16:36:54 +11:00
Andrew Bartlett
f1f1bdada6 s4:ldb Remove debug traces duplicated by the new generic trace code 2009-11-02 16:36:51 +11:00
Matthias Dieter Wallnöfer
90862a55fd ldb:tdb backend - be also here more careful with the result value
"msg_delete_attribute" doesn't return an LDB result constant.
2009-10-27 19:42:12 +01:00
Matthias Dieter Wallnöfer
4c79fbfbe5 ldb:python bindings - make the intention by Jelmer ("int" vs. "enum") more clear 2009-10-27 19:11:15 +01:00
Matthias Dieter Wallnöfer
aa46400cb2 Revert "ldb python bindungs - better use the "enum ldb_scope" for the search scope rather than "int""
This reverts commit 4f8826ff7f4789c5b5f363b733a42053f72aa526.

Jelmer pointed out that the "enum"s don't work so well in combination with python.
2009-10-27 19:07:53 +01:00
Andrew Tridgell
798b05a974 s4-dsdb: call dsdb_make_schema_global() from ldb_wrap
Calling it from samdb_connect() can cause a stale schema to be put
into the global schema.

Thanks to Andrew Bartlett for spotting this.
2009-10-27 20:30:53 +11:00
Andrew Tridgell
6afac82e4b s4-ldb: '+' can also happen in base64 encoded index DNs 2009-10-27 11:44:05 +11:00
Andrew Bartlett
8ae0abc65f s4:ldb Add detail to failures in the indexing code 2009-10-27 11:32:21 +11:00
Andrew Bartlett
3c6c230b2d s4:ldb Add additional tracing of the ldb API
This helps pin down where errors occour, by printing a call stack and
setting error strings and trace messages in the transaction case.

Andrew Bartlett
2009-10-27 11:32:14 +11:00
Andrew Tridgell
98a3725252 Merge branch 'master' of ssh://git.samba.org/data/git/samba 2009-10-25 23:14:56 +11:00
Andrew Tridgell
12c9af7817 s4-ldb: allow for unescaped '=' in a index DN
The ldb_dn_explode code normally enforces all special characters,
including a '=', must be escaped. Unfortunately this conflicts with
the ltdb index DNs, which for binary attributes may be base64
encoded. This allows a unescaped '=' as a special case for index DNs.
2009-10-25 22:02:31 +11:00
Matthias Dieter Wallnöfer
1ea460b0b0 ldb:backend "connect" functions - convert result values to LDB constants
I think this is better since "ldb_backend_connect" and "ldb_connect" which
propagate those values should return only LDB constants. Therefore a conversion
(especially for "-1") would be needed.
2009-10-25 11:24:54 +01:00
Andrew Tridgell
b55a5adab9 s4-ldb: ensure DNs pass validity tests in indexing 2009-10-25 13:15:18 +11:00
Andrew Tridgell
2eca02a408 s4-ldb: fixed string length handling on index records 2009-10-25 13:15:18 +11:00
Andrew Tridgell
dffb572ce0 s4-ldb: don't allow modifies outside a transaction. 2009-10-25 13:15:18 +11:00
Andrew Tridgell
5002cddcb0 s4-ldb: fixed re-index during a complex transaction
We may have modified index objects in the in-memory index tdb
2009-10-25 13:15:18 +11:00
Matthias Dieter Wallnöfer
4f8826ff7f ldb python bindungs - better use the "enum ldb_scope" for the search scope rather than "int" 2009-10-23 14:26:41 +02:00
Andrew Tridgell
3050f83288 s4-python: we need to include Python.h first
If we don't include Python.h first then we get a pile of warnings due
to broken redefines of XOPEN_SOURCE in the Python includes.
2009-10-23 16:23:01 +11:00
Andrew Tridgell
890e7719cf s4-ldb: move the tdb_reopen_all() calls to ldb_wrap.c 2009-10-23 14:52:18 +11:00
Andrew Tridgell
906961cd8c s4-ldb: use ldb_wrap_fork_hook() to cancel child transactions 2009-10-23 14:52:18 +11:00
Andrew Tridgell
a32b338647 s4-ldb: added ldb_transaction_cancel_noerr()
This will be used to allow cancelling of transactions in a child after
a fork()
2009-10-23 14:52:18 +11:00
Andrew Tridgell
4ad0397d8a s4-ldbwrap: added re-use of ldb contexts in ldb_wrap_connect()
This allows us to reuse a ldb context if it is open twice, instead
of going through the expensive process of a full ldb open. We can
reuse it if all of the parameters are the same.

The change relies on callers using talloc_unlink() or free of a parent
to close a ldb context.
2009-10-23 14:52:17 +11:00
Andrew Tridgell
98e4393df9 s4-dsdb: create a static system_session context
This patch adds a system_session cache, preventing us from having to
recreate it on every ldb open, and allowing us to detect when the same
session is being used in ldb_wrap
2009-10-23 14:52:17 +11:00
Andrew Tridgell
a109ee71fb s4-ldb: added a TODO about checking the indexlist 2009-10-22 12:47:55 +11:00
Andrew Tridgell
f2988f5cad s4-ldb: fixed some memory leaks in new indexing code 2009-10-22 12:47:55 +11:00
Andrew Tridgell
0fb6e2a52c s4-ldb: don't try to index non-indexed attributes 2009-10-22 12:47:55 +11:00
Andrew Tridgell
1b48764f24 s4-ldb: ensure new dn_list elements are not owned by caller 2009-10-22 12:47:55 +11:00
Andrew Tridgell
129298c9b9 s4-ldb: over-allocate index records to save on realloc costs 2009-10-22 12:47:55 +11:00
Andrew Tridgell
d483c3bb96 s4-ldb: fixed tdb error handling in ldb_index.c 2009-10-22 12:47:55 +11:00