summaryrefslogtreecommitdiffstats
path: root/man3/tzset.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/tzset.3')
-rw-r--r--man3/tzset.3173
1 files changed, 173 insertions, 0 deletions
diff --git a/man3/tzset.3 b/man3/tzset.3
new file mode 100644
index 000000000..171b98abf
--- /dev/null
+++ b/man3/tzset.3
@@ -0,0 +1,173 @@
+.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
+.\"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein. The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.\" References consulted:
+.\" Linux libc source code
+.\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
+.\" 386BSD man pages
+.\" Modified Sun Jul 25 11:01:58 1993 by Rik Faith (faith@cs.unc.edu)
+.\" Modified 2001-11-13, aeb
+.TH TZSET 3 2001-11-13 "" "Linux Programmer's Manual"
+.SH NAME
+tzset, tzname, timezone, daylight \- initialize time conversion information
+.SH SYNOPSIS
+.nf
+.B #include <time.h>
+.sp
+.B void tzset (void);
+.sp
+.BI "extern char *" tzname [2];
+.BI "extern long " timezone ;
+.BI "extern int " daylight ;
+.fi
+.SH DESCRIPTION
+The \fBtzset()\fP function initializes the \fItzname\fP variable from the
+TZ environment variable. This function is automatically called by the
+other time conversion functions that depend on the time zone.
+In a SysV-like environment it will also set the variables \fItimezone\fP
+(seconds West of GMT) and \fIdaylight\fP (0 if this time zone does not
+have any daylight savings time rules, nonzero if there is a time during
+the year when daylight savings time applies).
+.PP
+If the TZ variable does not appear in the environment, the \fItzname\fP
+variable is initialized with the best approximation of local wall clock
+time, as specified by the
+.BR tzfile (5)-format
+file \fIlocaltime\fP
+found in the system timezone directory (see below).
+(One also often sees
+.I /etc/localtime
+used here, a symlink to the right file in the system timezone directory.)
+.PP
+If the TZ variable does appear in the environment but its value is NULL
+or its value cannot be interpreted using any of the formats specified
+below, Coordinated Universal Time (UTC) is used.
+.PP
+The value of TZ can be one of three formats. The first format is used
+when there is no daylight saving time in the local time zone:
+.sp
+.RS
+.I std offset
+.RE
+.sp
+The \fIstd\fP string specifies the name of the time zone and must be
+three or more alphabetic characters. The \fIoffset\fP string immediately
+follows \fIstd\fP and specifies the time value to be added to the local
+time to get Coordinated Universal Time (UTC). The \fIoffset\fP is positive
+if the local time zone is west of the Prime Meridian and negative if it is
+east. The hour must be between 0 and 24, and the minutes and seconds
+0 and 59.
+.PP
+The second format is used when there is daylight saving time:
+.sp
+.RS
+.I std offset dst [offset],start[/time],end[/time]
+.RE
+.sp
+There are no spaces in the specification. The initial \fIstd\fP and
+\fIoffset\fP specify the standard time zone, as described above. The
+\fIdst\fP string and \fIoffset\fP specify the name and offset for the
+corresponding daylight savings time zone. If the offset is omitted,
+it defaults to one hour ahead of standard time.
+.PP
+The \fIstart\fP field specifies when daylight savings time goes into
+effect and the \fIend\fP field specifies when the change is made back to
+standard time. These fields may have the following formats:
+.TP
+J\fIn\fP
+This specifies the Julian day with \fIn\fP between 1 and 365. February
+29 is never counted even in leap years.
+.TP
+.I n
+This specifies the Julian day with \fIn\fP between 1 and 365. February
+29 is counted in leap years.
+.TP
+M\fIm\fP.\fIw\fP.\fId\fP
+This specifies day \fId\fP (0 <= \fId\fP <= 6) of week \fIw\fP
+(1 <= \fIw\fP <= 5) of month \fIm\fP (1 <= \fIm\fP <= 12). Week 1 is
+the first week in which day \fId\fP occurs and week 5 is the last week
+in which day \fId\fP occurs. Day 0 is a Sunday.
+.PP
+The \fItime\fP fields specify when, in the local time currently in effect,
+the change to the other time occurs. If omitted, the default is 02:00:00.
+.PP
+The third format specifies that the time zone information should be read
+from a file:
+.sp
+.RS
+:[filespec]
+.RE
+.sp
+If the file specification \fIfilespec\fP is omitted, the time zone
+information is read from the file
+.I localtime
+in the system timezone directory, which nowadays usually is
+.IR /usr/share/zoneinfo .
+This file is in
+.BR tzfile (5)
+format. If \fIfilespec\fP is given, it specifies another
+.BR tzfile (5)-format
+file to read the time zone information from. If
+\fIfilespec\fP does not begin with a `/', the file specification is
+relative to the system timezone directory.
+.SH FILES
+The system time zone directory used depends on the (g)libc version.
+Libc4 and libc5 use
+.IR /usr/lib/zoneinfo ,
+and, since libc-5.4.6,
+when this doesn't work, will try
+.IR /usr/share/zoneinfo .
+Glibc2 will use the environment variable TZDIR, when that exists.
+Its default depends on how it was installed, but normally is
+.IR /usr/share/zoneinfo .
+.LP
+This timezone directory contains the files
+.nf
+localtime local time zone file
+posixrules rules for POSIX-style TZ's
+.fi
+.LP
+Often
+.I /etc/localtime
+is a symlink to the file
+.I localtime
+or to the correct time zone file in the system time zone directory.
+.SH "CONFORMING TO"
+SVID 3, POSIX, BSD 4.3
+.SH NOTES
+Note that the variable \fIdaylight\fP does not indicate that daylight
+savings time applies right now. It used to give the number of some
+algorithm (see the variable \fItz_dsttime\fP in
+.BR gettimeofday (2)).
+It has been obsolete for many years but is required by SUSv2.
+.LP
+BSD4.3 had a routine \fIchar *timezone(zone,dst)\fP that returned the
+name of the time zone corresponding to its first argument (minutes
+West of GMT). If the second argument was 0, the standard name was used,
+otherwise the daylight savings time version.
+.SH "SEE ALSO"
+.BR date (1),
+.BR gettimeofday (2),
+.BR time (2),
+.BR ctime (3),
+.BR getenv (3),
+.BR tzfile (5)