source: MondoRescue/branches/3.3/mindi-busybox/include/applets.src.h@ 3723

Last change on this file since 3723 was 3621, checked in by Bruno Cornec, 10 years ago

New 3?3 banch for incorporation of latest busybox 1.25. Changing minor version to handle potential incompatibilities.

  • Property svn:eol-style set to native
File size: 19.8 KB
Line 
1/* vi: set sw=4 ts=4: */
2/*
3 * applets.h - a listing of all busybox applets.
4 *
5 * If you write a new applet, you need to add an entry to this list to make
6 * busybox aware of it.
7 */
8
9/*
10name - applet name as it is typed on command line
11help - applet name, converted to C (ether-wake: help = ether_wake)
12main - corresponding <applet>_main to call (bzcat: main = bunzip2)
13l - location to install link to: [/usr]/[s]bin
14s - suid type:
15 BB_SUID_REQUIRE: will complain if busybox isn't suid
16 and is run by non-root (applet_main() will not be called at all)
17 BB_SUID_DROP: will drop suid prior to applet_main()
18 BB_SUID_MAYBE: neither of the above
19 (every instance of BB_SUID_REQUIRE and BB_SUID_MAYBE
20 needs to be justified in comment)
21 NB: please update FEATURE_SUID help text whenever you add/remove
22 BB_SUID_REQUIRE or BB_SUID_MAYBE applet.
23*/
24
25#if defined(PROTOTYPES)
26# define APPLET(name,l,s) int name##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
27# define APPLET_ODDNAME(name,main,l,s,help) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
28# define APPLET_NOEXEC(name,main,l,s,help) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
29# define APPLET_NOFORK(name,main,l,s,help) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
30
31#elif defined(NAME_MAIN)
32# define APPLET(name,l,s) name name##_main
33# define APPLET_ODDNAME(name,main,l,s,help) name main##_main
34# define APPLET_NOEXEC(name,main,l,s,help) name main##_main
35# define APPLET_NOFORK(name,main,l,s,help) name main##_main
36
37#elif defined(MAKE_USAGE) && ENABLE_FEATURE_VERBOSE_USAGE
38# define APPLET(name,l,s) MAKE_USAGE(#name, name##_trivial_usage name##_full_usage)
39# define APPLET_ODDNAME(name,main,l,s,help) MAKE_USAGE(#name, help##_trivial_usage help##_full_usage)
40# define APPLET_NOEXEC(name,main,l,s,help) MAKE_USAGE(#name, help##_trivial_usage help##_full_usage)
41# define APPLET_NOFORK(name,main,l,s,help) MAKE_USAGE(#name, help##_trivial_usage help##_full_usage)
42
43#elif defined(MAKE_USAGE) && !ENABLE_FEATURE_VERBOSE_USAGE
44# define APPLET(name,l,s) MAKE_USAGE(#name, name##_trivial_usage)
45# define APPLET_ODDNAME(name,main,l,s,help) MAKE_USAGE(#name, help##_trivial_usage)
46# define APPLET_NOEXEC(name,main,l,s,help) MAKE_USAGE(#name, help##_trivial_usage)
47# define APPLET_NOFORK(name,main,l,s,help) MAKE_USAGE(#name, help##_trivial_usage)
48
49#elif defined(MAKE_LINKS)
50# define APPLET(name,l,c) LINK l name
51# define APPLET_ODDNAME(name,main,l,s,help) LINK l name
52# define APPLET_NOEXEC(name,main,l,s,help) LINK l name
53# define APPLET_NOFORK(name,main,l,s,help) LINK l name
54
55#elif defined(MAKE_SUID)
56# define APPLET(name,l,s) SUID s l name
57# define APPLET_ODDNAME(name,main,l,s,help) SUID s l name
58# define APPLET_NOEXEC(name,main,l,s,help) SUID s l name
59# define APPLET_NOFORK(name,main,l,s,help) SUID s l name
60
61#else
62 static struct bb_applet applets[] = { /* name, main, location, need_suid */
63# define APPLET(name,l,s) { #name, #name, l, s },
64# define APPLET_ODDNAME(name,main,l,s,help) { #name, #main, l, s },
65# define APPLET_NOEXEC(name,main,l,s,help) { #name, #main, l, s, 1 },
66# define APPLET_NOFORK(name,main,l,s,help) { #name, #main, l, s, 1, 1 },
67#endif
68
69#if ENABLE_INSTALL_NO_USR
70# define BB_DIR_USR_BIN BB_DIR_BIN
71# define BB_DIR_USR_SBIN BB_DIR_SBIN
72#endif
73
74
75INSERT
76IF_TEST(APPLET_NOFORK([, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
77IF_TEST(APPLET_NOFORK([[, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
78IF_ACPID(APPLET(acpid, BB_DIR_SBIN, BB_SUID_DROP))
79IF_ADJTIMEX(APPLET(adjtimex, BB_DIR_SBIN, BB_SUID_DROP))
80IF_ARP(APPLET(arp, BB_DIR_SBIN, BB_SUID_DROP))
81IF_ARPING(APPLET(arping, BB_DIR_USR_SBIN, BB_SUID_DROP))
82IF_BASENAME(APPLET_NOFORK(basename, basename, BB_DIR_USR_BIN, BB_SUID_DROP, basename))
83IF_BBCONFIG(APPLET(bbconfig, BB_DIR_BIN, BB_SUID_DROP))
84IF_BEEP(APPLET(beep, BB_DIR_USR_BIN, BB_SUID_DROP))
85IF_BLKID(APPLET(blkid, BB_DIR_SBIN, BB_SUID_DROP))
86IF_BRCTL(APPLET(brctl, BB_DIR_USR_SBIN, BB_SUID_DROP))
87IF_CAL(APPLET(cal, BB_DIR_USR_BIN, BB_SUID_DROP))
88IF_CAT(APPLET_NOFORK(cat, cat, BB_DIR_BIN, BB_SUID_DROP, cat))
89IF_CATV(APPLET(catv, BB_DIR_BIN, BB_SUID_DROP))
90IF_CHAT(APPLET(chat, BB_DIR_USR_SBIN, BB_SUID_DROP))
91IF_CHCON(APPLET(chcon, BB_DIR_USR_BIN, BB_SUID_DROP))
92IF_CHGRP(APPLET_NOEXEC(chgrp, chgrp, BB_DIR_BIN, BB_SUID_DROP, chgrp))
93IF_CHMOD(APPLET_NOEXEC(chmod, chmod, BB_DIR_BIN, BB_SUID_DROP, chmod))
94IF_CHOWN(APPLET_NOEXEC(chown, chown, BB_DIR_BIN, BB_SUID_DROP, chown))
95IF_CHROOT(APPLET(chroot, BB_DIR_USR_SBIN, BB_SUID_DROP))
96IF_CHRT(APPLET(chrt, BB_DIR_USR_BIN, BB_SUID_DROP))
97IF_CHVT(APPLET(chvt, BB_DIR_USR_BIN, BB_SUID_DROP))
98IF_CKSUM(APPLET_NOEXEC(cksum, cksum, BB_DIR_USR_BIN, BB_SUID_DROP, cksum))
99IF_CLEAR(APPLET(clear, BB_DIR_USR_BIN, BB_SUID_DROP))
100IF_COMM(APPLET(comm, BB_DIR_USR_BIN, BB_SUID_DROP))
101IF_CP(APPLET_NOEXEC(cp, cp, BB_DIR_BIN, BB_SUID_DROP, cp))
102/* Needs to be run by root or be suid root - needs to change /var/spool/cron* files: */
103IF_CRONTAB(APPLET(crontab, BB_DIR_USR_BIN, BB_SUID_REQUIRE))
104IF_CUT(APPLET_NOEXEC(cut, cut, BB_DIR_USR_BIN, BB_SUID_DROP, cut))
105IF_DC(APPLET(dc, BB_DIR_USR_BIN, BB_SUID_DROP))
106IF_DD(APPLET_NOEXEC(dd, dd, BB_DIR_BIN, BB_SUID_DROP, dd))
107IF_DEALLOCVT(APPLET(deallocvt, BB_DIR_USR_BIN, BB_SUID_DROP))
108IF_DEVFSD(APPLET(devfsd, BB_DIR_SBIN, BB_SUID_DROP))
109IF_DEVMEM(APPLET(devmem, BB_DIR_SBIN, BB_SUID_DROP))
110IF_DF(APPLET(df, BB_DIR_BIN, BB_SUID_DROP))
111IF_DHCPRELAY(APPLET(dhcprelay, BB_DIR_USR_SBIN, BB_SUID_DROP))
112IF_DIRNAME(APPLET_NOFORK(dirname, dirname, BB_DIR_USR_BIN, BB_SUID_DROP, dirname))
113IF_DMESG(APPLET(dmesg, BB_DIR_BIN, BB_SUID_DROP))
114IF_DNSD(APPLET(dnsd, BB_DIR_USR_SBIN, BB_SUID_DROP))
115IF_HOSTNAME(APPLET_ODDNAME(dnsdomainname, hostname, BB_DIR_BIN, BB_SUID_DROP, dnsdomainname))
116IF_DOS2UNIX(APPLET_NOEXEC(dos2unix, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, dos2unix))
117IF_DU(APPLET(du, BB_DIR_USR_BIN, BB_SUID_DROP))
118IF_DUMPKMAP(APPLET(dumpkmap, BB_DIR_BIN, BB_SUID_DROP))
119IF_DUMPLEASES(APPLET(dumpleases, BB_DIR_USR_BIN, BB_SUID_DROP))
120//IF_E2FSCK(APPLET(e2fsck, BB_DIR_SBIN, BB_SUID_DROP))
121//IF_E2LABEL(APPLET_ODDNAME(e2label, tune2fs, BB_DIR_SBIN, BB_SUID_DROP, e2label))
122IF_ECHO(APPLET_NOFORK(echo, echo, BB_DIR_BIN, BB_SUID_DROP, echo))
123IF_EJECT(APPLET(eject, BB_DIR_USR_BIN, BB_SUID_DROP))
124IF_ENV(APPLET_NOEXEC(env, env, BB_DIR_USR_BIN, BB_SUID_DROP, env))
125IF_ETHER_WAKE(APPLET_ODDNAME(ether-wake, ether_wake, BB_DIR_USR_SBIN, BB_SUID_DROP, ether_wake))
126IF_EXPAND(APPLET(expand, BB_DIR_USR_BIN, BB_SUID_DROP))
127IF_EXPR(APPLET(expr, BB_DIR_USR_BIN, BB_SUID_DROP))
128IF_FAKEIDENTD(APPLET(fakeidentd, BB_DIR_USR_SBIN, BB_SUID_DROP))
129IF_FALSE(APPLET_NOFORK(false, false, BB_DIR_BIN, BB_SUID_DROP, false))
130IF_FBSET(APPLET(fbset, BB_DIR_USR_SBIN, BB_SUID_DROP))
131IF_FBSPLASH(APPLET(fbsplash, BB_DIR_SBIN, BB_SUID_DROP))
132IF_FDFLUSH(APPLET_ODDNAME(fdflush, freeramdisk, BB_DIR_BIN, BB_SUID_DROP, fdflush))
133IF_FDFORMAT(APPLET(fdformat, BB_DIR_USR_SBIN, BB_SUID_DROP))
134IF_FDISK(APPLET(fdisk, BB_DIR_SBIN, BB_SUID_DROP))
135IF_FGCONSOLE(APPLET(fgconsole, BB_DIR_USR_BIN, BB_SUID_DROP))
136/* Benefits from suid root: better access to /dev/BLOCKDEVs: */
137IF_FINDFS(APPLET(findfs, BB_DIR_SBIN, BB_SUID_MAYBE))
138IF_FLASH_ERASEALL(APPLET(flash_eraseall, BB_DIR_USR_SBIN, BB_SUID_DROP))
139IF_FLASH_LOCK(APPLET_ODDNAME(flash_lock, flash_lock_unlock, BB_DIR_USR_SBIN, BB_SUID_DROP, flash_lock))
140IF_FLASH_UNLOCK(APPLET_ODDNAME(flash_unlock, flash_lock_unlock, BB_DIR_USR_SBIN, BB_SUID_DROP, flash_unlock))
141IF_FLASHCP(APPLET(flashcp, BB_DIR_USR_SBIN, BB_SUID_DROP))
142IF_FLOCK(APPLET(flock, BB_DIR_USR_BIN, BB_SUID_DROP))
143IF_FOLD(APPLET_NOEXEC(fold, fold, BB_DIR_USR_BIN, BB_SUID_DROP, fold))
144IF_FREE(APPLET(free, BB_DIR_USR_BIN, BB_SUID_DROP))
145IF_FREERAMDISK(APPLET(freeramdisk, BB_DIR_SBIN, BB_SUID_DROP))
146//IF_E2FSCK(APPLET_ODDNAME(fsck.ext2, e2fsck, BB_DIR_SBIN, BB_SUID_DROP, fsck_ext2))
147//IF_E2FSCK(APPLET_ODDNAME(fsck.ext3, e2fsck, BB_DIR_SBIN, BB_SUID_DROP, fsck_ext3))
148IF_FSCK_MINIX(APPLET_ODDNAME(fsck.minix, fsck_minix, BB_DIR_SBIN, BB_SUID_DROP, fsck_minix))
149IF_FSYNC(APPLET_NOFORK(fsync, fsync, BB_DIR_BIN, BB_SUID_DROP, fsync))
150IF_FTPD(APPLET(ftpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
151IF_FTPGET(APPLET_ODDNAME(ftpget, ftpgetput, BB_DIR_USR_BIN, BB_SUID_DROP, ftpget))
152IF_FTPPUT(APPLET_ODDNAME(ftpput, ftpgetput, BB_DIR_USR_BIN, BB_SUID_DROP, ftpput))
153IF_FUSER(APPLET(fuser, BB_DIR_USR_BIN, BB_SUID_DROP))
154IF_GETENFORCE(APPLET(getenforce, BB_DIR_USR_SBIN, BB_SUID_DROP))
155IF_GETOPT(APPLET(getopt, BB_DIR_BIN, BB_SUID_DROP))
156IF_GETSEBOOL(APPLET(getsebool, BB_DIR_USR_SBIN, BB_SUID_DROP))
157IF_HD(APPLET_NOEXEC(hd, hexdump, BB_DIR_USR_BIN, BB_SUID_DROP, hd))
158IF_HDPARM(APPLET(hdparm, BB_DIR_SBIN, BB_SUID_DROP))
159IF_HEAD(APPLET_NOEXEC(head, head, BB_DIR_USR_BIN, BB_SUID_DROP, head))
160IF_HEXDUMP(APPLET_NOEXEC(hexdump, hexdump, BB_DIR_USR_BIN, BB_SUID_DROP, hexdump))
161IF_HOSTNAME(APPLET(hostname, BB_DIR_BIN, BB_SUID_DROP))
162IF_HTTPD(APPLET(httpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
163IF_HWCLOCK(APPLET(hwclock, BB_DIR_SBIN, BB_SUID_DROP))
164IF_IFCONFIG(APPLET(ifconfig, BB_DIR_SBIN, BB_SUID_DROP))
165IF_IFUPDOWN(APPLET_ODDNAME(ifdown, ifupdown, BB_DIR_SBIN, BB_SUID_DROP, ifdown))
166IF_IFENSLAVE(APPLET(ifenslave, BB_DIR_SBIN, BB_SUID_DROP))
167IF_IFPLUGD(APPLET(ifplugd, BB_DIR_USR_SBIN, BB_SUID_DROP))
168IF_IFUPDOWN(APPLET_ODDNAME(ifup, ifupdown, BB_DIR_SBIN, BB_SUID_DROP, ifup))
169IF_INETD(APPLET(inetd, BB_DIR_USR_SBIN, BB_SUID_DROP))
170IF_INOTIFYD(APPLET(inotifyd, BB_DIR_SBIN, BB_SUID_DROP))
171IF_INSTALL(APPLET(install, BB_DIR_USR_BIN, BB_SUID_DROP))
172IF_IONICE(APPLET(ionice, BB_DIR_BIN, BB_SUID_DROP))
173#if ENABLE_FEATURE_IP_ADDRESS \
174 || ENABLE_FEATURE_IP_ROUTE \
175 || ENABLE_FEATURE_IP_LINK \
176 || ENABLE_FEATURE_IP_TUNNEL \
177 || ENABLE_FEATURE_IP_RULE
178IF_IP(APPLET(ip, BB_DIR_SBIN, BB_SUID_DROP))
179#endif
180IF_IPADDR(APPLET(ipaddr, BB_DIR_SBIN, BB_SUID_DROP))
181IF_IPCALC(APPLET(ipcalc, BB_DIR_BIN, BB_SUID_DROP))
182IF_IPCRM(APPLET(ipcrm, BB_DIR_USR_BIN, BB_SUID_DROP))
183IF_IPCS(APPLET(ipcs, BB_DIR_USR_BIN, BB_SUID_DROP))
184IF_IPLINK(APPLET(iplink, BB_DIR_SBIN, BB_SUID_DROP))
185IF_IPROUTE(APPLET(iproute, BB_DIR_SBIN, BB_SUID_DROP))
186IF_IPRULE(APPLET(iprule, BB_DIR_SBIN, BB_SUID_DROP))
187IF_IPTUNNEL(APPLET(iptunnel, BB_DIR_SBIN, BB_SUID_DROP))
188IF_KBD_MODE(APPLET(kbd_mode, BB_DIR_BIN, BB_SUID_DROP))
189IF_KILL(APPLET(kill, BB_DIR_BIN, BB_SUID_DROP))
190IF_KILLALL(APPLET_ODDNAME(killall, kill, BB_DIR_USR_BIN, BB_SUID_DROP, killall))
191IF_KILLALL5(APPLET_ODDNAME(killall5, kill, BB_DIR_USR_SBIN, BB_SUID_DROP, killall5))
192IF_LAST(APPLET(last, BB_DIR_USR_BIN, BB_SUID_DROP))
193//IF_LENGTH(APPLET_NOFORK(length, length, BB_DIR_USR_BIN, BB_SUID_DROP, length))
194IF_LESS(APPLET(less, BB_DIR_USR_BIN, BB_SUID_DROP))
195IF_LN(APPLET_NOEXEC(ln, ln, BB_DIR_BIN, BB_SUID_DROP, ln))
196IF_LOAD_POLICY(APPLET(load_policy, BB_DIR_USR_SBIN, BB_SUID_DROP))
197IF_LOADFONT(APPLET(loadfont, BB_DIR_USR_SBIN, BB_SUID_DROP))
198IF_LOADKMAP(APPLET(loadkmap, BB_DIR_SBIN, BB_SUID_DROP))
199IF_LOGNAME(APPLET_NOFORK(logname, logname, BB_DIR_USR_BIN, BB_SUID_DROP, logname))
200IF_LOSETUP(APPLET(losetup, BB_DIR_SBIN, BB_SUID_DROP))
201IF_LS(APPLET_NOEXEC(ls, ls, BB_DIR_BIN, BB_SUID_DROP, ls))
202IF_LSPCI(APPLET(lspci, BB_DIR_USR_BIN, BB_SUID_DROP))
203IF_LSUSB(APPLET(lsusb, BB_DIR_USR_BIN, BB_SUID_DROP))
204IF_MAKEDEVS(APPLET(makedevs, BB_DIR_SBIN, BB_SUID_DROP))
205IF_MAKEMIME(APPLET(makemime, BB_DIR_BIN, BB_SUID_DROP))
206IF_MAN(APPLET(man, BB_DIR_USR_BIN, BB_SUID_DROP))
207IF_MATCHPATHCON(APPLET(matchpathcon, BB_DIR_USR_SBIN, BB_SUID_DROP))
208IF_MD5SUM(APPLET_NOEXEC(md5sum, md5_sha1_sum, BB_DIR_USR_BIN, BB_SUID_DROP, md5sum))
209IF_MICROCOM(APPLET(microcom, BB_DIR_USR_BIN, BB_SUID_DROP))
210IF_MKDIR(APPLET_NOFORK(mkdir, mkdir, BB_DIR_BIN, BB_SUID_DROP, mkdir))
211IF_MKFS_VFAT(APPLET_ODDNAME(mkdosfs, mkfs_vfat, BB_DIR_SBIN, BB_SUID_DROP, mkfs_vfat))
212IF_MKFS_EXT2(APPLET_ODDNAME(mke2fs, mkfs_ext2, BB_DIR_SBIN, BB_SUID_DROP, mkfs_ext2))
213IF_MKFIFO(APPLET_NOEXEC(mkfifo, mkfifo, BB_DIR_USR_BIN, BB_SUID_DROP, mkfifo))
214IF_MKFS_EXT2(APPLET_ODDNAME(mkfs.ext2, mkfs_ext2, BB_DIR_SBIN, BB_SUID_DROP, mkfs_ext2))
215//IF_MKE2FS(APPLET_ODDNAME(mkfs.ext3, mke2fs, BB_DIR_SBIN, BB_SUID_DROP, mkfs_ext3))
216IF_MKFS_MINIX(APPLET_ODDNAME(mkfs.minix, mkfs_minix, BB_DIR_SBIN, BB_SUID_DROP, mkfs_minix))
217IF_MKFS_REISER(APPLET_ODDNAME(mkfs.reiser, mkfs_reiser, BB_DIR_SBIN, BB_SUID_DROP, mkfs_reiser))
218IF_MKFS_VFAT(APPLET_ODDNAME(mkfs.vfat, mkfs_vfat, BB_DIR_SBIN, BB_SUID_DROP, mkfs_vfat))
219IF_MKNOD(APPLET_NOEXEC(mknod, mknod, BB_DIR_BIN, BB_SUID_DROP, mknod))
220IF_MKSWAP(APPLET(mkswap, BB_DIR_SBIN, BB_SUID_DROP))
221IF_MORE(APPLET(more, BB_DIR_BIN, BB_SUID_DROP))
222/* On full-blown systems, requires suid for user mounts.
223 * But it's not unthinkable to have it available in non-suid flavor on some systems,
224 * for viewing mount table.
225 * Therefore we use BB_SUID_MAYBE instead of BB_SUID_REQUIRE: */
226IF_MOUNT(APPLET(mount, BB_DIR_BIN, IF_DESKTOP(BB_SUID_MAYBE) IF_NOT_DESKTOP(BB_SUID_DROP)))
227IF_MOUNTPOINT(APPLET(mountpoint, BB_DIR_BIN, BB_SUID_DROP))
228IF_MT(APPLET(mt, BB_DIR_BIN, BB_SUID_DROP))
229IF_MV(APPLET(mv, BB_DIR_BIN, BB_SUID_DROP))
230IF_NAMEIF(APPLET(nameif, BB_DIR_SBIN, BB_SUID_DROP))
231IF_NC(APPLET(nc, BB_DIR_USR_BIN, BB_SUID_DROP))
232IF_NETSTAT(APPLET(netstat, BB_DIR_BIN, BB_SUID_DROP))
233IF_NICE(APPLET(nice, BB_DIR_BIN, BB_SUID_DROP))
234IF_NOHUP(APPLET(nohup, BB_DIR_USR_BIN, BB_SUID_DROP))
235IF_NSLOOKUP(APPLET(nslookup, BB_DIR_USR_BIN, BB_SUID_DROP))
236IF_NTPD(APPLET(ntpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
237IF_OD(APPLET(od, BB_DIR_USR_BIN, BB_SUID_DROP))
238IF_OPENVT(APPLET(openvt, BB_DIR_USR_BIN, BB_SUID_DROP))
239//IF_PARSE(APPLET(parse, BB_DIR_USR_BIN, BB_SUID_DROP))
240IF_PGREP(APPLET(pgrep, BB_DIR_USR_BIN, BB_SUID_DROP))
241IF_PIDOF(APPLET(pidof, BB_DIR_BIN, BB_SUID_DROP))
242IF_PIVOT_ROOT(APPLET(pivot_root, BB_DIR_SBIN, BB_SUID_DROP))
243IF_PKILL(APPLET_ODDNAME(pkill, pgrep, BB_DIR_USR_BIN, BB_SUID_DROP, pkill))
244IF_POPMAILDIR(APPLET(popmaildir, BB_DIR_USR_SBIN, BB_SUID_DROP))
245IF_PRINTENV(APPLET_NOFORK(printenv, printenv, BB_DIR_BIN, BB_SUID_DROP, printenv))
246IF_PRINTF(APPLET_NOFORK(printf, printf, BB_DIR_USR_BIN, BB_SUID_DROP, printf))
247IF_PS(APPLET(ps, BB_DIR_BIN, BB_SUID_DROP))
248IF_PSCAN(APPLET(pscan, BB_DIR_USR_BIN, BB_SUID_DROP))
249IF_PWD(APPLET_NOFORK(pwd, pwd, BB_DIR_BIN, BB_SUID_DROP, pwd))
250IF_RAIDAUTORUN(APPLET(raidautorun, BB_DIR_SBIN, BB_SUID_DROP))
251IF_RDATE(APPLET(rdate, BB_DIR_USR_SBIN, BB_SUID_DROP))
252IF_RDEV(APPLET(rdev, BB_DIR_USR_SBIN, BB_SUID_DROP))
253IF_READAHEAD(APPLET(readahead, BB_DIR_USR_SBIN, BB_SUID_DROP))
254IF_READLINK(APPLET(readlink, BB_DIR_USR_BIN, BB_SUID_DROP))
255IF_READPROFILE(APPLET(readprofile, BB_DIR_USR_SBIN, BB_SUID_DROP))
256IF_REALPATH(APPLET(realpath, BB_DIR_USR_BIN, BB_SUID_DROP))
257IF_REFORMIME(APPLET(reformime, BB_DIR_BIN, BB_SUID_DROP))
258IF_RENICE(APPLET(renice, BB_DIR_USR_BIN, BB_SUID_DROP))
259IF_RESET(APPLET(reset, BB_DIR_USR_BIN, BB_SUID_DROP))
260IF_RESIZE(APPLET(resize, BB_DIR_USR_BIN, BB_SUID_DROP))
261IF_RESTORECON(APPLET_ODDNAME(restorecon, setfiles, BB_DIR_SBIN, BB_SUID_DROP, restorecon))
262IF_RM(APPLET_NOFORK(rm, rm, BB_DIR_BIN, BB_SUID_DROP, rm))
263IF_RMDIR(APPLET_NOFORK(rmdir, rmdir, BB_DIR_BIN, BB_SUID_DROP, rmdir))
264IF_ROUTE(APPLET(route, BB_DIR_SBIN, BB_SUID_DROP))
265IF_RTCWAKE(APPLET(rtcwake, BB_DIR_USR_SBIN, BB_SUID_DROP))
266IF_RUNCON(APPLET(runcon, BB_DIR_USR_BIN, BB_SUID_DROP))
267IF_RUNLEVEL(APPLET(runlevel, BB_DIR_SBIN, BB_SUID_DROP))
268IF_RX(APPLET(rx, BB_DIR_USR_BIN, BB_SUID_DROP))
269IF_SCRIPT(APPLET(script, BB_DIR_USR_BIN, BB_SUID_DROP))
270IF_SCRIPTREPLAY(APPLET(scriptreplay, BB_DIR_BIN, BB_SUID_DROP))
271IF_SELINUXENABLED(APPLET(selinuxenabled, BB_DIR_USR_SBIN, BB_SUID_DROP))
272IF_SENDMAIL(APPLET(sendmail, BB_DIR_USR_SBIN, BB_SUID_DROP))
273IF_SEQ(APPLET_NOFORK(seq, seq, BB_DIR_USR_BIN, BB_SUID_DROP, seq))
274IF_SESTATUS(APPLET(sestatus, BB_DIR_USR_SBIN, BB_SUID_DROP))
275IF_SETCONSOLE(APPLET(setconsole, BB_DIR_SBIN, BB_SUID_DROP))
276IF_SETENFORCE(APPLET(setenforce, BB_DIR_USR_SBIN, BB_SUID_DROP))
277IF_SETFILES(APPLET(setfiles, BB_DIR_SBIN, BB_SUID_DROP))
278IF_SETFONT(APPLET(setfont, BB_DIR_USR_SBIN, BB_SUID_DROP))
279IF_SETKEYCODES(APPLET(setkeycodes, BB_DIR_USR_BIN, BB_SUID_DROP))
280IF_SETLOGCONS(APPLET(setlogcons, BB_DIR_USR_SBIN, BB_SUID_DROP))
281IF_SETSEBOOL(APPLET(setsebool, BB_DIR_USR_SBIN, BB_SUID_DROP))
282IF_SETSID(APPLET(setsid, BB_DIR_USR_BIN, BB_SUID_DROP))
283IF_SHA1SUM(APPLET_NOEXEC(sha1sum, md5_sha1_sum, BB_DIR_USR_BIN, BB_SUID_DROP, sha1sum))
284IF_SHA3SUM(APPLET_NOEXEC(sha3sum, md5_sha1_sum, BB_DIR_USR_BIN, BB_SUID_DROP, sha3sum))
285IF_SHA256SUM(APPLET_NOEXEC(sha256sum, md5_sha1_sum, BB_DIR_USR_BIN, BB_SUID_DROP, sha256sum))
286IF_SHA512SUM(APPLET_NOEXEC(sha512sum, md5_sha1_sum, BB_DIR_USR_BIN, BB_SUID_DROP, sha512sum))
287IF_SHOWKEY(APPLET(showkey, BB_DIR_USR_BIN, BB_SUID_DROP))
288IF_SLATTACH(APPLET(slattach, BB_DIR_SBIN, BB_SUID_DROP))
289/* Do not make this applet NOFORK. It breaks ^C-ing of pauses in shells: */
290IF_SLEEP(APPLET(sleep, BB_DIR_BIN, BB_SUID_DROP))
291IF_SORT(APPLET_NOEXEC(sort, sort, BB_DIR_USR_BIN, BB_SUID_DROP, sort))
292IF_SPLIT(APPLET(split, BB_DIR_USR_BIN, BB_SUID_DROP))
293IF_STAT(APPLET(stat, BB_DIR_BIN, BB_SUID_DROP))
294IF_STRINGS(APPLET(strings, BB_DIR_USR_BIN, BB_SUID_DROP))
295IF_STTY(APPLET(stty, BB_DIR_BIN, BB_SUID_DROP))
296IF_SUM(APPLET(sum, BB_DIR_USR_BIN, BB_SUID_DROP))
297IF_SWAPONOFF(APPLET_ODDNAME(swapoff, swap_on_off, BB_DIR_SBIN, BB_SUID_DROP, swapoff))
298IF_SWAPONOFF(APPLET_ODDNAME(swapon, swap_on_off, BB_DIR_SBIN, BB_SUID_DROP, swapon))
299IF_SWITCH_ROOT(APPLET(switch_root, BB_DIR_SBIN, BB_SUID_DROP))
300IF_BB_SYSCTL(APPLET(sysctl, BB_DIR_SBIN, BB_SUID_DROP))
301IF_TAC(APPLET_NOEXEC(tac, tac, BB_DIR_USR_BIN, BB_SUID_DROP, tac))
302IF_TAIL(APPLET(tail, BB_DIR_USR_BIN, BB_SUID_DROP))
303/* IF_TC(APPLET(tc, BB_DIR_SBIN, BB_SUID_DROP)) */
304IF_TCPSVD(APPLET_ODDNAME(tcpsvd, tcpudpsvd, BB_DIR_USR_BIN, BB_SUID_DROP, tcpsvd))
305IF_TEE(APPLET(tee, BB_DIR_USR_BIN, BB_SUID_DROP))
306IF_TELNET(APPLET(telnet, BB_DIR_USR_BIN, BB_SUID_DROP))
307IF_TELNETD(APPLET(telnetd, BB_DIR_USR_SBIN, BB_SUID_DROP))
308IF_TEST(APPLET_NOFORK(test, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
309#if ENABLE_FEATURE_TFTP_GET || ENABLE_FEATURE_TFTP_PUT
310IF_TFTP(APPLET(tftp, BB_DIR_USR_BIN, BB_SUID_DROP))
311IF_TFTPD(APPLET(tftpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
312#endif
313IF_TIME(APPLET(time, BB_DIR_USR_BIN, BB_SUID_DROP))
314IF_TIMEOUT(APPLET(timeout, BB_DIR_USR_BIN, BB_SUID_DROP))
315IF_TOP(APPLET(top, BB_DIR_USR_BIN, BB_SUID_DROP))
316IF_TR(APPLET(tr, BB_DIR_USR_BIN, BB_SUID_DROP))
317/* Needs socket(AF_INET, SOCK_RAW, IPPROTO_ICMP), therefore BB_SUID_MAYBE: */
318IF_TRACEROUTE(APPLET(traceroute, BB_DIR_USR_BIN, BB_SUID_MAYBE))
319IF_TRACEROUTE6(APPLET(traceroute6, BB_DIR_USR_BIN, BB_SUID_MAYBE))
320IF_TRUE(APPLET_NOFORK(true, true, BB_DIR_BIN, BB_SUID_DROP, true))
321IF_TTY(APPLET(tty, BB_DIR_USR_BIN, BB_SUID_DROP))
322IF_TTYSIZE(APPLET(ttysize, BB_DIR_USR_BIN, BB_SUID_DROP))
323IF_TUNCTL(APPLET(tunctl, BB_DIR_SBIN, BB_SUID_DROP))
324IF_UDHCPC(APPLET(udhcpc, BB_DIR_SBIN, BB_SUID_DROP))
325IF_UDHCPD(APPLET(udhcpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
326IF_UDPSVD(APPLET_ODDNAME(udpsvd, tcpudpsvd, BB_DIR_USR_BIN, BB_SUID_DROP, udpsvd))
327IF_UMOUNT(APPLET(umount, BB_DIR_BIN, BB_SUID_DROP))
328IF_UNAME(APPLET(uname, BB_DIR_BIN, BB_SUID_DROP))
329IF_UNEXPAND(APPLET_ODDNAME(unexpand, expand, BB_DIR_USR_BIN, BB_SUID_DROP, unexpand))
330IF_UNIQ(APPLET(uniq, BB_DIR_USR_BIN, BB_SUID_DROP))
331IF_UNIX2DOS(APPLET_NOEXEC(unix2dos, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, unix2dos))
332IF_UPTIME(APPLET(uptime, BB_DIR_USR_BIN, BB_SUID_DROP))
333IF_USLEEP(APPLET_NOFORK(usleep, usleep, BB_DIR_BIN, BB_SUID_DROP, usleep))
334IF_UUDECODE(APPLET(uudecode, BB_DIR_USR_BIN, BB_SUID_DROP))
335IF_UUENCODE(APPLET(uuencode, BB_DIR_USR_BIN, BB_SUID_DROP))
336IF_VCONFIG(APPLET(vconfig, BB_DIR_SBIN, BB_SUID_DROP))
337IF_VOLNAME(APPLET(volname, BB_DIR_USR_BIN, BB_SUID_DROP))
338IF_WATCH(APPLET(watch, BB_DIR_BIN, BB_SUID_DROP))
339IF_WATCHDOG(APPLET(watchdog, BB_DIR_SBIN, BB_SUID_DROP))
340IF_WC(APPLET(wc, BB_DIR_USR_BIN, BB_SUID_DROP))
341IF_WHOAMI(APPLET_NOFORK(whoami, whoami, BB_DIR_USR_BIN, BB_SUID_DROP, whoami))
342IF_YES(APPLET_NOFORK(yes, yes, BB_DIR_USR_BIN, BB_SUID_DROP, yes))
343IF_ZCIP(APPLET(zcip, BB_DIR_SBIN, BB_SUID_DROP))
344
345#if !defined(PROTOTYPES) && !defined(NAME_MAIN) && !defined(MAKE_USAGE) \
346 && !defined(MAKE_LINKS) && !defined(MAKE_SUID)
347};
348#endif
349
350#undef APPLET
351#undef APPLET_ODDNAME
352#undef APPLET_NOEXEC
353#undef APPLET_NOFORK
Note: See TracBrowser for help on using the repository browser.