IMAP v2.4.2 imap process crashes if imapd.conf doesn't define servername or syslog_prefix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



http://bugzilla.cyrusimap.org/bugzilla3/show_bug.cgi?id=3292

 

I installed and started Cyrus IMAP v2.4.2 on Solaris 9 Sparc.  Every time I

tried to connect, the connection would fail and the log would show (for

example) "process 12723 exited, signaled to death by 11".  If I added a

definition for "servername" to the imapd.conf file, it would run OK and I was

able to connect.  The code causing the problem is in the function

session_new_id() in the file imap/global.c:

 

    base = config_getstring(IMAPOPT_SYSLOG_PREFIX);

    if (!base) base = config_getstring(IMAPOPT_SERVERNAME);

    snprintf(session_id_buf, MAX_SESSIONID_SIZE, "%.128s-%d-%d-%d",

             base, getpid(), session_id_time, session_id_count);

 

 

servername and syslog_prefix are documented as optional, but if neither one is

explicitly defined in imapd.conf, then the character pointer "base" is zero,

which causes a SEGV in snprintf().

 

 

 

Larry

 

----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/

[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux