Blog du Metabaron

Aller au contenu | Aller au menu | Aller à la recherche

vendredi 21 septembre 2007

courier-authlib 0.59.3 et auth_vchkpw_login

Avec la version 0.59.3 de courier-authlib, il est possible de tomber sur une erreur du type:

authvchkpw.c: At top level:
authvchkpw.c:103: error: static declaration of 'auth_vchkpw_login' follows non-static declaration
authvchkpw.c:86: error: previous implicit declaration of 'auth_vchkpw_login' was here
authvchkpw.c: In function 'auth_vchkpw_changepass':
authvchkpw.c:184: warning: passing argument 1 of 'parse_email' discards qualifiers from pointer target type

Le probleme vient d'une liberte prise lors du developpement que GCC ne supporte pas. Pour le resoudre, il faut utiliser le patch suivant:

--- courier-authlib-0.59.3/authvchkpw.c 2007-04-22 20:53:30.000000000 +0200
+++ courier-authlib-0.59.3b/authvchkpw.c        2007-04-25 17:53:58.908980669 +0200
 -55,16 +55,19 
        return (*i->callback_func)(a, i->callback_arg);
 }

 #if HAVE_HMACLIB

 #include        "libhmac/hmac.h"
 #include        "cramlib.h"

+static int auth_vchkpw_login(const char *service, char *authdata,
+        int (*callback_func)(struct authinfo *, void *), void *callback_arg);
+

 static int auth_vchkpw_cram(const char *service,
                            const char *authtype, char *authdata,
                            int (*callback_func)(struct authinfo *, void *),
                            void *callback_arg)
 {
         struct  cram_callback_info      cci;

Vous creez alors un fichier, vous faite un "patch < nom_fichier" et la commande "make" devrait aller jusqu'au bout. (merci a broza pour avoir annonce mon erreur)

lundi 13 août 2007

Qmail-scanner et Spamassassin

Bon, vous etes sous Debian et vous venez d'installer Spamassassin dans le cadre de l'installation d'un nouveau serveur de mail faisant tourner Qmail:

# apt-get install spamassassin

Le probleme, c'est que Spamassassin n'est pas vu par votre installation de Qmail-Scanner et cela vous embete bien

scanners="clamscan"

Et bien, la solution est toute simple:

# apt-get install spamc

Et Qmail-Scanner vous retourne alors:

scanners="clamscan","fast_spamassassin"

vendredi 10 août 2007

Qmail et authdaemon

Tous le monde utilise (ou devrait utiliser) le bon tutorat de Sylvestre Ledru qui explique l'installation pas a pas de Qmail et de toute la suite permettant de l'utiliser et de si connecter.
Apres avoir installe Qmail en suivant ce tutorat, vous allez voir apparaitre, dans votre fichier log (/var/log/mail.err) un message de ce type:

Feb 18 23:05:16 linux imapd: authdaemon: s_connect() failed: Permission denied
Feb 18 23:05:16 linux imapd: authentication error: Permission denied

Et oui, le tutorat oubli de preciser qu'il faut faire en sorte que le daemon de courier-authlib demarre automatiquement avec chaque demarrage du serveur.
Afin de resoudre ce probleme, voici la marche a suivre:

# cp /home/metabaron/courier-authlib-0.59.3/courier-authlib.sysvinit /etc/init.d/courier-authlib
# chmod 744 /etc/init.d/courier-authlib
# /etc/init.d/courier-authlib start

Et, pour permettre que votre script demarre automatiquement:

# update-rc.d courier-authlib defaults

Et le tour est joue. C'est si dommage de faire un tutorat si complet et d'oublier ce petite detail ;)