From owner-freebsd-questions Sun Sep 24 15:12:18 2000 Delivered-To: freebsd-questions@freebsd.org Received: from roma.coe.ufrj.br (roma.coe.ufrj.br [146.164.53.65]) by hub.freebsd.org (Postfix) with ESMTP id 6E63637B424; Sun, 24 Sep 2000 15:11:58 -0700 (PDT) Received: (from uucp@localhost) by roma.coe.ufrj.br (8.9.3/8.9.3) id TAA06142; Sun, 24 Sep 2000 19:11:52 -0300 (EST) (envelope-from jonny@jonny.eng.br) Received: from localhost.coe.ufrj.br(127.0.0.1), claiming to be "jonny.eng.br" via SMTP by localhost.coe.ufrj.br, id smtpdUo6127; Sun Sep 24 19:11:42 2000 Message-ID: <39CE7C12.59AE80C5@jonny.eng.br> Date: Sun, 24 Sep 2000 19:11:30 -0300 From: Joao Carlos Mendes Luis Organization: Internet via Embratel X-Mailer: Mozilla 4.74 [en] (Win98; U) X-Accept-Language: pt-BR,pt,en MIME-Version: 1.0 To: Mark Ovens Cc: questions@freebsd.org Subject: Re: mktime(3) Y2K bug? References: <39CD8FD9.F2B7419@jonny.eng.br> <20000924115101.A252@parish> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG What could this mean? krakatoa::root [629] ./a.out t = -1 Wed Dec 31 20:59:59 1969 krakatoa::root [630] TZ=EST3EDT ./a.out t = 970365660 Sun Oct 1 00:01:00 2000 krakatoa::root [631] Mark Ovens wrote: > > On Sun, Sep 24, 2000 at 02:23:37AM -0300, Joao Carlos Mendes Luis wrote: > > Hi, > > > > Try the following piece of code: > > > > #include > > > > main() > > { > > struct tm tm; > > time_t t; > > > > bzero( &tm, sizeof tm ); > > tm.tm_sec = 0; > > tm.tm_min = 1; > > tm.tm_hour = 0; > > tm.tm_mday = 1; > > tm.tm_mon = 9; > > tm.tm_year = 100; > > tm.tm_isdst = -1; > > > > t = mktime( &tm ); > > printf( "t = %ld\n", t ); > > printf( "%s", ctime( &t ) ); > > } > > > > > > My results: > > > > FreeBSD: > > > > t = -1 > > Wed Dec 31 20:59:59 1969 > > > > Hmm, what version of FreeBSD? It works OK for me on 4.1-STABLE: > > /usr/marko{52}% cat > foo.c > #include > > main() > { > struct tm tm; > time_t t; > > bzero( &tm, sizeof tm ); > tm.tm_sec = 0; > tm.tm_min = 1; > tm.tm_hour = 0; > tm.tm_mday = 1; > tm.tm_mon = 9; > tm.tm_year = 100; > tm.tm_isdst = -1; > > t = mktime( &tm ); > printf( "t = %ld\n", t ); > printf( "%s", ctime( &t ) ); > } > /usr/marko{53}% cc -o foo foo.c > /usr/marko{54}% ./foo > t = 970354860 > Sun Oct 1 00:01:00 2000 > /usr/marko{55}% > > > Solaris: > > > > t = 970369260 > > Sun Oct 1 00:01:00 2000 > > > > Linux: > > > > t = -1 > > Wed Dec 31 20:59:59 1969 > > > > If I change tm_year to 99, everything is ok. > > > > Is this a bug, or just something stupid I can´t see at 2am without > > enough coffe? > > > > I found this executing at(1) as "at 10/01/00", if that matters. > > > > TIA, > > > > Jonny > > > > -- > > João Carlos Mendes Luís jonny@embratel.net.br > > Networking Engineer jonny@jonny.eng.br > > Internet via Embratel jcml@ieee.org > > > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > > with "unsubscribe freebsd-questions" in the body of the message > > -- > 4.4 - The number of the Beastie > ________________________________________________________________ > 51.44°N FreeBSD - The Power To Serve http://www.freebsd.org > 2.057°W My Webpage http://ukug.uk.freebsd.org/~mark > mailto:marko@freebsd.org http://www.radan.com -- Jonny -- João Carlos Mendes Luís jonny@embratel.net.br Networking Engineer jonny@jonny.eng.br Internet via Embratel jcml@ieee.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message