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

FreeBSD Manual Pages


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

     tzset, tzsetwall -- initialize time conversion information

     #include <time.h>



     tzset() uses the value of the environment variable	TZ to set time conver-
     sion information used by localtime(3).  If	TZ does	not appear in the en-
     vironment,	the best available approximation to local wall clock time, as
     specified by the tzfile(5)	format file /etc/localtime, is used by

     If	TZ appears in the environment but its value is a null string, Coordi-
     nated Universal Time (UTC)	is used	(without leap second correction).

     If	TZ appears in the environment and its value begins with	a colon, it is
     used as a pathname	of a file from which to	read the time conversion in-

     If	TZ appears in the environment and its value does not begin with	a
     colon, it is first	used as	the pathname of	a file from which to read the
     time conversion information, and, if that file cannot be read, is used
     directly as a specification 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 a
     system time conversion information	directory.  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 (without	whitespace between std
     and offset):

	   std offset[dst[offset]][,rule]


     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 allowed.
		  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.  offset has the form:


		  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.  rule
		  has the form:


		  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 oc-
			  casional February 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  Day d	(1 <= d	<= 6) of week n	(1 <= n	<= 5) of month
			  m (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 dth 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	the system time	conversion information directory 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.

     tzsetwall() behaves identically to	tzset()	but it only uses the
     /etc/localtime file (that is, it ignores the TZ environment variable).

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

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

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

     The tzset() function conforms to IEEE Std 1003.1-2008 ("POSIX.1").	 The
     tzsetwall() function is an	extension to that specification.

BSD				March 16, 2018				   BSD


Want to link to this manual page? Use this URL:

home | help