[SCM] Samba Shared Repository - branch master updated -
6c298c06f35c132dfd6df854e8fac524e4c80376
Andrew Bartlett
abartlet at samba.org
Tue Dec 2 05:33:36 GMT 2008
The branch, master has been updated
via 6c298c06f35c132dfd6df854e8fac524e4c80376 (commit)
via 9b17e3b63419dba3ff8fac627d24366b6b6e12c4 (commit)
from 931f16f6229f16eac866934f65f567c200d4b111 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 6c298c06f35c132dfd6df854e8fac524e4c80376
Author: Andrew Bartlett <abartlet at samba.org>
Date: Tue Dec 2 14:22:24 2008 +1100
Don't treat the DN+binary syntax as a DN.
This should fix the OpenLDAP backend
commit 9b17e3b63419dba3ff8fac627d24366b6b6e12c4
Author: Andrew Bartlett <abartlet at samba.org>
Date: Tue Dec 2 14:13:41 2008 +1100
Use the direct pointer to the syntax
This rather than manually searching for it, and is inspired by a
similar commit in dsdb/schema/schema_description.c by metze
Andrew Bartlett
-----------------------------------------------------------------------
Summary of changes:
source4/dsdb/schema/schema_syntax.c | 4 ++--
source4/setup/schema-map-fedora-ds-1.0 | 4 ++--
source4/setup/schema-map-openldap-2.3 | 4 ++--
source4/utils/ad2oLschema.c | 9 ++++-----
4 files changed, 10 insertions(+), 11 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source4/dsdb/schema/schema_syntax.c b/source4/dsdb/schema/schema_syntax.c
index cee74c0..7aed086 100644
--- a/source4/dsdb/schema/schema_syntax.c
+++ b/source4/dsdb/schema/schema_syntax.c
@@ -1278,9 +1278,9 @@ static const struct dsdb_syntax dsdb_syntaxes[] = {
.attributeSyntax_oid = "2.5.5.7",
.drsuapi_to_ldb = dsdb_syntax_DN_BINARY_drsuapi_to_ldb,
.ldb_to_drsuapi = dsdb_syntax_DN_BINARY_ldb_to_drsuapi,
- .equality = "distinguishedNameMatch",
+ .equality = "octetStringMatch",
.comment = "OctetString: Binary+DN",
- .ldb_syntax = LDB_SYNTAX_DN,
+ .ldb_syntax = LDB_SYNTAX_OCTET_STRING,
},{
/* not used in w2k3 schema */
.name = "Object(OR-Name)",
diff --git a/source4/setup/schema-map-fedora-ds-1.0 b/source4/setup/schema-map-fedora-ds-1.0
index e55ef0a..74d9e2a 100644
--- a/source4/setup/schema-map-fedora-ds-1.0
+++ b/source4/setup/schema-map-fedora-ds-1.0
@@ -23,9 +23,9 @@ aci
1.2.840.113556.1.4.906:1.3.6.1.4.1.1466.115.121.1.27
#This case insensitive string isn't available
1.2.840.113556.1.4.905:1.3.6.1.4.1.1466.115.121.1.15
-#This type of DN isn't in OpenLDAP
-1.2.840.113556.1.4.903:1.3.6.1.4.1.1466.115.121.1.12
#Treat Security Descriptors as binary
1.2.840.113556.1.4.907:1.3.6.1.4.1.1466.115.121.1.40
#NumbericString is not supported in Fedora DS 1.0, map to a directory string
1.3.6.1.4.1.1466.115.121.1.36:1.3.6.1.4.1.1466.115.121.1.15
+#Treat Object(DN-Binary) as a binary blob
+1.2.840.113556.1.4.903:1.3.6.1.4.1.1466.115.121.1.40
diff --git a/source4/setup/schema-map-openldap-2.3 b/source4/setup/schema-map-openldap-2.3
index 7de2e67..bff1695 100644
--- a/source4/setup/schema-map-openldap-2.3
+++ b/source4/setup/schema-map-openldap-2.3
@@ -35,10 +35,10 @@ modifyTimeStamp:samba4ModifyTimestamp
1.2.840.113556.1.4.906:1.3.6.1.4.1.1466.115.121.1.27
#This case insensitive string isn't available
1.2.840.113556.1.4.905:1.3.6.1.4.1.1466.115.121.1.44
-#This type of DN isn't in OpenLDAP
-1.2.840.113556.1.4.903:1.3.6.1.4.1.1466.115.121.1.12
#Treat Security Descriptors as binary
1.2.840.113556.1.4.907:1.3.6.1.4.1.1466.115.121.1.40
#Treat OIDs as case insensitive strings (as otherwise ldap class and
#attribute names, declared at OIDs fail
1.3.6.1.4.1.1466.115.121.1.38:1.3.6.1.4.1.1466.115.121.1.44
+#Treat Object(DN-Binary) as a binary blob
+1.2.840.113556.1.4.903:1.3.6.1.4.1.1466.115.121.1.40
diff --git a/source4/utils/ad2oLschema.c b/source4/utils/ad2oLschema.c
index e926dd1..2e3139d 100644
--- a/source4/utils/ad2oLschema.c
+++ b/source4/utils/ad2oLschema.c
@@ -226,7 +226,6 @@ static struct schema_conv process_convert(struct ldb_context *ldb, enum dsdb_sch
const char *equality = NULL, *substring = NULL;
bool single_value = attribute->isSingleValued;
- const struct dsdb_syntax *map = find_syntax_map_by_ad_syntax(attribute->oMSyntax);
char *schema_entry = NULL;
int j;
@@ -244,11 +243,11 @@ static struct schema_conv process_convert(struct ldb_context *ldb, enum dsdb_sch
}
}
- if (map) {
+ if (attribute->syntax) {
/* We might have been asked to remap this oid,
* due to a conflict, or lack of
* implementation */
- syntax = map->ldap_oid;
+ syntax = attribute->syntax->ldap_oid;
/* We might have been asked to remap this oid, due to a conflict */
for (j=0; syntax && oid_map && oid_map[j].old_oid; j++) {
if (strcasecmp(syntax, oid_map[j].old_oid) == 0) {
@@ -257,8 +256,8 @@ static struct schema_conv process_convert(struct ldb_context *ldb, enum dsdb_sch
}
}
- equality = map->equality;
- substring = map->substring;
+ equality = attribute->syntax->equality;
+ substring = attribute->syntax->substring;
}
/* We might have been asked to remap this name, due to a conflict */
--
Samba Shared Repository
More information about the samba-cvs
mailing list