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) { if (Client_Type(Client) == CLIENT_SERVER && Conn_LastPing(conn) == 0) {
Log(LOG_INFO, Log(LOG_INFO,
"Synchronization with \"%s\" done (connection %d): %ld second%s [%ld users, %ld channels].", "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", time(NULL) - Conn_GetSignon(conn) == 1 ? "" : "s",
Client_UserCount(), Channel_CountVisible(NULL)); Client_UserCount(), Channel_CountVisible(NULL));
Conn_UpdatePing(conn); Conn_UpdatePing(conn);
} else } else
LogDebug("Connection %d: received PONG. Lag: %ld seconds.", LogDebug("Connection %d: received PONG. Lag: %ld seconds.",
conn, time(NULL) - Conn_LastPing(conn)); conn, (long)(time(NULL) - Conn_LastPing(conn)));
return CONNECTED; return CONNECTED;
} /* IRC_PONG */ } /* IRC_PONG */

View File

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

View File

@ -1,6 +1,6 @@
/* /*
* ngIRCd -- The Next Generation IRC Daemon * 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 * 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 * it under the terms of the GNU General Public License as published by
@ -185,7 +185,7 @@ Synchronize_Lists(CLIENT * Client)
while (elem) { while (elem) {
if (!IRC_WriteStrClient(Client, "GLINE %s %ld :%s", if (!IRC_WriteStrClient(Client, "GLINE %s %ld :%s",
Lists_GetMask(elem), Lists_GetMask(elem),
Lists_GetValidity(elem) - time(NULL), (long)(Lists_GetValidity(elem) - time(NULL)),
Lists_GetReason(elem))) Lists_GetReason(elem)))
return DISCONNECTED; return DISCONNECTED;
elem = Lists_GetNext(elem); elem = Lists_GetNext(elem);

View File

@ -1,6 +1,6 @@
/* /*
* ngIRCd -- The Next Generation IRC Daemon * 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 * 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 * 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 ---", Log(LOG_DEBUG, "--- Internal server state: %s ---",
Client_ID(Client_ThisServer())); 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(); Conf_DebugDump();
Conn_DebugDump(); Conn_DebugDump();
Client_DebugDump(); Client_DebugDump();