summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/time/Theory22
-rw-r--r--lib/libc/time/WWW.htm104
-rw-r--r--lib/libc/time/ctime.311
-rw-r--r--lib/libc/time/localtime.c19
-rw-r--r--lib/libc/time/private.h19
-rw-r--r--lib/libc/time/strftime.341
-rw-r--r--lib/libc/time/strftime.c21
-rw-r--r--lib/libc/time/tz-art.htm (renamed from lib/libc/time/Arts.htm)58
-rw-r--r--lib/libc/time/tz-link.htm195
-rw-r--r--lib/libc/time/zic.86
-rw-r--r--lib/libc/time/zic.c14
11 files changed, 336 insertions, 174 deletions
diff --git a/lib/libc/time/Theory b/lib/libc/time/Theory
index 0820c9f9d3d..7d38e130cb4 100644
--- a/lib/libc/time/Theory
+++ b/lib/libc/time/Theory
@@ -1,5 +1,4 @@
-$OpenBSD: Theory,v 1.5 1999/07/01 23:05:39 d Exp $
-@(#)Theory 7.8
+@(#)Theory 7.10
----- Outline -----
@@ -199,7 +198,8 @@ in decreasing order of importance:
`-' and `_'. Do not exceed 14 characters or start with `-'.
E.g. prefer `Brunei' to `Bandar_Seri_Begawan'.
Include at least one location per time zone rule set per country.
- One such location is enough.
+ One such location is enough. Use ISO 3166 (see the file
+ iso3166.tab) to help decide whether something is a country.
If all the clocks in a country's region have agreed since 1970,
don't bother to include more than one location
even if subregions' clocks disagreed before 1970.
@@ -318,6 +318,22 @@ off were the 6th, 12th, 18th, 24th and 30th of the month.
(Source: Evitiar Zerubavel, _The Seven Day Circle_)
+Mark Brader reported a similar story in "The Book of Calendars", edited
+by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:
+
+From: Petteri Sulonen (via Usenet)
+Date: 14 Jan 1999 00:00:00 GMT
+Message-ID: <Petteri.Sulonen-1401991626030001@lapin-kulta.in.helsinki.fi>
+
+If your source is correct, how come documents between 1929 -- 1940 were
+still dated using the conventional, Gregorian calendar?
+
+I can post a scan of a document dated December 1, 1934, signed by
+Yenukidze, the secretary, on behalf of Kalinin, the President of the
+Executive Committee of the Supreme Soviet, if you like.
+
+
+
Sweden (and Finland)
From: msb@sq.com (Mark Brader)
diff --git a/lib/libc/time/WWW.htm b/lib/libc/time/WWW.htm
deleted file mode 100644
index 30bddb8afab..00000000000
--- a/lib/libc/time/WWW.htm
+++ /dev/null
@@ -1,104 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<!-- $OpenBSD: WWW.htm,v 1.3 1999/07/01 23:05:39 d Exp $ -->
-<HTML>
-<HEAD>
-<TITLE>Sources for Time Zone and Daylight Saving Time Data</TITLE>
-</HEAD>
-<BODY>
-<H1>Sources for Time Zone and Daylight Saving Time Data</H1>
-<P>
-<H6>
-@(#)WWW.htm 7.18
-</H6>
-<H2>Paul Eggert writes:</H2><P>
-The public-domain tz database contains code and data
-that represent the history of local time
-for many representative locations around the globe.
-It is updated periodically to reflect changes made by political bodies
-to UTC offsets and daylight-saving rules.
-This database (often called <samp>zoneinfo</samp>)
-is used by several implementations,
-including BSD, DJGPP, GNU/Linux, HP-UX, IRIX, Solaris, and UnixWare.
-In the tz database's
-<A HREF="ftp://elsie.nci.nih.gov/pub/">FTP distribution</A>,
-the code is in the file <samp>tzcode<var>C</var>.tar.gz</samp>,
-where <samp><var>C</var></samp> is the code's version;
-similarly, the data are in <samp>tzdata<var>D</var>.tar.gz</samp>,
-where <samp><var>D</var></samp> is the data's version.
-<P>
-The <A HREF="http://www.gnu.org/software/libc/">GNU C Library</A>
-has an independent, thread-safe implementation of
-a time zone file reader that is compatible with <samp>zoneinfo</samp>.
-This library is freely available under the GNU Library General Public License,
-and is widely used in GNU/Linux systems.
-<P>
-The Web has several other sources for time zone and daylight saving time data.
-Here are some recent links that may be of interest.
-<UL>
-<LI><A HREF="http://www.bsdi.com/date/">Date and Time Gateway</A>
-is a text-based source for tables of current time throughout the world.
-Its point-and-click interface accesses a recent version of the tz data.
-<LI><A HREF="http://worldtime.com/">WORLDTIME: interactive atlas,
-time info, public holidays</A>
-contains information on local time, sunrise and sunset,
-and public holidays in several hundred cities around the world.
-<LI><A HREF="http://www.hilink.com.au/times/">Local Times Around the World</A>
-is a text-based system containing links to local time servers
-throughout the world; though the coverage is limited,
-the live data provide a nice way to check one's tables.
-<LI><A HREF="http://tycho.usno.navy.mil/tzones.html">World Time Zones</A>
-contains US Naval Observatory data, used as the source
-for the <samp>usno*</samp> files.
-<LI>The United States Central Intelligence Agency publishes a
-<A HREF="http://www.odci.gov/cia/publications/factbook/figures/802597.jpg">time
-zone map</A>; the
-<A HREF="http://www.lib.utexas.edu/Libs/PCL/Map_collection/world_maps.html">
-Perry-Casta&ntilde;eda Library Map Collection</A>
-of the University of Texas at Austin has on-line copies of
-recent editions.
-The pictorial quality is good,
-but the maps do not indicate summer time,
-and parts of the data are a few years out of date.
-<LI><A HREF="http://worldtimezone.com/"><SAMP>Worldtimezone.com</SAMP></A>
-has several fancy time zone maps; it covers Russia particularly well.
-The maps' pictorial quality is not quite as good as the CIA's
-and (as usual with maps) the maps are not quite up to date.
-<LI><A HREF="http://pisolo.cstv.to.cnr.it/toi/uk/toi.html">The
-Time of Internet</A>
-contains good descriptions of Time Zones and daylight saving time,
-with diagrams.
-The time zone map is out of date, however.
-<LI><A HREF="http://ecco.bsee.swin.edu.au/chronos/GMT-explained.html">A
-Few Facts Concerning GMT, UT, and the RGO</A>
-answers questions like ``What is the difference between GMT and UTC?''
-<LI><A HREF="http://energy.ca.gov/daylightsaving.html">Daylight
-Saving Time -- Saving Time, Saving Energy</A>
-is a history of DST in the US.
-<LI><A HREF="http://dir.yahoo.com/Science/Measurements_and_Units/Time/Time_Zones/">Yahoo! - Science:Measurements and Units:Time:Time Zones</A>
-is where the famous Internet indexing service Yahoo! collects its time zone
-info.
-<LI>The <A HREF="http://www.iata.org/">International Air Transport Association</A>
-publishes the IATA Standard Schedules Information Manual (SSIM),
-which gives current time zone rules for
-all the airports served by commercial aviation.
-<LI><A HREF="http://hpiers.obspm.fr/webiers/results/bul/README.html">Bulletins
-of IERS</A> contains official publications of the
-International Earth Rotation Service, the committee that decides
-when leap seconds occur.
-</UL>
-<P>
--- <A HREF="mailto:eggert@twinsun.com">eggert@twinsun.com</A>
-(1999-03-22)
-</P>
-<H2>Arthur David Olson writes:</H2><P>
-A good source of information about
-<A HREF="http://www.iso.ch/markete/moreend.htm">ISO 8601</A> seems to be
-<A HREF="http://www.cl.cam.ac.uk/~mgk25/iso-time.html">International
-Standard Date and Time Notation</A>
-maintained by Markus Kuhn.
-<P>
--- <A HREF="mailto:arthur_david_olson@nih.gov">arthur_david_olson@nih.gov</A>
-(1996-01-04)
-</P>
-</BODY>
-</HTML>
diff --git a/lib/libc/time/ctime.3 b/lib/libc/time/ctime.3
index 77b76317040..ccdee7293cd 100644
--- a/lib/libc/time/ctime.3
+++ b/lib/libc/time/ctime.3
@@ -1,4 +1,4 @@
-.\" $OpenBSD: ctime.3,v 1.21 2000/04/15 02:15:26 aaron Exp $
+.\" $OpenBSD: ctime.3,v 1.22 2000/04/16 16:24:03 d Exp $
.\"
.\"
.Dd February 16, 1999
@@ -23,9 +23,9 @@
.Ft void
.Fn tzset "void"
.Ft "char *"
-.Fn ctime "time_t *clock"
+.Fn ctime "const time_t *clock"
.Ft "char *"
-.Fn ctime_r "time_t *clock" "char *buf"
+.Fn ctime_r "const time_t *clock" "char *buf"
.Ft double
.Fn difftime "time_t time1" "time_t time0"
.Ft "char *"
@@ -92,8 +92,7 @@ After filling in the
structure,
.Fn localtime
sets the
-.Fa tm_isdst
-'th
+.Fa tm_isdst Ns No 'th
element of
.Fa tzname
to a pointer to an
@@ -275,4 +274,4 @@ as the superuser.
Avoid using out-of-range values with
.Fn mktime
when setting up lunch with promptness sticklers in Riyadh.
-.\" based on @(#)newctime.3 7.13
+.\" based on @(#)newctime.3 7.14
diff --git a/lib/libc/time/localtime.c b/lib/libc/time/localtime.c
index 944b4258699..399d53802f0 100644
--- a/lib/libc/time/localtime.c
+++ b/lib/libc/time/localtime.c
@@ -4,8 +4,8 @@
*/
#if defined(LIBC_SCCS) && !defined(lint) && !defined(NOID)
-static char elsieid[] = "@(#)localtime.c 7.66";
-static char rcsid[] = "$OpenBSD: localtime.c,v 1.18 2000/01/06 08:24:17 d Exp $";
+static char elsieid[] = "@(#)localtime.c 7.70";
+static char rcsid[] = "$OpenBSD: localtime.c,v 1.19 2000/04/16 16:24:03 d Exp $";
#endif /* LIBC_SCCS and not lint */
/*
@@ -59,6 +59,17 @@ static char wildabbr[] = "WILDABBR";
static const char gmt[] = "GMT";
+/*
+** The DST rules to use if TZ has no rules and we can't load TZDEFRULES.
+** We default to US rules as of 1999-08-17.
+** POSIX 1003.1 section 8.1.1 says that the default DST rules are
+** implementation dependent; for historical reasons, US rules are a
+** common default.
+*/
+#ifndef TZDEFRULESTRING
+#define TZDEFRULESTRING ",M4.1.0,M10.5.0"
+#endif /* !defined TZDEFDST */
+
struct ttinfo { /* time type information */
long tt_gmtoff; /* UTC offset in seconds */
int tt_isdst; /* used to set tm_isdst */
@@ -740,6 +751,8 @@ const int lastditch;
if (name == NULL)
return -1;
} else dstoffset = stdoffset - SECSPERHOUR;
+ if (*name == '\0' && load_result != 0)
+ name = TZDEFRULESTRING;
if (*name == ',' || *name == ';') {
struct rule start;
struct rule end;
@@ -802,8 +815,6 @@ const int lastditch;
if (*name != '\0')
return -1;
- if (load_result != 0)
- return -1;
/*
** Initial values of theirstdoffset and theirdstoffset.
*/
diff --git a/lib/libc/time/private.h b/lib/libc/time/private.h
index cec18889859..82cfeacc91d 100644
--- a/lib/libc/time/private.h
+++ b/lib/libc/time/private.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: private.h,v 1.11 1999/01/29 07:04:05 d Exp $ */
+/* $OpenBSD: private.h,v 1.12 2000/04/16 16:24:04 d Exp $ */
#ifndef PRIVATE_H
#define PRIVATE_H
@@ -33,7 +33,7 @@
#if 0
#ifndef lint
#ifndef NOID
-static char privatehid[] = "@(#)private.h 7.48";
+static char privatehid[] = "@(#)private.h 7.49";
#endif /* !defined NOID */
#endif /* !defined lint */
#endif
@@ -63,6 +63,10 @@ static char privatehid[] = "@(#)private.h 7.48";
#define HAVE_SYMLINK 1
#endif /* !defined HAVE_SYMLINK */
+#ifndef HAVE_SYS_WAIT_H
+#define HAVE_SYS_WAIT_H 1
+#endif /* !defined HAVE_SYS_WAIT_H */
+
#ifndef HAVE_UNISTD_H
#define HAVE_UNISTD_H 1
#endif /* !defined HAVE_UNISTD_H */
@@ -93,6 +97,17 @@ static char privatehid[] = "@(#)private.h 7.48";
#include "libintl.h"
#endif /* HAVE_GETTEXT - 0 */
+#if HAVE_SYS_WAIT_H - 0
+#include <sys/wait.h> /* for WIFEXITED and WEXITSTATUS */
+#endif /* HAVE_SYS_WAIT_H - 0 */
+
+#ifndef WIFEXITED
+#define WIFEXITED(status) (((status) & 0xff) == 0)
+#endif /* !defined WIFEXITED */
+#ifndef WEXITSTATUS
+#define WEXITSTATUS(status) (((status) >> 8) & 0xff)
+#endif /* !defined WEXITSTATUS */
+
#if HAVE_UNISTD_H - 0
#include "unistd.h" /* for F_OK and R_OK */
#endif /* HAVE_UNISTD_H - 0 */
diff --git a/lib/libc/time/strftime.3 b/lib/libc/time/strftime.3
index 1fe3c1ac705..3383ffc3acd 100644
--- a/lib/libc/time/strftime.3
+++ b/lib/libc/time/strftime.3
@@ -33,8 +33,8 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" from: @(#)strftime.3 5.12 (Berkeley) 6/29/91
-.\" $OpenBSD: strftime.3,v 1.9 1999/07/09 13:35:21 aaron Exp $
+.\" from: @(#)strftime.3 5.12 (Berkeley) 6/29/91
+.\" $OpenBSD: strftime.3,v 1.10 2000/04/16 16:24:04 d Exp $
.\"
.Dd January 18, 1998
.Dt STRFTIME 3
@@ -89,37 +89,37 @@ is replaced by the locale's full month name.
is replaced by the locale's abbreviated month name.
.It Cm \&%C
is replaced by the century (a year divided by 100 and truncated to an integer)
-as a decimal number [00,99].
+as a decimal number (00-99).
.It Cm \&%c
is replaced by the locale's appropriate date and time representation.
.It Cm \&%D
is replaced by the date in the format
.Dq Li %m/%d/%y .
.It Cm \&%d
-is replaced by the day of the month as a decimal number [01,31].
+is replaced by the day of the month as a decimal number (01-31).
.It Cm \&%e
-is replaced by the day of month as a decimal number [1,31];
+is replaced by the day of month as a decimal number (1-31);
single digits are preceded by a blank.
.It Cm \&%G
is replaced by the ISO 8601 year with century as a decimal number.
.It Cm \&%g
-is replaced by the ISO 8601 year without century as a decimal number [00,99].
+is replaced by the ISO 8601 year without century as a decimal number (00-99).
.It Cm \&%H
-is replaced by the hour (24-hour clock) as a decimal number [00,23].
+is replaced by the hour (24-hour clock) as a decimal number (00-23).
.It Cm \&%I
-is replaced by the hour (12-hour clock) as a decimal number [01,12].
+is replaced by the hour (12-hour clock) as a decimal number (01-12).
.It Cm \&%j
-is replaced by the day of the year as a decimal number [001,366].
+is replaced by the day of the year as a decimal number (001-366).
.It Cm \&%k
-is replaced by the hour (24-hour clock) as a decimal number [0,23];
+is replaced by the hour (24-hour clock) as a decimal number (0-23);
single digits are preceded by a blank.
.It Cm \&%l
-is replaced by the hour (12-hour clock) as a decimal number [1,12];
+is replaced by the hour (12-hour clock) as a decimal number (1-12);
single digits are preceded by a blank.
.It Cm \&%M
-is replaced by the minute as a decimal number [00,59].
+is replaced by the minute as a decimal number (00-59).
.It Cm %m
-is replaced by the month as a decimal number [01,12].
+is replaced by the month as a decimal number (01-12).
.It Cm %n
is replaced by a newline.
.It Cm %p
@@ -134,7 +134,7 @@ is replaced by the time in the format
is replaced by the locale's representation of 12-hour clock time
using AM/PM notation.
.It Cm \&%S
-is replaced by the second as a decimal number [00,61].
+is replaced by the second as a decimal number (00-61).
.It Cm %s
is replaced by the number of seconds since the Epoch, UTC (see
.Xr mktime 3 ) .
@@ -145,21 +145,21 @@ is replaced by the time in the format
is replaced by a tab.
.It Cm \&%U
is replaced by the week number of the year (Sunday as the first day of
-the week) as a decimal number [00,53].
+the week) as a decimal number (00-53).
.It Cm \&%u
is replaced by the weekday (Monday as the first day of the week)
-as a decimal number [1,7].
+as a decimal number (1-7).
.It Cm \&%V
is replaced by the week number of the year (Monday as the first day of
-the week) as a decimal number [01,53]. If the week containing January
+the week) as a decimal number (01-53). If the week containing January
1 has four or more days in the new year, then it is week 1; otherwise
it is week 53 of the previous year, and the next week is week 1.
.It Cm \&%W
is replaced by the week number of the year (Monday as the first day of
-the week) as a decimal number [00,53].
+the week) as a decimal number (00-53).
.It Cm \&%w
is replaced by the weekday (Sunday as the first day of the week)
-as a decimal number [0,6].
+as a decimal number (0-6).
.It Cm \&%X
is replaced by the locale's appropriate time representation.
.It Cm \&%x
@@ -167,7 +167,7 @@ is replaced by the locale's appropriate date representation.
.It Cm \&%Y
is replaced by the year with century as a decimal number.
.It Cm \&%y
-is replaced by the year without century as a decimal number [00,99].
+is replaced by the year without century as a decimal number (00-99).
.It Cm \&%Z
is replaced by the time zone name.
.It Cm %%
@@ -225,3 +225,4 @@ other implementations may not do so when
is not large enough to store the entire time string. The contents of
.Fa buf
are implementation specific in this case.
+.\" @(#)newstrftime.3 7.11
diff --git a/lib/libc/time/strftime.c b/lib/libc/time/strftime.c
index 321d71fafc1..f005a86a936 100644
--- a/lib/libc/time/strftime.c
+++ b/lib/libc/time/strftime.c
@@ -1,6 +1,6 @@
#if defined(LIBC_SCCS) && !defined(lint) && !defined(NOID)
-static char elsieid[] = "@(#)strftime.c 7.57";
-static char *rcsid = "$OpenBSD: strftime.c,v 1.5 1998/08/14 21:39:44 deraadt Exp $";
+static char elsieid[] = "@(#)strftime.c 7.58";
+static char *rcsid = "$OpenBSD: strftime.c,v 1.6 2000/04/16 16:24:04 d Exp $";
#endif /* LIBC_SCCS and not lint */
#include "private.h"
@@ -80,24 +80,21 @@ static const struct lc_time_T C_time_locale = {
/*
** x_fmt
- ** Since the C language standard calls for
- ** "date, using locale's date format," anything goes.
+ ** C99 requires this format.
** Using just numbers (as here) makes Quakers happier;
** it's also compatible with SVR4.
- **
- ** XXX--might it be better to use the year-2000 friendly
- ** %Y-%m-%d
- ** here?
*/
"%m/%d/%y",
/*
** c_fmt
- ** XXX--Changed by millert from "%D %X"
- ** to the more common "%a %b %d %H:%M:%S %Y"
- ** used by everyone else.
+ ** C99 requires this format.
+ ** Previously this code used "%D %X", but we now conform to C99.
+ ** Note that
+ ** "%a %b %d %H:%M:%S %Y"
+ ** is used by Solaris 2.3.
*/
- "%a %b %d %H:%M:%S %Y",
+ "%a %b %e %T %Y",
/* am */
"AM",
diff --git a/lib/libc/time/Arts.htm b/lib/libc/time/tz-art.htm
index 550269015ee..e1b2882793e 100644
--- a/lib/libc/time/Arts.htm
+++ b/lib/libc/time/tz-art.htm
@@ -1,17 +1,24 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<!-- $OpenBSD: Arts.htm,v 1.3 1999/07/01 23:05:39 d Exp $ -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<!-- $OpenBSD: tz-art.htm,v 1.1 2000/04/16 16:24:04 d Exp $ -->
<HTML>
<HEAD>
<TITLE>Time and the Arts</TITLE>
</HEAD>
<BODY>
<H1>Time and the Arts</H1>
+<ADDRESS>
+@(#)tz-art.htm 7.33
+</ADDRESS>
<P>
-<H6>
-@(#)Arts.htm 7.19
-</H6>
-</P>
+Please send corrections to this web page to the
+<A HREF="mailto:tz@elsie.nci.nih.gov">time zone mailing list</A>.
+<P>
+See also <A HREF="tz-link.htm">Sources for Time Zone and Daylight Saving Time Data</A>.
<PRE>
+"Is that a pertinent fact, or are you trying to dazzle me with your command
+of time zones?"
+ "Frasier Crane"
+==========================================================================
Data on recordings of "Save That Time," Russ Long, Serrob Publishing, BMI:
--------------------------------------------------------------------------
Artist: Karrin Allyson
@@ -27,7 +34,7 @@ Personnel: Karrin Allyson, vocal
Notes: CD notes "additional lyric by Karrin Allyson;
arranged by Russ Long and Karrin Allyson"
ADO Rating: 1 star
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A175928">AMG Rating: 4 stars</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A175928">AMG Rating: 4 stars</A>
Penguin Rating: 3.5 stars
--------------------------------------------------------------------------
Artist: Kevin Mahogany
@@ -42,7 +49,7 @@ Personnel: Kevin Mahogany, vocal
Ralph Moore, tenor saxophone
Lewis Nash, drums
ADO Rating: 1.5 stars
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A262654">AMG Rating: 3 stars</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A262654">AMG Rating: 3 stars</A>
Penguin Rating: 3 stars
--------------------------------------------------------------------------
Artist: Joe Williams
@@ -53,8 +60,10 @@ ID: CD-83357
Track Time: 3:58
Personnel: Joe Williams, vocal
The Robert Farnon [39 piece] Orchestra
+Notes: This CD is also available as part of a 3-CD package from
+ Telarc, "Triple Play" (CD-83461)
ADO Rating: black dot
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A194434">AMG Rating: 2 stars</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A194434">AMG Rating: 2 stars</A>
Penguin Rating: 3 stars
--------------------------------------------------------------------------
Artist: Charles Fambrough
@@ -71,7 +80,7 @@ Personnel: Charles Fambrough, bass
Notes: On-line information and samples available at
<A HREF="http://wwmusic.com/~music/audioq/rel/1033.html">http://wwmusic.com/~music/audioq/rel/1033.html</A>
ADO Rating: 2 stars
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A224430">AMG Rating: unrated</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A224430">AMG Rating: unrated</A>
Penguin Rating: 3 stars
==========================================================================
Also of note:
@@ -88,7 +97,7 @@ Personnel: Holly Cole, voice
Notes: Lyrical reference to "Eastern Standard Time" in
Tom Waits' "Purple Avenue"
ADO Rating: 2.5 stars
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A157959">AMG Rating: 3 stars</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A157959">AMG Rating: 3 stars</A>
Penguin Rating: unrated
--------------------------------------------------------------------------
Artist: Milt Hinton
@@ -119,7 +128,7 @@ Notes: tunes include Old Man Time, Time After Time,
On-line samples available at
<A HREF="http://www.globalmusic.com/labels/chiaroscuro/chiaro_cd_gallery.html">http://www.globalmusic.com/labels/chiaroscuro/chiaro_cd_gallery.html</A>
ADO Rating: 3 stars
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A162344">AMG Rating: 4.5 stars</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A162344">AMG Rating: 4.5 stars</A>
Penguin Rating: 3 stars
--------------------------------------------------------------------------
Artist: Paul Broadbent
@@ -131,9 +140,9 @@ Total Time: 62:42
Personnel: Paul Broadbent, piano
Putter Smith, Bass
Frank Gibson, Jr., drums
-Notes: The CD cover features an analemma for equation of time fans
+Notes: The CD cover features an analemma for equation-of-time fans
ADO Rating: 1 star
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A223722">AMG Rating: 4 stars</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A223722">AMG Rating: 4 stars</A>
Penguin Rating: 3.5 stars
--------------------------------------------------------------------------
Artist: Anthony Braxton/Richard Teitelbaum
@@ -148,7 +157,7 @@ Personnel: Anthony Braxton, sporanino and alto saxophones,
Leroy Jenkins, violin and miscellaneous instruments
Richard Teitelbaum, modular moog and micromoog synthesizer
ADO Rating: black dot
-<A HREF="http://www.allmusic.com/cg/x.exe?p=amg&sql=A310757">AMG Rating: unrated</A>
+<A HREF="http://www.allmusic.com/cg/x.dll?p=amg&amp;sql=A310757">AMG Rating: unrated</A>
--------------------------------------------------------------------------
Artist: Jules Verne
Book: Le Tour du Monde en Quatre-Vingts Jours
@@ -169,8 +178,27 @@ Notes: The Frank Baxter/Richard Deacon extravaganza
Information on ordering is available at
<A HREF="http://www.videoflicks.com/VF/38/038332.htm">http://www.videoflicks.com/VF/38/038332.htm</A>
--------------------------------------------------------------------------
+An episode of "The Adventures of Superman" entitled "The Mysterious
+Cube," first aired 1958-02-24, had Superman convincing the controllers
+of WWV to broadcast time signals five minutes ahead of actual time;
+doing so got a crook trying to beat the statute of limitations to
+emerge a bit too early from the titular enclosure.
+--------------------------------------------------------------------------
+The 1960s ITC television series "The Prisoner" included an episode
+entitled "The Chimes of Big Ben" in which our protagonist tumbled to
+the fraudulent nature of a Poland-to-England escape upon hearing "Big
+Ben" chiming on Polish local time.
+--------------------------------------------------------------------------
The syndicated comic strip "Dilbert" featured an all-too-rare example of
time zone humor on 1998-03-14.
+--------------------------------------------------------------------------
+Surrealist artist Guy Billout's work "Date Line" appeared on page 103
+of the November, 1999 Atlantic Monthly.
+==========================================================================
+"Good news."
+"What did they do? Extend Daylight Saving Time year round?"
+ Professional tanner George Hamilton, in dialog from a
+ May, 1999 episode of the syndicated television series "Baywatch"
</PRE>
</BODY>
</HTML>
diff --git a/lib/libc/time/tz-link.htm b/lib/libc/time/tz-link.htm
new file mode 100644
index 00000000000..fe3c981a2cd
--- /dev/null
+++ b/lib/libc/time/tz-link.htm
@@ -0,0 +1,195 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<!-- $OpenBSD: tz-link.htm,v 1.1 2000/04/16 16:24:04 d Exp $ -->
+<HTML>
+<HEAD>
+<TITLE>Sources for Time Zone and Daylight Saving Time Data</TITLE>
+<LINK REL="schema.DC" HREF="http://purl.org/DC/elements/1.1/">
+<META NAME="DC.Creator" CONTENT="Paul Eggert">
+<META NAME="DC.Contributor" CONTENT="Arthur David Olson">
+<META NAME="DC.Date" CONTENT="2000/03/04">
+<META NAME="DC.Description"
+ CONTENT="Sources of information about time zones and daylight saving time">
+<META NAME="DC.Identifier" CONTENT="http://www.twinsun.com/tz/tz-link.htm">
+<META NAME="Keywords"
+ CONTENT="database,daylight saving,DST,time zone,timezone,tz,zoneinfo">
+</HEAD>
+<BODY>
+<H1>Sources for Time Zone and Daylight Saving Time Data</H1>
+<ADDRESS>
+@(#)tz-link.htm 7.25
+</ADDRESS>
+<P>
+Please send corrections to this web page to the
+<A HREF="mailto:tz@elsie.nci.nih.gov">time zone mailing list</A>.
+<P>
+<H2>The <samp>tz</samp> database</H2><P>
+The public-domain time zone database contains code and data
+that represent the history of local time
+for many representative locations around the globe.
+It is updated periodically to reflect changes made by political bodies
+to UTC offsets and daylight-saving rules.
+This database (often called <samp>tz</samp> or <samp>zoneinfo</samp>)
+is used by several implementations,
+including BSD, DJGPP, GNU/Linux, HP-UX, IRIX, Solaris, and UnixWare.
+In the <samp>tz</samp> database's
+<A HREF="ftp://elsie.nci.nih.gov/pub/">FTP distribution</A>,
+the code is in the file <samp>tzcode<var>C</var>.tar.gz</samp>,
+where <samp><var>C</var></samp> is the code's version;
+similarly, the data are in <samp>tzdata<var>D</var>.tar.gz</samp>,
+where <samp><var>D</var></samp> is the data's version.
+<P>
+The data are by no means authoritative. If you find errors, please
+send changes to the <A HREF="mailto:tz@elsie.nci.nih.gov">time zone
+mailing list</A>. You can also <A
+HREF="mailto:tz-request@elsie.nci.nih.gov">subscribe</A> to the
+mailing list, or retrieve the <A
+HREF="ftp://elsie.nci.nih.gov/pub/tzarchive.gz">archive of old
+messages</A> (in <A HREF="http://www.gzip.org/">gzip</A> compressed
+format).
+<P>
+The <A HREF="http://www.gnu.org/software/libc/">GNU C Library</A>
+has an independent, thread-safe implementation of
+a time zone file reader that is compatible with <samp>tz</samp>.
+This library is freely available under the GNU Library General Public License,
+and is widely used in GNU/Linux systems.
+<P>
+The Web has several other sources for time zone and daylight saving time data.
+Here are some recent links that may be of interest.
+<H2>Web pages using recent versions of the <samp>tz</samp> database</H2>
+<UL>
+<LI><A HREF="http://www.bsdi.com/date/">Date and Time Gateway</A> is a
+text-based point-and-click interface to tables of current time
+throughout the world.
+<LI><A HREF="http://sandbox.xerox.com/stewart/tzconvert.cgi">CGI/1.0
+URL Timezone Converter</A> is a similar interface, with source code
+written in <A HREF="http://www.perl.org/">Perl</A>, using what Paul
+Stewart calls the "20-line hack no one will let me forget".
+<LI><A HREF="http://www.hilink.com.au/times/">Local Times Around the World</A>
+is a fancier web interface.
+<LI><A HREF="http://timezoneconverter.com/">Time Zone Converter</A>
+is an even fancier interface.
+<LI><A HREF="http://www.burbs.com/fcgi-bin/tzconvert.fcgi">Burbs time
+zone converter</A> is a multilingual interface.
+<LI><A HREF="http://www.timeanddate.com/worldclock/">The World Clock</A>
+is a web interface to a time zone database derived from
+<samp>tz</samp>'s.
+</UL>
+<H2>Other <SAMP>tz</SAMP>-based time zone conversion software</H2>
+<UL>
+<LI><A
+HREF="http://www1.tip.nl/~t876506/AboutTimeZonesHC.html">HyperCard
+time zones calculator</A> is a HyperCard stack.
+<LI><A
+HREF="http://timezone50.homepage.com/">Time Zone Converter</A> is a
+Microsoft Windows 95/98/NT4 program.
+</UL>
+<H2>Other time zone databases</H2>
+<UL>
+<LI><A HREF="http://www.astro.ch/atlas/">Astrology / Astrologie -&gt;
+Astrodienst Atlas Database</A> is Astrodienst's Web version of <A
+HREF="http://astrocom.com/books/xrefa.htm#SHANKS">Shanks's
+excellent time zone history atlases</A> published by <A
+HREF="http://astrocom.com/">Astro Communications Services</A>.
+<LI><A HREF="http://worldtime.com/">WORLDTIME: interactive atlas,
+time info, public holidays</A>
+contains information on local time, sunrise and sunset,
+and public holidays in several hundred cities around the world.
+<LI><A HREF="http://tycho.usno.navy.mil/tzones.html">World Time Zones</A>
+contains US Naval Observatory data, used as the source
+for the <samp>usno*</samp> files in the <samp>tz</samp> distribution.
+<LI>The <A HREF="http://iata.org/">International Air Transport Association</A>
+publishes the IATA Standard Schedules Information Manual (SSIM),
+which gives current time zone rules for
+all the airports served by commercial aviation.
+</UL>
+<H2>Maps</H2>
+<UL>
+<LI>The United States Central Intelligence Agency publishes a <A
+HREF="http://www.odci.gov/cia/publications/factbook/figures/802649.pdf">time
+zone map</A>; the
+<A HREF="http://www.lib.utexas.edu/Libs/PCL/Map_collection/world_maps.html">
+Perry-Casta&ntilde;eda Library Map Collection</A>
+of the University of Texas at Austin has on-line copies of
+recent editions.
+The pictorial quality is good,
+but the maps do not indicate summer time,
+and parts of the data are a few years out of date.
+<LI><A HREF="http://worldtimezone.com/">World time zones map with
+current time</A>
+has several fancy time zone maps; it covers Russia particularly well.
+The maps' pictorial quality is not quite as good as the CIA's
+and (as usual with maps) the maps are not quite up to date.
+</UL>
+<H2>Daylight saving time concepts and history</H2>
+<UL>
+<LI><A HREF="http://webexhibits.com/daylightsaving/">Daylight
+Saving Time -- History, rationale, laws and dates</A>
+is a good overall history of DST.
+<LI><A HREF="http://www.cstv.to.cnr.it/toi/uk/toi.html">The
+Time of Internet</A>
+contains good descriptions of Time Zones and daylight saving time,
+with diagrams.
+The time zone map is out of date, however.
+<LI>A few countries have well-documented histories of legal time.
+<DL>
+<DT>Australia
+<DD>The Community Relations Division of the NSW Attorney General's
+Department maintains a history of <A
+HREF="http://www.lawlink.nsw.gov.au/crd.nsf/pages/time2">daylight
+saving in New South Wales</A>.
+<DT>Brazil
+<DD>The Time Service Department of the National Observatory
+records <A HREF="http://pcdsh01.on.br/DecHV.html"
+HREFLANG="pt-BR">Brazil's daylight saving time decrees (in
+Portuguese)</A>.
+<DT>Germany
+<DD>The National Institute for Science and Technology maintains <A
+HREF="http://www.ptb.de/english/org/4/43/432/lega.htm">a history of
+German legal time</A>.
+<DT>Israel
+<DD>The Ministry of Interior periodically issues <A
+HREF="ftp://ftp.huji.ac.il/pub/tz/announcements"
+HREFLANG="he">announcements (in Hebrew)</A>.
+<DT>United Kingdom
+<DD><A
+HREF="http://student.cusu.cam.ac.uk/~jsm28/british-time/">History of
+legal time in Britain</A> is an excellent discussion for the country
+with perhaps the best-documented history of clock adjustments.
+</DL>
+</UL>
+<H2>Precision timekeeping</H2>
+<UL>
+<LI><A HREF="http://www.eecis.udel.edu/~ntp/">Time Server</A> discusses
+the Network Time Protocol (NTP), used to synchronize clocks of Internet hosts.
+<LI><A HREF="http://ecco.bsee.swin.edu.au/chronos/GMT-explained.html">A
+Few Facts Concerning GMT, UT, and the RGO</A>
+answers questions like "What is the difference between GMT and UTC?"
+<LI><A
+HREF="http://sadira.gb.nrao.edu/~rfisher/Ephemerides/times.html">Astronomical
+Times</A> explains more abstruse astronomical time scales like TT, TCG,
+and TDB.
+<LI><A HREF="http://www.jpl.nasa.gov/basics/bsf2-3.htm">Earth
+and Its Reference Systems</A>
+briefly explains interplanetary space flight timekeeping.
+<LI><A HREF="http://hpiers.obspm.fr/webiers/results/bul/README.html">Bulletins
+of IERS</A> contains official publications of the
+International Earth Rotation Service, the committee that decides
+when leap seconds occur.
+</UL>
+<H2>Time notation</H2>
+<UL>
+<LI>
+<A HREF="http://www.cl.cam.ac.uk/~mgk25/iso-time.html">A Summary of
+the International Standard Date and Time Notation</A> is a good
+summary of <A HREF="http://www.iso.ch/markete/moreend.htm">ISO
+8601</A>.
+</UL>
+<H2>Related indexes</H2>
+<UL>
+<LI><A HREF="http://dmoz.org/Reference/Time/">Open Directory -
+Reference: Time</A>
+<LI><A HREF="tz-art.htm">Time and the Arts</A>
+<LI><A HREF="http://dir.yahoo.com/Science/Measurements_and_Units/Time/Time_Zones/">Yahoo! - Science:Measurements and Units:Time:Time Zones</A>
+</UL>
+</BODY>
+</HTML>
diff --git a/lib/libc/time/zic.8 b/lib/libc/time/zic.8
index 27260278860..f442ff3f1a4 100644
--- a/lib/libc/time/zic.8
+++ b/lib/libc/time/zic.8
@@ -1,4 +1,4 @@
-.\" $OpenBSD: zic.8,v 1.11 2000/03/30 23:56:27 millert Exp $
+.\" $OpenBSD: zic.8,v 1.12 2000/04/16 16:24:04 d Exp $
.Dd May 23, 1999
.Dt ZIC 8
.Os
@@ -176,6 +176,8 @@ time in hours and minutes
24-hour format time (for times after noon)
.It 1:28:14
time in hours, minutes, and seconds
+.It \&-
+equivalent to 0
.El
.Pp
where hour 0 is midnight at the start of the day,
@@ -385,4 +387,4 @@ standard directory used for created files
.Xr ctime 3 ,
.Xr tzfile 5 ,
.Xr zdump 8
-.\" @(#)zic.8 7.18
+.\" @(#)zic.8 7.19
diff --git a/lib/libc/time/zic.c b/lib/libc/time/zic.c
index 62422ec5c51..5b373e86fa3 100644
--- a/lib/libc/time/zic.c
+++ b/lib/libc/time/zic.c
@@ -1,6 +1,6 @@
#if defined(LIBC_SCCS) && !defined(lint) && !defined(NOID)
-static char elsieid[] = "@(#)zic.c 7.99";
-static char rcsid[] = "$OpenBSD: zic.c,v 1.12 2000/03/30 23:30:25 millert Exp $";
+static char elsieid[] = "@(#)zic.c 7.100";
+static char rcsid[] = "$OpenBSD: zic.c,v 1.13 2000/04/16 16:24:04 d Exp $";
#endif /* LIBC_SCCS and not lint */
#include "private.h"
@@ -1895,10 +1895,12 @@ const char * const type;
buf = erealloc(buf, (int) (132 + strlen(yitcommand) + strlen(type)));
(void) sprintf(buf, "%s %d %s", yitcommand, year, type);
result = system(buf);
- if (result == 0)
- return TRUE;
- if (result == (1 << 8))
- return FALSE;
+ if (WIFEXITED(result)) switch (WEXITSTATUS(result)) {
+ case 0:
+ return TRUE;
+ case 1:
+ return FALSE;
+ }
error(_("Wild result from command execution"));
(void) fprintf(stderr, _("%s: command was '%s', result was %d\n"),
progname, buf, result);