diff --git a/NOFORK_NOEXEC.lst b/NOFORK_NOEXEC.lst index 99af24357..97b7d8b20 100644 --- a/NOFORK_NOEXEC.lst +++ b/NOFORK_NOEXEC.lst @@ -39,7 +39,7 @@ acpid - daemon add-shell addgroup adduser -adjtimex +adjtimex - NOFORK ar - runner arch - NOFORK arp - complex, rare diff --git a/miscutils/adjtimex.c b/miscutils/adjtimex.c index a39c4f5cf..ce6f8ccd8 100644 --- a/miscutils/adjtimex.c +++ b/miscutils/adjtimex.c @@ -18,7 +18,7 @@ //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)) +//applet:IF_ADJTIMEX(APPLET_NOFORK(adjtimex, adjtimex, BB_DIR_SBIN, BB_SUID_DROP, adjtimex)) //kbuild:lib-$(CONFIG_ADJTIMEX) += adjtimex.o @@ -116,6 +116,11 @@ int adjtimex_main(int argc UNUSED_PARAM, char **argv) txc.modes |= ADJ_TICK; } + /* It's NOFORK applet because the code is very simple: + * just some printf. No opens, no allocs. + * If you need to make it more complex, feel free to downgrade to NOEXEC + */ + ret = adjtimex(&txc); if (ret < 0) bb_perror_nomsg_and_die();