From 3fcf6086fcaaa6faa02c603f1c352f22dbfc1887 Mon Sep 17 00:00:00 2001 From: Noriko Hosoi Date: Mon, 24 Aug 2015 16:13:12 -0700 Subject: [PATCH] Ticket #47757 - Unable to dereference unqiemember attribute because it is dn [#UID] not dn syntax Description: In addtion to DN syntax, adding Name and Optional UID syntax to the deref attr's OID check. https://fedorahosted.org/389/ticket/47757 Reviewed by mreynolds@redhat.com (Thank you, Mark!!) (cherry picked from commit 2dbbb9df4691590f788049a822c47eb501182c85) --- ldap/servers/plugins/deref/deref.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ldap/servers/plugins/deref/deref.c b/ldap/servers/plugins/deref/deref.c index 06e2df5..6542034 100644 --- a/ldap/servers/plugins/deref/deref.c +++ b/ldap/servers/plugins/deref/deref.c @@ -51,6 +51,9 @@ int is_type_forbidden(const char *type); /* from proto-slap.h */ #ifndef DN_SYNTAX_OID #define DN_SYNTAX_OID "1.3.6.1.4.1.1466.115.121.1.12" #endif +#ifndef NAME_AND_OPTIONAL_UID_SYNTAX_OID +#define NAME_AND_OPTIONAL_UID_SYNTAX_OID "1.3.6.1.4.1.1466.115.121.1.34" +#endif /* * Plug-in globals @@ -328,7 +331,7 @@ deref_check_for_dn_syntax(const char *derefattr) slapi_attr_init(attr, derefattr); slapi_attr_get_syntax_oid_copy(attr, &oid); - ret = oid && !strcmp(oid, DN_SYNTAX_OID); + ret = oid && (!strcmp(oid, DN_SYNTAX_OID) || !strcmp(oid, NAME_AND_OPTIONAL_UID_SYNTAX_OID)); slapi_ch_free_string(&oid); slapi_attr_free(&attr); } -- 2.9.3