[turba] ActiveSync -> LDAP - addressbook cannot be created because CN is missing

Oliver oliverafg at gmx.de
Sun Oct 15 11:54:19 UTC 2017


Hello,

I am using a few LDAP addressbooks, a few global read only books and
one personal addressbook.  

The synchronisation from LDAP to ActiveSync devices works fine.
A new entry from the webfrontend to LDAP and the clients works fine.

If I try to add a new entry on my cell phone, it isn't created in the
LDAP backend, because of a missing cn field. 

I use the evolution schema 

My relevant part of backends.local.php: 

$_ldap_uid = $GLOBALS['registry']->getAuth('bare');
$_ldap_basedn = 'dc=kobosix,dc=lan';
$cfgSources['personal_ldap'] = array(
  'disabled' => false,
  'title' => _($_ldap_uid . " addressbook rw"),
  'type' => 'ldap',
  'params' => array(
  'server' => 'MYLDAPSERVER',
  'tls' => false,
  'root' => 'ou=' . $_ldap_uid . ',ou=Personal,ou=addressbook,' . 		
$_ldap_basedn,
  'bind_dn' => 'uid=' . $_ldap_uid . ',ou=User,ou=People,' . 			$_
ldap_basedn,
  'bind_password' => $GLOBALS['registry']-> 					getAuthCredential('
password'),
  'dn' => array('uid'),
  'objectclass' => array('top',
                         'person',
                         // 'turbaContact',
                         'inetOrgPerson',
                         // 'calEntry',
		        'organizationalPerson',
		 	'evolutionPerson'),
        'scope' => 'one',
        'charset' => 'utf-8',
        'version' => 3
    ),
    'map' => array(
        '__key' => 'dn',
        '__uid' => 'uid',
        // From horde.schema:
        // '__type' => 'turbaType',
        // '__members' => 'turbaMembers',
	'name' => 'cn',
	'lastname' => 'sn',
	'firstname' => 'givenname',
	'namePrefix' => 'title',
	'title' => 'businessRole',

	'photo' => 'jpegphoto',
	'birthday' => 'birthdate',
	'anniversary' => 'anniversary',
	'spouse' => 'spouseName',
	// 'children' => 'children', // still missing
        'company' => 'o',
        'department' => 'ou',
        'businessCategory' => 'businesscategory',
        'emails' => 'mail',
        'workPhone' => 'telephonenumber',
	'fax' => 'facsimiletelephonenumber',
	'companyPhone' => 'companyPhone',
	'homePhone' => 'homephone',
	'cellPhone' => 'mobile',
	'carPhone' => 'carphone',
	'pager' => 'pager',
	'radioPhone' => 'radio',
	'assistant' => 'assistantName',
	'assistPhone' => 'assistantPhone',
	'manager' => 'managerName',
	'__tags' => 'categories',
        'workAddress' => 'postaladdress',
	'workStreet' => 'street',
	'workPostalCode' => 'postalcode',
	'workCity' => 'l',
	'workProvince' => 'st',
	// 'workCountryFree' => 'c', // no LDAP backend yet
	'homeAddress' => 'homepostaladdress',
	'otherAddress' => 'otherPostalAddress',
        'notes' => 'note',
        'office' => 'roomNumber',
        'nickname' => 'displayName',
        'website' => 'labeledURI',
        'pgpPublicKey' => 'userCertificate',
        'smimePublicKey' => 'userSMIMECertificate',
	'freebusyUrl' => 'freebusyuri',
	// no LDAP backend field yet
	// 'imaddress1' => 'imAddress', //no LDAP backend yet
	// 'yomifirstname' => 'yomiFirstname' // no LDAP backend yet
	// 'yomilastname' => 'yomiLastname' // no LDAP backend yet
	// NO LDAP and horde backend yet but ActiveSync field
	// 'yomicompanyname' => 'yomiCompanyName' 
    ),
    'search' => array(
        'name',
        'emails',
        'businessCategory',
        'title',
        'homePhone',
        'workPhone',
	'cellPhone',
	'carPhone',
        'homeAddress'
    ),
    'strict' => array(
        'dn', 'uid'
    ),
    'approximate' => array(
        'cn', 
    ),
    'export' => true,
    'browse' => true,
);


In my Driver.php "name" maps to "fileas" 

The error in the activesync log is the following:

[55906][2017-10-15T13:45:47+02:00] I:         Motojj
[55906][2017-10-15T13:45:47+02:00] ERR: Failed to add an object: 
[65] "Object class violation" 
DN: uid=20171015134547.zapb17bqWwoWnbh_kwmbHEZ at ...,
    ou=oliver,ou=Personal,ou=addressbook,dc=kobosix,dc=lan 
    (attributes: [a:7:s:2:"sn";s:6:"Tester";s:9:"givenname";			s:6
:"Motojj";s:6:"mobile";s:13:"+491222266644";
	s:4:"note";s:1:"";s:4:"mail";s:2:",,";s:3:"uid";
	s:53:"20171015134547.zapb17bqWwoWnbh_kwmbHEZ at ...";
	s:11:"objectclass";a:5:{i:0;s:3:"top";i:1;s:6:"person";i:2;s:13
:"inetOrgPerson";i:3;s:20:"organizationalPerson";i:4;s:15:"evolutionPer
son";}}])


LDAP-Server complains about the missing CN field and indeed, there is
no CN field.

At the moment I have no idea...

Thanks and regards
Oliver



More information about the turba mailing list