1303 files changed, 32187 insertions, 57138 deletions
diff --git a/miscutils/adjtimex.c b/miscutils/adjtimex.c index 1bc05b5..b4b54c4 100644 --- a/miscutils/adjtimex.c +++ b/miscutils/adjtimex.c @@ -10,16 +10,27 @@ * * Licensed under GPLv2 or later, see file LICENSE in this source tree. */ +//config:config ADJTIMEX +//config: bool "adjtimex" +//config: default y +//config: select PLATFORM_LINUX +//config: help +//config: Adjtimex reads and optionally sets adjustment parameters for +//config: the Linux clock adjustment algorithm. + +//applet:IF_ADJTIMEX(APPLET(adjtimex, BB_DIR_SBIN, BB_SUID_DROP)) + +//kbuild:lib-$(CONFIG_ADJTIMEX) += adjtimex.o //usage:#define adjtimex_trivial_usage //usage: "[-q] [-o OFF] [-f FREQ] [-p TCONST] [-t TICK]" //usage:#define adjtimex_full_usage "\n\n" -//usage: "Read and optionally set system timebase parameters. See adjtimex(2)\n" +//usage: "Read or set kernel time variables. See adjtimex(2)\n" //usage: "\n -q Quiet" //usage: "\n -o OFF Time offset, microseconds" //usage: "\n -f FREQ Frequency adjust, integer kernel units (65536 is 1ppm)" -//usage: "\n (positive values make clock run faster)" //usage: "\n -t TICK Microseconds per tick, usually 10000" +//usage: "\n (positive -t or -f values make clock run faster)" //usage: "\n -p TCONST" #include "libbb.h" @@ -30,7 +41,7 @@ extern int adjtimex (struct timex *); # include <sys/timex.h> #endif -static const uint16_t statlist_bit[] = { +static const uint16_t statlist_bit[] ALIGN2 = { STA_PLL, STA_PPSFREQ, STA_PPSTIME, @@ -46,7 +57,7 @@ static const uint16_t statlist_bit[] = { STA_CLOCKERR, 0 }; -static const char statlist_name[] = +static const char statlist_name[] ALIGN1 = "PLL" "\0" "PPSFREQ" "\0" "PPSTIME" "\0" @@ -62,7 +73,7 @@ static const char statlist_name[] = "CLOCKERR" ; -static const char ret_code_descript[] = +static const char ret_code_descript[] ALIGN1 = "clock synchronized" "\0" "insert leap second" "\0" "delete leap second" "\0" @@ -112,13 +123,13 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) } if (!(opt & OPT_quiet)) { - int sep; + const char *sep; const char *name; printf( " mode: %d\n" - "-o offset: %ld\n" - "-f frequency: %ld\n" + "-o offset: %ld us\n" + "-f freq.adjust: %ld (65536 = 1ppm)\n" " maxerror: %ld\n" " esterror: %ld\n" " status: %d (", @@ -126,15 +137,14 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) txc.esterror, txc.status); /* representative output of next code fragment: - "PLL | PPSTIME" */ + * "PLL | PPSTIME" + */ name = statlist_name; - sep = 0; + sep = ""; for (i = 0; statlist_bit[i]; i++) { if (txc.status & statlist_bit[i]) { - if (sep) - fputs(" | ", stdout); - fputs(name, stdout); - sep = 1; + printf("%s%s", sep, name); + sep = " | "; } name += strlen(name) + 1; } @@ -144,9 +154,9 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) descript = nth_string(ret_code_descript, ret); printf(")\n" "-p timeconstant: %ld\n" - " precision: %ld\n" + " precision: %ld us\n" " tolerance: %ld\n" - "-t tick: %ld\n" + "-t tick: %ld us\n" " time.tv_sec: %ld\n" " time.tv_usec: %ld\n" " return value: %d (%s)\n", |