summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
AgeCommit message (Collapse)AuthorFilesLines
2009-12-16s4-dsdb: also mark the relax control non-critical when doneAndrew Tridgell1-5/+3
2009-12-09s4-dsdb: use dsdb_module_search_dn in repl_meta_dataAndrew Tridgell1-1/+4
This allows us to search below the current module. That will be important when we start using the results of this search to get the linked attributes meta data right
2009-12-03s4-drs: fixed updating of uSNChanged in replmd_modifyAndrew Tridgell1-3/+2
Updating of uSNChanged broke in a recent change
2009-11-30s4-drs: Using dsdb_msg_add_guid() utility functionFernando J V da Silva1-11/+1
Uses the dsdb_msg_add_guid() to add any kind of GUID attribute to a ldb_message in several places of samba4 code. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2009-11-20s4-dsdb: make sure mod_usn list is zeroed on each transactionAndrew Tridgell1-7/+10
2009-11-12s4:repl_meta_data Parse linked attributes with schema syntaxesAndrew Bartlett1-39/+44
The bug here was that by assuming all linked attributes were 'normal DNs', we would miss the binary portion of DN+Binary. This patch then has us reparse the string to determine it's GUID, for the GUID lookup, but maintains the binary porition into the on-disk format. Andrew Bartlett
2009-10-21s4:dsdb Remove potentially confusing 'partition' control from resultAndrew Bartlett1-3/+15
This ensures that the partition control, needed here for repl_meta_data's internal work, is not pushed up to other callers. Andrew Bartlett
2009-10-21s4:dsdb Remove default instanceType from repl_meta_dataAndrew Bartlett1-9/+0
This is no longer required, as the instancetype module is now above repl_meta_data. Andrew Bartlett
2009-10-21s4:dsdb Use 'partition modified' information to update @REPLCHANGEDAndrew Bartlett1-356/+189
This major rework of repl_meta_data changes it from using a static list of partitions to a dynamic list created from the controls placed on returned ldb results. To process these in one place, the similar but distinct callbacks are combined into a single replmd_op_callback(), which handles both the 'normal operation' and 'inbound replication' case. This allows new partitions to be created, and replication events for these new partitions to be scheduled immediately. Also in this commit: We no longer specify the target partition for new or modified objects - instead we allow the partitions module to use the DN as normal. THis avoids the issue where we would create two partition head records. Andrew Bartlett
2009-10-21s4:repl Pass schema as argument to replmd_update_rpmd()Andrew Bartlett1-6/+5
2009-10-21s4:dsdb Set 'notification' after the success of a change.Andrew Bartlett1-18/+14
This allows the partition to be created before we try and set a notification on it. (perhaps extra work required here for partition heads). Andrew Bartlett
2009-10-03s4:dsdb Don't allow creation of systemOnly objectclassesMatthias Dieter Wallnöfer1-4/+4
(except as part of the provision, which specifies the 'relax' control) Andrew Bartlett
2009-10-02s4:repl_meta_data - variousMatthias Dieter Wallnöfer1-9/+38
- Add more "talloc_free"s and right error values where needed - Add a pre-lookup for entries before searching for metadata attribute (also suggested by TODO list) - Now the most part of "ldap.py" works again
2009-10-02s4:dsdb Pass down the exact error code on failure in repl_meta_dataAndrew Bartlett1-5/+5
2009-10-02s4-ldb: Use relax control to check in replace metadata module if we accept ↵Matthieu Patou1-5/+38
request that specify objectGUID attribute.
2009-09-28s4-dsdb: update replPropertyMetaData on linked attribute source attributesAndrew Tridgell1-0/+23
2009-09-28s4-repl: free the la list on prepare commit failureAndrew Tridgell1-0/+3
2009-09-28s4-repl: use GUID to resolve target in linked attributesAndrew Tridgell1-8/+7
When we vampire from w2k8-r2, the DC sends us a linked attribute for our machine account which has a target DN with a GUID of the OU=Domain Controllers objects, but has a DN of CN=Computers. We need to use the GUID to resolve the real DN.
2009-09-28s4-drs: fixed sorting of replPropertyMetaDataAndrew Tridgell1-31/+44
This also ensures we add the SHOW_DELETED control on searches for old replPropertyMetaData attributes
2009-09-24s4-drs: add defines for replication flags on attributesAndrew Tridgell1-5/+2
2009-09-24s4-ldb: sort replPropertyMetaData by attidAndrew Tridgell1-1/+16
We need to sort on both module add and modify
2009-09-24s4-ldb: add instanceType in repl_meta_data moduleAndrew Tridgell1-0/+8
We need to add instanceType on new records if not added by caller. This is needed in repl_meta_data to ensure we fill in the meta data for replication
2009-09-23s4-drs: ignore zero value elements in DRS add operationsAndrew Tridgell1-0/+13
w2k8 sometimes sends us a new object via DRS with an attribute with no values
2009-09-22s4-ldb: added a bunch more debug for DC joinAndrew Tridgell1-0/+3
These additional debug messages were added to help us track down w2k8->s4 domain join
2009-09-19Move replmd_drsuapi_DsReplicaCursor2_compare to a common place.Anatoliy Atanasov1-7/+1
2009-09-18s4-drs: cope with dupliate linked attributesAndrew Tridgell1-1/+41
With a w2k8-R2 DC, we sometimes get linked attribute updates via DRS which are duplicates of entries that we already have. We need to cope with this by using a remove/add pair in the ldb_modify() to avoid a "entry already exists" error
2009-09-15s4-repl: make sure we marshal the replPropertyMetaData after the last changeAndrew Tridgell1-10/+10
we were setting local_usn after the marshall, so it wasn't going into the object
2009-09-14s4-repl: handle rename in repl_meta_dataAndrew Tridgell1-0/+97
On a rename we need to update uSNChanged, and the max uSN for the partition
2009-09-14s4-repl: fixed a memory error handling linked attributesAndrew Tridgell1-10/+10
We could get a double free with multiple linked attributes in a message
2009-09-13s4-repl: use the new dsdb partition uSN helper fnsAndrew Tridgell1-78/+16
2009-09-13s4-repl: keep a @REPLCHANGED object on each partitionAndrew Tridgell1-24/+310
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-12s4:repl_meta_data: increment the attribute version with each changeStefan Metzmacher1-1/+2
metze
2009-09-12s4-repl: don't be too eager to allocate new sequence numbersAndrew Tridgell1-7/+9
we only need to allocate a new sequence number when replPropertyMetaData is changing or being created on an object
2009-09-12s4-samdb: internal s4 ldb modules should be GPL not LGPLAndrew Tridgell1-14/+10
I think these modules ended up LGPL because someone based the module on an existing LGPL module in the core ldb, and it spread from there. Certainly there is no reason for the ldb modules that are not distributed as part of ldb to be LGPL.
2009-09-12s4-repl: we should only update uSNChanged when replication data changesAndrew Tridgell1-29/+39
When changing non-replicated attributes we should not update the uSNChanged attribute on the record, otherwise the DRS server will think this record needs replicating.
2009-09-12repl_meta_data: Fix include path when building with standalone ldb.Jelmer Vernooij1-1/+1
2009-09-11s4-vampire: cope with no invocationID when vampiring the schemaAndrew Tridgell1-3/+4
2009-09-11s4-repl: don't update replPropertyMetaData for non-replicated attributesAndrew Tridgell1-0/+7
thanks to Metze for spotting this
2009-09-11s4-repl: on every ldb modify we need to update replPropertyMetaDataAndrew Tridgell1-8/+171
Every time we change a ldb object with the repl_meta_data module loaded we need to update the replPropertyMetaData attribute to fix the timestamps and USNs of the attributes being changed.
2009-09-08s4:repl_meta_data: remove unused codeStefan Metzmacher1-11/+0
metze
2009-09-03hook on prepare_commit instead of transaction_endAndrew Tridgell1-4/+7
This allows for safe transaction end aborts
2009-09-03change repl_meta_data to process linked_attributes structures in end_transactionAndrew Tridgell1-4/+276
When running at functional level 2 or above, the repl_meta_data module can receive linked attribute structures from the repl replication task. These attributes can come through DRS before the associated objects have been created. To cope with this, we need to process linked attributes in the end_transaction hook.
2009-09-02add the partition_control control to replication requestsAndrew Tridgell1-0/+22
We know the partition DN from the DRS objects, we need to pass this down the modules below us to ensure they operate on the right partition
2009-09-02Display ldif formatted versions of all DRS changes at log level 4Andrew Tridgell1-0/+18
This helps a lot with debugging the DRS replication code
2009-08-19added basic support for rename in DRS replicationAndrew Tridgell1-5/+9
Added simple DRS rename support in replication. This should be done async, and I'm not sure if we should also do any repl data updates to indicate the rename. I'm still learning how this stuff works, but at least this allows a rename on a DC to propogate correctly
2009-07-13libds: share UF_ flags between samba3 and 4.Günther Deschner1-1/+1
Guenther
2009-01-31s4:repl_meta_data: fix segfault after ldb changesStefan Metzmacher1-1/+1
metze
2009-01-30Fix all other modules to use ldb_module.h instead of ldb_private.hSimo Sorce1-63/+92
The only 2 modules escaping the rule so far are rootdse and partitions
2008-10-13DSDB cosmetic patches: Some enhancementsMatthias Dieter Wallnöfer1-5/+5
Also, use the constants more in the "ldif_handlers" module.
2008-10-13Cosmetic corrections for the DSDB moduleMatthias Dieter Wallnöfer1-7/+7
This commit applies some cosmetic corrections for the DSDB (Directory Server Database).