diff options
author | Florian Weimer <fweimer@redhat.com> | 2024-04-19 14:38:17 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2024-04-19 14:38:17 +0200 |
commit | 5361ad3910c257bc327567be76fde532ed238e42 (patch) | |
tree | 76cf92324c5eecbd0dfb9ebf8940a94aa85d2386 /bits | |
parent | 9abdae94c7454c45e02e97e4ed1eb1b1915d13d8 (diff) | |
download | glibc-5361ad3910c257bc327567be76fde532ed238e42.zip glibc-5361ad3910c257bc327567be76fde532ed238e42.tar.gz glibc-5361ad3910c257bc327567be76fde532ed238e42.tar.bz2 |
login: Use unsigned 32-bit types for seconds-since-epoch
These fields store timestamps when the system was running. No Linux
systems existed before 1970, so these values are unused. Switching
to unsigned types allows continued use of the existing struct layouts
beyond the year 2038.
The intent is to give distributions more time to switch to improved
interfaces that also avoid locking/data corruption issues.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'bits')
-rw-r--r-- | bits/utmp.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/bits/utmp.h b/bits/utmp.h index f2d1c13..27cb536 100644 --- a/bits/utmp.h +++ b/bits/utmp.h @@ -36,7 +36,7 @@ struct lastlog { #if __WORDSIZE_TIME64_COMPAT32 - int32_t ll_time; + __uint32_t ll_time; #else __time_t ll_time; #endif @@ -76,7 +76,7 @@ struct utmp int32_t ut_session; /* Session ID, used for windowing. */ struct { - int32_t tv_sec; /* Seconds. */ + __uint32_t tv_sec; /* Seconds. */ int32_t tv_usec; /* Microseconds. */ } ut_tv; /* Time entry was made. */ #else |