summaryrefslogtreecommitdiff
path: root/source4/dsdb/schema
AgeCommit message (Collapse)AuthorFilesLines
2010-04-09s4/dsdb: dsdb_schema_info object implementationKamen Mazdrashki1-0/+383
2010-04-09s4/dsdb: Define dsdb representation for schemaInfo attributeKamen Mazdrashki1-0/+8
2010-03-22s4:dsdb Add a shortcut sequence number for schema reloadsAndrew Bartlett1-0/+2
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 Bartlett1-25/+55
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: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-16s4:dsdb Change dsdb_get_schema() callers to use new talloc argumentAndrew Bartlett2-2/+2
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 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-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-02-26s4:dsdb/schema: fix validation of DNsStefan Metzmacher1-1/+0
ldb_dn_extended_filter() removes all but the listed components, I didn't noticed that when writting the code. Doing a ldb_dn_remove_extended_components(dn2) is wrong. This was hidden by some bugs in the ldb_dn code. metze
2010-02-16s4-dsdb: change samdb_replace() to dsdb_replace() and allow for dsdb_flagsAndrew Tridgell2-4/+5
This allows for controls to be added easily where they are needed.
2010-02-13s4-dsdb: use TYPESAFE_QSORT() in dsdb codeAndrew Tridgell2-23/+12
2010-01-13s4:dsdb/schema: add dsdb_syntax_OID_validate_ldb()Stefan Metzmacher1-13/+50
This is a very heavy weight way of checking this syntax, but it's very complex and using the existing function should be ok for now. We can optimize it later. metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_DN_STRING_validate_ldb()Stefan Metzmacher1-1/+48
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_DN_BINARY_validate_ldb()Stefan Metzmacher1-2/+49
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_DN_validate_ldb()Stefan Metzmacher1-1/+139
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_PRESENTATION_ADDRESS_validate_ldb()Stefan Metzmacher1-1/+12
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_UNICODE_validate_ldb()Stefan Metzmacher1-1/+69
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_DATA_BLOB_validate_ldb()Stefan Metzmacher1-8/+61
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_NTTIME_validate_ldb()Stefan Metzmacher1-1/+37
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_NTTIME_UTC_validate_ldb()Stefan Metzmacher1-1/+49
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_INT64_validate_ldb()Stefan Metzmacher1-1/+47
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_INT32_validate_ldb()Stefan Metzmacher1-1/+48
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_BOOL_validate_ldb()Stefan Metzmacher1-1/+30
metze
2010-01-13s4:dsdb/schema: add inftrastructure for dsdb_validate_ldb()Stefan Metzmacher2-0/+61
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_DN_STRING_* wrappersStefan Metzmacher1-2/+30
metze
2010-01-08s4-schema: added some debug for bad attributesAndrew Tridgell1-0/+8
2010-01-08s4-schema: added generic attributeID conversion functionsAndrew Tridgell1-63/+117
When we get one we haven't seen before, we can work out the right type automatically in most cases. Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-01-08s4-schema: added dsdb_attribute_by_lDAPDisplayName_ldb_valAndrew Tridgell1-0/+12
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-01-08s4-schema: make ldb_val to string comparison safer with nul terminationAndrew Tridgell1-1/+8
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-01-08s4/dsdb_schema: Load msDS-IntId value separately when loading from LDBKamen Mazdrashki1-0/+3
This way we have consistent behavior when loading from DRSUAPI and from LDB.
2010-01-08Revert "s4-schema: Set ATTID in schema cache from "msDS-IntId""Kamen Mazdrashki1-13/+8
This reverts commit 4e8ad284f5813413fdec8426f11e24570d22549b.
2010-01-08s4/dsdb_schema: use msDS-IntId value for attribute look-upKamen Mazdrashki1-0/+9
2010-01-08s4/dsdb_schema: fetch msDS-IntId value during SCHEMA replicationKamen Mazdrashki2-0/+5
2010-01-08s4/dsdb_schema: GET_UINT32_DS() macro to use supplied default value instead of 0Kamen Mazdrashki1-14/+14
2010-01-02s4-dsdb: use ldb_val_to_time() instead of ldb_string_to_time()Andrew Tridgell1-1/+5
2010-01-02s4-schema: don't fill in the extended DN with a zero GUIDAndrew Tridgell1-11/+12
sometimes windows sends us a zero GUID in a DRS DN. Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-01-02sd-schema: order DRS classes on the wire in reverse orderAndrew Tridgell1-1/+4
windows sends objectclasses in DRS in the opposite order to what LDAP uses
2010-01-02s4-dsdb: allow the component name to be specified in dsdb_get_extended_dn_guid()Andrew Tridgell1-2/+2
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2009-12-21s4-schema: fixed the sorting of schema attributesAndrew Tridgell1-3/+9
another case of unsigned int subtracting breaking sorts. This one surfaced now as attributeID_id now can be larger than 2^31
2009-12-21s4-drs: Implement constraints on ATTID values in prefixMapKamen Mazdrashki2-0/+35
Ref: MS-ADTS, 3.1.1.2.6 ATTRTYP Signed-off-by: Andrew Tridgell <tridge@samba.org>
2009-12-21s4-drs: Save prefix map using LDB_CONTROL_AS_SYSTEM controlKamen Mazdrashki1-1/+1
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2009-12-21s4-schema: Set ATTID in schema cache from "msDS-IntId"Kamen Mazdrashki1-8/+13
According to http://msdn.microsoft.com/en-us/library/cc223224%28PROT.13%29.aspx some Attributes OIDs may not use prefixMap. Setting ATTID in Schema Cache here should work, although this code snippet should be moved in separate function. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2009-12-21s4-schema: a unsigned comparison bug in the schema codeAndrew Tridgell1-1/+2
2009-12-15Fixed a problem with duplicate values of allowedAttributesEffective.Nadezhda Ivanova1-1/+10
2009-12-10s4-schema: use GUID_to_ndr_blob()Andrew Tridgell2-17/+15
2009-12-10s4-schema: use binsearch.hAndrew Tridgell1-48/+21
2009-12-10s4-dsdb: simplify schema code using new GUID functionsAndrew Tridgell2-34/+22
2009-12-01s4:schema - Make some more (result) variables const and fix up warnings with ↵Matthias Dieter Wallnöfer2-53/+72
"discard_const_p"
2009-11-23s4/schema(tort): Refactor DSDB-SYNTAX test for better performanceKamen Mazdrashki1-35/+86
Test was implemented as a test fixture so that setup/teardown occurs only once. This should impact test performace as long as provision_get_schema() is a slow function (especially when debugging)