|
Message-ID: <20171207231536.60bcd083@ncopa-desktop.copa.dup.pw> Date: Thu, 7 Dec 2017 23:15:36 +0100 From: Natanael Copa <ncopa@...inelinux.org> To: musl@...ts.openwall.com Subject: Re: [PATCH] use UTC instead of GMT Whoops, this was an unintentional re-send. I posted this previously. Sorry. I still think still it would be nice to get it applied as it fixes some annoyances. -nc On Thu, 7 Dec 2017 17:54:07 +0100 Natanael Copa <ncopa@...inelinux.org> wrote: > GMT is a timezone officially used by some countries in Europe and > Africa. UTC is not a timezone, but a time standard. No country or > territory officialy uses UTC as local time. > > Also, POSIX mentions UTC a few places[1][2] but never GMT (except as an > example[2] for a timezone) > > So it makes more sense to use UTC instead of GMT and return UTC when no > timezone is set in /etc/localtime or TZ is set to empty. > > [1]: http://pubs.opengroup.org/onlinepubs/9699919799/functions/gmtime.html > [2]: http://pubs.opengroup.org/onlinepubs/9699919799/functions/timezone.html > --- > src/time/__tz.c | 16 ++++++++-------- > src/time/gmtime_r.c | 4 ++-- > src/time/timegm.c | 4 ++-- > 3 files changed, 12 insertions(+), 12 deletions(-) > > diff --git a/src/time/__tz.c b/src/time/__tz.c > index ffe8d402..8cc96032 100644 > --- a/src/time/__tz.c > +++ b/src/time/__tz.c > @@ -15,7 +15,7 @@ weak_alias(__tzname, tzname); > > static char std_name[TZNAME_MAX+1]; > static char dst_name[TZNAME_MAX+1]; > -const char __gmt[] = "GMT"; > +const char __utc[] = "UTC"; > > static int dst_off; > static int r0[5], r1[5]; > @@ -126,7 +126,7 @@ static void do_tzset() > > s = getenv("TZ"); > if (!s) s = "/etc/localtime"; > - if (!*s) s = __gmt; > + if (!*s) s = __utc; > > if (old_tz && !strcmp(s, old_tz)) return; > > @@ -136,7 +136,7 @@ static void do_tzset() > * free so as not to pull it into static programs. Growth > * strategy makes it so free would have minimal benefit anyway. */ > i = strlen(s); > - if (i > PATH_MAX+1) s = __gmt, i = 3; > + if (i > PATH_MAX+1) s = __utc, i = 3; > if (i >= old_tz_size) { > old_tz_size *= 2; > if (i >= old_tz_size) old_tz_size = i+1; > @@ -165,12 +165,12 @@ static void do_tzset() > } > } > } > - if (!map) s = __gmt; > + if (!map) s = __utc; > } > if (map && (map_size < 44 || memcmp(map, "TZif", 4))) { > __munmap((void *)map, map_size); > map = 0; > - s = __gmt; > + s = __utc; > } > > zi = map; > @@ -207,7 +207,7 @@ static void do_tzset() > } > } > if (!__tzname[0]) __tzname[0] = __tzname[1]; > - if (!__tzname[0]) __tzname[0] = (char *)__gmt; > + if (!__tzname[0]) __tzname[0] = (char *)__utc; > if (!__daylight) { > __tzname[1] = __tzname[0]; > dst_off = __timezone; > @@ -216,7 +216,7 @@ static void do_tzset() > } > } > > - if (!s) s = __gmt; > + if (!s) s = __utc; > getname(std_name, &s); > __tzname[0] = std_name; > __timezone = getoff(&s); > @@ -413,7 +413,7 @@ const char *__tm_to_tzname(const struct tm *tm) > const void *p = tm->__tm_zone; > LOCK(lock); > do_tzset(); > - if (p != __gmt && p != __tzname[0] && p != __tzname[1] && > + if (p != __utc && p != __tzname[0] && p != __tzname[1] && > (!zi || (uintptr_t)p-(uintptr_t)abbrevs >= abbrevs_end - abbrevs)) > p = ""; > UNLOCK(lock); > diff --git a/src/time/gmtime_r.c b/src/time/gmtime_r.c > index 8cbdadcb..cba72447 100644 > --- a/src/time/gmtime_r.c > +++ b/src/time/gmtime_r.c > @@ -2,7 +2,7 @@ > #include <errno.h> > #include "libc.h" > > -extern const char __gmt[]; > +extern const char __utc[]; > > struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm) > { > @@ -12,7 +12,7 @@ struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm) > } > tm->tm_isdst = 0; > tm->__tm_gmtoff = 0; > - tm->__tm_zone = __gmt; > + tm->__tm_zone = __utc; > return tm; > } > > diff --git a/src/time/timegm.c b/src/time/timegm.c > index b5dae8b6..f444e76e 100644 > --- a/src/time/timegm.c > +++ b/src/time/timegm.c > @@ -2,7 +2,7 @@ > #include "time_impl.h" > #include <errno.h> > > -extern const char __gmt[]; > +extern const char __utc[]; > > time_t timegm(struct tm *tm) > { > @@ -15,6 +15,6 @@ time_t timegm(struct tm *tm) > *tm = new; > tm->tm_isdst = 0; > tm->__tm_gmtoff = 0; > - tm->__tm_zone = __gmt; > + tm->__tm_zone = __utc; > return t; > }
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.