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

[debian-devel:04316] Re: [debian-users:06881] Re: Date field is +0000 in mh-ja



久保田です。

From: NABETANI Hidenobu <nabetani@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
Subject: [debian-users:06881] Re: Date field is +0000 in mh-ja
Date: Fri, 10 Jul 1998 08:42:44 +0900

> > mh に含まれる post コマンドや send コマンドを直接使ったところ、
> > +0000 となったので、mh の責任のようです。現在、調べています。
> 
> よろしくお願いします。
> 一応、/usr/doc/mh-ja/doc-JP/OPTIONS.JP.gz を読んだ限りでは、
> ZONEINFO,TZNAME あたりがあやしいと思いました。

じつは、もっと根が深いんです。ソースを追っかけてみたんですが、
timezone というグローバル変数が設定されていないことが分かりました。
問題となっているのは、zotnet/tws/dtime.c の 176 行目の、

#if	defined(SYS5)
    tzset ();
    tw.tw_zone = -(timezone / 60);

という部分です。

そこで、

#include <stdio.h>
#include <time.h>
main()
{
	struct tm *tm;
	time_t t;
	time(&t);
	tm=localtime(&t);
	printf("timezone=%ld\n",timezone);
	printf("tzname[0]=%s, tzname[1]=%s\n",tzname[0],tzname[1]);
}

というプログラムを作ってみたんですが、

timezone=0
tzname[0]=JST, tzname[1]=JST

という結果になります。一方、master.debian で同じプログラムを
コンパイルして動かしたところ、

timezone=-32400
tzname[0]=JST, tzname[1]=   

となりました。さらに、master.debian でコンパイルしたバイナリを
ftp で取って来て実行すると、

timezone=-32400
tzname[0]=JST, tzname[1]=   

となりますので、当方のクロックの設定ミスということはありません。

ちなみに、本家の mh も、同じ症状を抱えています。

/******************************************************************
 * 久保田智広  Tomohiro KUBOTA
 * kubota@xxxxxxxxxxxxxxxxxxxxx / kubota@xxxxxxxxxxxxxxxxxxxxxxxxxx
 * http://kubota.rcpom.osaka-u.ac.jp/students/kubota/index-j.html
 * 560-8531 大阪府豊中市待兼山町1-3 大阪大学 有機光工学研究センター
 * 06-850-6698(TEL) / 06-850-6699(FAX)
 ******************************************************************/