u_int16_t i;
u_char *msg;
json_object *json_neigh = NULL;
+ time_t epoch_tbuf;
bgp = p->bgp;
uptime = bgp_clock();
uptime -= p->uptime;
tm = gmtime(&uptime);
+ epoch_tbuf = time(NULL) - uptime;
json_object_int_add(json_neigh, "bgpTimerUp", (tm->tm_sec * 1000) + (tm->tm_min * 60000) + (tm->tm_hour * 3600000));
+ json_object_string_add(json_neigh, "bgpTimerUpString", peer_uptime (p->uptime, timebuf, BGP_UPTIME_LEN, 0, NULL));
+ json_object_int_add(json_neigh, "bgpTimerUpEstablishedEpoch", epoch_tbuf);
}
else if (p->status == Active)
char *
peer_uptime (time_t uptime2, char *buf, size_t len, u_char use_json, json_object *json)
{
- time_t uptime1;
+ time_t uptime1, epoch_tbuf;
struct tm *tm;
/* Check buffer length. */
if (use_json)
{
+ epoch_tbuf = time(NULL) - uptime1;
json_object_string_add(json, "peerUptime", buf);
json_object_long_add(json, "peerUptimeMsec", uptime1 * 1000);
+ json_object_int_add(json, "peerUptimeEstablishedEpoch", epoch_tbuf);
}
return buf;