From: Natanael Copa <ncopa@alpinelinux.org>
To: musl@lists.openwall.com
Subject: Re: [PATCH] use UTC instead of GMT
Date: Thu, 7 Dec 2017 23:15:36 +0100 [thread overview]
Message-ID: <20171207231536.60bcd083@ncopa-desktop.copa.dup.pw> (raw)
In-Reply-To: <20171207165407.17541-1-ncopa@alpinelinux.org>
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@alpinelinux.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;
> }
next prev parent reply other threads:[~2017-12-07 22:15 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-07 16:54 Natanael Copa
2017-12-07 21:22 ` A. Wilcox
2017-12-07 22:15 ` Natanael Copa [this message]
-- strict thread matches above, loose matches on Subject: below --
2017-07-22 9:19 Natanael Copa
2017-07-22 14:26 ` Rich Felker
2017-07-28 12:35 ` Natanael Copa
2017-07-28 13:00 ` Rich Felker
2017-07-28 14:05 ` A. Wilcox
2017-07-28 14:54 ` Rich Felker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171207231536.60bcd083@ncopa-desktop.copa.dup.pw \
--to=ncopa@alpinelinux.org \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).