[glibc/release/2.34/master] nscd: Use 64 bit time_t on libc nscd routines (BZ# 29402)
Adhemerval Zanella
azanella@sourceware.org
Wed Dec 28 20:27:20 GMT 2022
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=01c0a0405c5ea63d9b528e062b935d2ff6a6e2ed
commit 01c0a0405c5ea63d9b528e062b935d2ff6a6e2ed
Author: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>
Date: Wed Oct 26 16:04:24 2022 -0300
nscd: Use 64 bit time_t on libc nscd routines (BZ# 29402)
Although the nscd module is built with 64 bit time_t, the routines
linked direct to libc.so need to use the internal symbols.
Reviewed-by: DJ Delorie <dj@redhat.com>
(cherry picked from commit fa4a19277842fd09a4815a986f70e0fe0903836f)
Diff:
---
NEWS | 1 +
nscd/nscd.h | 2 +-
nscd/nscd_gethst_r.c | 2 +-
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/NEWS b/NEWS
index 2765efc5a2..a70622df1d 100644
--- a/NEWS
+++ b/NEWS
@@ -125,6 +125,7 @@ The following bugs are resolved with this release:
[29213] libc: gconv_parseconfdir is not y2038 aware
[29214] nptl: pthread_setcanceltype fails to set type
[29305] Conserve NSS buffer space during DNS packet parsing
+ [29402] nscd: nscd: No such file or directory
[29415] nscd: Fix netlink cache invalidation if epoll is used
[29446] _dlopen now ignores dl_caller argument in static mode
[29490] alpha: New __brk_call implementation is broken
diff --git a/nscd/nscd.h b/nscd/nscd.h
index b5da5be98a..1ce4c1f7fd 100644
--- a/nscd/nscd.h
+++ b/nscd/nscd.h
@@ -66,7 +66,7 @@ typedef enum
struct traced_file
{
/* Tracks the last modified time of the traced file. */
- time_t mtime;
+ __time64_t mtime;
/* Support multiple registered files per database. */
struct traced_file *next;
int call_res_init;
diff --git a/nscd/nscd_gethst_r.c b/nscd/nscd_gethst_r.c
index 81bf324256..b6baa8abf8 100644
--- a/nscd/nscd_gethst_r.c
+++ b/nscd/nscd_gethst_r.c
@@ -113,7 +113,7 @@ __nscd_get_nl_timestamp (void)
if (map == NULL
|| (map != NO_MAPPING
&& map->head->nscd_certainly_running == 0
- && map->head->timestamp + MAPPING_TIMEOUT < time_now ()))
+ && map->head->timestamp + MAPPING_TIMEOUT < time64_now ()))
map = __nscd_get_mapping (GETFDHST, "hosts", &__hst_map_handle.mapped);
if (map == NO_MAPPING)
More information about the Glibc-cvs
mailing list