diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2010-07-16 12:04:45 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2010-07-16 12:04:45 +0300 |
commit | dbd583bd2b8a6dd40c622875a4e197360cb5aba7 (patch) | |
tree | d9fb7b6595cb44fefb4e32d70af9ac6d057af14a /missing/tzset.c | |
parent | b8c608200919aa3f7b3fef289a7bece2d2961412 (diff) | |
download | egawk-dbd583bd2b8a6dd40c622875a4e197360cb5aba7.tar.gz egawk-dbd583bd2b8a6dd40c622875a4e197360cb5aba7.tar.bz2 egawk-dbd583bd2b8a6dd40c622875a4e197360cb5aba7.zip |
Move to 2.13.3 (from 2.13.tar.gz - sigh).
Diffstat (limited to 'missing/tzset.c')
-rw-r--r-- | missing/tzset.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/missing/tzset.c b/missing/tzset.c new file mode 100644 index 00000000..7e0af48a --- /dev/null +++ b/missing/tzset.c @@ -0,0 +1,38 @@ +/* + * tzset.c + * + * Quick and dirty emulation of tzset(), tzname[], and daylight + * for old BSD systems without it. + * + * Thanks to Rick Adams, rick@uunet.uu.net, for the basics. + * + * BUGS: + * Totally ignores the value of the TZ environment variable. + */ + +#if 0 +#include <sys/time.h> +#endif + +static char tz1[1024]; +static char tz2[1024]; + +/* external variables */ +char *tzname[2] = { + tz1, tz2 +}; +int daylight; + +extern char *timezone(); + +void +tzset() +{ + struct timeval tp; + struct timezone tz; + + (void) gettimeofday(&tp, &tz); + (void) strcpy(tz1, timezone(tz.tz_minuteswest, 0)); + (void) strcpy(tz2, timezone(tz.tz_minuteswest, 1)); + daylight = tz.tz_dsttime; +} |