From 0afd56aa837527941560118d8d156032fb8a2e8d Mon Sep 17 00:00:00 2001 From: Jim McDonough Date: Mon, 21 May 2007 16:01:22 +0000 Subject: r23041: Remainder of fix for 4630: fix special case of unix_to_nt_time() for TIME_T_MAX, and also display of it in http_timestring() (This used to be commit 2553b6a56d20ef6273001ae3b090e156e676592c) --- source3/lib/time.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/source3/lib/time.c b/source3/lib/time.c index ae7f97790d..ee44f5eb13 100644 --- a/source3/lib/time.c +++ b/source3/lib/time.c @@ -95,7 +95,13 @@ void unix_to_nt_time(NTTIME *nt, time_t t) if (t == (time_t)-1) { *nt = (NTTIME)-1LL; return; - } + } + + if (t == TIME_T_MAX) { + *nt = 0x7fffffffffffffffLL; + return; + } + if (t == 0) { *nt = 0; return; @@ -301,7 +307,9 @@ char *http_timestring(time_t t) static fstring buf; struct tm *tm = localtime(&t); - if (!tm) { + if (t == TIME_T_MAX) { + slprintf(buf,sizeof(buf)-1,"never"); + } else if (!tm) { slprintf(buf,sizeof(buf)-1,"%ld seconds since the Epoch",(long)t); } else { #ifndef HAVE_STRFTIME -- cgit