1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-04 17:47:26 +03:00

96 Commits

Author SHA1 Message Date
Andrew Bartlett
5742f5115c libcli/security Use common security.h
This includes dom_sid.h and security_token.h and will be moved
to the top level shortly.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Tue Oct 12 03:35:36 UTC 2010 on sn-devel-104
2010-10-12 03:35:36 +00:00
Kamen Mazdrashki
f827fcd0e0 s4-libnet_vampire: Remove unused self_corrected_schema
Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Sun Oct 10 10:40:38 UTC 2010 on sn-devel-104
2010-10-10 10:40:38 +00:00
Andrew Bartlett
b44135ac73 s4-libnet_vampire use a linked list to handle schema objects pending conversion 2010-10-10 12:58:32 +03:00
Kamen Mazdrashki
837af1c29a s4-vampire: Optimize Schema decoding conversion
memmove() is removed and I am using the beginning
of the list for storage for failed objects
2010-10-10 12:58:32 +03:00
Kamen Mazdrashki
0440741473 s4-vampire: Initial implementation for multi-pass schema decoding from DRS data
We can't decode all schema object in just one (or even two)
passes when Schema tree has more levels of inheritance.
2010-10-10 12:58:32 +03:00
Kamen Mazdrashki
fb0add6605 s4-libnet_vampire: Reparent result.lp_ctx - we have already referenced it
which leads to warning that we are trying to steal
a context with references
2010-10-05 10:51:14 +00:00
Andrew Tridgell
e18c0030e0 s4-pyjoin: fill in the dns name in the python replication method
this is needed to get the repsFrom DNS entry right

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-09-16 07:24:01 +10:00
Andrew Tridgell
650dcda2a2 s4-rodc: s->schema need initialisation
this fixes a segfault in net rodc preload
2010-09-09 21:39:24 +10:00
Andrew Tridgell
631c5f1fd5 s4-libnet: added libnet_vampire_replicate_init()
this is used to setup for later calls to the replicate chunk functions

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-08-25 08:40:04 +10:00
Andrew Tridgell
bdc1639642 s4-libnet: split libnet_Vampire() into two parts
libnet_Replicate() will do just the replication portion of
libnet_Vampire(). This will be used by the RODC join, where the join
part of the operation happens in python, and behaves quite differently
to the libnet_Join() code.

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-08-23 15:55:39 +10:00
Anatoliy Atanasov
bf5d88ec1c s4/vampire: update dNSHostName for the Server object 2010-08-03 11:15:21 +03:00
Andrew Tridgell
6b266b85cf s4-loadparm: 2nd half of lp_ to lpcfg_ conversion
this converts all callers that use the Samba4 loadparm lp_ calling
convention to use the lpcfg_ prefix.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-16 18:24:27 +10:00
Stefan Metzmacher
6dbcffb51d s4:lib: merge LDB_WRAP and LDBSAMBA and make LDBSAMBA a library.
This is needed to remove samba specifc symbols from the bundled
ldb, in order to get the ABI right.

metze

Signed-off-by: Andreas Schneider <asn@samba.org>
2010-06-16 14:07:28 +02:00
Andrew Bartlett
b5d80a225e s4:dsdb Rework the vampire schema handling to convert 3 times.
This seems like a lot of duplicate work, but by the end we should
have, in normal LDB format, the remote DRS schema, having bootstrapped
it with the locally loaded schema.

The multiple steps are to resolve the problems with references to
schema items that we don't 'yet' know about.

Andrew Bartlett

Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
7c60ac97bf s4:provision Allow a specific prefix map to be loaded into a new schema provision
This allows the prefixMap from a DRS server to be used when loading
the schema from the local files.  This helps us then import other
schema with this map in place.

Andrew Bartlett

Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
9e28ceda96 s4:dsdb Keep the DRS-based prefix map for use in provision-based schema
We need to use the remote prefix map for the provision schema, or else
we can't decode new, non-standard attributes into OIDs.  Then once we
decode that schema, we can try again and get them properly translated.

Andrew Bartlett

Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
5323485eb3 s4:dsdb Allow the setting an override on the schema
The change here is to try and convert a per the previous rules, but if
we don't know a particular OID as a attributeID, then store it as an
OID (for example).  This allows known values to be converted as
before, but still copes with unknown values.

Andrew Bartlett

Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
6a2f7fe04c s4:dsdb Use the schema from our local provision to decode the schema
This works on the assumption that the schema partition can only
contain schema objects.

We may need to pass down some kind of 'relax' to the DRS -> LDB
conversion code, so that it allows incomplete conversions, so that we
don't fail if a new attribute is present, and we can't decode it.
This would then be resolved the second time we do the conversion.

Andrew Bartlett

Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
c313590547 s4:libnet Steal ldb and lp_ctx from python result into correct structures.
Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
1104b41f1e s4:libnet Make the libnet_vampire default callbacks non-static
These are intended to be called from the NET-API-BECOMEDC torture test
to avoid duplication of code.

Andrew Bartlett

Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-15 10:51:34 +10:00
Andrew Bartlett
72486a6dd1 s4:dsdb Add debug 2010-06-12 11:19:13 +10:00
Stefan Metzmacher
625ffba8ec s4:libnet: use the new generated config from the provision for the self_join
This fixes net vampire with the --target-dir option.

metze
2010-05-22 08:41:18 +02:00
Jelmer Vernooij
f9ca9e46ad Finish removal of iconv_convenience in public API's. 2010-05-18 11:45:30 +02:00
Andrew Bartlett
6324a0f59f s4:provision Remove unused 'account_name' parameter
The python glue code didn't even de-reference this element in the
structure.

Andrew Bartlett
2010-05-18 13:20:18 +10:00
Andrew Bartlett
084c8065f8 s4:libnet Make 'net vampire' more robust to command line arguments
When we have just joined a domain, we know a bit about that domain.
Use these to override previous guesses as to what domain and realm to
use for the rest of the join.

Andrew Bartlett
2010-04-29 19:44:16 +10:00
Kamen Mazdrashki
a9e4abaa6e s4/libnet: Allocate mem in supplied mem_ctx
In this case, 'libnet_Vampire *r' may not be a pointer to
a talloced memory.
2010-04-12 04:20:36 +03:00
Andrew Bartlett
2de07761e0 s4:dsdb Change dsdb_get_schema() callers to use new talloc argument
This choses an appropriate talloc context to attach the schema too,
long enough lived to ensure it does not go away before the operation
compleates.

Andrew Bartlett
2010-03-16 19:26:03 +11:00
Stefan Metzmacher
7473ca2d33 s4:libnet: use generate_random_password()
metze
2010-02-26 08:57:28 +01:00
Anatoliy Atanasov
968bd16b49 s4/rodc: change the libnet_become_dc code to do RODC join 2010-02-17 18:03:32 +02:00
Andrew Tridgell
f461a72ec3 idl: switched to using the WSPP names for the 'neighbour' DRS options
The documentation shows that all these functions in fact use the same
flags variable type. To be consistent between functions, and to allow
easy reference to the WSPP docs, it is better for us to also use this
generic DrsOptions bitfield rather than one per operations.
2010-01-18 07:25:18 +11:00
Andrew Tridgell
73838b353a s4-libnet: better error messages in libnet_vampire.c 2010-01-08 13:03:04 +11:00
Andrew Bartlett
39b8f31d66 s4:dsdb Load objectGUID and extended DN defaultObjectCategory into the schema
The load of defaultObjectCategory as an extended DN means we need to
use the common parsing functions I just split out, rather than the
GET_DS_DN macro.

The objectGUIDs are loaded so that we can create the extended DN when
we load from LDIF (and are loaded for the other cases for
consistency).

Also adapt callers to API changes needed for common parsing code

Andrew Bartlett
2009-11-17 10:38:02 +11:00
Andrew Bartlett
df7546ac16 s4:dsdb/repl Split the 'convert' or 'commit' stages in the DRS import
This will allow us in future to do tests on the LDB values we generate
from the DRS replication.

Andrew Bartlett
2009-11-12 16:34:10 +11:00
Kamen Mazdrashki
ba4d87f817 s4/drs: dsdb_map_int2oid() replaced by dsdb_schema_pfm_oid_from_attid()
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06 14:05:43 +01:00
Kamen Mazdrashki
ddab9d1fe7 s4/drs: dsdb_verify_oid_mappings_drsuapi() replaced by dsdb_schema_pfm_contains_drsuapi_pfm()
dsdb_schema_pfm_contains_drsuapi_pfm() is part of reimplemented
prefixMap interface.

This name was choosen to clearly show, that this a week verification
in case we want to determine if remote schema is changed.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06 14:05:42 +01:00
Kamen Mazdrashki
a83385303b s4/drs: dsdb_load_oid_mappings_drsuapi() -> dsdb_load_prefixmap_from_drsuapi()
Also, dsdb_load_oid_mappings_drsuapi() was reimplemented to use
dsdb_schema_pfm_from_drsuapi_pfm() function to load
drsuapi_prefixMap into schema->prefixmap

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06 14:05:41 +01:00
Andrew Tridgell
808585b4fe s4-libnet: fixed debug formatting 2009-09-28 10:25:31 +10:00
Andrew Tridgell
3cd0f9e264 s4-libnet: avoid a steal with references error 2009-09-24 10:33:36 -07:00
Andrew Bartlett
bfddb6816f s4:provision Use code to store domain join in 'net join' as well
This ensures we only have one codepath to store the secret, and
therefore that we have a single choke point for setting the
saltPrincipal, which we were previously skipping.

Andrew Bartlett
2009-09-20 16:29:38 -07:00
Andrew Tridgell
858cddf86d s4-libnet: use updated dsdb commit function 2009-09-15 14:42:26 -07:00
Andrew Tridgell
557cc460f2 s4/vampire: fixed i/j index mixup in vampire code 2009-09-10 01:26:34 +10:00
Andrew Tridgell
7dbe0797b1 show more reasonable object counts during a vampire
We now show the total number of objects we have processed, which gives
the user a better idea of how much has been done. A vampire on a large
domain can take an hour or more (which needs to be fixed btw, it is a
problem with the lack of scalability of the ltdb index code). Watching
the same msg for an hour makes you wonder if any progress is being
made!
2009-09-03 18:36:09 +10:00
Andrew Tridgell
69802b3a3b wrap the entire vampire operation in a transaction
We want to grab the whole database, or none of it.
This is also needed to get linked attributes right
2009-09-02 18:19:55 +10:00
Andrew Tridgell
865ca9be64 the settings structure needs to be initialised 2009-07-02 14:55:38 +10:00
Andrew Tridgell
9539e2b508 major upgrade to the ldb attribute handling
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-04-02 16:42:21 +11: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
9565999755 Fix include paths to new location of libutil. 2008-10-11 21:31:42 +02:00
Stefan Metzmacher
29049aa670 drsuapi: print out the number of linked attribute values we got
metze
(This used to be commit 34f8b2abdd546f6b60ddae2ad839119f211c995c)
2008-07-16 14:42:12 +02:00
Stefan Metzmacher
f0e44c35af drsuapi: make use of the 'more_data' field in DsGetNCChangesCtr[1|6]
metze
(This used to be commit 35c7fa470a7433d081403b2b57a331c7dc287aef)
2008-07-16 14:42:11 +02:00
Stefan Metzmacher
c6ea7f0221 drsuapi: total_object_count was the wrong guess
The total_object_count member of DsGetNCChangesCtr[1|6] was wrong
it's the error code of an extended operation.

DsGetNCChangesCtr6 has a nc_object_count value which contains
the estimated amount of objects in the naming_context.

W2k seems to have a bug and sends this number of objects
in the extended_ret field. Maybe it's just a bug and
not a feature:-)

metze
(This used to be commit 67931092128ce89aadf689a54e20d6e4a9d7fe2c)
2008-07-16 12:16:58 +02:00