summaryrefslogtreecommitdiffstats
path: root/crypto/conf
diff options
context:
space:
mode:
authorJ.W. Jagersma <jwjagersma@gmail.com>2022-09-26 20:35:46 +0200
committerTomas Mraz <tomas@openssl.org>2022-09-29 12:00:30 +0200
commitcffb65f2ff85f19418ed121275901674824e52ca (patch)
treef44f1e557bbe0a008d2eae61489835a9e3631a38 /crypto/conf
parent8ae74c5bc091e7388c082f090c1fde992c31320f (diff)
djgpp: Set TZ=UTC to convert UTC timestamp to time_t
Since djgpp has neither a timezone variable or timegm(), this horrible method must be used. It is the only one I could find that produces accurate results, and is recommended as portable alternative to timegm() by the GNU libc manual. Reference: https://www.gnu.org/software/libc/manual/html_node/Broken_002ddown-Time.html#index-timegm Now, a much nicer alternative solution could be: timestamp_local = mktime(timestamp_tm); timestamp_utc = timestamp_local + timestamp_tm->tm_gmtoff - (timestamp_tm->tm_isdst ? 3600 : 0); This works due to the fact that mktime() populates the tm_gmtoff and tm_isdst fields in the source timestamp. It is accurate everywhere in the world, *except* on Lord Howe Island, Australia, where a 30 minute DST offset is used. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19274)
Diffstat (limited to 'crypto/conf')
0 files changed, 0 insertions, 0 deletions