summaryrefslogtreecommitdiff
path: root/source4/dsdb/schema/schema_syntax.c
AgeCommit message (Collapse)AuthorFilesLines
2010-10-22s4-dsdb_syntax: Setup "String(Case Sensitive)" syntaxKamen Mazdrashki1-3/+10
Currently it is mapped to Octet String LDAP syntax for comparison purposes. According to LDAP rfc we should be using same comparison as Directory String (LDB_SYNTAX_DIRECTORY_STRING), but case sensitive. But according to ms docs binary compare should do the job: http://msdn.microsoft.com/en-us/library/cc223200(v=PROT.10).aspx Autobuild-User: Kamen Mazdrashki <kamenim@samba.org> Autobuild-Date: Fri Oct 22 22:19:50 UTC 2010 on sn-devel-104
2010-10-21s4-dsdb/schema_syntax: Separate validation for numericoid OID valuesKamen Mazdrashki1-3/+47
This implementation doesn't use prefixMap/Schema to validate numericoid OIDs. We may not have this OID yet, so I see no point checking schema for if we have it. Side effect of using prefixMap/Schema for validating numericoids is that we mistakenly add the OID to the prefixMap. This led to a corrupted prefixMap in LDB. Autobuild-User: Kamen Mazdrashki <kamenim@samba.org> Autobuild-Date: Thu Oct 21 23:32:26 UTC 2010 on sn-devel-104
2010-08-19s4-drs: ATTIDs for deleted attributes should be based on msDs-IntId value if ↵Kamen Mazdrashki1-2/+2
it exists
2010-08-19s4-dsdb: No need for dsdb_syntax_one_DN_drsuapi_to_ldb() to be publicKamen Mazdrashki1-3/+3
It is intended to be used in schema_syntax.c module
2010-08-19s4-dsdb-syntax: ATTID should be msDs-IntId value for the attributeSchema objectKamen Mazdrashki1-14/+52
in case object replicated is not in Schema NC and attributeSchema object has msDs-IntId attribute value set
2010-08-19s4: fix few comment typosKamen Mazdrashki1-1/+1
2010-08-19s4-schema_syntax.c: Fix white spaces and alignmentKamen Mazdrashki1-55/+56
2010-08-19s4-dsdb: Use dsdb_syntax_ctx in *_drsuapi_to_ldb functionsKamen Mazdrashki1-53/+38
2010-08-19s4-dsdb: Use dsdb_syntax_ctx in *_ldb_to_drsuapi functionsKamen Mazdrashki1-51/+36
2010-08-19s4-dsdb: Use dsdb_syntax_ctx in *_validate_ldb functionsKamen Mazdrashki1-59/+35
2010-08-19s4-dsdb: Add context structure for dsdb_syntax conversion functionsKamen Mazdrashki1-0/+13
This structure is intended to hold context-dependent data. Syntax-conversion and object-conversion functions need that data to convert objects and attributes from drs-to-ldb and ldb-to-drs correctly. For instance: ATTID value depends on whether we are converting object from partition different that Schema partition.
2010-06-15s4:dsdb Allow the setting an override on the schemaAndrew Bartlett1-6/+20
The change here is to try and convert a per the previous rules, but if we don't know a particular OID as a attributeID, then store it as an OID (for example). This allows known values to be converted as before, but still copes with unknown values. Andrew Bartlett Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
2010-06-07s4:remove the "validate_update" LDB module - the task is now handled by the ↵Matthias Dieter Wallnöfer1-13/+0
far more complete "objectclass_attrs" LDB module
2010-05-18s3: Remove use of iconv_convenience.Jelmer Vernooij1-2/+1
2010-05-18Finish removal of iconv_convenience in public API's.Jelmer Vernooij1-16/+12
2010-04-22s4-dsdb: added dsdb_get_extended_dn_sid()Andrew Tridgell1-12/+5
This will be used by the RODC code Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
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-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 Metzmacher1-0/+57
metze
2010-01-13s4:dsdb/schema: add dsdb_syntax_DN_STRING_* wrappersStefan Metzmacher1-2/+30
metze
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-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-10s4-schema: use GUID_to_ndr_blob()Andrew Tridgell1-13/+11
2009-12-10s4-dsdb: simplify schema code using new GUID functionsAndrew Tridgell1-28/+20
2009-11-23s4/schema: Object(OR-Name) syntax handling for DRS callsKamen Mazdrashki1-4/+6
OR-Name syntax through DRS calls looks like DN-Binary syntax
2009-11-17s4:dsdb Break up 'parse a DN from DRSUAPI' into a subfunctionAndrew Bartlett1-73/+91
This should make it easier to call this function from the DRS schema load code, rather than duplicate it. (we may do the same with other functions in future). Andrew Bartlett
2009-11-12s4:Fix regression in dsdb_dn code - all parses of the DN would be rejectedAndrew Bartlett1-2/+6
This is most likely the cause of the DRS replication failures I observed with my changes. Andrew Bartlett
2009-11-12s4:dsdb Use new dsdb_dn code in LDB modules and Samba4 schemaAndrew Bartlett1-19/+15
This converts the code from using the binary DN code in ldb_dn to using a special Samba-specfic wrapper around ldb_dn. We also use the dsdb_dn code for DN+Binary and DN+String comparisons (changed from treating them as Binary blobs) Andrew Bartlett
2009-11-06s4/drs: dsdb_map_int2oid() replaced by dsdb_schema_pfm_oid_from_attid()Kamen Mazdrashki1-5/+5
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06s4/drs: dsdb_map_oid2int() replaced by dsdb_schema_pfm_make_attid()Kamen Mazdrashki1-5/+5
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-10-02s4-ldb: Add support for binary blobs in DNsAndrew Tridgell1-23/+113
AD has the concept of a DN prefixed with B:NN:XXXXXX: that contains a binary blob. We need to support those in order to give correctly formatted binary blobs for things like wellKnownObjects This implementation is not ideal, as it allows for binary blobs on all DNs, whereas it should only allow them on those with a syntax of 2.5.5.7. We should clean this up in the future, but meanwhile this implementation at least gets us a working DC join of w2k8 to s4. This patch also uses a static function for marking DNs as invalid, which is very useful when debugging this code, as you can break on it in gdb.
2009-09-23s4-dsdb: cope with windows sending extra pad bytesAndrew Tridgell1-4/+4
2009-09-10s4/schema: teach the schema_syntax code how to encode/decode more attributesAndrew Tridgell1-0/+104
We were trying to encode strings like 'top' as integers, without first looking them up in our schema. We need special handling for all the attributes that contain attributeID_id or governsID_id fields that should be translated first before encoding.
2009-09-07s4:dsdb: correctly implement _dsdb_syntax_OID_oid_ldb_to_drsuapi()Stefan Metzmacher1-1/+31
Here we just need to map the oid string in the ldb value to the ATTRTYP id. metze
2009-09-03Fix the dsdb_syntax_OID_ldb_to_drsuapi functionAnatoliy Atanasov1-1/+51
This replace the dsdb_syntax_FOOBAR_ldb_to_drsuapi function, which was left as a TODO code. Implementation in both added functions is completely identical and probably should differ in the future.