summaryrefslogtreecommitdiff
path: root/source4/dsdb
AgeCommit message (Collapse)AuthorFilesLines
2010-03-22s4:dsdb Add a shortcut sequence number for schema reloadsAndrew Bartlett2-14/+81
This uses the ldb sequence number, in a hope to detect an unchanged schema quicker. Andrew Bartlett
2010-03-22s4:dsdb Rework schema loading and add schema reloadingAndrew Bartlett2-130/+181
This commit reworks Samba4's schema loading code to detect when it needs to reload the schema. This is done by watching the @REPLCHANGED special DN. The reload happens by means of a callback, which is only set when the schema is loaded from the ldb - not when loaded from an LDIF file or DRS. We also rework the global schema handling - instead of storing the pointer to the global schema in each ldb, we store a flag indicating that the global schema should be returned at run time. This makes it much easier to switch to a new global schema. Andrew Bartlett
2010-03-22s4:dsdb Move dsdb_save_partition_usn() to be a module helper functionAndrew Bartlett3-92/+178
This function should not traverse the module stack again, but instead run from this point. Also add a matching dsdb_module_load_partition_usn() and change repl_meta_data to match. Andrew Bartlett
2010-03-22s4:schema Expand the schema structureAndrew Bartlett2-0/+11
We now store the location of the schema in the schema, and provide hooks for a future schema reloading mechanism. Andrew Bartlett
2010-03-22s4:dsdb Add 'const' to some struct dsdb_schema variablesAndrew Bartlett2-9/+9
We don't currently require this, but we may move this way in future.
2010-03-22s4:dsdb Don't load the schema unconditionallyAndrew Bartlett2-3/+19
Schema loads now come at a price, so avoid doing them if we don't have to (such as when doing an @REPLCHANGED or other special DN based search). Andrew Bartlett
2010-03-18s4:dsdb Move rdn_name down the stackAndrew Bartlett1-1/+1
This is done so that it can be (in future) removed when the OpenLDAP backend is in use and the rdn_val module is used, while keeping as similar semantics as possible between the module stacks. Andrew Bartlett
2010-03-16s4:resolve_oids LDB module - not really a change but a nicer method to call ↵Matthias Dieter Wallnöfer1-1/+2
"talloc_reference"
2010-03-16s4:dsdb - fix up warningsMatthias Dieter Wallnöfer2-4/+8
2010-03-16s4:dsdb Show more detail in failure to compute the aggregate DN.Andrew Bartlett1-1/+1
Andrew Bartlett
2010-03-16s4:dsdb Change dsdb_get_schema() callers to use new talloc argumentAndrew Bartlett16-42/+115
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-16s4:dsdb Fix warnings in DEBUG() by casting to unsigned long intAndrew Bartlett1-4/+4
2010-03-16s4:dsdb/acl Reduce calls to dsdb_get_schema() and add memory contextAndrew Bartlett1-24/+46
dsdb_get_schema() isn't a very cheap call, due to the use of LDB opaque pointers. We need to call it less, and instead pass it as a parameter where possible. This also changes to the new API with a talloc context. Andrew Bartlett
2010-03-16s4:dsdb Add a memory context for dsdb_get_schema()Andrew Bartlett1-3/+9
When specified, we talloc_reference onto this context to ensure that pointers found in it are valid for the life of the objects they are placed into. (Such as the string form of LDAP attributes). Andrew Bartlett
2010-03-16s4:dsdb Don't error out if we can't get the Aggregate schema DN yetAndrew Bartlett1-9/+16
It's easier to just set it up when we can, then to deal with the ordering issues in ldb startup. As long as we have it ready if a real client ever asks for it, then we should be happy. Andrew Bartlett
2010-03-16s4:dsdb/kcc/*.c - fix up wrong typed countersMatthias Dieter Wallnöfer5-20/+22
2010-03-16s4-drs: DsGetReplInfo(), infoType = DS_REPL_INFO_METADATA_2_FOR_OBJErick Nogueira do Nascimento1-80/+284
Implementation of the DS_REPL_INFO_METADATA_2_FOR_OBJ infoType for DsGetReplInfo() Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-03-12s4:util.c - "dsdb_check_optional_feature" - counter should be "unsigned"Matthias Dieter Wallnöfer1-1/+1
2010-03-12s4:dsdb/repl: make use of use tevent_req based dcerpc_binding_handle stubsStefan Metzmacher3-38/+62
metze
2010-03-12use unsigned instead of uint32_t for LDB counters.Crístian Deives1-4/+6
the attribute num_values of the struct ldb_message_element is defined as an unsigned int, so the counters of that variable should be of the same type.
2010-03-12nTDSConnection creationCrístian Deives2-0/+817
create nTDSConnection objects to "imply" the minimum-cost spanning tree edges for which no nTDSConnection objects yet exist. it also adds a test function in kcc_connection so the kcctpl functions can be called. this patch is in accord with the sections [MS-ADTS] 7.2.2.3.4.2 and 7.2.2.3.4.5.
2010-03-12spanning tree computationCrístian Deives1-0/+1692
calculate the spanning tree for the intersite connection. this patch is in accord with the section [MS-ADTS] 7.2.2.3.4.4.
2010-03-12new function kcctpl_color_verticesCrístian Deives1-213/+576
besides the new function implemented, some minor bugs were also fixed. this patch is in accord with the section [MS-ADTS] 7.2.2.3.4.3.
2010-03-12s4-drs: check if an optional feature is enabledEduardo Lima1-0/+59
2010-03-12Split the dsdb_access_check_on_dn.Nadezhda Ivanova2-41/+93
Split the dsdb_access_check_on_dn so it can be reused for checks from both within the module stack and outside it.
2010-03-12Fixed ACL module to use dsdb_module_* API.Nadezhda Ivanova1-9/+9
2010-03-12Moved access_check_on_dn from acl module as an utility.Nadezhda Ivanova3-157/+202
Made this an utility function so it can be used for access checking outside of the acl ldb module, such as checking validated writes and control access rights in other protocols (e. g drs)
2010-03-10s4/drs: DsGetNCChanges - Propagating IDL changes to source codeKamen Mazdrashki1-1/+1
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-03-09A helper function to get the Infrastructure DN.Nadezhda Ivanova1-0/+12
2010-03-09Added a check for permissions to modify the RDN attribute on rename.Nadezhda Ivanova1-0/+12
Necessary because rdn module will be moved lower than acl in the stack.
2010-03-09s4:dsdb/dns: change callers of samba_runcmd()Stefan Metzmacher1-36/+68
metze
2010-03-07s4:extended_dn_out LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-8/+11
appropriate
2010-03-07s4:repl_meta_data LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-20/+24
appropriate I used "unsigned int" counters where we count LDB objects (LDB specification prescribes to use "unsigned" index variables). But on DSDB replication object counters I used "uint32_t" typed variables as it is suggested. If a counter variable counts both types of objects I used "unsigned int" since size(unsigned int) >= size(uint32_t), but on most platforms equal.
2010-03-07s4:local_password LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-4/+4
appropriate
2010-03-07s4:ranged_results LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-2/+2
appropriate
2010-03-07s4:objectguid LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-1/+1
appropriate
2010-03-07s4:objectclass LDB module - change counter variabls to "unsigned" where ↵Matthias Dieter Wallnöfer1-2/+2
appropriate
2010-03-07s4:anr LDB module - change counter variable to "unsigned"Matthias Dieter Wallnöfer1-1/+1
2010-03-07s4:acl LDB module - change counter variable to "unsigned"Matthias Dieter Wallnöfer1-1/+1
2010-03-07s4:linked_attributes LDB module - change counter variables to "unsigned" ↵Matthias Dieter Wallnöfer1-3/+5
where appropriate
2010-03-07s4:kludge_acl LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-5/+10
appropriate
2010-03-07s4:proxy LDB module - Change counter variables to "unsigned" where appropriateMatthias Dieter Wallnöfer1-5/+6
Use "size_t" when counting string index positions.
2010-03-07s4:schema_data LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-3/+6
appropriate
2010-03-07s4:resolve_oids LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer1-5/+5
appropriate
2010-03-07s4:rootdse LDB module - change counter variables to "unsigned" where appropriateMatthias Dieter Wallnöfer1-9/+10
2010-03-07s4:partition LDB module - change counter variables to "unsigned" where ↵Matthias Dieter Wallnöfer2-17/+26
appropriate
2010-03-07s4:schema - Change also here counters to "unsigned" where neededMatthias Dieter Wallnöfer7-26/+27
Counters which are used in the way "for (i = 0; array[i] != NULL; i++)" I modified to "unsigned" since for sure we don't want to have negative array indexes there.
2010-03-07s4:schema_syntax.c - Change also here counters to "unsigned" where neededMatthias Dieter Wallnöfer1-44/+44
Counters which are used in the way "for (i = 0; array[i] != NULL; i++)" I modified to "unsigned" since for sure we don't want to have negative array indexes there. There were many counter variables typed "uint32_t". This isn't fully correct since those count LDB objects. The amount is saved in a "num_*" variable which is "unsigned" without a bitlength specification. Therefore change also these counters to be plain "unsigned".
2010-03-05s4:dsdb/util - Change also here counters to "unsigned"Matthias Dieter Wallnöfer1-13/+16
No need to have "signed" counters at those places.
2010-03-05s4:repl - change also here the counter variables to "unsigned"Matthias Dieter Wallnöfer3-7/+8
I changed also some "uint32_t" to "unsigned" since the LDB interface doesn't specify the bitlength of the unsigned type.