}
typedef struct dynlist_name_t {
+ struct berval dy_nname;
struct berval dy_name;
dynlist_info_t *dy_dli;
dynlist_map_t *dy_dlm;
if ( attr_valfind( a, SLAP_MR_EQUALITY | SLAP_MR_VALUE_OF_ASSERTION_SYNTAX |
SLAP_MR_ASSERTED_VALUE_NORMALIZED_MATCH |
SLAP_MR_ATTRIBUTE_VALUE_NORMALIZED_MATCH,
- &dyn->dy_name, &slot, NULL ) == LDAP_SUCCESS )
+ &dyn->dy_nname, &slot, NULL ) == LDAP_SUCCESS )
continue;
}
- attr_merge_one( e, ad, &dyn->dy_name, &dyn->dy_name );
+ attr_merge_one( e, ad, &dyn->dy_name, &dyn->dy_nname );
if ( !a )
a = attr_find( e->e_attrs, ad );
if ( dyn->dy_sups )
dyn = ptr->avl_data;
if ( ldap_tavl_insert( &dm->dm_groups, dyn, dynlist_ptr_cmp, ldap_avl_dup_error ))
continue;
- if ( overlay_entry_get_ov( op, &dyn->dy_name, NULL, NULL, 0, &ne, on ) != LDAP_SUCCESS || ne == NULL )
+ if ( overlay_entry_get_ov( op, &dyn->dy_nname, NULL, NULL, 0, &ne, on ) != LDAP_SUCCESS || ne == NULL )
continue;
b = attr_find( ne->e_attrs, dm->dm_ad );
if ( b ) {
int rc;
n1 = c1; n2 = c2;
- rc = n1->dy_name.bv_len - n2->dy_name.bv_len;
+ rc = n1->dy_nname.bv_len - n2->dy_nname.bv_len;
if ( rc ) return rc;
- return ber_bvcmp( &n1->dy_name, &n2->dy_name );
+ return ber_bvcmp( &n1->dy_nname, &n2->dy_nname );
}
/* build a list of dynamic entries */
else
len = 0;
- dyn = ch_calloc(1, sizeof(dynlist_name_t)+rs->sr_entry->e_nname.bv_len + 1 + len);
+ dyn = ch_calloc(1, sizeof(dynlist_name_t)+rs->sr_entry->e_nname.bv_len + 1 +
+ rs->sr_entry->e_name.bv_len + 1 + len);
dyn->dy_name.bv_val = ((char *)(dyn+1)) + len;
+ dyn->dy_name.bv_len = rs->sr_entry->e_name.bv_len;
+ dyn->dy_nname.bv_val = dyn->dy_name.bv_val + dyn->dy_name.bv_len + 1;
+ dyn->dy_nname.bv_len = rs->sr_entry->e_nname.bv_len;
dyn->dy_dli = ds->ds_dli;
dyn->dy_dlm = ds->ds_dlm;
- dyn->dy_name.bv_len = rs->sr_entry->e_nname.bv_len;
if ( a ) {
Filter *f;
/* parse and validate the URIs */
}
}
dyn->dy_numuris = j;
- memcpy(dyn->dy_name.bv_val, rs->sr_entry->e_nname.bv_val, rs->sr_entry->e_nname.bv_len );
+ memcpy(dyn->dy_name.bv_val, rs->sr_entry->e_name.bv_val, rs->sr_entry->e_name.bv_len );
+ memcpy(dyn->dy_nname.bv_val, rs->sr_entry->e_nname.bv_val, rs->sr_entry->e_nname.bv_len );
if ( b )
dyn->dy_staticmember = ds->ds_dlm->dlm_member_ad;
if ( ldap_tavl_insert( &ds->ds_fnodes, dyn, dynlist_ptr_cmp, ldap_avl_dup_error ))
return 0;
- if ( overlay_entry_get_ov( op, &dyn->dy_name, NULL, NULL, 0, &e, on ) !=
+ if ( overlay_entry_get_ov( op, &dyn->dy_nname, NULL, NULL, 0, &e, on ) !=
LDAP_SUCCESS || e == NULL ) {
return -1;
}
{
if ( dyn->dy_staticmember ) {
Entry *grp;
- if ( overlay_entry_get_ov( op, &dyn->dy_name, NULL, NULL, 0, &grp, (slap_overinst *)op->o_bd->bd_info ) == LDAP_SUCCESS && grp ) {
+ if ( overlay_entry_get_ov( op, &dyn->dy_nname, NULL, NULL, 0, &grp, (slap_overinst *)op->o_bd->bd_info ) == LDAP_SUCCESS && grp ) {
Attribute *a = attr_find( grp->e_attrs, dyn->dy_staticmember );
int rc;
if ( a ) {
if ( attr_valfind( a, SLAP_MR_EQUALITY | SLAP_MR_VALUE_OF_ASSERTION_SYNTAX |
SLAP_MR_ASSERTED_VALUE_NORMALIZED_MATCH |
SLAP_MR_ATTRIBUTE_VALUE_NORMALIZED_MATCH,
- &dyn->dy_name, &slot, NULL ) != LDAP_SUCCESS )
+ &dyn->dy_nname, &slot, NULL ) != LDAP_SUCCESS )
a = NULL;
}
if ( !a )
- attr_merge_one( e, dlm->dlm_memberOf_ad, &dyn->dy_name, &dyn->dy_name );
+ attr_merge_one( e, dlm->dlm_memberOf_ad, &dyn->dy_name, &dyn->dy_nname );
if ( dyn->dy_sups ) {
dynlist_nested_memberOf( e, dlm->dlm_memberOf_ad, dyn->dy_sups );
}
if ( dyn->dy_seen )
goto next;
dyn->dy_seen = 1;
- if ( !dnIsSuffixScope( &dyn->dy_name, &op->o_req_ndn, op->ors_scope ))
+ if ( !dnIsSuffixScope( &dyn->dy_nname, &op->o_req_ndn, op->ors_scope ))
goto next;
/* can only pre-check if this is a dyngroup, otherwise just build the entry */
if ( dyn->dy_dli->dli_dlm && !dyn->dy_dli->dli_dlm->dlm_next &&
- !dyn->dy_dlm->dlm_mapped_ad ) {
+ dyn->dy_dlm && !dyn->dy_dlm->dlm_mapped_ad ) {
if ( !dlm ) {
AttributeDescription *ad;
int i;
if ( !dyn->dy_sups && !dyn->dy_subs && ndf && !dynmember( dyn, f, ndf, df ))
goto next;
}
- if ( overlay_entry_get_ov( op, &dyn->dy_name, NULL, NULL, 0, &r.sr_entry, on ) != LDAP_SUCCESS ||
+ if ( overlay_entry_get_ov( op, &dyn->dy_nname, NULL, NULL, 0, &r.sr_entry, on ) != LDAP_SUCCESS ||
r.sr_entry == NULL )
goto next;
r.sr_flags = REP_ENTRY_MUSTRELEASE;
ptr = ldap_tavl_next( ptr, TAVL_DIR_RIGHT )) {
di = ptr->avl_data;
if ( ds->ds_dlm ) {
- if ( overlay_entry_get_ov( op, &di->dy_name, NULL, NULL, 0, &e, on ) != LDAP_SUCCESS || e == NULL )
+ if ( overlay_entry_get_ov( op, &di->dy_nname, NULL, NULL, 0, &e, on ) != LDAP_SUCCESS || e == NULL )
continue;
a = attr_find( e->e_attrs, ds->ds_dlm->dlm_member_ad );
if ( a ) {
pager: +1 313 555 7671
facsimileTelephoneNumber: +1 313 555 7762
telephoneNumber: +1 313 555 4177
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
# Testing filtered memberOf functionality...
dn: cn=Mark Elliot,ou=Alumni Association,ou=People,dc=example,dc=com
pager: +1 313 555 7671
facsimileTelephoneNumber: +1 313 555 7762
telephoneNumber: +1 313 555 4177
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
# Testing filtered member functionality...
dn: cn=All Staff,ou=Groups,dc=example,dc=com
pager: +1 313 555 7671
facsimileTelephoneNumber: +1 313 555 7762
telephoneNumber: +1 313 555 4177
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=alumni assoc staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Alumni Assoc Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
# Testing static group member compare...
TRUE
memberURL: ldap:///ou=People,dc=example,dc=com??sub?(sn=Smith)
description: Smith family
member: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
-memberOf: cn=meta group,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=Meta Group,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Mark Elliot,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
pager: +1 313 555 7671
facsimileTelephoneNumber: +1 313 555 7762
telephoneNumber: +1 313 555 4177
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
# Testing nested static group functionality...
dn: cn=Barbara Jensen,ou=Information Technology Division,ou=People,dc=example,
pager: +1 313 555 3233
facsimileTelephoneNumber: +1 313 555 2274
telephoneNumber: +1 313 555 9022
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=the jensens,ou=groups,dc=example,dc=com
-memberOf: cn=jjs,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=The Jensens,ou=Groups,dc=example,dc=com
+memberOf: cn=JJs,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Bjorn Jensen,ou=Information Technology Division,ou=People,dc=example,dc
=com
sn: Jensen
uid: bjorn
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-seeAlso: cn=itd staff,ou=groups,dc=example,dc=com
+seeAlso: cn=ITD Staff,ou=Groups,dc=example,dc=com
userPassword:: Ympvcm4=
homePostalAddress: 19923 Seven Mile Rd. $ South Lyon, MI 49999
drink: Iced Tea
pager: +1 313 555 4474
facsimileTelephoneNumber: +1 313 555 2177
telephoneNumber: +1 313 555 0355
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=the jensens,ou=groups,dc=example,dc=com
-memberOf: cn=jjs,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=The Jensens,ou=Groups,dc=example,dc=com
+memberOf: cn=JJs,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Ursula Hampster,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
pager: +1 313 555 2844
facsimileTelephoneNumber: +1 313 555 9700
telephoneNumber: +1 313 555 5331
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
-memberOf: cn=alumni assoc staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
+memberOf: cn=Alumni Assoc Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=James A Jones 2,ou=Information Technology Division,ou=People,dc=example
,dc=com
sn: Doe
uid: jjones
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-seeAlso: cn=itd staff,ou=groups,dc=example,dc=com
+seeAlso: cn=ITD Staff,ou=Groups,dc=example,dc=com
homePostalAddress: 933 Brooks $ Anytown, MI 48104
homePhone: +1 313 555 8838
title: Senior Manager, Information Technology Division
pager: +1 313 555 2833
facsimileTelephoneNumber: +1 313 555 8688
telephoneNumber: +1 313 555 7334
-memberOf: cn=jjs,ou=groups,dc=example,dc=com
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=JJs,ou=Groups,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Jane Doe,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
pager: +1 313 555 1220
facsimileTelephoneNumber: +1 313 555 2311
telephoneNumber: +1 313 555 4774
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=alumni assoc staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Alumni Assoc Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=John Doe,ou=Information Technology Division,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
uid: johnd
postalAddress: ITD $ 535 W. William $ Anytown, MI 48109
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-seeAlso: cn=itd staff,ou=groups,dc=example,dc=com
+seeAlso: cn=ITD Staff,ou=Groups,dc=example,dc=com
homePostalAddress: 912 East Bllvd $ Anytown, MI 48104
title: System Administrator, Information Technology Division
description: overworked!
pager: +1 313 555 6573
facsimileTelephoneNumber: +1 313 555 4544
telephoneNumber: +1 313 555 9394
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
pager: +1 313 555 6442
facsimileTelephoneNumber: +1 313 555 2756
telephoneNumber: +1 313 555 8232
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=the smiths,ou=dynamic lists,dc=example,dc=com
-memberOf: cn=meta group,ou=dynamic lists,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
-memberOf: cn=alumni assoc staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=The Smiths,ou=Dynamic Lists,dc=example,dc=com
+memberOf: cn=Meta Group,ou=Dynamic Lists,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
+memberOf: cn=Alumni Assoc Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
# Testing filtered nested memberOf functionality...
dn: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
pager: +1 313 555 6442
facsimileTelephoneNumber: +1 313 555 2756
telephoneNumber: +1 313 555 8232
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=the smiths,ou=dynamic lists,dc=example,dc=com
-memberOf: cn=meta group,ou=dynamic lists,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
-memberOf: cn=alumni assoc staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=The Smiths,ou=Dynamic Lists,dc=example,dc=com
+memberOf: cn=Meta Group,ou=Dynamic Lists,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
+memberOf: cn=Alumni Assoc Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Meta Group,ou=Dynamic Lists,dc=example,dc=com
objectClass: groupOfURLs
20family)
member: cn=The Smiths,ou=Dynamic Lists,dc=example,dc=com
member: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
dn: cn=The Smiths,ou=Dynamic Lists,dc=example,dc=com
objectClass: groupOfURLs
memberURL: ldap:///ou=People,dc=example,dc=com??sub?(sn=Smith)
description: Smith family
member: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
-memberOf: cn=meta group,ou=dynamic lists,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
+memberOf: cn=Meta Group,ou=Dynamic Lists,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
dn: cn=Ursula Hampster,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
pager: +1 313 555 2844
facsimileTelephoneNumber: +1 313 555 9700
telephoneNumber: +1 313 555 5331
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
-memberOf: cn=alumni assoc staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
+memberOf: cn=Alumni Assoc Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=James A Jones 2,ou=Information Technology Division,ou=People,dc=example
,dc=com
pager: +1 313 555 3233
facsimileTelephoneNumber: +1 313 555 2274
telephoneNumber: +1 313 555 9022
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=the jensens,ou=groups,dc=example,dc=com
-memberOf: cn=jjs,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=The Jensens,ou=Groups,dc=example,dc=com
+memberOf: cn=JJs,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=Bjorn Jensen,ou=Information Technology Division,ou=People,dc=example,dc
=com
sn: Jensen
uid: bjorn
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-seeAlso: cn=itd staff,ou=groups,dc=example,dc=com
+seeAlso: cn=ITD Staff,ou=Groups,dc=example,dc=com
userPassword:: Ympvcm4=
homePostalAddress: 19923 Seven Mile Rd. $ South Lyon, MI 49999
drink: Iced Tea
pager: +1 313 555 4474
facsimileTelephoneNumber: +1 313 555 2177
telephoneNumber: +1 313 555 0355
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=the jensens,ou=groups,dc=example,dc=com
-memberOf: cn=jjs,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=The Jensens,ou=Groups,dc=example,dc=com
+memberOf: cn=JJs,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=James A Jones 2,ou=Information Technology Division,ou=People,dc=example
,dc=com
sn: Doe
uid: jjones
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-seeAlso: cn=itd staff,ou=groups,dc=example,dc=com
+seeAlso: cn=ITD Staff,ou=Groups,dc=example,dc=com
homePostalAddress: 933 Brooks $ Anytown, MI 48104
homePhone: +1 313 555 8838
title: Senior Manager, Information Technology Division
pager: +1 313 555 2833
facsimileTelephoneNumber: +1 313 555 8688
telephoneNumber: +1 313 555 7334
-memberOf: cn=jjs,ou=groups,dc=example,dc=com
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=JJs,ou=Groups,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
dn: cn=John Doe,ou=Information Technology Division,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
uid: johnd
postalAddress: ITD $ 535 W. William $ Anytown, MI 48109
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-seeAlso: cn=itd staff,ou=groups,dc=example,dc=com
+seeAlso: cn=ITD Staff,ou=Groups,dc=example,dc=com
homePostalAddress: 912 East Bllvd $ Anytown, MI 48104
title: System Administrator, Information Technology Division
description: overworked!
pager: +1 313 555 6573
facsimileTelephoneNumber: +1 313 555 4544
telephoneNumber: +1 313 555 9394
-memberOf: cn=all staff,ou=groups,dc=example,dc=com
-memberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
+memberOf: cn=All Staff,ou=Groups,dc=example,dc=com
+memberOf: cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com
# Testing filtered nested member functionality...
dn: cn=All Staff,ou=Groups,dc=example,dc=com
20family)
member: cn=The Smiths,ou=Dynamic Lists,dc=example,dc=com
member: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com
dn: cn=The Smiths,ou=Dynamic Lists,dc=example,dc=com
objectClass: groupOfURLs
memberURL: ldap:///ou=People,dc=example,dc=com??sub?(sn=Smith)
description: Smith family
member: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
-memberOf: cn=meta group,ou=dynamic lists,dc=example,dc=com
-memberOf: cn=bonus group,ou=groups,dc=example,dc=com
+memberOf: cn=Meta Group,ou=Dynamic Lists,dc=example,dc=com
+memberOf: cn=Bonus Group,ou=Groups,dc=example,dc=com