Hi Mark,

Thanks for the quick response (and for your work on UW IMAP generally).

Have you verified your /etc/services file to verify that imaps is defined on port 993, and verified your [x]inetd configuration?

Actually, I run tcpserver :-), but yes, both imap 143 and imaps 993 are open 
for business.

If you haven't already done so, try increasing the log level of your mail syslog to include DEBUG level logs. You should see a "service init" log from imapd when it starts; what is the text of those "service init" logs associated with the failed SSL attempts?

Interestingly, I could not find any 'service init' entries in my logs! Since I know that DEBUG-level logging works (since I used it to debug my local IMAP hacks), I got suspicious and patched server_init() as follows:

--- src/osdep/unix/env_unix.c.orig      Wed Nov 15 22:17:56 2006
+++ src/osdep/unix/env_unix.c   Wed Nov 15 22:21:25 2006
@@ -440,8 +440,14 @@ void server_init (char *server,char *ser
     openlog (server,LOG_PID,LOG_MAIL);
     fclose (stderr);           /* possibly save a process ID */
     dorc (NIL,NIL);            /* do systemwide configuration */
+    /* BEGIN aki.ziemas.net */
+ syslog(LOG_DEBUG, "server_init: server=%s service=%s sslservice=%s",server,service,sslservice);
+    /* END aki.ziemas.net */
     /* Use SSL if SSL service, or if server starts with "s" and not service */
     if (((port = tcp_serverport ()) >= 0)) {
+      /* BEGIN aki.ziemas.net */
+      syslog(LOG_DEBUG, "server_init: port=%d",port);
+      /* END aki.ziemas.net */
       if ((sv = getservbyname (service,"tcp")) && (port == ntohs (sv->s_port)))
        syslog (LOG_DEBUG,"%s service init from %s",service,tcp_clientaddr ());
       else if ((sv = getservbyname (sslservice,"tcp")) &&


Then, I attempted to connect from Thunderbird on a remote Linux machine. First, the TLS variant:

  Nov 15 22:39:41 aki imapd[2727]: server_init: server=imapd service=imap 
sslservice=imaps
  Nov 15 22:39:42 aki imapd[2727]: Authenticated user=zlaski host=xxx [x.x.x.x]


Then, the SSL variant:

  Nov 15 22:36:55 aki imapd[2717]: server_init: server=imapd service=imap 
sslservice=imaps
Nov 15 22:37:57 aki imapd[2717]: Command stream end of file, while flushing line user=??? host=xxx [x.x.x.x]

(Host name and IP elided to protect the guilty.)

So, it appears that (apart from hooking up signal handlers) server_init() doesn't actually do anything since tcp_serverports() returns 0 or less! So I guess the SSL init stuff must get called some other way (and I'm assuming it _is_ being called, since TLS works). I'll keep digging...

Thanks again,

--Zem
_______________________________________________
Imap-uw mailing list
[email protected]
https://mailman1.u.washington.edu/mailman/listinfo/imap-uw

Reply via email to