[comp.unix.questions] How is the time zone set in 4.2 BSD?

tr@thumper.UUCP (06/08/87)

[]

What is the command to set the default time zone, as printed out by
date and other programs?  I can't find anything in section 8 or the
/etc/directory.  The system insists the zone is Pacific, even though
it is situated on the east coast.

In case it's important, I am using a Symmetric 375 computer which runs
SYMMETRIX, the manufacturer's port of the 4.2 BSD OS.  The 375 runs on
a 3200 microprocessor.

Thanks much.

-- 
Tom Reingold
INTERNET:       tr@bellcore.bellcore.com
UUCP: 		{seismo,ihnp4,ucbvax,decvax}!bellcore!tr
		{ulysses,allegra,clyde,princeton}!bellcore!tr

galen@pdp.cs.OHIOU.EDU (Douglas Wade Needham) (06/09/87)

In article <770@thumper.UUCP>, tr@thumper.UUCP writes:
> What is the command to set the default time zone, as printed out by
> date and other programs?  I can't find anything in section 8 or the
> /etc/directory.  The system insists the zone is Pacific, even though
> it is situated on the east coast.

The timezone is set in the system configuration files as a global parameter.
If you read in 'Building Systems with Config', found in volume 2c of your 
UNIX Programmer's Manual, there is a field labled 'timezone'.  The fact
that your system is using Pacific time indicates that your kernal was either
never changed from a generic system, or the timezone was overlooked.  You 
will need to change the value from 8 (Pacific) to 5, 6, or 7 (Eastern, 
Central, or Mountain) or something else matching your particular zone.
The dst indicates that you use daylight savings time, and a number following
it (optional) indicates when the switch occurs.

After you have changed this field, you will need to run 'config' and 
recompile your kernal.  Check the manual for the details.

Hope this helps.  I myself am in the process of reconfiguring our system.
Hopefully, in a week or so we will have our 4.3 tapes, and I will be 
installing them.  Anyone at Berkley know where the tapes for Ohio University
Electrical and Computer Engineering are???  Or the email address for 
someone who might???

> -- 
> Tom Reingold

- douglas wade needham (root@ouvax.ece.OHIOU.EDU)

-- 
----S----N----A----R----K----S----&----B----O----O----J----U----M----S----
Douglas Wade Needham     (614)593-1567 (work) or (614)597-5969 (Home)
Electrical Engineering Dept., Ohio University, Athens, Ohio 45701 
UUCP: ...!cbatt!oucs!galen ** Smart Mailers: galen@pdp.cs.OHIOU.EDU

robert@pvab.UUCP (06/11/87)

In article <625@pdp.cs.OHIOU.EDU> galen@pdp.cs.OHIOU.EDU (Douglas Wade Needham) writes:

>The timezone is set in the system configuration files as a global parameter.
>If you read in 'Building Systems with Config', found in volume 2c of your 
>UNIX Programmer's Manual, there is a field labled 'timezone'.  The fact
>that your system is using Pacific time indicates that your kernal was either
>never changed from a generic system, or the timezone was overlooked.  You 
>will need to change the value from 8 (Pacific) to 5, 6, or 7 (Eastern, 
>Central, or Mountain) or something else matching your particular zone.
>The dst indicates that you use daylight savings time, and a number following
							   ^^^^^^^^^^^^^^^^^^
>it (optional) indicates when the switch occurs.
 ^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

How should this number be expressed? And when does the switch occur
if I leave it out?

I have a Sun, and I can't find any reference to this in the manuals (we're
running SunOS 2.0) even though I've seen others using this.

-- 
SNAIL:	Robert Claeson, PVAB, P.O. Box 4040, S-171 04 Solna, Sweden
UUCP:	{seismo,mcvax,munnari}!enea!pvab!robert
ARPA:	enea!pvab!robert@seismo.arpa

guy@sun.UUCP (06/15/87)

> >The dst indicates that you use daylight savings time, and a number
> 							     ^^^^^^^^
> >following it (optional) indicates when the switch occurs.
>  ^^^^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> How should this number be expressed? And when does the switch occur
> if I leave it out?
> 
> I have a Sun, and I can't find any reference to this in the manuals (we're
> running SunOS 2.0) even though I've seen others using this.

This number should be the numerical value of one of the DST_ defined
constants in "/usr/include/sys/time.h".  This set may differ
depending on what OS you're running; 4.3BSD added some, and those
appeared in SunOS in release 3.2.  None of this was well documented
in the 4BSD manuals, and I think we unfortunately continued in this
UNIX tradition.  (A future release will fix this - and will fix other
problems by using the Arthur Olson time zone code.)

Those values are:

#define	DST_NONE	0	/* not on dst */
#define	DST_USA		1	/* USA style dst */
#define	DST_AUST	2	/* Australian style dst */
#define	DST_WET		3	/* Western European dst */
#define	DST_MET		4	/* Middle European dst */
#define	DST_EET		5	/* Eastern European dst */

All of the above were supported in 4.2BSD and in all versions of
SunOS.  Unfortunately, the tables for all but DST_USA were wrong in
various ways; the USA table also doesn't include the new DST rules.

#define	DST_CAN		6	/* Canada */

This was added in 4.3BSD and SunOS 3.2; it's the same as the US,
except that no special switching occurred in 1974 and 1975.  In SunOS
3.2, the USA rules, but not the Canadian rules, were changed to
include the new DST rules.

#define	DST_GB		7	/* Great Britain and Eire */
#define	DST_RUM		8	/* Rumania */
#define	DST_TUR		9	/* Turkey */
#define	DST_AUSTALT	10	/* Australian style with shift in 1986 */

These were added in SunOS 3.2.  SunOS 3.2 also fixed some of the
tables - the European (continental and UK) tables match what somebody
told me some German government agency reported were the correct
switching dates in recent years (1986 on).  The Australian rules were
still not quite right, and the Canadian rules did not include the new
DST changes.

SunOS 3.4 fixed those problems, and the versions of the tables
provided with SunOS 3.4 were also used to generate the versions of
the tables sent out in one of the official bug fixes to 4.3BSD.
(They also match the timezone table files provided with the most
recent version of Arthur Olson's code.)

If the number is not specified, it defaults to 1, or DST_USA.
-- 
	Guy Harris
	{ihnp4, decvax, seismo, decwrl, ...}!sun!guy
	guy@sun.com (or guy@sun.arpa)