Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Jan 1999 11:11:37 +1100 (EST)
From:      "Daniel O'Callaghan" <danny@hilink.com.au>
To:        David Greenman <dg@root.com>
Cc:        pekarske_bob@burr-brown.com, Matthew Hunt <mph@pobox.com>, freebsd-bugs@FreeBSD.ORG, pekarske_bob@u2.bbrown.com
Subject:   Re: Y2K 
Message-ID:  <Pine.BSF.3.96.990103105549.14678B-100000@enya.clari.net.au>
In-Reply-To: <199812282206.OAA14092@implode.root.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 28 Dec 1998, David Greenman wrote:

> >I believe most companies will not / cannot do extensive testing of
> >purchased products for Y2k. They will seek vendor compliance statements and
> >then chose a course of action - usually upgrade or replace.
> >
>    In fact we have done extensive testing and I believe the answer is "yes"
> to all of the concerns that you raised in your previous email. ...but I can't
> and won't give you any guarantees - other than if a bug is found, we'll work
> to fix it. Doing any more than this opens us to legal liability if something
> is missed and we don't have the resources to fight that.

What about a web page which lists all of the occurrences of
gettimeofday(2) in the sources, with a description of what they are used
for.  I think that we could be confident of stating that any program in
the standard sources which has anything to do with the current time would
use the gettimeofday(2) call.  If appropriate, a similar audit of
ctime(3) calls could be mounted, but it is almost safe to assume that
ctime(3) is called after gettimeofday(2), and we know that the ctime(3)
routines are y2k compliant anyway.  Ditto strftime(3) calls.

Yes, I know that this exercise does nothing to make FreeBSD y2k compliant,
but it will help to raise the level of y2k confidence in FreeBSD in those
who have concerns.  It is a PR exercise, but a worthwile one.  We must
turn our open sources to advantage, once again, so we can state not that
we are compliant, but which bits needed to be examined, and what those
bits actually do.

To this end, I have made a start with src/usr.bin.

Comments?

Danny


Occurrences of gettimeofday(2) call in src/usr.bin/*
----------------------------------------------------
usr.bin/compile_et/error_table.y - 6 digits of current time in 100ths of a 
				   second are used to generate a symbol.
usr.bin/doscmd/bios.c	- convert current time to clock ticks for DOS
usr.bin/doscmd/cmos.c	- simulate reading of RTC for DOS
usr.bin/doscmd/dos.c	- simulate reading of RTC for DOS, with TZ
usr.bin/doscmd/doscmd.c - set DOS "boot time"
usr.bin/doscmd/int1a.c  - various date/time  calls to DOS int 0x1a.  Function
			  0x04 returns date.  R_CL = yr % 100;
			  R_CH = int(yr/100); Compliant to 2038.
usr.bin/fetch/main.c	- show elapsed time for transfer in seconds.
usr.bin/ftp/ftp.c	- set access time on transferred file when modification
			  time is preserved from original.
usr.bin/ftp/util.c	- calculate time remaining in seconds for transfer
usr.bin/lock/lock.c	- get current time to determine time for lockout.
			  Timeout period is specified in minutes, and is 
			  thus not year-sensitive.
usr.bin/login/login.c	- Check password change and expiry times (comparison
			  done as seconds since the epoch)
usr.bin/newkey/generic.c - current time seconds+useconds used to seed srand()
usr.bin/passwd/local_passwd.c - generate random salt for passwords
usr.bin/pr/pr.c		- prints current time/date using strftime()
usr.bin/quota/quota.c	- determine elapsed time
usr.bin/rdist/docmd.c	- set file access/mod time to current time.
usr.bin/tftp/tftp.c	- show elapsed time for transfer in seconds.
usr.bin/time/time.c	- calculate elapsed time for process execution, in sec
usr.bin/tip/libacu/tod.c - calc inter-command delays for talking to modem.
usr.bin/tn3270/sys_curses/system.c - random seed for srandom()
usr.bin/touch/touch.c	- set file access/mod time to current time.
usr.bin/vi/config.h	- In a comment; not used.
usr.bin/vi/port.h	- In a comment; not used.
usr.bin/window/lcmd2.c  - prints current elapsed time in hours:min:sec.
usr.bin/window/main.c	- sets start time, to calc elapsed time.




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.990103105549.14678B-100000>