svn commit: samba r11463 - in branches/SAMBA_4_0/testprogs/ejs: .

tridge at samba.org tridge at samba.org
Wed Nov 2 02:32:26 GMT 2005


Author: tridge
Date: 2005-11-02 02:32:25 +0000 (Wed, 02 Nov 2005)
New Revision: 11463

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11463

Log:

more progress on the schema generator. mmc now accepts all parts
except the attributeTypes fields of the Aggregrate record. Proxying
just that field and the display specifiers gives us a working mmc
client

hopefully i'll work out what it doesn't like about the attributeTypes
field soon

Modified:
   branches/SAMBA_4_0/testprogs/ejs/minschema.js


Changeset:
Modified: branches/SAMBA_4_0/testprogs/ejs/minschema.js
===================================================================
--- branches/SAMBA_4_0/testprogs/ejs/minschema.js	2005-11-02 02:22:35 UTC (rev 11462)
+++ branches/SAMBA_4_0/testprogs/ejs/minschema.js	2005-11-02 02:32:25 UTC (rev 11463)
@@ -46,7 +46,8 @@
 			"objectClassCategory", "subClassOf", 
 			"defaultObjectCategory", "defaultHidingValue", 
 			"systemFlags", "systemOnly", "defaultSecurityDescriptor",
-			"objectCategory");
+			"objectCategory", "possibleInferiors", "displaySpecification",
+			"schemaIDGUID");
 
 attrib_attrs = new Array("objectClass", "lDAPDisplayName", 
 			 "isSingleValued", "linkID", "systemFlags", "systemOnly",
@@ -91,7 +92,25 @@
 }
 
 
+syntaxmap = new Object();
+syntaxmap['2.5.5.9']  = '1.3.6.1.4.1.1466.115.121.1.27';
+syntaxmap['2.5.5.10'] = '1.3.6.1.4.1.1466.115.121.1.40';
+syntaxmap['2.5.5.11'] = '1.3.6.1.4.1.1466.115.121.1.24';
+syntaxmap['2.5.5.12'] = '1.3.6.1.4.1.1466.115.121.1.15';
+
 /*
+  map some attribute syntaxes from some apparently MS specific
+  syntaxes to the standard syntaxes
+*/
+function map_attribute_syntax(s) {
+	if (syntaxmap[s] != undefined) {
+		return syntaxmap[s];
+	}
+	return s;
+}
+
+
+/*
   fix a string DN to use ${BASEDN}
 */
 function fix_dn(dn) {
@@ -108,6 +127,7 @@
 function write_ldif_one(o, attrs) {
 	var i;
 	printf("dn: CN=%s,CN=Schema,CN=Configuration,${BASEDN}\n", o.name);
+	printf("cn: %s\n", o.name);
 	printf("name: %s\n", o.name);
 	for (i=0;i<attrs.length;i++) {
 		var a = attrs[i];
@@ -476,7 +496,8 @@
 */
 function write_aggregate_attribute(attrib) {
 	printf("attributeTypes: ( %s NAME '%s' SYNTAX '%s' ", 
-	       attrib.attributeID, attrib.name, attrib.attributeSyntax);
+	       attrib.attributeID, attrib.name, 
+	       map_attribute_syntax(attrib.attributeSyntax));
 	if (attrib['isSingleValued'] == "TRUE") {
 		printf("SINGLE-VALUE ");
 	}
@@ -492,7 +513,6 @@
 	print("objectClass: top
 objectClass: subSchema
 cn: Aggregate
-distinguishedName: CN=Aggregate,CN=Schema,CN=Configuration,${BASEDN}
 instanceType: 4
 name: Aggregate
 objectCategory: CN=SubSchema,CN=Schema,CN=Configuration,${BASEDN}



More information about the samba-cvs mailing list