Thanks for fix.

Tested-by: Martin Jansa <martin.ja...@gmail.com>

On Mon, Apr 15, 2024 at 10:56 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail....@lists.yoctoproject.org> wrote:
>
> Thanks for the fix!
>
> Your patching workflow is misconfigured and the author
> field is incorrect.
>
> Total 12 (delta 7), reused 0 (delta 0), pack-reused 0
> remote: ##############################################
> remote: Invalid author Ola x Nilsson via lists.yoctoproject.org
> remote: ##############################################
>
> See: 
> https://docs.yoctoproject.org/dev/contributor-guide/submit-changes.html#troubleshooting-email-issues
>
> Bruce
>
> In message: [meta-virtualization][PATCH] diod: Build in 32bit systems with 
> 64bit time_t
> on 15/04/2024 Ola x Nilsson via lists.yoctoproject.org wrote:
>
> > Change-Id: I84c9c3526b79a63de7cdc2f0841bce26e29a72a2
> > Signed-off-by: Ola x Nilsson <ol...@axis.com>
> > ---
> >  recipes-extended/diod/diod_1.0.24.bb          |   1 +
> >  ...ous-time_t-sizes-in-printf-and-scanf.patch | 100 ++++++++++++++++++
> >  2 files changed, 101 insertions(+)
> >  create mode 100644 
> > recipes-extended/diod/files/0002-Handle-various-time_t-sizes-in-printf-and-scanf.patch
> >
> > diff --git a/recipes-extended/diod/diod_1.0.24.bb 
> > b/recipes-extended/diod/diod_1.0.24.bb
> > index 5e191dc0..6019fbfb 100644
> > --- a/recipes-extended/diod/diod_1.0.24.bb
> > +++ b/recipes-extended/diod/diod_1.0.24.bb
> > @@ -14,6 +14,7 @@ SRC_URI = 
> > "git://github.com/chaos/diod.git;protocol=https;branch=master \
> >             file://diod \
> >             file://diod.conf \
> >             file://0001-build-Find-lua-with-pkg-config.patch \
> > +           
> > file://0002-Handle-various-time_t-sizes-in-printf-and-scanf.patch \
> >             "
> >  DEPENDS = "libcap ncurses tcp-wrappers lua"
> >
> > diff --git 
> > a/recipes-extended/diod/files/0002-Handle-various-time_t-sizes-in-printf-and-scanf.patch
> >  
> > b/recipes-extended/diod/files/0002-Handle-various-time_t-sizes-in-printf-and-scanf.patch
> > new file mode 100644
> > index 00000000..3c13c101
> > --- /dev/null
> > +++ 
> > b/recipes-extended/diod/files/0002-Handle-various-time_t-sizes-in-printf-and-scanf.patch
> > @@ -0,0 +1,100 @@
> > +From 04b0c5a5cb9e32090b177ff7327ad3260783abe0 Mon Sep 17 00:00:00 2001
> > +From: Ola x Nilsson <ol...@axis.com>
> > +Date: Mon, 15 Apr 2024 17:31:44 +0200
> > +Subject: [PATCH] Handle various time_t sizes in printf and scanf
> > +
> > +The members of the timeval struct are both signed (defined by POSIX)
> > +and typically both 64 bits on a system where time_t is 64 bits.  This
> > +is possible also on 32 bit systems where time_t is larger to handle
> > +the 2038 problem.
> > +
> > +It's practically impossible to find a type and printf format that
> > +works even on all glibc systems.  Play it safe and always use printf
> > +with intmax_t and explict int64_t variables for scanf.
> > +
> > +Upstream-Status: Submitted [https://github.com/chaos/diod/pull/100]
> > +Signed-off-by: Ola x Nilsson <ol...@axis.com>
> > +---
> > + libnpfs/conn.c   | 5 +++--
> > + libnpfs/ctl.c    | 7 ++++---
> > + utils/dioddate.c | 8 +++++++-
> > + 3 files changed, 14 insertions(+), 6 deletions(-)
> > +
> > +diff --git a/libnpfs/conn.c b/libnpfs/conn.c
> > +index 6e85fff..c34c840 100644
> > +--- a/libnpfs/conn.c
> > ++++ b/libnpfs/conn.c
> > +@@ -16,6 +16,7 @@
> > + #include <stdio.h>
> > + #include <string.h>
> > + #include <stdint.h>
> > ++#include <inttypes.h>
> > + #include <stdarg.h>
> > + #include <errno.h>
> > + #include <pthread.h>
> > +@@ -133,8 +134,8 @@ _debug_trace (Npsrv *srv, Npfcall *fc)
> > +                             (void)gettimeofday(&b, NULL);
> > +                     (void)gettimeofday(&a, NULL);
> > +                     timersub(&a, &b, &c);
> > +-                    np_logmsg(srv, "[%lu.%-3lu] %s",
> > +-                              c.tv_sec, c.tv_usec/1000, s);
> > ++                    np_logmsg(srv, "[%"PRIdMAX".%-3"PRIdMAX"] %s",
> > ++                              (intmax_t)c.tv_sec, 
> > (intmax_t)c.tv_usec/1000, s);
> > +             } else
> > +                     np_logmsg(srv, "%s", s);
> > +     }
> > +diff --git a/libnpfs/ctl.c b/libnpfs/ctl.c
> > +index f40cde4..317a22e 100644
> > +--- a/libnpfs/ctl.c
> > ++++ b/libnpfs/ctl.c
> > +@@ -16,6 +16,7 @@
> > + #include <stdio.h>
> > + #include <string.h>
> > + #include <stdint.h>
> > ++#include <inttypes.h>
> > + #include <stdarg.h>
> > + #include <pthread.h>
> > + #include <errno.h>
> > +@@ -291,9 +292,9 @@ _ctl_get_date (char *name, void *a)
> > +             np_uerror (errno);
> > +             goto error;
> > +     }
> > +-    if (aspf (&s, &len, "%lu.%lu %d.%d\n",
> > +-                                    tv.tv_sec,         tv.tv_usec,
> > +-                                    tz.tz_minuteswest, tz.tz_dsttime) < 
> > 0) {
> > ++    if (aspf (&s, &len, "%"PRIdMAX".%"PRIdMAX" %d.%d\n",
> > ++                                    (uintmax_t)tv.tv_sec, 
> > (uintmax_t)tv.tv_usec,
> > ++                                    tz.tz_minuteswest,    tz.tz_dsttime) 
> > < 0) {
> > +             np_uerror (ENOMEM);
> > +             goto error;
> > +     }
> > +diff --git a/utils/dioddate.c b/utils/dioddate.c
> > +index bde002f..f392792 100644
> > +--- a/utils/dioddate.c
> > ++++ b/utils/dioddate.c
> > +@@ -21,6 +21,7 @@
> > + #include <unistd.h>
> > + #include <stdlib.h>
> > + #include <stdint.h>
> > ++#include <inttypes.h>
> > + #include <stdarg.h>
> > + #include <stdio.h>
> > + #if HAVE_GETOPT_H
> > +@@ -142,11 +143,16 @@ main (int argc, char *argv[])
> > +         errn (np_rerror (), "error reading date");
> > +         goto done;
> > +     }
> > +-    if (sscanf (buf, "%lu.%lu %d.%d", &tv.tv_sec, &tv.tv_usec,
> > ++
> > ++    int64_t sec = 0, usec = 0;
> > ++    if (sscanf (buf, "%"SCNd64".%"SCNd64" %d.%d", &sec, &usec,
> > +                                     &tz.tz_minuteswest, &tz.tz_dsttime) 
> > != 4) {
> > +         msg ("error scanning returned date: %s", buf);
> > +         goto done;
> > +     }
> > ++    tv.tv_sec = sec;
> > ++    tv.tv_usec = usec;
> > ++
> > +     if (Sopt) {
> > +         if (settimeofday (&tv, &tz) < 0)
> > +             err_exit ("settimeofday");
> > --
> > 2.39.2
> >
>
> >
> >
> >
>
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#8681): 
https://lists.yoctoproject.org/g/meta-virtualization/message/8681
Mute This Topic: https://lists.yoctoproject.org/mt/105539333/21656
Group Owner: meta-virtualization+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to