Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: binary MIME-Version: 1.0 X-Mailer: MIME-tools 5.411 (Entity 5.404) X-RT-Original-Encoding: iso-8859-1 Content-Length: 2428 From chas@cmf.nrl.navy.mil Mon May 1 16:46:07 2000 Received: from MIT.EDU (SOUTH-STATION-ANNEX.MIT.EDU [18.72.1.2]) by rt-11.mit.edu (8.9.3/8.9.3) with SMTP id QAA26735 for ; Mon, 1 May 2000 16:46:03 -0400 (EDT) Received: from ginger.cmf.nrl.navy.mil by MIT.EDU with SMTP id AA25282; Mon, 1 May 00 16:45:59 EDT Received: from fermi.cmf.nrl.navy.mil (fermi.cmf.nrl.navy.mil [134.207.10.73]) by ginger.cmf.nrl.navy.mil (8.9.3/8.9.3) with ESMTP id QAA03385 for ; Mon, 1 May 2000 16:45:53 -0400 (EDT) Received: (chas@localhost) by fermi.cmf.nrl.navy.mil (8.6.12/8.6.11) id QAA10699; Mon, 1 May 2000 16:45:49 -0400 Message-Id: <200005012045.QAA10699@fermi.cmf.nrl.navy.mil> Date: Mon, 1 May 2000 16:45:49 -0400 From: Chas Williams Reply-To: chas@cmf.nrl.navy.mil To: krb5-bugs@MIT.EDU Subject: bug in krb5/lib/str_conv.c::krb5_timestamp_to_[sf]string() X-Send-Pr-Version: 3.99 >Number: 851 >Category: krb5-libs >Synopsis: krb5_timestamp_to_[sf]string() fails to correct for macintosh epoch >Confidential: no >Severity: non-critical >Priority: low >Responsible: krb5-unassigned >State: open >Class: sw-bug >Submitter-Id: unknown >Arrival-Date: Mon May 1 16:47:00 EDT 2000 >Last-Modified: >Originator: Chas Williams >Organization: Naval Research Laboratory, Washington, DC >Release: 1.0pl1 >Environment: power mac g4, macos 9.0 code warrior pro 4 >Description: krb5_timestamp_to_string() and krb5_timestamp_to_sfstring() in krb5/lib/str_conv.c fails to correct for the macintosh epoch which is about 70 years different from the unix epoch. generally, unix timestamps needs to be 'offseted' before being sent through the 'ansi' date routines on the macintosh this problem probably also exists in the mit kerberos for the macintosh release unless the custom libc used by the mit programmers already corrects for this 'defect' >How-To-Repeat: very few applications on the macintosh actually convert timestamps to a human readable format, so its difficult to reproduce unless you have one of these applications. >Fix: something like this needs to be added fairly early to the routines: #ifdef macintosh extern krb5_int32 getTimeZoneOffset(); timestamp += (((70 * 365) + 17) * 24 * 3600) + getTimeZoneOffset(); #endif /* macintosh */ >Audit-Trail: >Unformatted: