PILOT-LDAP V0.1, Jun 03, 2000 HaJo Schatz ====================================================================== Overview ======== pilot-ldap is a small C-Program acting as a filter together with a tiny shell script. It should run under almost all flavours of UNIX, as well as a vast majority of other OSes as long as you can get hold of an ANSI C compiler and are clever enough to tweak the tiny shell-script. The package is supposed to get your Palm Pilot's address data base via "addresses", part of the great package "pilot-link" (by Kenneth Albanowski, kjahds@kjahds.com). It then generates an LDIF file which is added to an LDAP server. This way, people can access your Pilot's addresses directly from any LDAP client like Netscape. This package is public domain. Do with it whatever you want, but if you modify it in any way, please drop me a mail at hajo@hajo.net so that other people may benefit from your changes as well! Important Note ============== I am an absolute rookie when it comes to LDAP servers. If anybody out there has some ideas for improvement concerning the handling of the LDAP/LDIF data, please please let me know! I do not take any responsibility for the effects this package might cause. Use at your own risk! (And don't blame me, but tell me how to do it in a better way) Requirements ============ - An ANSI-C compiler - 'addresses' from 'pilot-link' - Of course, an LDAP server, preferrably OpenLDAP from http://www.openldap.org Installation ============ Edit the pilot-ldap.sh script to suit your server settings. The script was written for an OpenLDAP server, so you might have to change the calls which communicate with the server. Go to the directory pilot2ldif and enter ./make.sh This should build your filter program. You might have to change the C-Compiler call in this script if you use something else than gcc. Usage ===== First time you run the program, you have to add a dc to your LDAP server. See pilot-ldap.sh for details. Start pilot-ldap.sh upon which the following is done: 1) Delete all entries of your LDAP server which contain the dc as defined in the script, objectclass=person 2) Get the address data from your Palm Pilot via 'addresses'. 3) Convert the addresses to an LDIF file using the pilot2ldif filter. 4) Populate the LDAP server with the contents of the LDIF file. Bugs ==== - The filter can not handle data which contain empty lines (single '\n' in one line). It warns you about it though... - Special characters seem to screw things up, so especially you non-English out there with your extended character sets should be careful. - Probably some others which I didn't find yet... Again: If you have a bugfix, please let me know!