I have seen an older post that mentions some special handling of postalAddress
in the LDAP Driver Shim. If this is true, it may be at the heart of a problem
we are having. We have multiple attributes that have the postalAddress syntax,
including homePostalAddress. When syncing a change from OpenLDAP to eDir
through the LDAP driver, we see proper parsing of the postalAddress attribute,
but not of the other attributes with the same syntax. Is there anything we can
do to have these parsed properly?

Here's an example of an operation coming across the LDAP Driver shim and being
parsed into XML. This operation has the addition of both a postaladdress value
and a homepostaladdress value. both attributes have the same syntax in the
OpenLDAP schema and the eDir schema.

[12/11/07 14:03:49.808]:umod_changelog PT:umod_changelog: Changelog:
dn: changeNumber=45,cn=changelog
changeType: modify
changes: add: postalAddress
postalAddress: 111 $ 222 $ 333 $ 444 $ 555 $ 666
-
add: homePostalAddress
homePostalAddress: 111 $ 222 $ 333 $ 444 $ 555 $ 666
-
replace: entryCSN
entryCSN: 20071211190346Z#000000#00#000000
-
replace: modifiersName
modifiersName: cn=manager,ou=security,dc=umich,dc=edu
-
replace: modifyTimestamp
modifyTimestamp: 20071211190346Z
-

objectClass: top
objectClass: changeLogEntry
changeNumber: 45
targetDN: uid=pturgyan,ou=People,dc=umich,dc=edu
changedAttribute: postalAddress
changedAttribute: homePostalAddress
changedAttribute: entryCSN
changedAttribute: modifiersName
changedAttribute: modifyTimestamp



[12/11/07 14:03:49.825]:umod_changelog PT:Receiving DOM document from application.
[12/11/07 14:03:49.826]:umod_changelog PT:
<nds dtdversion="2.0">
<source>
<product build="20070918_0739 " instance="umod_changelog"
version="3.5.2">Identity Manager Driver for LDAP</product>
<contact>Novell, Inc.</contact>
</source>
<input>
<modify class-name="umichPerson" event-id="1"
src-dn="uid=pturgyan,ou=People,dc=umich,dc=edu">
<association>uid=pturgyan,ou=people,dc=umich,dc=ed u</association>
<modify-attr attr-name="postalAddress">
<add-value>
<value type="structured">
<component name="string">111 </component>
<component name="string"> 222 </component>
<component name="string"> 333 </component>
<component name="string"> 444 </component>
<component name="string"> 555 </component>
<component name="string"> 666</component>
</value>
</add-value>
</modify-attr>
<modify-attr attr-name="homePostalAddress">
<add-value>
<value type="structured">111 $ 222 $ 333 $ 444 $ 555 $ 666</value>
</add-value>
</modify-attr>
</modify>
<init-params event-id="chgLogNum">
<publisher-state>
<change-log-number>45</change-log-number>
</publisher-state>
</init-params>
</input>
</nds>


Notice how they get parsed into XML differently even though they are the same
values. This is a real problem for us. Is there something we can do to get
them to be parsed in the same way?

Luke