[Date Prev][Date Next]
authoring slapd backend modules
I'm really not completely sure that this is on-topic, so if it's
not, please point me to the proper location.
I am working on an application called swab
(http://hacking.kennypearce.net/swab) which aims to be a single address
book used system-wide, accessed by all of the programs which need an
address book under Linux. swab has it's own api, but obviously no other
applications will support it until it becomes pervasive. Of course, it
cannot become pervasive until it is truly system-wide. Therein lies my
problem - allowing swab to be accessed by programs that were not written
to access it.
I have determined that a large percentage of the programs that I
have set out to support (evolution, mozilla, netscape, pine and mutt)
support LDAP, so I have determined that to emulate LDAP is probably the
best approach for making swab accessible to the most programs with the
smallest amount of code being written. Upon skimming the openldap
administrators' guide, I came to the conclusion that it would probably
be possible to write a slapd backend module (which could be distributed
seperately from openldap and inserted without an openldap recompile, I
hope) which would put forth an LDAP directory service based on the data
in the swab address book. This would have the happy side-effect that the
user could choose to make his swab address book accessible remotely.
The reason that I chose not to support LDAP natively is that the
expectation is that programs will want to both read from and write to
the address book, since it doesn't have it's own GUI. I was told that
LDAP was not designed for write-intensive applications and that either a
standard database or some xml files would be better. I went with mysql.
Anyway, my question is, is this plausible? If so, where are the docs
describing the api for writing backend modules like this?
Co-Developer, "Truth2000: The Talking Bible Project"
"If you confess with your mouth Jesus as Lord, and believe in your heart that God raised Him from the dead, you shall be saved" - Romans 10:9
Description: S/MIME Cryptographic Signature