[TUHS] Off topic: BSD timezone function vs. POSIX timezone variable

Leah Neukirchen leah at vuxu.org
Fri Dec 15 01:14:16 AEST 2023


Aharon Robbins <arnold at skeeve.com> writes:

> Hi All.
>
> This is a bit off-topic, but people here are likely to know the answer.
>
> V7 had a timzone function:
>
> 	char *timezone(int zone, int dst);
>
> that returned a timezone name.  POSIX has a timezone variable which is
> the offset in seconds from UTC.
>
> The man pages for all of {Net,Free,Open}BSD seem to indicate that both
> are available on those systems.
>
> My question is, how? The declarations for both are given as being in <time.h>.
> But don't the symbols in libc.a conflict with each other? How does a programmer
> on *BSD choose which version of timezone they will get?

OpenBSD 7.3 only has "extern long timezone" and no timezone(3) function.

FreeBSD 14.0 only has the timezone(3) function (under _BSD_VISIBLE),
and doesn't set any variables.

-- 
Leah Neukirchen  <leah at vuxu.org>  https://leahneukirchen.org/


More information about the TUHS mailing list