libnewmail 0.3 review
Downloadlibnewmail is a generic mail checking library for Unix/Linux and other operating systems
|
|
libnewmail is a generic mail checking library for Unix/Linux and other operating systems. It supports a simple API, an extensible plugin architecture and asynchronous queries among other features.
libnewmail library is intented to be a replacement for all that crappy and incomplete code of all those mail checking utilities available. Applications linking to libnewmail may enumerate configured mailboxes, query mail box information and status and request a mail spool auto-detection for users without any libnewmail specific configuration. The library offers a clean API to implement your own mail checking plugins.
Programs using libnewmail may query for both the boolean availability and the number of available mails. (The former is usually much faster than the latter) The library is able to distuingish between new (unread) and old (read, current) mails. It includes four CLI tools easy, nmail, nmail-async and nm-spoolhackusing the libnewmail API for mail checking. They are intended to be an example how to use the API with either the synchronous or the asynchronous interface.
The utility nm-spoolhack serves a special purpose: mail checking applets using the stat() trick to check the status of Unix mail spools may be tought new tricks by pointing them to the emulated mail spool generated by this tool according to another (remote) mail spool. The emulated spool is at most a single byte in size but carries the right stat() attributes to fool the applets. This way you may use the Gnome mail check applet to query IMAPS mail spools, as an example. It's a hack, but it works quite well.
Currently libnewmail includes plugins for the following mailbox protocols:
Unix mail spool (libunix.so)
qmail Maildir (libmaildir.so)
POP3 with SSL and APOP (libpop3.so)
IMAP4rev1 with SSL (libimap.so)
There is an API for a graphical configuration interface. However, this is currently a NOOP. This feature will be added eventually
Requirements:
libnewmail was developed and tested on Debian GNU/Linux "testing" from May 2003, it should work on most other Linux distributions and Unix versions since it uses GNU Autoconf and GNU libtool for source code configuration and shared library management.
The library uses liboop for main loop abstraction for asynchronous queries and may thus be integrated with GTK+ and other toolkits supported by liboop.
libnewmail uses GnuTLS for SSL encryption of POP3 and IMAP4 remote mailbox access.
Installation:
As this package is made with the GNU autotools you should run ./configure inside the distribution directory for configuring the source tree. After that you should run make for compilation and make install (as root) for installation of libnewmail.
libnewmail 0.3 keywords