Hello lynxis lazus,

I'd like you to do a code review. Please visit

    https://gerrit.osmocom.org/c/osmo-hlr/+/15359

to review the following change.


Change subject: change format of 'last LU seen'
......................................................................

change format of 'last LU seen'

So far, the time string format comes from ctime_r, and we manually add "UTC" to 
it.

The ctime_r format is wildly chaotic IMHO, mixing weekday, day-of-month and
hour and year in very unsorted ways.

Adding "UTC" to it is non-standard.

Instead use an ISO-8601 standardized time string via strftime().

Change-Id: I6731968f05050399f4dd43b241290186e0c59e1a
---
M src/hlr_vty_subscr.c
1 file changed, 8 insertions(+), 10 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-hlr refs/changes/59/15359/1

diff --git a/src/hlr_vty_subscr.c b/src/hlr_vty_subscr.c
index 73dfab6..b53227a 100644
--- a/src/hlr_vty_subscr.c
+++ b/src/hlr_vty_subscr.c
@@ -35,16 +35,15 @@

 #define hexdump_buf(buf) osmo_hexdump_nospc((void*)buf, sizeof(buf))

-static char *
-get_datestr(const time_t *t, char *datebuf)
+static char *get_datestr(const time_t *t)
 {
-       char *p, *s = ctime_r(t, datebuf);
+       static char buf[32];
+       struct tm tm;

-       /* Strip trailing newline. */
-       p = strchr(s, '\n');
-       if (p)
-               *p = '\0';
-       return s;
+       tm = *gmtime(t);
+
+       strftime(buf, sizeof(buf), "%FT%T+00:00", &tm);
+       return buf;
 }

 static void subscr_dump_full_vty(struct vty *vty, struct hlr_subscriber 
*subscr)
@@ -52,7 +51,6 @@
        int rc;
        struct osmo_sub_auth_data aud2g;
        struct osmo_sub_auth_data aud3g;
-       char datebuf[26]; /* for ctime_r(3) */

        vty_out(vty, "    ID: %"PRIu64"%s", subscr->id, VTY_NEWLINE);

@@ -88,7 +86,7 @@
        if (subscr->ms_purged_ps)
                vty_out(vty, "    PS purged%s", VTY_NEWLINE);
        if (subscr->last_lu_seen)
-               vty_out(vty, "    last LU seen: %s UTC%s", 
get_datestr(&subscr->last_lu_seen, datebuf), VTY_NEWLINE);
+               vty_out(vty, "    last LU seen: %s%s", 
get_datestr(&subscr->last_lu_seen), VTY_NEWLINE);

        if (!*subscr->imsi)
                return;

--
To view, visit https://gerrit.osmocom.org/c/osmo-hlr/+/15359
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-hlr
Gerrit-Branch: master
Gerrit-Change-Id: I6731968f05050399f4dd43b241290186e0c59e1a
Gerrit-Change-Number: 15359
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <[email protected]>
Gerrit-Reviewer: lynxis lazus <[email protected]>
Gerrit-MessageType: newchange

Reply via email to