I know this problem has come up before, but the solutions I have found in the FAQ and via Google don't seem to address it. Mainly what I'm seeking from this list is some guidance on how to increase debugging output so I can solve the problem on my own, rather than expecting someone else to solve it for me. :-)
I have a new installation of Courier-IMAP 4.0.6 and Courier-Authlib 0.58, built from source, on RHEL 4.0. I want to use authmysql, and have the tables laid out according to Vexim schema and populated with a test domain and user. For ease of testing, I'm using only the POP3 service for now, and will add IMAP later. (I tried also starting IMAP first, in case there was a hidden dependency, but it didn't change the symptoms.) When I try to run $ authtest -s pop3 [EMAIL PROTECTED] (password_here) or to do a POP3 login from a telnet to port 110, I get the following failure (passwords and domain name redacted): DEBUG: LOGIN: ip=[(null)], [EMAIL PROTECTED] DEBUG: LOGIN: ip=[(null)], password=(password_here) ERR: authdaemon: s_connect() failed: No such file or directory Authentication FAILED: No such file or directory From the debug log after a telnet login: Dec 16 11:49:24 myhost pop3d: Connection, ip=[::ffff:127.0.0.1] Dec 16 11:49:32 myhost pop3d: authdaemon: s_connect() failed: No such file or directory Dec 16 11:49:32 myhost pop3d: LOGIN FAILED, [EMAIL PROTECTED], ip=[::ffff:127.0.0.1] Dec 16 11:49:32 myhost pop3d: authentication error: No such file or directory What puzzles me is that I've got debugging set at level 2, but this is all the output I get. It never tells me what file path is missing or the name of the calling module so I can refer easily to the source code. I've done Courier-IMAP installs before (but not with the new version), so I checked all the usual suspects...missing Maildir, wrong permissions on the directory to hold the socket, MySQL authentication, MySQL socket path, etc. When that yielded no answer, I Googled on the error message and checked things I found there. CONFIGURATION DETAILS: The ./configure commands for the two Courier packages were: Authlib (as root): # ./configure --prefix=/usr/local/courier --with-authmysql \ --without-authvchkpw --without-authshadow --without-authpwd --without-authpam --without-authcustom --without-authpipe \ --with-authdaemonrc=/usr/local/etc/authdaemonrc \ --with-authdaemonvar=/var/run/courier --with-mailuser=mail \ --with-mailgroup=mail --sysconfdir=/usr/local/etc --with-redhat IMAP (as non-root user): $ export COURIERAUTHCONFIG=/usr/local/courier/bin/courierauthconfig $ ./configure --prefix=/usr/local/courier --with-mysql --with-redhat \ --sysconfdir=/usr/local/etc Configuration files (comments removed and passwords redacted) are: /usr/local/etc/authdaemonrc: authmodulelist="authmysql" authmodulelistorig="authuserdb authpgsql authldap authmysql" daemons=5 authdaemonvar=/var/run/courier DEBUG_LOGIN=2 DEFAULTOPTIONS="" LOGGEROPTS="" /usr/local/etc/pop3d: PIDFILE=/var/run/courier/pop3d.pid MAXDAEMONS=40 MAXPERIP=4 POP3AUTH="PLAIN LOGIN" POP3AUTH_ORIG="PLAIN LOGIN CRAM-MD5 CRAM-SHA1 CRAM-SHA256" POP3AUTH_TLS="" POP3AUTH_TLS_ORIG="LOGIN PLAIN" POP3_PROXY=0 PORT=110 ADDRESS=127.0.0.1 TCPDOPTS="-nodnslookup -noidentlookup" LOGGEROPTS="-name=pop3d" POP3DSTART=NO MAILDIRPATH=Maildir (Note...For testing, I have ADDRESS=127.0.0.1 to block remote access. I know I need to change that for production.) /usr/local/etc/authlib/authmysqlrc: MYSQL_SERVER localhost MYSQL_USERNAME courier MYSQL_PASSWORD ***REDACTED*** MYSQL_SOCKET /var/lib/mysql/mysql.sock MYSQL_PORT 0 MYSQL_OPT 0 MYSQL_DATABASE vexim MYSQL_USER_TABLE users MYSQL_CRYPT_PWFIELD crypt MYSQL_CLEAR_PWFIELD clear MYSQL_UID_FIELD uid MYSQL_GID_FIELD gid MYSQL_LOGIN_FIELD username MYSQL_HOME_FIELD CONCAT("/home/mail/domains/",SUBSTRING(username FROM POSITION('@' IN username)+1)) MYSQL_NAME_FIELD realname MYSQL_MAILDIR_FIELD smtp MYSQL_QUOTA_FIELD quota MYSQL_WHERE_CLAUSE enabled I have tested from the command line to assure that $ mysql --user=courier --password=***REDACTED*** vexim works, and that I can do SELECT commands on the tables. Contents of the relevant row in vexim.users are: user_id: 5 domain_id: 3 localpart: postmaster username: [EMAIL PROTECTED] clear: ***REDACTED*** crypt: $1$8r***REDACTED*** uid: 8 gid: 12 smtp: /home/mail/domains/sandbox.example.org/postmaster/Maildir pop: /home/mail/domains/sandbox.example.org/postmaster type: local admin: 1 on_avscan: 0 on_blocklist: 0 on_complexpass: 0 on_forward: 0 on_piped: 0 on_spamassassin: 0 on_vacation: 0 enabled: 1 flags: NULL forward: NULL unseen: 0 maxmsgsize: 0 quota: 0 realname: Domain Admin sa_tag: 0 sa_refuse: 0 tagline: NULL vacation: NULL The directory /home/mail/domains/sandbox.example.org/postmaster/Maildir, and subdirectories new, cur, and tmp, exist and are owned by and writable by user and group mail. I can successfully run "/usr/local/courier/libexec/pop3d.rc start", after which I see the following processes (line breaks added for readability): # ps -ef | grep cour root 26266 1 0 Dec15 ? 00:00:00 /usr/local/courier/sbin/courierlogger -pid=/var/run/courier/pop3d.pid -start -name=pop3d /usr/local/courier/libexec/couriertcpd -address=127.0.0.1 -maxprocs=40 -maxperip=4 -nodnslookup -noidentlookup 110 /usr/local/courier/sbin/pop3login /usr/local/courier/bin/pop3d Maildir root 26267 26266 0 Dec15 ? 00:00:00 /usr/local/courier/libexec/couriertcpd -address=127.0.0.1 -maxprocs=40 -maxperip=4 -nodnslookup -noidentlookup 110 /usr/local/courier/sbin/pop3login /usr/local/courier/bin/pop3d Maildir Since startup gave no error message, I assume everything here is as it should be, but I haven't run Courier IMAP 4.x before, so that may be a bad assumption on my part. (Should I see separate processes for authdaemon as I did in the old version of Courier IMAP?) /var/run/courier exists and (for testing, to eliminate one source of problems) has permissions 777. /var and /var/run have permissions 755. One thing I notice is that there is no socket in the /var/run/courier directory. pop3d.pid and pop3d.pid.lock exist, but no socket file. I notice that there is an "authmksock" program that compiles with the authlib. Do I need to run that to create the socket for authdaemon? My specific questions are: 1. How do I find out what file the program is seeking and not finding? 2. Should I see the socket file in /var/run/courier/ any time pop3d is running, or is its existence transient and only present during an actual user authentication? 2. Is there something wrong with the paths I'm using for the home directory vis-a-vis the Maildir directory? 3. In the "pop3d" config file, what does the MAILDIRPATH command do when one is theoretically obtaining that info from authmysql? Am I setting this value incorrectly? Thanks for any assistance/advice someone can offer. I've always liked Courier IMAP, and I'm sure this will turn out to be my config error rather than a code bug -- but I'm stumped on what I've done wrong. Kind regards, Scott -- ------------------------------------------------------------------------------ Scott Courtney | "I don't mind Microsoft making money. I mind them [EMAIL PROTECTED] | having a bad operating system." -- Linus Torvalds http://4th.com/ | ("The Rebel Code," NY Times, 21 February 1999) | PGP Public Key at http://4th.com/keys/scott.pubkey ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37&alloc_id865&op=click _______________________________________________ Courier-imap mailing list Courier-imap@lists.sourceforge.net Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-imap