aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NOFORK_NOEXEC.lst1
-rw-r--r--miscutils/ubi_tools.c21
2 files changed, 15 insertions, 7 deletions
diff --git a/NOFORK_NOEXEC.lst b/NOFORK_NOEXEC.lst
index 21f09728d..d54c206fe 100644
--- a/NOFORK_NOEXEC.lst
+++ b/NOFORK_NOEXEC.lst
@@ -55,7 +55,6 @@ blockdev - noexec. leaks fd
55bootchartd - daemon 55bootchartd - daemon
56brctl - noexec 56brctl - noexec
57bunzip2 - runner 57bunzip2 - runner
58busybox
59bzcat - runner 58bzcat - runner
60bzip2 - runner 59bzip2 - runner
61cal - runner: cal -n9999 60cal - runner: cal -n9999
diff --git a/miscutils/ubi_tools.c b/miscutils/ubi_tools.c
index c6ba22adf..d9b76b69c 100644
--- a/miscutils/ubi_tools.c
+++ b/miscutils/ubi_tools.c
@@ -67,12 +67,21 @@
67#endif 67#endif
68#include <mtd/ubi-user.h> 68#include <mtd/ubi-user.h>
69 69
70#define do_attach (ENABLE_UBIATTACH && applet_name[3] == 'a') 70#define UBI_APPLET_CNT (0 \
71#define do_detach (ENABLE_UBIDETACH && applet_name[3] == 'd') 71 + ENABLE_UBIATTACH \
72#define do_mkvol (ENABLE_UBIMKVOL && applet_name[3] == 'm') 72 + ENABLE_UBIDETACH \
73#define do_rmvol (ENABLE_UBIRMVOL && applet_name[4] == 'm') 73 + ENABLE_UBIMKVOL \
74#define do_rsvol (ENABLE_UBIRSVOL && applet_name[4] == 's') 74 + ENABLE_UBIRMVOL \
75#define do_update (ENABLE_UBIUPDATEVOL && applet_name[3] == 'u') 75 + ENABLE_UBIRSVOL \
76 + ENABLE_UBIUPDATEVOL \
77 )
78
79#define do_attach (ENABLE_UBIATTACH && (UBI_APPLET_CNT == 1 || applet_name[4] == 't'))
80#define do_detach (ENABLE_UBIDETACH && (UBI_APPLET_CNT == 1 || applet_name[4] == 'e'))
81#define do_mkvol (ENABLE_UBIMKVOL && (UBI_APPLET_CNT == 1 || applet_name[4] == 'k'))
82#define do_rmvol (ENABLE_UBIRMVOL && (UBI_APPLET_CNT == 1 || applet_name[4] == 'm'))
83#define do_rsvol (ENABLE_UBIRSVOL && (UBI_APPLET_CNT == 1 || applet_name[4] == 's'))
84#define do_update (ENABLE_UBIUPDATEVOL && (UBI_APPLET_CNT == 1 || applet_name[4] == 'p'))
76 85
77static unsigned get_num_from_file(const char *path, unsigned max, const char *errmsg) 86static unsigned get_num_from_file(const char *path, unsigned max, const char *errmsg)
78{ 87{