rfc822date bug

Sergey Mukhin info-cyrus at sm.msk.ru
Wed Feb 4 03:04:25 EST 2004


Just had installed cyrus-imapd-2.2.3 and again noticed a small
but annoying effect in the date inserted into the message
by cyrus.

My time zone is +0300 (MSK) and timestamps get set like

Received: from myhost.mydomain.Ru ([unix socket])
      by myhost.mydomain.Ru (Cyrus v2.2.3) with LMTP; Wed, 04 Feb 2004 06:07:23 +30

Note the timezone:  `+30'  instead of `+0300'

Most of my customers use Outlook ( sorry but so it is ) and it
gets the date of message from last Received: field, i.e. from
field inserted by Cyrus.

So outlook dates all messages by timezone +30 hours instead of +3 hours
and customers see the date of 27 hours before the actual one and
get annoyed.

The OS is FreeBSD  ( versions at least from 4.8 to 5.1 ).

I have fixed the problem changing a line in lib/rfc822date.c
this way:

<    snprintf(buf, len, "%s, %02d %s %4d %02d:%02d:%02d %c%.2lu%.2lu",
>    snprintf(buf, len, "%s, %02d %s %4d %02d:%02d:%02d %c%02u00",

    Sergey Mukhin                       |
    Head of Internet department         |    http://sm.msk.ru/
    WestCall LTD, Moscow, Russia        |    SM45-RIPE
*     If you can't learn do it well learn to enjoy doing it badly.     *

More information about the Info-cyrus mailing list