1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-29 21:47:30 +03:00

715 Commits

Author SHA1 Message Date
Andrew Bartlett
9b261c008a s4:heimdal: import lorikeet-heimdal-200906080040 (commit 904d0124b46eed7a8ad6e5b73e892ff34b6865ba)
Also including the supporting changes required to pass make test

A number of heimdal functions and constants have changed since we last
imported a tree (for the better, but inconvenient for us).

Andrew Bartlett
2009-06-12 07:45:48 +10:00
Jelmer Vernooij
6ace18904d Fix more unresolved symbols. 2009-06-02 18:05:41 +02:00
Andrew Tridgell
c0213308bb we don't need the unique checks in the samldb code now
These attributes now use the unique indexing flag
2009-06-01 16:37:28 +10:00
Andrew Kroeger
73af16c0e7 s4:ldb_modules: Correct typos. 2009-05-26 16:38:39 -04:00
Björn Jacke
1563796b44 s4:ldb: fix extrasemi compile warning 2009-04-22 00:03:23 +02:00
Björn Jacke
488bac4038 s4:ldb: do talloc_free and return NULL when we have no matches to return 2009-04-22 00:03:22 +02:00
Andrew Tridgell
481fb8aa13 slightly nicer output in our possibleInferiors test code 2009-04-09 13:45:23 +10:00
Andrew Tridgell
6abca12aa0 hook the new possibleInferiors calculation into the schema
We now generate possibleInferiors at startup, and return it when
requested
2009-04-09 13:45:04 +10:00
Andrew Tridgell
16a1903c54 use the prepare_commit op in the partition code
This makes multi-partition ldb's much safer
2009-03-31 15:08:36 +11:00
Andrew Tridgell
d88ced1dcc added a --wspp option
Adding --wspp to possibleInferiors.py forces it to use the WSPP
documented algorithm, which doesn't match windows behaviour
2009-03-27 09:31:51 +11:00
Andrew Tridgell
3f37342bc0 fixed possibleinferiors.py so it matches windows behaviour
This test code builds the possibleInferiors for every class in the
schema on a target machine, and compares it to the servers
possibleInferiors attribute.  

The MS-ADTS spec describes how to calculate possibleInferiors for a
object, but it seems to have some bugs. The spec says that we need to
use AUXCLASSES, and it does not mention the use of the SUBCLASS
tree. In trying to match windows behaviour, I found that I needed to
ignore the AUXCLASSES and build a SUBCLASSES tree.
2009-03-26 22:10:02 +11:00
Andrew Tridgell
2a8f367b0f the start of a possibleInferiors test suite
we haven't implemented possibleInferiors yet. This test is meant to
help us understand how it works. It tries to construct
possibleInferiors via searches on other attributes, and compares it to
the servers constructed possibleInferiors attribute for each class in
the servers schema.

see [MS-ADTS] section 3.1.1.4.5.21
2009-03-24 16:28:39 +11:00
Andrew Tridgell
a1ebb85020 added support for parentGUID
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-17 14:18:53 +11:00
Andrew Bartlett
1a06b31b59 s4:password_hash Only store the LM hash if 'lanman auth = yes'
The clients that do only lanman auth are on their way out, the
passwords are case insensitive, it does not support unicode and we
should not store such a poor hash of the password if we can avoid it.

Andrew Bartlett
2009-03-16 11:28:11 +11:00
Jelmer Vernooij
94069bd274 s4: Use same function signature for convert_* as s3. 2009-03-01 19:55:46 +01:00
Jelmer Vernooij
9ffb6d2d9e Add allow_badcharcnv argument to all conversion function, for
consistency with Samba 3.
2009-03-01 06:33:40 +01:00
Simo Sorce
1cd7fe7194 Fix headers, ldb_includes.h is a private header,
do not reference it from ldb.h
2009-02-23 17:38:11 -05:00
Andrew Tridgell
fe5b0b595c added a workaround to the handling of unicodePwd for Win7-beta
The Win7-beta domain process has changed. It no longer uses SAMR for
setting the password, and instead uses a ldap modify on a SASL
encrypted ldap connection. We didn't handle that as the unicodePwd
attribute has a dual use, holding the nt style MD4 hases for DRS
replication, but holding a UTF-16 plaintext password for a LDAP
modify.

This patch copes with the ldap unicodePwd modify by recognising the
format and creating the correct attributes on the fly. Note that this
assumes we will never get a unicodePwd attribute set in NT MD4 format
with the first 2 and last 2 bytes set to 0x22 0x00. 

Andrew Bartlett is looking at a more robust solution, possibly using a
flag to say that this modify came via ldap, and not internal ldb
calls.
2009-02-10 17:31:57 +11:00
Stefan Metzmacher
73aea83966 s4:schema_fsmo: s/class/sclass
metze
2009-02-02 13:09:15 +01:00
Stefan Metzmacher
45c26648c3 s4:update_keytab: s/delete/do_delete
metze
2009-02-02 13:09:09 +01:00
Stefan Metzmacher
24d31c0e81 s4:kludge_acl: s/class/sclass
metze
2009-02-02 13:08:41 +01:00
Stefan Metzmacher
b7f2983489 s4:extended_dn_out: s/private/p s/new/nattrs
metze
2009-02-02 13:08:06 +01:00
Stefan Metzmacher
ea157f495f s4:repl_meta_data: fix segfault after ldb changes
metze
2009-01-31 09:44:27 +01:00
Simo Sorce
7acea5a032 Fix proxy module 2009-01-30 20:12:50 -05:00
Simo Sorce
d4aeed879b Fix all other modules to use ldb_module.h instead of ldb_private.h
The only 2 modules escaping the rule so far are rootdse and partitions
2009-01-30 17:07:25 -05:00
Simo Sorce
d93634b7dd Fix misfiled headers.
Some public functions were mistakenly put into ldb_private.h
Revert all modules to only include ldb_module.h
2009-01-30 09:24:48 -05:00
Stefan Metzmacher
27e4032287 s4:fix the build after 380874ef863866c94c999ef53252b9d30df65e88
metze
2009-01-30 09:36:58 +01:00
Simo Sorce
380874ef86 Fix the mess with ldb includes.
Separate again the public from the private headers.

Add a new header specific for modules.
Also add service function for modules as now ldb_context and ldb_module are
opaque structures for them.
2009-01-30 01:02:03 -05:00
Stefan Metzmacher
183c379fe5 s4:lib/tevent: rename structs
list=""
list="$list event_context:tevent_context"
list="$list fd_event:tevent_fd"
list="$list timed_event:tevent_timer"

for s in $list; do
	o=`echo $s | cut -d ':' -f1`
	n=`echo $s | cut -d ':' -f2`
	r=`git grep "struct $o" |cut -d ':' -f1 |sort -u`
	files=`echo "$r" | grep -v source3 | grep -v nsswitch | grep -v packaging4`
	for f in $files; do
		cat $f | sed -e "s/struct $o/struct $n/g" > $f.tmp
		mv $f.tmp $f
	done
done

metze
2008-12-29 20:46:40 +01:00
Jelmer Vernooij
bd64688c6a Fix more compiler warnings in various places. 2008-12-23 22:57:11 +01:00
Jelmer Vernooij
2227860a79 Fix more tests, improve repr() functions for various Python types. 2008-12-21 23:05:35 +01:00
Jelmer Vernooij
6efb7ff981 Fix various Python-related bugs. 2008-12-21 07:34:27 +01:00
Jelmer Vernooij
01c22153a9 Fix samba3sam test after removal of dom_sid IDL file. 2008-12-18 16:50:54 +00:00
Andrew Bartlett
12a7eeeaf4 s4:dsdb: remove normalise module
The extended_dn_out module provides the functionality now.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:29 +11:00
Andrew Bartlett
1f28541a24 s4:dsdb: split extended_dn into extended_dn_in, extended_dn_out and extended_dn_store.
By splitting the module, the extended_dn_in and extended_dn_store
moudles can use extended_dn_out to actually get the extended DN.  This
avoids code duplication.

The extended_dn_out module also contains a client implementation of
the OpenLDAP dereference control (draft-masarati-ldap-deref-00).

This also introduces a new control
'DSDB_CONTROL_DN_STORAGE_FORMAT_OID' to ask the extended_dn_out module
to return whatever the 'storage format' is.  This allows us to work
with both OpenLDAP (which performs a dereference at run time) and LDB
(which stores the GUID and SID on disk).

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:28 +11:00
Andrew Bartlett
911cf5d625 s4:dsdb: Make the linked_attributes module set an extended dn
This means that linked attributes will always have the same case form
as the actaul entry, as we search for that entry.  We then also use
the GUID and SID found on that entry to fill in the extended DN on disk.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:28 +11:00
Andrew Bartlett
d68ad8218f s4:rootdse: fix the logic to indentify a rootdse search
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:28 +11:00
Andrew Bartlett
596fe759e1 s4:ldb: make it possible to return per entry controls
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:27 +11:00
Andrew Bartlett
1107021f3a s4:samldb: make use of dom_sid_split_rid()
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:26 +11:00
Andrew Bartlett
b65f1a0977 s4:samldb: improve error strings
When things go wrong with LDB, this routine seems to be particularly
sensitive to it.  This extra debugging should help the next poor soul who
breaks LDB.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:25 +11:00
Andrew Bartlett
30ae74d399 s4:dsdb: add support for DSDB_OPENLDAP_DEREFERENCE_CONTROL
Encode and decode the OpenLDAP dereference control (draft-masarati-ldap-deref-00)

At this time, the ldb_controls infrustructure does not handle request
and reply controls having different formats, so this is purely the
client implementation (ie, there is no decode of the client->server
packet, and no encode of the server->client packet).

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:24 +11:00
Andrew Bartlett
8ce5640fbf Add hint to use passwordAttributes in @KLUDGE_ACL in future
This module is not used at the moment, but if we do use it again, we
should try to avoid duplicate lists.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:23 +11:00
Andrew Bartlett
56d39e1711 Make greater use of 'GUID_from_data_blob'
This avoids accidentily running off the end of a string, and uses a
single 'guess which type of GUID I have' algorithm.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:23 +11:00
Andrew Bartlett
d2ec925c63 Fix sequence number generation against OpenLDAP
It seems that in 2deeb99fff1a90c79ba1927e1a069362e250a63c adding the
partition control to this request was missed out.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:23 +11:00
Stefan Metzmacher
0f74de3d37 s4:password_hash: really catch the clearTextPasswordAttr case...
This fixes the creation of the user object for incoming trusts
in dcesrv_lsa_CreateTrustedDomain_base().

And now w2k3 trust samba4 just fine:-)

metze
2008-12-05 14:16:47 +01:00
Stefan Metzmacher
677e0fb965 s4:kludge_acl: allow everybody to read the sequence number
metze
2008-12-04 15:45:16 +01:00
Stefan Metzmacher
327d2be452 s4:dsdb/samdb: don't allow objects without objectClass
We're using @ROOTDSE instead of CN=ROOTDSE.

metze
2008-11-17 11:37:58 +01:00
Andrew Bartlett
a19df19501 Run the original operation before we update linked attrs
This causes the linked attribute modifies to occour after the original
operation is entered in the transaction (any failure still fails the
lot).  This means (I hope) that we can have another module search the
originating record when the backlink is created, filling in the GUID
and SID for the extended DN.

Andrew Bartlett
2008-11-17 13:59:51 +11:00
Andrew Bartlett
00b6343406 The samba3sam test does not really need the extended_dn module
(This module has been split up into extended_dn_in, extended_dn_out
and extended_dn_store).

Andrew Bartlett
2008-11-17 10:06:37 +11:00
Stefan Metzmacher
1d9c88b388 s4:dsdb/schema_fsmo: provide "extendedAttributeInfo" and "extendedClassInfo"
metze
2008-11-16 16:37:28 +01:00