commit 470210fa864a56d0f46aa97ba6cc70e703b7432a
Author:     Klemens Nanni <k...@openbsd.org>
AuthorDate: Fri May 18 15:24:49 2018 +0200
Commit:     Oswald Buddenhagen <o...@users.sf.net>
CommitDate: Sun Jul 1 13:24:59 2018 +0200

    Fix time_t format strings
    
    For time_t, long long handles dates after Y2038 and should be safe on
    32-bit architectures.
    
    From Jeremie Courreges-Anglas <j...@openbsd.org>.

 src/drv_maildir.c | 6 +++---
 src/drv_proxy.c   | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/drv_maildir.c b/src/drv_maildir.c
index 4a94696..958dde8 100644
--- a/src/drv_maildir.c
+++ b/src/drv_maildir.c
@@ -1570,7 +1570,7 @@ maildir_store_msg( store_t *gctx, msg_data_t *data, int 
to_trash,
        uint uid;
        char buf[_POSIX_PATH_MAX], nbuf[_POSIX_PATH_MAX], fbuf[NUM_FLAGS + 3], 
base[128];
 
-       bl = nfsnprintf( base, sizeof(base), "%ld.%d_%d.%s", (long)time( 0 ), 
Pid, ++MaildirCount, Hostname );
+       bl = nfsnprintf( base, sizeof(base), "%lld.%d_%d.%s", (long long)time( 
0 ), Pid, ++MaildirCount, Hostname );
        if (!to_trash) {
 #ifdef USE_DB
                if (ctx->usedb) {
@@ -1751,8 +1751,8 @@ maildir_trash_msg( store_t *gctx, message_t *gmsg,
        for (;;) {
                nfsnprintf( buf, sizeof(buf), "%s/%s/%s", ctx->path, 
subdirs[gmsg->status & M_RECENT], msg->base );
                s = strstr( msg->base, ((maildir_store_conf_t 
*)gctx->conf)->info_prefix );
-               nfsnprintf( nbuf, sizeof(nbuf), "%s/%s/%ld.%d_%d.%s%s", 
ctx->trash,
-                           subdirs[gmsg->status & M_RECENT], (long)time( 0 ), 
Pid, ++MaildirCount, Hostname, s ? s : "" );
+               nfsnprintf( nbuf, sizeof(nbuf), "%s/%s/%lld.%d_%d.%s%s", 
ctx->trash,
+                           subdirs[gmsg->status & M_RECENT], (long long)time( 
0 ), Pid, ++MaildirCount, Hostname, s ? s : "" );
                if (!rename( buf, nbuf ))
                        break;
                if (!stat( buf, &st )) {
diff --git a/src/drv_proxy.c b/src/drv_proxy.c
index 5010f60..6a62f22 100644
--- a/src/drv_proxy.c
+++ b/src/drv_proxy.c
@@ -239,8 +239,8 @@ proxy_@name@( store_t *gctx@decl_args@, void (*cb)( 
@decl_cb_args@void *aux ), v
        static char fbuf[as(Flags) + 1];
        proxy_make_flags( cmd->data->flags, fbuf );
 //# END
-//# DEFINE fetch_msg_print_fmt_cb_args , flags=%s, date=%ld, size=%d
-//# DEFINE fetch_msg_print_pass_cb_args , fbuf, cmd->data->date, cmd->data->len
+//# DEFINE fetch_msg_print_fmt_cb_args , flags=%s, date=%lld, size=%d
+//# DEFINE fetch_msg_print_pass_cb_args , fbuf, (long long)cmd->data->date, 
cmd->data->len
 //# DEFINE fetch_msg_print_cb_args
        if (sts == DRV_OK && (DFlags & DEBUG_DRV_ALL)) {
                printf( "%s=========\n", cmd->gen.ctx->label );
@@ -254,8 +254,8 @@ proxy_@name@( store_t *gctx@decl_args@, void (*cb)( 
@decl_cb_args@void *aux ), v
        static char fbuf[as(Flags) + 1];
        proxy_make_flags( data->flags, fbuf );
 //# END
-//# DEFINE store_msg_print_fmt_args , flags=%s, date=%ld, size=%d, to_trash=%s
-//# DEFINE store_msg_print_pass_args , fbuf, data->date, data->len, to_trash ? 
"yes" : "no"
+//# DEFINE store_msg_print_fmt_args , flags=%s, date=%lld, size=%d, to_trash=%s
+//# DEFINE store_msg_print_pass_args , fbuf, (long long)data->date, data->len, 
to_trash ? "yes" : "no"
 //# DEFINE store_msg_print_args
        if (DFlags & DEBUG_DRV_ALL) {
                printf( "%s>>>>>>>>>\n", ctx->label );

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
isync-devel mailing list
isync-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to