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

282 Commits

Author SHA1 Message Date
Andrew Tridgell
e9a589feac s4-server: kill main daemon if a task fails to initialise
When one of our core tasks fails to initialise it can now ask for the
server as a whole to die, rather than limping along in a degraded
state.
2009-09-18 18:05:55 -07:00
Andrew Tridgell
c405d721c1 s4-repl: raise a debug level 2009-09-16 03:57:56 -07:00
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
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
089dc64cbb s4-repl: add a debug to make it easier to monitor replication 2009-09-15 18:45:41 -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
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
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
bd7cf6988e s4-repl: refresh the partitions on each cycle
The KCC might have changed repsFrom, which is stored in the partitions
structure
2009-09-11 22:47:11 +10:00
Andrew Tridgell
741fe9d6a1 s4-repl: don't add the RDN if it is already there 2009-09-11 18:02:04 +10:00
Andrew Tridgell
88e2fbaf95 s4-drs: add the magic DRS SPNs on AddEntry
When a DsAddEntry is used to create a nTDSDSA object we need to also
create the SPNs for the NTDS GUID in the servers machine account.
2009-09-11 15:15:39 +10:00
Andrew Tridgell
25b68701c1 s4/repl: give a useful error message if we can't decode an object 2009-09-10 17:42:36 +10:00
Andrew Tridgell
8640293fab s4/repl: implement DsReplicaSync
This patch implements DsReplicaSync by passing the call via irpc to
the repl server task. The repl server then triggers an immediate
replication of the specified partition.

This means we no longer need to set a small value for
dreplsrv:periodic_interval to force frequent DRS replication. We can
now wait for the DC to send us a ReplicaSync msg for any partition
that changes, and we immediately sync that partition.
2009-09-09 18:04:07 +10:00
Andrew Tridgell
939b936d1a s4/repl: added refresh of repsTo
I've found that w2k3 deletes the repsTo records we carefully created
in the vampire join if we don't refresh them frequently. After about
30mins all 3 repsTo records are gone.

This patch adds automatic refresh of the repsTo by calling
DSReplicaUpdateRefs every time we do a sync cycle with the server
2009-09-09 17:04:16 +10:00
Stefan Metzmacher
5ef601e5eb s4:drsuapi: add an incomplete DsAddEntry implementation
metze
2009-09-08 22:05:56 +02:00
Andrew Tridgell
e6257d94de add the the linked attributes elements to the repl structure
This exposes the linked_attributes to the repl_meta_data module
2009-09-03 18:36:08 +10:00
Andrew Tridgell
95fd3c8ee0 tell the server that we support linked attribute replication 2009-09-03 18:36:08 +10:00
Andrew Tridgell
a19ad21033 Wrap DRS changes in a transaction
We should always apply a whole set of DRS changes or none of them. See
[MS-DRSR] 3.3.2
2009-09-02 18:19:55 +10:00
Matthias Dieter Wallnöfer
df270cd796 s4: Correct renamed constants 2009-07-31 18:15:39 +02:00
Andrew Tridgell
0aec87454b decrypt all objects in a DRS record, not just the first one
We found this as an object came across from w2k3 with zero values,
which caused a segv when we tried to decrypt the first value
2009-07-02 15:33:01 +10:00
Andrew Bartlett
872cb0257c Move DRSUAPI per-attribute decryption into a common file
This file (contining metze's decryption routines) is now also be used by
Samba3's DRSUAPI implementation

Andrew Bartlett
2009-04-14 14:19:39 +10:00
Stefan Metzmacher
1441e87e24 s4:service_task: s/private/private_data
metze
2009-02-02 13:08:59 +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
Andrew Bartlett
6488afaafe Now store the GUID and SID from a DN over DRSUAPI into ldb.
Until the extended DN work was compleated, there was no way to store
the additional metadata.

Andrew Bartlett
2008-12-20 14:44:39 +11:00
Günther Deschner
dd49f7483b s4-drsuapi: merge drsuapi_DsGetNCChanges from s3 drsuapi idl.
Guenther
2008-10-18 23:06:39 +02:00
Jelmer Vernooij
9565999755 Fix include paths to new location of libutil. 2008-10-11 21:31:42 +02:00
Jelmer Vernooij
6925202bde Move source4/lib/crypto to lib/crypto. 2008-09-24 15:30:23 +02:00
Simo Sorce
508527890a Merge ldb_search() and ldb_search_exp_fmt() into a simgle function.
The previous ldb_search() interface made it way too easy to leak results,
and being able to use a printf-like expression turns to be really useful.
2008-09-23 18:17:46 -04:00
Stefan Metzmacher
75f594b285 drsuapi: fix samba4 callers after drsuapi.idl changes
metze
(This used to be commit 4b054cee51c39c5430bcadd5c06a94dc3e6b0d8f)
2008-08-20 15:22:05 +02:00
Stefan Metzmacher
8275d511bc drsuapi: fix callers after idl change
metze
(This used to be commit 7dee6fb62d5adbd2eaaaf4d8ba9e87a72ef9f94b)
2008-08-07 19:15:58 +02:00
Michael Adam
f9e6197924 dsdb: teach dreplsrv_out_drsuapi_bind_recv() knowledge of DsBindInfo48.
To make it work against w2k8.

Michael
(This used to be commit a8aea9274170a2b472c45c97a4904bd299d2a92e)
2008-07-23 15:36:13 +02:00
Michael Adam
7fba6c649b Change occurrences of the u1 member of DsBindInfo* to pid after idl change.
Michael
(This used to be commit b91bbc5fe4a47e5823be6be5f2f203f1f14105de)
2008-07-22 15:35:23 +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
f3fae86549 drsuapi: check ctr6->drs_error
metze
(This used to be commit 511847f5f5015bcdef69e80b91cb08ffb1690e59)
2008-07-16 14:42:11 +02:00
Stefan Metzmacher
a24fb2b537 drsuapi: get ctr6 out of xpress compressed level
metze
(This used to be commit 4e0708148a121bd41a12abf6122d5d6f3f09667a)
2008-07-16 14:42:06 +02:00
Stefan Metzmacher
c88ec856bd drsuapi.idl: remove some unknows from DsGetNCChanges() (update samba4 callers)
metze
(This used to be commit d41b3dd6ffc4fd894bc05798dbc2ff4b53933a06)
2008-06-30 17:40:01 +02:00
Jelmer Vernooij
21fc767378 Specify event_context to ldb_wrap_connect explicitly.
(This used to be commit b4e1ae07a284c044704322446c94351c2decff91)
2008-04-17 12:23:44 +02:00
Andrew Bartlett
0f8eeb81ec Remove useless layer of indirection, where every service called
task_service_init() manually.  Now this is called from service.c for
all services.

Andrew Bartlett
(This used to be commit 9c9a4731cafd0dcf6c8523a7b06759cd4f14e4db)
2008-02-04 21:58:29 +11:00
Andrew Bartlett
23d681caf9 Rework service init functions to pass down service name. This is
needed to change prefork behaviour based on what service is being
started.

Andrew Bartlett and David Disseldorp
(This used to be commit 0d830580e3539c96da3aa6c72fafe6eacd7a74a0)
2008-02-04 17:48:51 +11:00
Andrew Bartlett
dc08079d81 Get more information from ldb when reporting a failed replication.
Andrew Bartlett
(This used to be commit 948ee9b7acd90b994bb9d9f7c1813a8eca430e4f)
2008-01-23 15:44:02 +11:00
Jelmer Vernooij
df408d056e r26672: Janitorial: Remove uses of global_loadparm.
(This used to be commit 18cd08623eaad7d2cd63b82ea5275d4dfd21cf00)
2008-01-05 13:06:03 -06:00
Jelmer Vernooij
9d136bc0a3 r26640: Janitorial: Remove some more uses of global_loadparm.
(This used to be commit c863f4ebde8efa1a695b4469142d6719e30bc419)
2008-01-01 19:57:01 -06:00
Jelmer Vernooij
7d5f0e0893 r26639: librpc: Pass iconv convenience on from RPC connection to NDR library, so it can be overridden by OpenChange.
(This used to be commit 2f29f80e07adef1f020173f2cd6d947d0ef505ce)
2008-01-01 16:12:15 -06:00
Jelmer Vernooij
86dc05e99f r26638: libndr: Require explicitly specifying iconv_convenience for ndr_struct_push_blob().
(This used to be commit 61ad78ac98937ef7a9aa32075a91a1c95b7606b3)
2008-01-01 16:12:11 -06:00
Jelmer Vernooij
0500b87092 r26540: Revert my previous commit after concerns raised by Andrew.
(This used to be commit 6ac86f8be7d9a8c5ab396a93e6d1e6819e11f173)
2007-12-21 05:52:06 +01:00
Jelmer Vernooij
3e75f222bc r26539: Remove unnecessary statics.
(This used to be commit e53e79eebef3ece6978f0a2b4a1ee0a0814bb5d2)
2007-12-21 05:52:05 +01:00
Jelmer Vernooij
4c4323009f r26327: Explicit loadparm_context for RPC client functions.
(This used to be commit eeb2251d22b3d6e0379444a73af69d1014692b07)
2007-12-21 05:48:41 +01:00
Jelmer Vernooij
da0f222f43 r26271: Remove some more uses of global_loadparm.
(This used to be commit e9875fcd56de0748ed78d7e3c9cdb4919cd96d3c)
2007-12-21 05:47:53 +01:00
Jelmer Vernooij
43696d2752 r26252: Specify loadparm_context explicitly when creating sessions.
(This used to be commit 7280c1e9415daabb2712db1372e23f9846272ede)
2007-12-21 05:47:29 +01:00