Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TZSET(3)		 BSD Library Functions Manual		      TZSET(3)

NAME
     tzset -- initialize time conversion information

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <time.h>

     void
     tzset(void);

DESCRIPTION
     The tzset() function uses the value of the	environment variable TZ	to set
     time conversion information used by localtime(3).	If TZ does not appear
     in	the environment, the best available approximation to local wall	clock
     time, as specified	by the tzfile(5) format	file /etc/localtime is used by
     localtime(3).  If TZ appears in the environment but its value is a	null
     string, Coordinated Universal Time	(UTC) is used (without leap second
     correction).  If TZ appears in the	environment and	its value is not a
     null string:

     -	 if the	value begins with a colon, it is used as a pathname of a file
	 from which to read the	time conversion	information;

     -	 if the	value does not begin with a colon, it is first used as the
	 pathname of a file from which to read the time	conversion informa-
	 tion, and, if that file cannot	be read, is used directly as a speci-
	 fication of the time conversion information.

     When TZ is	used as	a pathname, if it begins with a	slash, it is used as
     an	absolute pathname; otherwise, it is used as a pathname relative	to
     /usr/share/zoneinfo.  The file must be in the format specified in
     tzfile(5).

     When TZ is	used directly as a specification of the	time conversion	infor-
     mation, it	must have the following	syntax (spaces inserted	for clarity):

	   stdoffset[dst[offset][,rule]]

     where:
     std and dst  Three	or more	bytes that are the designation for the stan-
		  dard (std) or	summer (dst) time zone.	 Only std is required;
		  if dst is missing, then summer time does not apply in	this
		  locale.  Upper- and lowercase	letters	are explicitly al-
		  lowed.  Any characters except	a leading colon	(:), digits,
		  comma	(,), minus (-),	plus (+), and ASCII NUL	are allowed.
     offset	  Indicates the	value one must add to the local	time to	arrive
		  at Coordinated Universal Time.  The offset has the form:

			hh[:mm[:ss]]

		  The minutes (mm) and seconds (ss) are	optional.  The hour
		  (hh) is required and may be a	single digit.  The offset fol-
		  lowing std is	required.  If no offset	follows	dst, summer
		  time is assumed to be	one hour ahead of standard time.  One
		  or more digits may be	used; the value	is always interpreted
		  as a decimal number.	The hour must be between zero and 24,
		  and the minutes (and seconds)	-- if present -- between zero
		  and 59.  If preceded by a "-"	the time zone shall be east of
		  the Prime Meridian; otherwise	it shall be west (which	may be
		  indicated by an optional preceding "+").
     rule	  Indicates when to change to and back from summer time.  The
		  rule has the form:

			date/time,date/time

		  where	the first date describes when the change from standard
		  to summer time occurs	and the	second date describes when the
		  change back happens.	Each time field	describes when,	in
		  current local	time, the change to the	other time is made.
		  The format of	date is	one of the following:
		  Jn		  The Julian day n (1 <= n <= 365).  Leap days
				  are not counted; that	is, in all years --
				  including leap years -- February 28 is day
				  59 and March 1 is day	60.  It	is impossible
				  to explicitly	refer to the occasional	Febru-
				  ary 29.
		  n		  The zero-based Julian	day (0 <= n <= 365).
				  Leap days are	counted, and it	is possible to
				  refer	to February 29.
		  Mm.n.d	  The d'th day (0 <= d <= 6) of	week n of
				  month	m of the year (1 <= n <= 5, 1 <= m
				  <= 12, where week 5 means "the last d
				  day in month m" which	may occur in either
				  the fourth or	the fifth week).  Week 1 is
				  the first week in which the d'th day occurs.
				  Day zero is Sunday.
		  The time has the same	format as offset except	that no	lead-
		  ing sign "-" or "+" is allowed.  The default,	if time	is not
		  given, is 02:00:00.
     If	no rule	is present in TZ, the rules specified by the tzfile(5) format
     file posixrules in	/usr/share/zoneinfo are	used, with the standard	and
     summer time offsets from UTC replaced by those specified by the offset
     values in TZ.

     For compatibility with System V Release 3.1, a semicolon (;) may be used
     to	separate the rule from the rest	of the specification.

     If	the TZ environment variable does not specify a tzfile(5) format	file
     and cannot	be interpreted as a direct specification, UTC is used.

FILES
     /etc/localtime		     local time	zone file
     /usr/share/zoneinfo	     time zone information directory
     /usr/share/zoneinfo/posixrules  used with POSIX-style TZ's
     /usr/share/zoneinfo/GMT	     for UTC leap seconds

     If	/usr/share/zoneinfo/GMT	is absent, UTC leap seconds are	loaded from
     /usr/share/zoneinfo/posixrules.

SEE ALSO
     ctime(3), getenv(3), strftime(3), time(3),	tzfile(5)

STANDARDS
     The tzset() function conforms to IEEE Std 1003.1-1988 ("POSIX.1").

BSD				 April 1, 2001				   BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | FILES | SEE ALSO | STANDARDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=tzset&sektion=3&manpath=NetBSD+6.0>

home | help