libbb: introduce and use xgettimeofday(), do not truncate 64-bit time_t in shells
function old new delta xgettimeofday - 11 +11 get_local_var_value 280 281 +1 svlogd_main 1323 1322 -1 change_epoch 67 66 -1 timestamp_and_log 461 458 -3 hwclock_main 301 298 -3 fmt_time_bernstein_25 135 132 -3 step_time 331 326 -5 script_main 1207 1202 -5 machtime 34 28 -6 curtime 61 54 -7 ts_main 423 415 -8 nmeter_main 761 751 -10 gettime1900d 67 46 -21 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/12 up/down: 12/-73) Total: -61 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
@@ -1701,7 +1701,7 @@ static uint32_t machtime(void)
|
||||
{
|
||||
struct timeval tv;
|
||||
|
||||
gettimeofday(&tv, NULL);
|
||||
xgettimeofday(&tv);
|
||||
return htonl((uint32_t)(tv.tv_sec + 2208988800U));
|
||||
}
|
||||
/* ARGSUSED */
|
||||
|
@@ -560,7 +560,7 @@ static double
|
||||
gettime1900d(void)
|
||||
{
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, NULL); /* never fails */
|
||||
xgettimeofday(&tv);
|
||||
G.cur_time = tv.tv_sec + (1.0e-6 * tv.tv_usec) + OFFSET_1900_1970;
|
||||
return G.cur_time;
|
||||
}
|
||||
@@ -1144,7 +1144,7 @@ step_time(double offset)
|
||||
char buf[sizeof("yyyy-mm-dd hh:mm:ss") + /*paranoia:*/ 4];
|
||||
time_t tval;
|
||||
|
||||
gettimeofday(&tvc, NULL); /* never fails */
|
||||
xgettimeofday(&tvc);
|
||||
dtime = tvc.tv_sec + (1.0e-6 * tvc.tv_usec) + offset;
|
||||
d_to_tv(dtime, &tvn);
|
||||
xsettimeofday(&tvn);
|
||||
|
@@ -505,7 +505,7 @@ send_probe(int seq, int ttl)
|
||||
struct outdata6_t *pkt = (void *) outdata;
|
||||
pkt->ident6 = ident;
|
||||
pkt->seq6 = htonl(seq);
|
||||
/*gettimeofday(&pkt->tv, &tz);*/
|
||||
/*xgettimeofday(&pkt->tv);*/
|
||||
icp = outicmp6;
|
||||
} else
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user