Index of /qmail/patches/qmail-popup-auth_cram_md5

Icon  Name                                                        Last modified      Size  
[   ] Makefile.patch 03-Mar-2004 12:30 1.1K [TXT] base64.c 03-Mar-2004 12:28 2.7K [TXT] base64.h 03-Mar-2004 12:28 91 [   ] courier-imap-3.0.0-with-cram-md5-v02.patch 05-Mar-2004 12:28 5.1K [TXT] courier-imap-3.0.0-with-cram-md5-v03.patch 05-Mar-2004 16:52 5.1K [   ] netqmail-1.05-popup-auth_cram-md5_capa.patch 11-Mar-2004 11:52 8.3K [   ] netqmail-1.05-with_smtp_auth-popup-auth_cram-md5_capa.patch 11-Mar-2004 11:42 4.4K [TXT] qmail-popup.c.patch 08-Mar-2004 19:19 4.0K [TXT] vpopmail-5.4.x.patch 05-Mar-2004 12:28 663 [TXT] vpopmail-5.4.x_with_qmailqueue.patch 09-Mar-2004 11:54 1.2K [TXT] vpopmail-5.4.x_with_qmailqueue_simscan.patch 18-May-2005 14:48 1.6K

This patch adds AUTH CRAM-MD5 to qmail-popup. The POP3 protocol
supports the AUTH extension for other authentication mechanisms
besides the cleartext USER/PASS sequence or the APOP
authentication. The required AUTH command is described in RFC1734 [1],
the CRAM-MD5 method is described in RFC2195 [2].

AUTH CRAM-MD5 is supported by a selection of POP3 clients.

The introduction of AUTH requires qmail-popup to respond to the CAPA
command, so CAPA is part of this patch.

   +OK <>
   +OK Capability list follows

To use this patched version of (net)?qmail you need a checkpassword [3]
compatible password checking tool that understands to manage CRAM-MD5
authentication. As CRAM-MD5 is one of the authentication methods
available with all current SMTP-AUTH patches, any tool that works with
CRAM-MD5 as SMTP authentication should also work with CRAM-MD5 as POP3
authentication (at least with minor modifications) as the same
interface is used.


Get the patch from the following location:

If you do not use SMTP authentication, just install the patch over 
netqmail-1.05 [4]:

   patch -p0 < netqmail-1.05-popup-auth_cram-md5_capa.patch

The patch modifies qmail-popup.c, Makefile, TARGETS and adds the two
files base64.[ch].

If you use SMTP authentication (qmail-smtpd-auth-0.4.2 by Erwin
Hoffmann [5] is recommened), just apply the changes to qmail-popup.c
and the second hunk of the changes to Makefile (adding base64 to

You can also do this by doing:
   patch -p0 < netqmail-1.05-with_smtp_auth-popup-auth_cram-md5_capa.patch

ATTENTION: this patch is not thorougly tested yet. Use with caution.

Notes on vpopmail

This patch does work with current versions of vpopmail (5.4.x) only if
you patch vchkpw.c to enable CRAM-MD5 authentication for POP3. This
can be done by adding two line to vchkpw.c or applying the following

   patch -p0 vpopmail-5.4.x.patch 


I did not do much by myself. This patch uses much code from:

* qmail-smtpd-auth-0.4.2 by Erwin Hoffmann [5]

  I copied most of his code from qmail-smtpd.c to qmail-popup.c and
  did some minor modifications to make it work for qmail-popup.c. 

* qmail-smtp-vlad by Vladimir Kabanov [6]

  I took the CAPA command from him. He also provided me with a
  CRAM-MD5 version and patches for vpopmail 5.2.x I successfully used
  over years. I did not use his AUTH code for this patch but remember 
  his friendly advice.

Author and License

In case of trouble or questions contact:
Alex Pleiner, zeitform Internet Dienste,

This code is free. The terms of the GNU GPL [7] apply.