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