From ed7d118dd0cfda7be21dafae5eb34b0d419f62ec Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sun, 6 Aug 2017 20:00:21 +0200 Subject: [PATCH] adjtimex: make it NOFORK Signed-off-by: Denys Vlasenko --- NOFORK_NOEXEC.lst | 2 +- miscutils/adjtimex.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) 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();