From: Gregory Heytings <gregory@heytings.org>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: Ulrich Mueller <ulm@gentoo.org>, emacs-devel@gnu.org
Subject: Re: Represent NTP's origin time
Date: Thu, 15 Apr 2021 14:06:09 +0000 [thread overview]
Message-ID: <3ed97a9c535036fc5a67@heytings.org> (raw)
In-Reply-To: <jwvpmyvu3tx.fsf-monnier+emacs@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 1025 bytes --]
>
> So, getting back to the question: Do we have some "standard" workaround?
> I don't actually need to represent times from the early 20th century,
> but I need to compute NTP timestamps. I can come up with my own
> workaround (e.g. hardcoding as a "magic constant" the number of seconds
> between NTP's origin time and some arbitrary other origin time of my
> choosing which 32bit systems can represent), but I was hoping we already
> have something like that somewhere.
>
Apparently there is no standard workaround in Emacs. So on a 32bit
system, I would use the constant 2208988800 (25567 days times 86400
seconds), to represent the difference in seconds between 1900-01-01 and
1970-01-01 (epoch). This constant is given in the very first NTP RFC [1],
and doing this should be safe: the current NTP format (32 bits for the
integer part) will work until Feb 7, 2036, that is, before 32-bit counting
after epoch will stop working on Jan 19, 2038.
[1] https://tools.ietf.org/html/rfc868
next prev parent reply other threads:[~2021-04-15 14:06 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-15 4:00 Represent NTP's origin time Stefan Monnier
2021-04-15 8:06 ` Andreas Schwab
2021-04-15 8:22 ` Gregory Heytings
2021-04-15 8:27 ` Ulrich Mueller
2021-04-15 8:30 ` Eli Zaretskii
2021-04-15 12:40 ` Stefan Monnier
2021-04-15 12:56 ` Andreas Schwab
2021-04-15 13:39 ` Stefan Monnier
2021-04-15 13:41 ` Ulrich Mueller
2021-04-15 13:44 ` Stefan Monnier
2021-04-15 14:06 ` Gregory Heytings [this message]
2021-04-15 14:51 ` Stefan Monnier
2021-04-15 19:12 ` Achim Gratz
2021-04-16 7:06 ` tomas
2021-04-17 3:53 ` Richard Stallman
2021-04-17 7:30 ` tomas
2021-04-17 13:44 ` Achim Gratz
2021-04-17 14:09 ` tomas
2021-04-17 14:23 ` Stefan Monnier
2021-04-17 14:55 ` Achim Gratz
2021-04-17 15:27 ` tomas
2021-04-17 16:20 ` Achim Gratz
2021-04-17 16:54 ` [OFFTOPIC] " Stefan Monnier
2021-04-17 20:00 ` tomas
2021-04-17 20:31 ` Stefan Monnier
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3ed97a9c535036fc5a67@heytings.org \
--to=gregory@heytings.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
--cc=ulm@gentoo.org \
/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.savannah.gnu.org/cgit/emacs.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).