Apply upstream revert of "Use local time for human-readable dates"
Closes: #1095430
This commit is contained in:
Vendored
+1
@@ -8,3 +8,4 @@ debian/Define-LOGIN_NAME_MAX-on-HURD.patch
|
||||
debian/Stop-building-programs-we-do-not-install.patch
|
||||
upstream/a015e919834c90b99947829c6c823f7fe93a8097-E_BAD_NAME.patch
|
||||
upstream/man-useradd.8.xml-Document-new-exit-code-19-E_BAD_NAME.patch
|
||||
upstream/Revert-lib-src-Use-local-time-for-human-readable-dates.patch
|
||||
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
From: Alejandro Colomar <alx@kernel.org>
|
||||
Date: Fri, 14 Feb 2025 21:25:01 +0100
|
||||
Subject: Revert "lib/, src/: Use local time for human-readable dates"
|
||||
|
||||
This reverts commit 3f5b4b56268269fefed55aa106f382037297d663.
|
||||
|
||||
The dates are stored as UTC, and are stored as a number of days since
|
||||
Epoch. We don't have enough precision to translate it into local time.
|
||||
Using local time has caused endless issues in users.
|
||||
|
||||
This patch is not enough for fixing this issue completely, since
|
||||
printing a date without time-zone information means that the date is a
|
||||
local date, but what we're printing is a UTC date. A future patch
|
||||
should add time-zone information to the date.
|
||||
|
||||
For now, let's revert this change that has caused so many issues.
|
||||
|
||||
Fixes: 3f5b4b562682 (2024-08-01; "lib/, src/: Use local time for human-readable dates")
|
||||
Link: <https://github.com/ansible/ansible/blob/devel/test/integration/targets/user/tasks/test_expires.yml#L2-L20>
|
||||
Link: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1095430>
|
||||
Link: <https://lists.iana.org/hyperkitty/list/tz@iana.org/message/ENE5IFV3GAH6WK22UJ6YU57D6TQINSP5/>
|
||||
Link: <https://github.com/shadow-maint/shadow/issues/1202>
|
||||
Link: <https://github.com/shadow-maint/shadow/issues/1057>
|
||||
Link: <https://github.com/shadow-maint/shadow/issues/939>
|
||||
Link: <https://github.com/shadow-maint/shadow/pull/1058>
|
||||
Link: <https://github.com/shadow-maint/shadow/pull/1059#issuecomment-2309888519>
|
||||
Link: <https://github.com/shadow-maint/shadow/pull/952>
|
||||
Link: <https://github.com/shadow-maint/shadow/pull/942>
|
||||
Reported-by: Chris Hofstaedtler <zeha@debian.org>
|
||||
Reported-by: Gus Kenion <https://github.com/kenion>
|
||||
Reported-by: Alejandro Colomar <alx@kernel.org>
|
||||
Reported-by: Michael Vetter <jubalh@iodoru.org>
|
||||
Reported-by: Lee Garrett <lgarrett@rocketjump.eu>
|
||||
Cc: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Cc: Tim Parenti <tim@timtimeonline.com>
|
||||
Cc: Iker Pedrosa <ipedrosa@redhat.com>
|
||||
Cc: "Serge E. Hallyn" <serge@hallyn.com>
|
||||
Cc: Brian Inglis <Brian.Inglis@SystematicSW.ab.ca>
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
---
|
||||
lib/time/day_to_str.h | 2 +-
|
||||
src/chage.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lib/time/day_to_str.h b/lib/time/day_to_str.h
|
||||
index b70e989..fe3308d 100644
|
||||
--- a/lib/time/day_to_str.h
|
||||
+++ b/lib/time/day_to_str.h
|
||||
@@ -38,7 +38,7 @@ day_to_str(size_t size, char buf[size], long day)
|
||||
return;
|
||||
}
|
||||
|
||||
- if (localtime_r(&date, &tm) == NULL) {
|
||||
+ if (gmtime_r(&date, &tm) == NULL) {
|
||||
strtcpy(buf, "future", size);
|
||||
return;
|
||||
}
|
||||
diff --git a/src/chage.c b/src/chage.c
|
||||
index a7933e0..67e7e77 100644
|
||||
--- a/src/chage.c
|
||||
+++ b/src/chage.c
|
||||
@@ -243,7 +243,7 @@ print_day_as_date(long day)
|
||||
return;
|
||||
}
|
||||
|
||||
- if (localtime_r(&date, &tm) == NULL) {
|
||||
+ if (gmtime_r(&date, &tm) == NULL) {
|
||||
puts(_("future"));
|
||||
return;
|
||||
}
|
||||
Reference in New Issue
Block a user