1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-14 19:24:43 +03:00

19392 Commits

Author SHA1 Message Date
Andrew Tridgell
30d13288e5 s4-repl: take advantage of async RPC forwarding
This uses async RPC forwarding for the DsReplicaSync call
2009-09-15 20:51:10 -07:00
Andrew Tridgell
f80363c90a s4-rpc: added a module for forwarding RPC requests
dcesrv_irpc_forward_rpc_call() can be used to forward an arbitrary RPC
request to another task in Samba4, with the return being handled
asynchronously.

This is useful for forwarding DRS requests to the repl or kcc tasks
2009-09-15 20:50:30 -07:00
Andrew Tridgell
5d2dfd12cf s4-drs: lock down key DRS calls
The key DRS calls should only be allowed by administrators or domain
controllers
2009-09-15 19:52:25 -07:00
Andrew Tridgell
7ded0741d9 s4-security: added a new security level SECURITY_DOMAIN_CONTROLLER
This will be used as a simple way to lock down DRS replication to
administrators and domain controllers
2009-09-15 19:25:45 -07:00
Andrew Tridgell
10e25fc5e9 s4-ldb: ldap attribute names can contain a '.'
When they are of the form of OIDs
2009-09-15 18:45:43 -07:00
Andrew Tridgell
03d0005b25 s4-ldb: expose ldb_transaction_prepare_commit() in ldb
It is useful to be able to control the 2 phase commit from application
code (s4 replication uses it)
2009-09-15 18:45:43 -07:00
Andrew Tridgell
458dda1f15 s4-repl: don't do double replication
When we replicate from a remote DC, we need to note the new uSN that
the local changes have resulted in, and modify the uSN that the notify
task uses to determine if it should send a ReplicaSync message back to
the remote DC. Otherwise we end up always triggering a ReplicaSync
every time we replicate from another DC
2009-09-15 18:45:43 -07:00
Andrew Tridgell
9e0b1a3a1f s4-drs: filter based on local_usn
The getncchanges uSN is in our local space, so we must compare it to
the local_usn in replPropertyMetaData
2009-09-15 18:45:42 -07:00
Andrew Tridgell
bc3bbae6d2 s4-repl: make sure we marshal the replPropertyMetaData after the last change
we were setting local_usn after the marshall, so it wasn't going into
the object
2009-09-15 18:45:42 -07:00
Andrew Tridgell
ff8ad222cd s4-dsdb: use DLIST_ADD() not DLIST_ADD_END()
Using DLIST_ADD_END() to construct a long list is very inefficient (it
is O(n^2). These lists are not ordered, so using DLIST_ADD() is much
better.
2009-09-15 18:45:42 -07:00
Andrew Tridgell
12f689eef4 s4-ldb: cope better with corruption of tdb records
When doing an indexed search if we hit a corrupt record we abandoned
the indexed search and did a full search. The problem was that we
might have sent some records to the caller already, which means the
caller ended up with duplicate records. Fix this by returning a search
error if indexing returns an error and we have given any records to
the caller.
2009-09-15 18:45:42 -07:00
Andrew Tridgell
089dc64cbb s4-repl: add a debug to make it easier to monitor replication 2009-09-15 18:45:41 -07:00
Günther Deschner
f3979b50a9 schannel: move schannel_sign to main directory.
Guenther
2009-09-16 01:54:59 +02:00
Günther Deschner
1a21db8ea1 s4-schannel: try to fix the build.
Guenther
2009-09-16 01:07:26 +02:00
Günther Deschner
1f4123677e s4-schannel: first step of decoupling schannel from gensec.
Guenther
2009-09-16 00:16:04 +02:00
Günther Deschner
9cb205d753 s4-schannel: strip trailing whitespace.
Guenther
2009-09-16 00:13:20 +02:00
Andrew Bartlett
9a209ac252 s4:schema Add code to provide an index into the subClass tree
In time, this should avoid the astounding (order) complexity of the
objectclass sorting in objectclass.c eventually.

Andrew Bartlett
2009-09-15 10:38:52 -07:00
Andrew Bartlett
668470c992 libcli:nbt make the lmhosts parsing code and dependicies common
This starts the process to have Samba4 use lmhosts.

Andrew Bartlett
2009-09-15 07:42:54 -07:00
Stefan Metzmacher
f07e77e13f s4:heimdal_build: fix one more problem with automatic dependecies
metze
2009-09-15 07:49:26 +02:00
Andrew Bartlett
ffe831452b s4:provision Prevent some invalid combinations of realm and domain
We don't do well (even just trying to create duplicate
servicePrincipalName values) with some of these combinations, so kill
it off early before the administrator thinks it's going to work.

Andrew Bartlett
2009-09-14 22:41:09 -07:00
Matthieu Patou
7268720ad4 s4: Script to build or rebuild extend DN attributes
This script can be used to upgrade a provision that didn't integrate extended dn.
 It can also be used to add missing extended DN that weren't created during provision.
2009-09-14 22:41:09 -07:00
Jeremy Allison
f3cc05b96d Torture test for bug 6529 - Offline files conflict with Vista and Office 2003.
Ensure we don't regress.
Jeremy.
2009-09-14 18:45:16 -07:00
Andrew Tridgell
3dd404abad s4-repl: handle rename in repl_meta_data
On a rename we need to update uSNChanged, and the max uSN for the
partition
2009-09-14 13:13:12 -07:00
Andrew Tridgell
b9ce122ff2 s4-drs: allow replication of renames
a rename may have no attribute changes
2009-09-14 13:12:32 -07:00
Andrew Tridgell
33160b1a5b s4-repl: fixed a memory error handling linked attributes
We could get a double free with multiple linked attributes in a
message
2009-09-14 09:41:52 -07:00
Andrew Tridgell
3cf73dfdbd s4-repl: fall back to repsFrom if repsTo not set
Windows does not seem to be always setting up repsTo using
DsUpdateRefs(). For now we will fall back to using repsFrom if repsTo
is empty. This is almost certainly incorrect, but it does get
notification based replication working with both w2k3 and w2k8.
2009-09-14 09:41:52 -07:00
Jelmer Vernooij
667b825d18 pyldb: Don't segfault when invalid type is specified to Dn.get().
(#6722)
2009-09-14 17:03:30 +02:00
Michael Adam
aa089b80de dsdb: the samba3 ldap schema has no sambaAccountPolicy (any more at least)
Michael
2009-09-14 14:51:21 +02:00
Stefan Metzmacher
d1457b6648 s4:heimdal_build: fix the build with --enable-automatic-dependencies
We need to create the header file before we generate the source file.

metze
2009-09-14 10:01:46 +02:00
Andrew Bartlett
e29cbda452 s4:heimdal_build Fix build breakages caused by asn1compile change
The issue was that we referenced an asn1compile generated file by
name, not by the subsystem is was generated by.

Andrew Bartlett
2009-09-13 22:12:12 -07:00
Andrew Bartlett
fde8c46855 s4:heimdal_build Love pointed me at the --one-code-file option to asn1_compile
This new option avoids a lot of code that was used to intuit what
files would be output by the compiler.

Andrew Bartlett
2009-09-13 20:52:51 -07:00
Andrew Tridgell
55a9ea2b33 s4-repl: added a preiodic notification check to the repl task
The dreplsrv_notify code checks the partition uSN values every N
seconds, and if one has changed then it sends a DsReplicaSync to all
the replication partners listed in the repsTo attribute for the
partition.
2009-09-13 16:40:37 -07:00
Andrew Tridgell
348efd5cbb s4-drs: fixed search expression
At least on the command line the braces are needed. Strange.
2009-09-13 16:40:00 -07:00
Andrew Tridgell
02c9a7e4b6 s4-repl: use the new dsdb partition uSN helper fns 2009-09-13 16:40:00 -07:00
Andrew Tridgell
424d1c580a s4-dsdb: added dsdb_load_partition_usn and dsdb_save_partition_usn
These are used to load/save the per-partition uSN values managed by
the repl_meta_data module
2009-09-13 16:40:00 -07:00
Andrew Tridgell
80c575923f s4-sam: allow a search to specify a partition
You can now attach a partition control to searches to search within a
specific partition. This is used to get at the per-partition
@REPLCHANGED object
2009-09-13 16:40:00 -07:00
Andrew Tridgell
73e380deec s4-repl: keep a @REPLCHANGED object on each partition
This object tracks the highest uSN in each partition. It will be used
to allow us to efficiently detect changes in a partition for sending
DsReplicaSync messages to our replication partners.
2009-09-13 16:39:59 -07:00
Günther Deschner
8b0f54027c s4-schannel: use NL_AUTH_MESSAGE for schannel.
Guenther
2009-09-13 06:50:11 +02:00
Günther Deschner
760666c107 s4-schannel: strip trailing whitespace.
Guenther
2009-09-13 06:50:03 +02:00
Matthieu Patou
96a36bf06d s4:sites & services - Adds Intersite transport containers
This patch brings up those subcontainers and fixes up the "systemFlags" on the
"Subnet" entry.
2009-09-12 14:54:45 +02:00
Matthias Dieter Wallnöfer
77100924d9 s4:group policies - the default group policy objects are all system-critical 2009-09-12 11:13:36 +02:00
Matthias Dieter Wallnöfer
b0b8340d95 s4:group policies - upcase directory names of default group policies
The directory names (MACHINE, USER) are upcased to help locating the default
group policies under the SYSVOL dir (the additional ones have only the first
letter upcased of those directory names).
2009-09-12 11:12:22 +02:00
Stefan Metzmacher
db26c00c55 s4:repl_meta_data: increment the attribute version with each change
metze
2009-09-12 10:39:52 +02:00
Andrew Tridgell
0be268bf55 s4-scripts: allow setup_dns.sh to take a PRIVATEDIR 2009-09-12 16:08:07 +10:00
Andrew Tridgell
5c0cf012a7 s4-samdb: make it possible to ask for the sequence number of a partition
The partition module normally makes the sequence number extended op
operate across all partitions. It will be useful in the repl task to
be able to ask for the sequence number of one partition
2009-09-12 15:24:31 +10:00
Andrew Tridgell
1820f4bdaf s4-drs: change debug level
It's useful seeing the object count without as much detail
2009-09-12 15:23:30 +10:00
Andrew Tridgell
ca6e15f2f9 s4-repl: fixed memory leaks
These memory leaks were mostly caused by the fact that
refresh_partitions is now called periodically
2009-09-12 15:22:26 +10:00
Andrew Tridgell
a8ab1e2570 s4-drs: also fill in tmp_highest_usn
Without this the client will not update its repsFrom highest_usn values
2009-09-12 13:06:32 +10:00
Andrew Tridgell
493166b009 s4-drs: return objects with uSN > highest_usn
When the client tells us the highest_usn they have is N, then we want
to send them objects with usn>N, not>=N, as otherwise we end up
sending them the same object (the one with the highest uSN) again and
again.
2009-09-12 12:42:40 +10:00
Andrew Tridgell
0819e79c4f s4-drs: spelling fix, and simpler search expression
uSNChanged>=N is good enough, and offers a possibility of a simple
optimisation where the partition module could look for that expression
and check the partitions sequence number, then avoid searching a
partition that doesn't have any records with a larger uSN.
2009-09-12 12:08:34 +10:00