Explicitly cast time_t to long when printing it out

This prevents wrong sizes data types on platforms where time_t doesn't
equal a long any more, for example on OpenBSD.
This commit is contained in:
Alexander Barton 2015-11-15 15:14:12 +01:00
parent 87887bc632
commit d8aba40f07
4 changed files with 12 additions and 7 deletions

View File

@ -873,13 +873,14 @@ IRC_PONG(CLIENT *Client, REQUEST *Req)
if (Client_Type(Client) == CLIENT_SERVER && Conn_LastPing(conn) == 0) {
Log(LOG_INFO,
"Synchronization with \"%s\" done (connection %d): %ld second%s [%ld users, %ld channels].",
Client_ID(Client), conn, time(NULL) - Conn_GetSignon(conn),
Client_ID(Client), conn,
(long)(time(NULL) - Conn_GetSignon(conn)),
time(NULL) - Conn_GetSignon(conn) == 1 ? "" : "s",
Client_UserCount(), Channel_CountVisible(NULL));
Conn_UpdatePing(conn);
} else
LogDebug("Connection %d: received PONG. Lag: %ld seconds.",
conn, time(NULL) - Conn_LastPing(conn));
conn, (long)(time(NULL) - Conn_LastPing(conn)));
return CONNECTED;
} /* IRC_PONG */

View File

@ -240,7 +240,7 @@ IRC_TRACE(CLIENT *Client, REQUEST *Req)
PACKAGE_VERSION, Client_ID(target),
Client_ID(Client_NextHop(target)),
Option_String(idx2),
time(NULL) - Conn_StartTime(idx2),
(long)(time(NULL) - Conn_StartTime(idx2)),
Conn_SendQ(idx), Conn_SendQ(idx2)))
return DISCONNECTED;

View File

@ -1,6 +1,6 @@
/*
* ngIRCd -- The Next Generation IRC Daemon
* Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors.
* Copyright (c)2001-2015 Alexander Barton (alex@barton.de) and Contributors.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -185,7 +185,7 @@ Synchronize_Lists(CLIENT * Client)
while (elem) {
if (!IRC_WriteStrClient(Client, "GLINE %s %ld :%s",
Lists_GetMask(elem),
Lists_GetValidity(elem) - time(NULL),
(long)(Lists_GetValidity(elem) - time(NULL)),
Lists_GetReason(elem)))
return DISCONNECTED;
elem = Lists_GetNext(elem);

View File

@ -1,6 +1,6 @@
/*
* ngIRCd -- The Next Generation IRC Daemon
* Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors.
* Copyright (c)2001-2015 Alexander Barton (alex@barton.de) and Contributors.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -48,7 +48,11 @@ Dump_State(void)
{
Log(LOG_DEBUG, "--- Internal server state: %s ---",
Client_ID(Client_ThisServer()));
Log(LOG_DEBUG, "time()=%ld", time(NULL));
#ifdef HAVE_LONG_LONG
Log(LOG_DEBUG, "time()=%llu", (unsigned long long)time(NULL));
#else
Log(LOG_DEBUG, "time()=%lu", (unsigned long)time(NULL));
#endif
Conf_DebugDump();
Conn_DebugDump();
Client_DebugDump();