cal - runner: cal -n9999
cat - runner
chat - needs ^C to work
-chattr - runner
+chattr - noexec. runner
chgrp - noexec. runner
chmod - noexec. runner
chown - noexec. runner
lpq - runner
lpr - runner
ls - noexec. runner
-lsattr - runner. noexec candidate (ls is, why not this one?)
+lsattr - noexec. runner
lsmod - noexec
lsof - complex
lspci - noexec candidate, too rare to bother for nofork
tty - NOFORK
ttysize - NOFORK
tunctl
-tune2fs - leaks: open+xfunc
+tune2fs - noexec. leaks: open+xfunc
ubiattach
ubidetach
ubimkvol
//config: help
//config: chattr changes the file attributes on a second extended file system.
-//applet:IF_CHATTR(APPLET(chattr, BB_DIR_BIN, BB_SUID_DROP))
+//applet:IF_CHATTR(APPLET_NOEXEC(chattr, chattr, BB_DIR_BIN, BB_SUID_DROP, chattr))
//kbuild:lib-$(CONFIG_CHATTR) += chattr.o e2fs_lib.o
//config: help
//config: lsattr lists the file attributes on a second extended file system.
-//applet:IF_LSATTR(APPLET(lsattr, BB_DIR_BIN, BB_SUID_DROP))
+//applet:IF_LSATTR(APPLET_NOEXEC(lsattr, lsattr, BB_DIR_BIN, BB_SUID_DROP, lsattr))
+/* ls is NOEXEC, so we should be too! ;) */
//kbuild:lib-$(CONFIG_LSATTR) += lsattr.o e2fs_lib.o
//config: tune2fs allows the system administrator to adjust various tunable
//config: filesystem parameters on Linux ext2/ext3 filesystems.
-//applet:IF_TUNE2FS(APPLET(tune2fs, BB_DIR_SBIN, BB_SUID_DROP))
+//applet:IF_TUNE2FS(APPLET_NOEXEC(tune2fs, tune2fs, BB_DIR_SBIN, BB_SUID_DROP, tune2fs))
//TODO alias to "tune2fs -L LABEL": //applet:IF_E2LABEL(APPLET_ODDNAME(e2label, tune2fs, BB_DIR_SBIN, BB_SUID_DROP, e2label))