Posts Tagged ‘ldap’

Delete facsimileTelephoneNumber attribute

Wednesday, February 4th, 2009

ldapvi is so wonderful. No Java/Python/PHP for “browsing” LDAP trees and the power of vi for LDAP administration. Nevertheless, today I had difficulty for deleting a facsimileTelephoneNumber attribute:

$ ldapvi
Action? [yYqQvVebB*rsf+?] y
ldap_modify: Inappropriate matching (18)
additional info: modify/delete: facsimileTelephoneNumber: no equality matching rule

Here is the LDIF change tried by ldapvi:

dn: uid=foo,ou=people,dc=evolix,dc=net
changetype: modify
delete: facsimileTelephoneNumber
facsimileTelephoneNumber: 0000

After a little search on the web, I find the reason on openldap-bugs list archives:

Since the schema definition of facsimileTelephoneNumber has no matching rule
defined, the only modifications you can make are Replace or Delete w/ no
values.

facsimileTelephone attribute actually doesn’t have SYNTAX definition. See in core.ldif file:

Number olcAttributeTypes: ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
  DESC 'RFC2256: Facsimile (Fax) Telephone Number'
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.22 )

By default, ldapvi tries to delete a specific value (even if there is only one value) for an attribute. But according documentation, it’s impossible to delete only one of values for facsimileTelephoneNumber attribute!

Note: for deleting all values of facsimileTelephoneNumber attribute, the LDIF change must be:

dn: uid=foo,ou=people,dc=evolix,dc=net
changetype: modify
delete: facsimileTelephoneNumber

Importer contacts LDAP dans un telephone Nokia E65

Sunday, October 12th, 2008

Il existe plusieurs moyen de faire de la synchronisation de groupware (contacts, calendrier, tâches) entre un téléphone mobile Nokia et une machine sous Linux. Mais selon les modèles de téléphone, la compatibilité des logiciels semble très variable. J’ai déjà eu l’occasion d’essayer des logiciels comme Gnokii ou Gammu de façon non satisfaisante jusqu’ici. Le plus prometteur est de tout évidence le jeune protocole SyncML prévu pour réaliser cette synchronisation. Mais sous Linux, les outils pour l’utiliser restent encore relativement bogués… ou alors je n’ai pas eu de chance avec mes téléphones. Après avoir passé plusieurs heures avec libsyncml pour réussir à lui faire cracher quelques extraits de mon téléphone, je suis retourné à une méthode simple : l’import des contacts via fichiers VCARD. Oui, c’est radical car ça gère mal une véritable synchronisation – je parle plutôt d’importation – mais ça répond à mes besoins pour l’instant et “ça marche”.

Passons à la partie “hacking”. Mes contacts étant (bien sûr) centralisés dans un annuaire LDAP, j’ai écrit rapidement un petit script ldif2vcard.sh – à améliorer – me permettant d’obtenir des fichiers VCARD bien reconnus par Symbian à partir d’un fichier LDIF. Il ne reste plus qu’à les déposer sur la SD-card du téléphone (dans “Others/contacts/” sur un Nokia E65) puis faire “Contacts> Options > Copier> Depuis carte memoire”. Cette méthode doit plus ou moins marcher avec tous les téléphones à base de Symbian.