From c8e29317e97ee595a66314275c163a5ce55fcca9 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sun, 6 Aug 2017 19:46:21 +0200 Subject: adjtimex: zero-fill whole structure, to be on the safe side function old new delta adjtimex_main 395 406 +11 Signed-off-by: Denys Vlasenko --- miscutils/adjtimex.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/miscutils/adjtimex.c b/miscutils/adjtimex.c index 0830734ee..a39c4f5cf 100644 --- a/miscutils/adjtimex.c +++ b/miscutils/adjtimex.c @@ -90,13 +90,14 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) unsigned opt; char *opt_o, *opt_f, *opt_p, *opt_t; struct timex txc; - int i, ret; + int ret; const char *descript; + memset(&txc, 0, sizeof(txc)); + opt_complementary = "=0"; /* no valid non-option parameters */ opt = getopt32(argv, "qo:f:p:t:", &opt_o, &opt_f, &opt_p, &opt_t); - txc.modes = 0; //if (opt & 0x1) // -q if (opt & 0x2) { // -o txc.offset = xatol(opt_o); @@ -116,14 +117,13 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) } ret = adjtimex(&txc); - - if (ret < 0) { + if (ret < 0) bb_perror_nomsg_and_die(); - } if (!(opt & OPT_quiet)) { const char *sep; const char *name; + int i; printf( " mode: %d\n" @@ -132,8 +132,9 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) " maxerror: %ld\n" " esterror: %ld\n" " status: %d (", - txc.modes, txc.offset, txc.freq, txc.maxerror, - txc.esterror, txc.status); + txc.modes, txc.offset, txc.freq, txc.maxerror, + txc.esterror, txc.status + ); /* representative output of next code fragment: * "PLL | PPSTIME" @@ -159,9 +160,11 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) " time.tv_sec: %ld\n" " time.tv_usec: %ld\n" " return value: %d (%s)\n", - txc.constant, - txc.precision, txc.tolerance, txc.tick, - (long)txc.time.tv_sec, (long)txc.time.tv_usec, ret, descript); + txc.constant, + txc.precision, txc.tolerance, txc.tick, + (long)txc.time.tv_sec, (long)txc.time.tv_usec, + ret, descript + ); } return 0; -- cgit v1.2.3