If the -f argument includes %s, we need to use timegm(3) rather
authorschwarze <schwarze@openbsd.org>
Wed, 11 Aug 2021 13:41:48 +0000 (13:41 +0000)
committerschwarze <schwarze@openbsd.org>
Wed, 11 Aug 2021 13:41:48 +0000 (13:41 +0000)
commitc96a7dff4ba90249e8f182d23d74225bc3f74572
treee6a0659960db949a3980d33726d445f4333c7e4f
parent5ae1fde0523917009093b4b48c9b5ad9146bc71b
If the -f argument includes %s, we need to use timegm(3) rather
than mktime(3) because the UNIX Epoch is defined in UTC rather than
in the local timezone.

Combining %s with other format specifiers is usually not useful.
But if a user does that, then parsing the whole input as UTC seems
better than parsing some of it as UTC and some of it in the local
time zone.

Bug found by Bryan Vyhmeister.
The final patch is joint work with and OK by gerhard@.
No objection when shown on tech@.
bin/date/date.c