aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2008-04-13 22:12:19 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2008-04-13 22:12:19 +0000
commit4f98e193828398e897c01196ff7a10c1eccda194 (patch)
tree9cb45e1355991b9555d0dafeae46459cc034d6ab
parent6d1ebecf65bd0af34bcfa2582c49e6810d7d4a35 (diff)
downloadbusybox-w32-4f98e193828398e897c01196ff7a10c1eccda194.tar.gz
busybox-w32-4f98e193828398e897c01196ff7a10c1eccda194.tar.bz2
busybox-w32-4f98e193828398e897c01196ff7a10c1eccda194.zip
make test, [ and [[ all NOFORK, for consistency.
Revamp handling of NOUSAGE applets. function old new delta packed_usage 24122 24104 -18
-rw-r--r--include/applets.h57
-rw-r--r--include/usage.h640
2 files changed, 361 insertions, 336 deletions
diff --git a/include/applets.h b/include/applets.h
index 2bd70f281..af5359784 100644
--- a/include/applets.h
+++ b/include/applets.h
@@ -25,35 +25,30 @@ s - suid type:
25 25
26#if defined(PROTOTYPES) 26#if defined(PROTOTYPES)
27# define APPLET(name,l,s) int name##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; 27# define APPLET(name,l,s) int name##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
28# define APPLET_NOUSAGE(name,main,l,s) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
29# define APPLET_ODDNAME(name,main,l,s,name2) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; 28# define APPLET_ODDNAME(name,main,l,s,name2) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
30# define APPLET_NOEXEC(name,main,l,s,name2) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; 29# define APPLET_NOEXEC(name,main,l,s,name2) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
31# define APPLET_NOFORK(name,main,l,s,name2) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; 30# define APPLET_NOFORK(name,main,l,s,name2) int main##_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
32 31
33#elif defined(NAME_MAIN_CNAME) 32#elif defined(NAME_MAIN_CNAME)
34# define APPLET(name,l,s) name name##_main name 33# define APPLET(name,l,s) name name##_main name
35# define APPLET_NOUSAGE(name,main,l,s) name main##_main name
36# define APPLET_ODDNAME(name,main,l,s,name2) name main##_main name2 34# define APPLET_ODDNAME(name,main,l,s,name2) name main##_main name2
37# define APPLET_NOEXEC(name,main,l,s,name2) name main##_main name2 35# define APPLET_NOEXEC(name,main,l,s,name2) name main##_main name2
38# define APPLET_NOFORK(name,main,l,s,name2) name main##_main name2 36# define APPLET_NOFORK(name,main,l,s,name2) name main##_main name2
39 37
40#elif defined(MAKE_USAGE) && ENABLE_FEATURE_VERBOSE_USAGE 38#elif defined(MAKE_USAGE) && ENABLE_FEATURE_VERBOSE_USAGE
41# define APPLET(name,l,s) name##_trivial_usage "\n\n" name##_full_usage "\0" 39# define APPLET(name,l,s) name##_trivial_usage name##_full_usage "\0"
42# define APPLET_NOUSAGE(name,main,l,s) "\b\0" 40# define APPLET_ODDNAME(name,main,l,s,name2) name2##_trivial_usage name2##_full_usage "\0"
43# define APPLET_ODDNAME(name,main,l,s,name2) name2##_trivial_usage "\n\n" name2##_full_usage "\0" 41# define APPLET_NOEXEC(name,main,l,s,name2) name2##_trivial_usage name2##_full_usage "\0"
44# define APPLET_NOEXEC(name,main,l,s,name2) name2##_trivial_usage "\n\n" name2##_full_usage "\0" 42# define APPLET_NOFORK(name,main,l,s,name2) name2##_trivial_usage name2##_full_usage "\0"
45# define APPLET_NOFORK(name,main,l,s,name2) name2##_trivial_usage "\n\n" name2##_full_usage "\0"
46 43
47#elif defined(MAKE_USAGE) && !ENABLE_FEATURE_VERBOSE_USAGE 44#elif defined(MAKE_USAGE) && !ENABLE_FEATURE_VERBOSE_USAGE
48# define APPLET(name,l,s) name##_trivial_usage "\0" 45# define APPLET(name,l,s) name##_trivial_usage "\0"
49# define APPLET_NOUSAGE(name,main,l,s) "\b\0"
50# define APPLET_ODDNAME(name,main,l,s,name2) name2##_trivial_usage "\0" 46# define APPLET_ODDNAME(name,main,l,s,name2) name2##_trivial_usage "\0"
51# define APPLET_NOEXEC(name,main,l,s,name2) name2##_trivial_usage "\0" 47# define APPLET_NOEXEC(name,main,l,s,name2) name2##_trivial_usage "\0"
52# define APPLET_NOFORK(name,main,l,s,name2) name2##_trivial_usage "\0" 48# define APPLET_NOFORK(name,main,l,s,name2) name2##_trivial_usage "\0"
53 49
54#elif defined(MAKE_LINKS) 50#elif defined(MAKE_LINKS)
55# define APPLET(name,l,c) LINK l name 51# define APPLET(name,l,c) LINK l name
56# define APPLET_NOUSAGE(name,main,l,s) LINK l name
57# define APPLET_ODDNAME(name,main,l,s,name2) LINK l name 52# define APPLET_ODDNAME(name,main,l,s,name2) LINK l name
58# define APPLET_NOEXEC(name,main,l,s,name2) LINK l name 53# define APPLET_NOEXEC(name,main,l,s,name2) LINK l name
59# define APPLET_NOFORK(name,main,l,s,name2) LINK l name 54# define APPLET_NOFORK(name,main,l,s,name2) LINK l name
@@ -61,7 +56,6 @@ s - suid type:
61#else 56#else
62 static struct bb_applet applets[] = { /* name, main, location, need_suid */ 57 static struct bb_applet applets[] = { /* name, main, location, need_suid */
63# define APPLET(name,l,s) { #name, #name, l, s }, 58# define APPLET(name,l,s) { #name, #name, l, s },
64# define APPLET_NOUSAGE(name,main,l,s) { #name, #main, l, s },
65# define APPLET_ODDNAME(name,main,l,s,name2) { #name, #main, l, s }, 59# define APPLET_ODDNAME(name,main,l,s,name2) { #name, #main, l, s },
66# define APPLET_NOEXEC(name,main,l,s,name2) { #name, #main, l, s, 1 }, 60# define APPLET_NOEXEC(name,main,l,s,name2) { #name, #main, l, s, 1 },
67# define APPLET_NOFORK(name,main,l,s,name2) { #name, #main, l, s, 1, 1 }, 61# define APPLET_NOFORK(name,main,l,s,name2) { #name, #main, l, s, 1, 1 },
@@ -73,15 +67,15 @@ s - suid type:
73#endif 67#endif
74 68
75 69
76USE_TEST(APPLET_NOFORK([, test, _BB_DIR_USR_BIN, _BB_SUID_NEVER, test)) 70USE_TEST(APPLET_NOFORK([, test, _BB_DIR_USR_BIN, _BB_SUID_NEVER, test))
77USE_TEST(APPLET_NOUSAGE([[, test, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 71USE_TEST(APPLET_NOFORK([[, test, _BB_DIR_USR_BIN, _BB_SUID_NEVER, test))
78USE_ADDGROUP(APPLET(addgroup, _BB_DIR_BIN, _BB_SUID_NEVER)) 72USE_ADDGROUP(APPLET(addgroup, _BB_DIR_BIN, _BB_SUID_NEVER))
79USE_ADDUSER(APPLET(adduser, _BB_DIR_BIN, _BB_SUID_NEVER)) 73USE_ADDUSER(APPLET(adduser, _BB_DIR_BIN, _BB_SUID_NEVER))
80USE_ADJTIMEX(APPLET(adjtimex, _BB_DIR_SBIN, _BB_SUID_NEVER)) 74USE_ADJTIMEX(APPLET(adjtimex, _BB_DIR_SBIN, _BB_SUID_NEVER))
81USE_AR(APPLET(ar, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 75USE_AR(APPLET(ar, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
82USE_ARP(APPLET(arp, _BB_DIR_SBIN, _BB_SUID_NEVER)) 76USE_ARP(APPLET(arp, _BB_DIR_SBIN, _BB_SUID_NEVER))
83USE_ARPING(APPLET(arping, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 77USE_ARPING(APPLET(arping, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
84USE_ASH(APPLET_NOUSAGE(ash, ash, _BB_DIR_BIN, _BB_SUID_NEVER)) 78USE_ASH(APPLET(ash, _BB_DIR_BIN, _BB_SUID_NEVER))
85USE_AWK(APPLET_NOEXEC(awk, awk, _BB_DIR_USR_BIN, _BB_SUID_NEVER, awk)) 79USE_AWK(APPLET_NOEXEC(awk, awk, _BB_DIR_USR_BIN, _BB_SUID_NEVER, awk))
86USE_BASENAME(APPLET_NOFORK(basename, basename, _BB_DIR_USR_BIN, _BB_SUID_NEVER, basename)) 80USE_BASENAME(APPLET_NOFORK(basename, basename, _BB_DIR_USR_BIN, _BB_SUID_NEVER, basename))
87USE_BBCONFIG(APPLET(bbconfig, _BB_DIR_BIN, _BB_SUID_NEVER)) 81USE_BBCONFIG(APPLET(bbconfig, _BB_DIR_BIN, _BB_SUID_NEVER))
@@ -113,7 +107,7 @@ USE_CPIO(APPLET(cpio, _BB_DIR_BIN, _BB_SUID_NEVER))
113USE_CROND(APPLET(crond, _BB_DIR_USR_SBIN, _BB_SUID_NEVER)) 107USE_CROND(APPLET(crond, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
114USE_CRONTAB(APPLET(crontab, _BB_DIR_USR_BIN, _BB_SUID_ALWAYS)) 108USE_CRONTAB(APPLET(crontab, _BB_DIR_USR_BIN, _BB_SUID_ALWAYS))
115USE_CRYPTPW(APPLET(cryptpw, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 109USE_CRYPTPW(APPLET(cryptpw, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
116USE_CTTYHACK(APPLET_NOUSAGE(cttyhack, cttyhack, _BB_DIR_BIN, _BB_SUID_NEVER)) 110USE_CTTYHACK(APPLET(cttyhack, _BB_DIR_BIN, _BB_SUID_NEVER))
117USE_CUT(APPLET_NOEXEC(cut, cut, _BB_DIR_USR_BIN, _BB_SUID_NEVER, cut)) 111USE_CUT(APPLET_NOEXEC(cut, cut, _BB_DIR_USR_BIN, _BB_SUID_NEVER, cut))
118USE_DATE(APPLET(date, _BB_DIR_BIN, _BB_SUID_NEVER)) 112USE_DATE(APPLET(date, _BB_DIR_BIN, _BB_SUID_NEVER))
119USE_DC(APPLET(dc, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 113USE_DC(APPLET(dc, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
@@ -135,10 +129,10 @@ USE_DU(APPLET(du, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
135USE_DUMPKMAP(APPLET(dumpkmap, _BB_DIR_BIN, _BB_SUID_NEVER)) 129USE_DUMPKMAP(APPLET(dumpkmap, _BB_DIR_BIN, _BB_SUID_NEVER))
136USE_APP_DUMPLEASES(APPLET(dumpleases, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 130USE_APP_DUMPLEASES(APPLET(dumpleases, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
137//USE_E2FSCK(APPLET(e2fsck, _BB_DIR_SBIN, _BB_SUID_NEVER)) 131//USE_E2FSCK(APPLET(e2fsck, _BB_DIR_SBIN, _BB_SUID_NEVER))
138//USE_E2LABEL(APPLET_NOUSAGE(e2label, tune2fs, _BB_DIR_SBIN, _BB_SUID_NEVER)) 132//USE_E2LABEL(APPLET_ODDNAME(e2label, tune2fs, _BB_DIR_SBIN, _BB_SUID_NEVER, e2label))
139USE_ECHO(APPLET_NOFORK(echo, echo, _BB_DIR_BIN, _BB_SUID_NEVER, echo)) 133USE_ECHO(APPLET_NOFORK(echo, echo, _BB_DIR_BIN, _BB_SUID_NEVER, echo))
140USE_ED(APPLET(ed, _BB_DIR_BIN, _BB_SUID_NEVER)) 134USE_ED(APPLET(ed, _BB_DIR_BIN, _BB_SUID_NEVER))
141USE_FEATURE_GREP_EGREP_ALIAS(APPLET_NOUSAGE(egrep, grep, _BB_DIR_BIN, _BB_SUID_NEVER)) 135USE_FEATURE_GREP_EGREP_ALIAS(APPLET_ODDNAME(egrep, grep, _BB_DIR_BIN, _BB_SUID_NEVER, egrep))
142USE_EJECT(APPLET(eject, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 136USE_EJECT(APPLET(eject, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
143USE_ENV(APPLET(env, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 137USE_ENV(APPLET(env, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
144USE_ENVDIR(APPLET_ODDNAME(envdir, chpst, _BB_DIR_USR_BIN, _BB_SUID_NEVER, envdir)) 138USE_ENVDIR(APPLET_ODDNAME(envdir, chpst, _BB_DIR_USR_BIN, _BB_SUID_NEVER, envdir))
@@ -154,15 +148,15 @@ USE_FDFLUSH(APPLET_ODDNAME(fdflush, freeramdisk, _BB_DIR_BIN, _BB_SUID_NEVER, fd
154USE_FDFORMAT(APPLET(fdformat, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 148USE_FDFORMAT(APPLET(fdformat, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
155USE_FDISK(APPLET(fdisk, _BB_DIR_SBIN, _BB_SUID_NEVER)) 149USE_FDISK(APPLET(fdisk, _BB_DIR_SBIN, _BB_SUID_NEVER))
156USE_FETCHMAIL(APPLET_ODDNAME(fetchmail, sendgetmail, _BB_DIR_USR_BIN, _BB_SUID_NEVER, fetchmail)) 150USE_FETCHMAIL(APPLET_ODDNAME(fetchmail, sendgetmail, _BB_DIR_USR_BIN, _BB_SUID_NEVER, fetchmail))
157USE_FEATURE_GREP_FGREP_ALIAS(APPLET_NOUSAGE(fgrep, grep, _BB_DIR_BIN, _BB_SUID_NEVER)) 151USE_FEATURE_GREP_FGREP_ALIAS(APPLET_ODDNAME(fgrep, grep, _BB_DIR_BIN, _BB_SUID_NEVER, fgrep))
158USE_FIND(APPLET_NOEXEC(find, find, _BB_DIR_USR_BIN, _BB_SUID_NEVER, find)) 152USE_FIND(APPLET_NOEXEC(find, find, _BB_DIR_USR_BIN, _BB_SUID_NEVER, find))
159USE_FINDFS(APPLET(findfs, _BB_DIR_SBIN, _BB_SUID_NEVER)) 153USE_FINDFS(APPLET(findfs, _BB_DIR_SBIN, _BB_SUID_NEVER))
160USE_FOLD(APPLET(fold, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 154USE_FOLD(APPLET(fold, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
161USE_FREE(APPLET(free, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 155USE_FREE(APPLET(free, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
162USE_FREERAMDISK(APPLET(freeramdisk, _BB_DIR_SBIN, _BB_SUID_NEVER)) 156USE_FREERAMDISK(APPLET(freeramdisk, _BB_DIR_SBIN, _BB_SUID_NEVER))
163USE_FSCK(APPLET(fsck, _BB_DIR_SBIN, _BB_SUID_NEVER)) 157USE_FSCK(APPLET(fsck, _BB_DIR_SBIN, _BB_SUID_NEVER))
164//USE_E2FSCK(APPLET_NOUSAGE(fsck.ext2, e2fsck, _BB_DIR_SBIN, _BB_SUID_NEVER)) 158//USE_E2FSCK(APPLET_ODDNAME(fsck.ext2, e2fsck, _BB_DIR_SBIN, _BB_SUID_NEVER, fsck_ext2))
165//USE_E2FSCK(APPLET_NOUSAGE(fsck.ext3, e2fsck, _BB_DIR_SBIN, _BB_SUID_NEVER)) 159//USE_E2FSCK(APPLET_ODDNAME(fsck.ext3, e2fsck, _BB_DIR_SBIN, _BB_SUID_NEVER, fsck_ext3))
166USE_FSCK_MINIX(APPLET_ODDNAME(fsck.minix, fsck_minix, _BB_DIR_SBIN, _BB_SUID_NEVER, fsck_minix)) 160USE_FSCK_MINIX(APPLET_ODDNAME(fsck.minix, fsck_minix, _BB_DIR_SBIN, _BB_SUID_NEVER, fsck_minix))
167USE_FTPGET(APPLET_ODDNAME(ftpget, ftpgetput, _BB_DIR_USR_BIN, _BB_SUID_NEVER, ftpget)) 161USE_FTPGET(APPLET_ODDNAME(ftpget, ftpgetput, _BB_DIR_USR_BIN, _BB_SUID_NEVER, ftpget))
168USE_FTPPUT(APPLET_ODDNAME(ftpput, ftpgetput, _BB_DIR_USR_BIN, _BB_SUID_NEVER, ftpput)) 162USE_FTPPUT(APPLET_ODDNAME(ftpput, ftpgetput, _BB_DIR_USR_BIN, _BB_SUID_NEVER, ftpput))
@@ -182,7 +176,7 @@ USE_HEXDUMP(APPLET_NOEXEC(hexdump, hexdump, _BB_DIR_USR_BIN, _BB_SUID_NEVER, hex
182USE_HOSTID(APPLET_NOFORK(hostid, hostid, _BB_DIR_USR_BIN, _BB_SUID_NEVER, hostid)) 176USE_HOSTID(APPLET_NOFORK(hostid, hostid, _BB_DIR_USR_BIN, _BB_SUID_NEVER, hostid))
183USE_HOSTNAME(APPLET(hostname, _BB_DIR_BIN, _BB_SUID_NEVER)) 177USE_HOSTNAME(APPLET(hostname, _BB_DIR_BIN, _BB_SUID_NEVER))
184USE_HTTPD(APPLET(httpd, _BB_DIR_USR_SBIN, _BB_SUID_NEVER)) 178USE_HTTPD(APPLET(httpd, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
185USE_HUSH(APPLET_NOUSAGE(hush, hush, _BB_DIR_BIN, _BB_SUID_NEVER)) 179USE_HUSH(APPLET(hush, _BB_DIR_BIN, _BB_SUID_NEVER))
186USE_HWCLOCK(APPLET(hwclock, _BB_DIR_SBIN, _BB_SUID_NEVER)) 180USE_HWCLOCK(APPLET(hwclock, _BB_DIR_SBIN, _BB_SUID_NEVER))
187USE_ID(APPLET(id, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 181USE_ID(APPLET(id, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
188USE_IFCONFIG(APPLET(ifconfig, _BB_DIR_SBIN, _BB_SUID_NEVER)) 182USE_IFCONFIG(APPLET(ifconfig, _BB_DIR_SBIN, _BB_SUID_NEVER))
@@ -217,9 +211,9 @@ USE_LASH(APPLET(lash, _BB_DIR_BIN, _BB_SUID_NEVER))
217USE_LAST(APPLET(last, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 211USE_LAST(APPLET(last, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
218USE_LENGTH(APPLET_NOFORK(length, length, _BB_DIR_USR_BIN, _BB_SUID_NEVER, length)) 212USE_LENGTH(APPLET_NOFORK(length, length, _BB_DIR_USR_BIN, _BB_SUID_NEVER, length))
219USE_LESS(APPLET(less, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 213USE_LESS(APPLET(less, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
220USE_SETARCH(APPLET_NOUSAGE(linux32, setarch, _BB_DIR_BIN, _BB_SUID_NEVER)) 214USE_SETARCH(APPLET_ODDNAME(linux32, setarch, _BB_DIR_BIN, _BB_SUID_NEVER, linux32))
221USE_SETARCH(APPLET_NOUSAGE(linux64, setarch, _BB_DIR_BIN, _BB_SUID_NEVER)) 215USE_SETARCH(APPLET_ODDNAME(linux64, setarch, _BB_DIR_BIN, _BB_SUID_NEVER, linux64))
222USE_FEATURE_INITRD(APPLET_NOUSAGE(linuxrc, init, _BB_DIR_ROOT, _BB_SUID_NEVER)) 216USE_FEATURE_INITRD(APPLET_ODDNAME(linuxrc, init, _BB_DIR_ROOT, _BB_SUID_NEVER, linuxrc))
223USE_LN(APPLET_NOEXEC(ln, ln, _BB_DIR_BIN, _BB_SUID_NEVER, ln)) 217USE_LN(APPLET_NOEXEC(ln, ln, _BB_DIR_BIN, _BB_SUID_NEVER, ln))
224USE_LOAD_POLICY(APPLET(load_policy, _BB_DIR_USR_SBIN, _BB_SUID_NEVER)) 218USE_LOAD_POLICY(APPLET(load_policy, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
225USE_LOADFONT(APPLET(loadfont, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 219USE_LOADFONT(APPLET(loadfont, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
@@ -246,8 +240,8 @@ USE_MICROCOM(APPLET(microcom, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
246USE_MKDIR(APPLET_NOFORK(mkdir, mkdir, _BB_DIR_BIN, _BB_SUID_NEVER, mkdir)) 240USE_MKDIR(APPLET_NOFORK(mkdir, mkdir, _BB_DIR_BIN, _BB_SUID_NEVER, mkdir))
247//USE_MKE2FS(APPLET(mke2fs, _BB_DIR_SBIN, _BB_SUID_NEVER)) 241//USE_MKE2FS(APPLET(mke2fs, _BB_DIR_SBIN, _BB_SUID_NEVER))
248USE_MKFIFO(APPLET(mkfifo, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 242USE_MKFIFO(APPLET(mkfifo, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
249//USE_MKE2FS(APPLET_NOUSAGE(mkfs.ext2, mke2fs, _BB_DIR_SBIN, _BB_SUID_NEVER)) 243//USE_MKE2FS(APPLET_ODDNAME(mkfs.ext2, mke2fs, _BB_DIR_SBIN, _BB_SUID_NEVER, mkfs_ext2))
250//USE_MKE2FS(APPLET_NOUSAGE(mkfs.ext3, mke2fs, _BB_DIR_SBIN, _BB_SUID_NEVER)) 244//USE_MKE2FS(APPLET_ODDNAME(mkfs.ext3, mke2fs, _BB_DIR_SBIN, _BB_SUID_NEVER, mkfs_ext3))
251USE_MKFS_MINIX(APPLET_ODDNAME(mkfs.minix, mkfs_minix, _BB_DIR_SBIN, _BB_SUID_NEVER, mkfs_minix)) 245USE_MKFS_MINIX(APPLET_ODDNAME(mkfs.minix, mkfs_minix, _BB_DIR_SBIN, _BB_SUID_NEVER, mkfs_minix))
252USE_MKNOD(APPLET(mknod, _BB_DIR_BIN, _BB_SUID_NEVER)) 246USE_MKNOD(APPLET(mknod, _BB_DIR_BIN, _BB_SUID_NEVER))
253USE_MKSWAP(APPLET(mkswap, _BB_DIR_SBIN, _BB_SUID_NEVER)) 247USE_MKSWAP(APPLET(mkswap, _BB_DIR_SBIN, _BB_SUID_NEVER))
@@ -256,7 +250,7 @@ USE_MODPROBE(APPLET(modprobe, _BB_DIR_SBIN, _BB_SUID_NEVER))
256USE_MORE(APPLET(more, _BB_DIR_BIN, _BB_SUID_NEVER)) 250USE_MORE(APPLET(more, _BB_DIR_BIN, _BB_SUID_NEVER))
257USE_MOUNT(APPLET(mount, _BB_DIR_BIN, USE_DESKTOP(_BB_SUID_MAYBE) SKIP_DESKTOP(_BB_SUID_NEVER))) 251USE_MOUNT(APPLET(mount, _BB_DIR_BIN, USE_DESKTOP(_BB_SUID_MAYBE) SKIP_DESKTOP(_BB_SUID_NEVER)))
258USE_MOUNTPOINT(APPLET(mountpoint, _BB_DIR_BIN, _BB_SUID_NEVER)) 252USE_MOUNTPOINT(APPLET(mountpoint, _BB_DIR_BIN, _BB_SUID_NEVER))
259USE_MSH(APPLET_NOUSAGE(msh, msh, _BB_DIR_BIN, _BB_SUID_NEVER)) 253USE_MSH(APPLET(msh, _BB_DIR_BIN, _BB_SUID_NEVER))
260USE_MT(APPLET(mt, _BB_DIR_BIN, _BB_SUID_NEVER)) 254USE_MT(APPLET(mt, _BB_DIR_BIN, _BB_SUID_NEVER))
261USE_MV(APPLET(mv, _BB_DIR_BIN, _BB_SUID_NEVER)) 255USE_MV(APPLET(mv, _BB_DIR_BIN, _BB_SUID_NEVER))
262USE_NAMEIF(APPLET(nameif, _BB_DIR_SBIN, _BB_SUID_NEVER)) 256USE_NAMEIF(APPLET(nameif, _BB_DIR_SBIN, _BB_SUID_NEVER))
@@ -274,7 +268,7 @@ USE_PGREP(APPLET(pgrep, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
274USE_PIDOF(APPLET(pidof, _BB_DIR_BIN, _BB_SUID_NEVER)) 268USE_PIDOF(APPLET(pidof, _BB_DIR_BIN, _BB_SUID_NEVER))
275USE_PING(APPLET(ping, _BB_DIR_BIN, _BB_SUID_MAYBE)) 269USE_PING(APPLET(ping, _BB_DIR_BIN, _BB_SUID_MAYBE))
276USE_PING6(APPLET(ping6, _BB_DIR_BIN, _BB_SUID_NEVER)) 270USE_PING6(APPLET(ping6, _BB_DIR_BIN, _BB_SUID_NEVER))
277USE_PIPE_PROGRESS(APPLET_NOUSAGE(pipe_progress, pipe_progress, _BB_DIR_BIN, _BB_SUID_NEVER)) 271USE_PIPE_PROGRESS(APPLET(pipe_progress, _BB_DIR_BIN, _BB_SUID_NEVER))
278USE_PIVOT_ROOT(APPLET(pivot_root, _BB_DIR_SBIN, _BB_SUID_NEVER)) 272USE_PIVOT_ROOT(APPLET(pivot_root, _BB_DIR_SBIN, _BB_SUID_NEVER))
279USE_PKILL(APPLET_ODDNAME(pkill, pgrep, _BB_DIR_USR_BIN, _BB_SUID_NEVER, pkill)) 273USE_PKILL(APPLET_ODDNAME(pkill, pgrep, _BB_DIR_USR_BIN, _BB_SUID_NEVER, pkill))
280USE_HALT(APPLET_ODDNAME(poweroff, halt, _BB_DIR_SBIN, _BB_SUID_NEVER, poweroff)) 274USE_HALT(APPLET_ODDNAME(poweroff, halt, _BB_DIR_SBIN, _BB_SUID_NEVER, poweroff))
@@ -322,9 +316,9 @@ USE_SETLOGCONS(APPLET(setlogcons, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
322USE_SETSEBOOL(APPLET(setsebool, _BB_DIR_USR_SBIN, _BB_SUID_NEVER)) 316USE_SETSEBOOL(APPLET(setsebool, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
323USE_SETSID(APPLET(setsid, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 317USE_SETSID(APPLET(setsid, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
324USE_SETUIDGID(APPLET_ODDNAME(setuidgid, chpst, _BB_DIR_USR_BIN, _BB_SUID_NEVER, setuidgid)) 318USE_SETUIDGID(APPLET_ODDNAME(setuidgid, chpst, _BB_DIR_USR_BIN, _BB_SUID_NEVER, setuidgid))
325USE_FEATURE_SH_IS_ASH(APPLET_NOUSAGE(sh, ash, _BB_DIR_BIN, _BB_SUID_NEVER)) 319USE_FEATURE_SH_IS_ASH(APPLET_ODDNAME(sh, ash, _BB_DIR_BIN, _BB_SUID_NEVER, sh))
326USE_FEATURE_SH_IS_HUSH(APPLET_NOUSAGE(sh, hush, _BB_DIR_BIN, _BB_SUID_NEVER)) 320USE_FEATURE_SH_IS_HUSH(APPLET_ODDNAME(sh, hush, _BB_DIR_BIN, _BB_SUID_NEVER, sh))
327USE_FEATURE_SH_IS_MSH(APPLET_NOUSAGE(sh, msh, _BB_DIR_BIN, _BB_SUID_NEVER)) 321USE_FEATURE_SH_IS_MSH(APPLET_ODDNAME(sh, msh, _BB_DIR_BIN, _BB_SUID_NEVER, sh))
328USE_SHA1SUM(APPLET_ODDNAME(sha1sum, md5_sha1_sum, _BB_DIR_USR_BIN, _BB_SUID_NEVER, sha1sum)) 322USE_SHA1SUM(APPLET_ODDNAME(sha1sum, md5_sha1_sum, _BB_DIR_USR_BIN, _BB_SUID_NEVER, sha1sum))
329USE_SLATTACH(APPLET(slattach, _BB_DIR_SBIN, _BB_SUID_NEVER)) 323USE_SLATTACH(APPLET(slattach, _BB_DIR_SBIN, _BB_SUID_NEVER))
330USE_SLEEP(APPLET_NOFORK(sleep, sleep, _BB_DIR_BIN, _BB_SUID_NEVER, sleep)) 324USE_SLEEP(APPLET_NOFORK(sleep, sleep, _BB_DIR_BIN, _BB_SUID_NEVER, sleep))
@@ -354,7 +348,7 @@ USE_TCPSVD(APPLET_ODDNAME(tcpsvd, tcpudpsvd, _BB_DIR_USR_BIN, _BB_SUID_NEVER, tc
354USE_TEE(APPLET(tee, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 348USE_TEE(APPLET(tee, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
355USE_TELNET(APPLET(telnet, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 349USE_TELNET(APPLET(telnet, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
356USE_TELNETD(APPLET(telnetd, _BB_DIR_USR_SBIN, _BB_SUID_NEVER)) 350USE_TELNETD(APPLET(telnetd, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
357USE_TEST(APPLET_NOEXEC(test, test, _BB_DIR_USR_BIN, _BB_SUID_NEVER, test)) 351USE_TEST(APPLET_NOFORK(test, test, _BB_DIR_USR_BIN, _BB_SUID_NEVER, test))
358#if ENABLE_FEATURE_TFTP_GET || ENABLE_FEATURE_TFTP_PUT 352#if ENABLE_FEATURE_TFTP_GET || ENABLE_FEATURE_TFTP_PUT
359USE_TFTP(APPLET(tftp, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 353USE_TFTP(APPLET(tftp, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
360USE_TFTPD(APPLET(tftpd, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) 354USE_TFTPD(APPLET(tftpd, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
@@ -403,7 +397,6 @@ USE_ZCIP(APPLET(zcip, _BB_DIR_SBIN, _BB_SUID_NEVER))
403#endif 397#endif
404 398
405#undef APPLET 399#undef APPLET
406#undef APPLET_NOUSAGE
407#undef APPLET_ODDNAME 400#undef APPLET_ODDNAME
408#undef APPLET_NOEXEC 401#undef APPLET_NOEXEC
409#undef APPLET_NOFORK 402#undef APPLET_NOFORK
diff --git a/include/usage.h b/include/usage.h
index d1847020b..09695ef76 100644
--- a/include/usage.h
+++ b/include/usage.h
@@ -13,16 +13,20 @@
13#ifndef __BB_USAGE_H__ 13#ifndef __BB_USAGE_H__
14#define __BB_USAGE_H__ 14#define __BB_USAGE_H__
15 15
16
17#define NOUSAGE_STR "\b"
18
19
16#define addgroup_trivial_usage \ 20#define addgroup_trivial_usage \
17 "[-g GID] " USE_FEATURE_ADDUSER_TO_GROUP("[user_name] ") "group_name" 21 "[-g GID] " USE_FEATURE_ADDUSER_TO_GROUP("[user_name] ") "group_name"
18#define addgroup_full_usage \ 22#define addgroup_full_usage "\n\n" \
19 "Add a group " USE_FEATURE_ADDUSER_TO_GROUP("or add an user to a group") "\n" \ 23 "Add a group " USE_FEATURE_ADDUSER_TO_GROUP("or add an user to a group") "\n" \
20 "\nOptions:" \ 24 "\nOptions:" \
21 "\n -g GID Group id" 25 "\n -g GID Group id" \
22 26
23#define adduser_trivial_usage \ 27#define adduser_trivial_usage \
24 "[OPTIONS] user_name" 28 "[OPTIONS] user_name"
25#define adduser_full_usage \ 29#define adduser_full_usage "\n\n" \
26 "Add an user\n" \ 30 "Add an user\n" \
27 "\nOptions:" \ 31 "\nOptions:" \
28 "\n -h DIR Home directory" \ 32 "\n -h DIR Home directory" \
@@ -35,7 +39,7 @@
35 39
36#define adjtimex_trivial_usage \ 40#define adjtimex_trivial_usage \
37 "[-q] [-o offset] [-f frequency] [-p timeconstant] [-t tick]" 41 "[-q] [-o offset] [-f frequency] [-p timeconstant] [-t tick]"
38#define adjtimex_full_usage \ 42#define adjtimex_full_usage "\n\n" \
39 "Read and optionally set system timebase parameters. See adjtimex(2).\n" \ 43 "Read and optionally set system timebase parameters. See adjtimex(2).\n" \
40 "\nOptions:" \ 44 "\nOptions:" \
41 "\n -q Quiet" \ 45 "\n -q Quiet" \
@@ -47,7 +51,7 @@
47 51
48#define ar_trivial_usage \ 52#define ar_trivial_usage \
49 "[-o] [-v] [-p] [-t] [-x] ARCHIVE FILES" 53 "[-o] [-v] [-p] [-t] [-x] ARCHIVE FILES"
50#define ar_full_usage \ 54#define ar_full_usage "\n\n" \
51 "Extract or list FILES from an ar archive\n" \ 55 "Extract or list FILES from an ar archive\n" \
52 "\nOptions:" \ 56 "\nOptions:" \
53 "\n -o Preserve original dates" \ 57 "\n -o Preserve original dates" \
@@ -63,7 +67,7 @@
63 "[-v] [-H type] [-i if] -s hostname hw_addr [temp]\n" \ 67 "[-v] [-H type] [-i if] -s hostname hw_addr [temp]\n" \
64 "[-v] [-H type] [-i if] -s hostname hw_addr [netmask nm] pub\n" \ 68 "[-v] [-H type] [-i if] -s hostname hw_addr [netmask nm] pub\n" \
65 "[-v] [-H type] [-i if] -Ds hostname ifa [netmask nm] pub\n" 69 "[-v] [-H type] [-i if] -Ds hostname ifa [netmask nm] pub\n"
66#define arp_full_usage \ 70#define arp_full_usage "\n\n" \
67 "Manipulate ARP cache\n" \ 71 "Manipulate ARP cache\n" \
68 "\nOptions:" \ 72 "\nOptions:" \
69 "\n -a Display (all) hosts" \ 73 "\n -a Display (all) hosts" \
@@ -78,7 +82,7 @@
78 82
79#define arping_trivial_usage \ 83#define arping_trivial_usage \
80 "[-fqbDUA] [-c count] [-w timeout] [-I dev] [-s sender] target" 84 "[-fqbDUA] [-c count] [-w timeout] [-I dev] [-s sender] target"
81#define arping_full_usage \ 85#define arping_full_usage "\n\n" \
82 "Send ARP requests/replies\n" \ 86 "Send ARP requests/replies\n" \
83 "\nOptions:" \ 87 "\nOptions:" \
84 "\n -f Quit on first ARP reply" \ 88 "\n -f Quit on first ARP reply" \
@@ -93,15 +97,23 @@
93 "\n -s sender Sender IP address" \ 97 "\n -s sender Sender IP address" \
94 "\n target Target IP address" \ 98 "\n target Target IP address" \
95 99
96#define ash_trivial_usage \ 100//#define ash_trivial_usage \
97 "[FILE]...\n" \ 101// "[FILE]...\n" \
98 "or: ash -c command [args]..." 102// "or: ash -c command [args]..."
99#define ash_full_usage \ 103//#define ash_full_usage "\n\n" \
100 "The ash shell" 104// "The ash shell"
105#define sh_trivial_usage NOUSAGE_STR
106#define sh_full_usage ""
107#define ash_trivial_usage NOUSAGE_STR
108#define ash_full_usage ""
109#define hush_trivial_usage NOUSAGE_STR
110#define hush_full_usage ""
111#define msh_trivial_usage NOUSAGE_STR
112#define msh_full_usage ""
101 113
102#define awk_trivial_usage \ 114#define awk_trivial_usage \
103 "[OPTION]... [program-text] [FILE...]" 115 "[OPTION]... [program-text] [FILE...]"
104#define awk_full_usage \ 116#define awk_full_usage "\n\n" \
105 "Options:" \ 117 "Options:" \
106 "\n -v var=val Set variable" \ 118 "\n -v var=val Set variable" \
107 "\n -F sep Use sep as field separator" \ 119 "\n -F sep Use sep as field separator" \
@@ -109,7 +121,7 @@
109 121
110#define basename_trivial_usage \ 122#define basename_trivial_usage \
111 "FILE [SUFFIX]" 123 "FILE [SUFFIX]"
112#define basename_full_usage \ 124#define basename_full_usage "\n\n" \
113 "Strip directory path and suffixes from FILE.\n" \ 125 "Strip directory path and suffixes from FILE.\n" \
114 "If specified, also remove any trailing SUFFIX." 126 "If specified, also remove any trailing SUFFIX."
115#define basename_example_usage \ 127#define basename_example_usage \
@@ -122,7 +134,7 @@
122 134
123#define fbsplash_trivial_usage \ 135#define fbsplash_trivial_usage \
124 "-s IMGFILE [-c] [-d DEV] [-i INIFILE] [-f CMD]" 136 "-s IMGFILE [-c] [-d DEV] [-i INIFILE] [-f CMD]"
125#define fbsplash_full_usage \ 137#define fbsplash_full_usage "\n\n" \
126 "Options:\n" \ 138 "Options:\n" \
127 "\n -s Image" \ 139 "\n -s Image" \
128 "\n -c Hide cursor" \ 140 "\n -c Hide cursor" \
@@ -135,7 +147,7 @@
135 147
136#define brctl_trivial_usage \ 148#define brctl_trivial_usage \
137 "COMMAND [BRIDGE [INTERFACE]]" 149 "COMMAND [BRIDGE [INTERFACE]]"
138#define brctl_full_usage \ 150#define brctl_full_usage "\n\n" \
139 "Manage ethernet bridges.\n" \ 151 "Manage ethernet bridges.\n" \
140 "\nCommands:" \ 152 "\nCommands:" \
141 USE_FEATURE_BRCTL_SHOW( \ 153 USE_FEATURE_BRCTL_SHOW( \
@@ -158,7 +170,7 @@
158 170
159#define bunzip2_trivial_usage \ 171#define bunzip2_trivial_usage \
160 "[OPTION]... [FILE]" 172 "[OPTION]... [FILE]"
161#define bunzip2_full_usage \ 173#define bunzip2_full_usage "\n\n" \
162 "Uncompress FILE (or standard input if FILE is '-' or omitted)\n" \ 174 "Uncompress FILE (or standard input if FILE is '-' or omitted)\n" \
163 "\nOptions:" \ 175 "\nOptions:" \
164 "\n -c Write to standard output" \ 176 "\n -c Write to standard output" \
@@ -166,7 +178,7 @@
166 178
167#define bzip2_trivial_usage \ 179#define bzip2_trivial_usage \
168 "[OPTION]... [FILE]..." 180 "[OPTION]... [FILE]..."
169#define bzip2_full_usage \ 181#define bzip2_full_usage "\n\n" \
170 "Compress FILE(s) with bzip2 algorithm.\n" \ 182 "Compress FILE(s) with bzip2 algorithm.\n" \
171 "When FILE is '-' or unspecified, reads standard input. Implies -c.\n" \ 183 "When FILE is '-' or unspecified, reads standard input. Implies -c.\n" \
172 "\nOptions:" \ 184 "\nOptions:" \
@@ -180,12 +192,12 @@
180 192
181#define bzcat_trivial_usage \ 193#define bzcat_trivial_usage \
182 "FILE" 194 "FILE"
183#define bzcat_full_usage \ 195#define bzcat_full_usage "\n\n" \
184 "Uncompress to stdout" 196 "Uncompress to stdout"
185 197
186#define unlzma_trivial_usage \ 198#define unlzma_trivial_usage \
187 "[OPTION]... [FILE]" 199 "[OPTION]... [FILE]"
188#define unlzma_full_usage \ 200#define unlzma_full_usage "\n\n" \
189 "Uncompress FILE (or standard input if FILE is '-' or omitted)\n" \ 201 "Uncompress FILE (or standard input if FILE is '-' or omitted)\n" \
190 "\nOptions:" \ 202 "\nOptions:" \
191 "\n -c Write to standard output" \ 203 "\n -c Write to standard output" \
@@ -193,12 +205,12 @@
193 205
194#define lzmacat_trivial_usage \ 206#define lzmacat_trivial_usage \
195 "FILE" 207 "FILE"
196#define lzmacat_full_usage \ 208#define lzmacat_full_usage "\n\n" \
197 "Uncompress to stdout" 209 "Uncompress to stdout"
198 210
199#define cal_trivial_usage \ 211#define cal_trivial_usage \
200 "[-jy] [[month] year]" 212 "[-jy] [[month] year]"
201#define cal_full_usage \ 213#define cal_full_usage "\n\n" \
202 "Display a calendar\n" \ 214 "Display a calendar\n" \
203 "\nOptions:" \ 215 "\nOptions:" \
204 "\n -j Use julian dates" \ 216 "\n -j Use julian dates" \
@@ -206,7 +218,7 @@
206 218
207#define cat_trivial_usage \ 219#define cat_trivial_usage \
208 "[-u] [FILE]..." 220 "[-u] [FILE]..."
209#define cat_full_usage \ 221#define cat_full_usage "\n\n" \
210 "Concatenate FILE(s) and print them to stdout\n" \ 222 "Concatenate FILE(s) and print them to stdout\n" \
211 "\nOptions:" \ 223 "\nOptions:" \
212 "\n -u Use unbuffered i/o (ignored)" \ 224 "\n -u Use unbuffered i/o (ignored)" \
@@ -217,7 +229,7 @@
217 229
218#define catv_trivial_usage \ 230#define catv_trivial_usage \
219 "[-etv] [FILE]..." 231 "[-etv] [FILE]..."
220#define catv_full_usage \ 232#define catv_full_usage "\n\n" \
221 "Display nonprinting characters as ^x or M-x\n" \ 233 "Display nonprinting characters as ^x or M-x\n" \
222 "\nOptions:" \ 234 "\nOptions:" \
223 "\n -e End each line with $" \ 235 "\n -e End each line with $" \
@@ -226,7 +238,7 @@
226 238
227#define chat_trivial_usage \ 239#define chat_trivial_usage \
228 "EXPECT [SEND [EXPECT [SEND...]]]" 240 "EXPECT [SEND [EXPECT [SEND...]]]"
229#define chat_full_usage \ 241#define chat_full_usage "\n\n" \
230 "Useful for interacting with a modem connected to stdin/stdout.\n" \ 242 "Useful for interacting with a modem connected to stdin/stdout.\n" \
231 "A script consists of one or more \"expect-send\" pairs of strings,\n" \ 243 "A script consists of one or more \"expect-send\" pairs of strings,\n" \
232 "each pair is a pair of arguments. Example:\n" \ 244 "each pair is a pair of arguments. Example:\n" \
@@ -234,7 +246,7 @@
234 246
235#define chattr_trivial_usage \ 247#define chattr_trivial_usage \
236 "[-R] [-+=AacDdijsStTu] [-v version] files..." 248 "[-R] [-+=AacDdijsStTu] [-v version] files..."
237#define chattr_full_usage \ 249#define chattr_full_usage "\n\n" \
238 "Change file attributes on an ext2 fs\n" \ 250 "Change file attributes on an ext2 fs\n" \
239 "\nModifiers:" \ 251 "\nModifiers:" \
240 "\n - Remove attributes" \ 252 "\n - Remove attributes" \
@@ -262,7 +274,7 @@
262 USE_FEATURE_CHCON_LONG_OPTIONS( \ 274 USE_FEATURE_CHCON_LONG_OPTIONS( \
263 "\n chcon [OPTIONS] --reference=RFILE FILE..." \ 275 "\n chcon [OPTIONS] --reference=RFILE FILE..." \
264 ) 276 )
265#define chcon_full_usage \ 277#define chcon_full_usage "\n\n" \
266 "Change the security context of each FILE to CONTEXT\n" \ 278 "Change the security context of each FILE to CONTEXT\n" \
267 USE_FEATURE_CHCON_LONG_OPTIONS( \ 279 USE_FEATURE_CHCON_LONG_OPTIONS( \
268 "\n -v,--verbose Verbose" \ 280 "\n -v,--verbose Verbose" \
@@ -290,7 +302,7 @@
290 302
291#define chmod_trivial_usage \ 303#define chmod_trivial_usage \
292 "[-R"USE_DESKTOP("cvf")"] MODE[,MODE]... FILE..." 304 "[-R"USE_DESKTOP("cvf")"] MODE[,MODE]... FILE..."
293#define chmod_full_usage \ 305#define chmod_full_usage "\n\n" \
294 "Each MODE is one or more of the letters ugoa, one of the\n" \ 306 "Each MODE is one or more of the letters ugoa, one of the\n" \
295 "symbols +-= and one or more of the letters rwxst\n" \ 307 "symbols +-= and one or more of the letters rwxst\n" \
296 "\nOptions:" \ 308 "\nOptions:" \
@@ -312,7 +324,7 @@
312 324
313#define chgrp_trivial_usage \ 325#define chgrp_trivial_usage \
314 "[-RhLHP"USE_DESKTOP("cvf")"]... GROUP FILE..." 326 "[-RhLHP"USE_DESKTOP("cvf")"]... GROUP FILE..."
315#define chgrp_full_usage \ 327#define chgrp_full_usage "\n\n" \
316 "Change the group membership of each FILE to GROUP\n" \ 328 "Change the group membership of each FILE to GROUP\n" \
317 "\nOptions:" \ 329 "\nOptions:" \
318 "\n -R Recurse directories" \ 330 "\n -R Recurse directories" \
@@ -334,7 +346,7 @@
334 346
335#define chown_trivial_usage \ 347#define chown_trivial_usage \
336 "[-RhLHP"USE_DESKTOP("cvf")"]... OWNER[<.|:>[GROUP]] FILE..." 348 "[-RhLHP"USE_DESKTOP("cvf")"]... OWNER[<.|:>[GROUP]] FILE..."
337#define chown_full_usage \ 349#define chown_full_usage "\n\n" \
338 "Change the owner and/or group of each FILE to OWNER and/or GROUP\n" \ 350 "Change the owner and/or group of each FILE to OWNER and/or GROUP\n" \
339 "\nOptions:" \ 351 "\nOptions:" \
340 "\n -R Recurse directories" \ 352 "\n -R Recurse directories" \
@@ -361,7 +373,7 @@
361 "[-vP012] [-u user[:group]] [-U user[:group]] [-e dir] " \ 373 "[-vP012] [-u user[:group]] [-U user[:group]] [-e dir] " \
362 "[-/ dir] [-n nice] [-m bytes] [-d bytes] [-o files] " \ 374 "[-/ dir] [-n nice] [-m bytes] [-d bytes] [-o files] " \
363 "[-p processes] [-f bytes] [-c bytes] prog args" 375 "[-p processes] [-f bytes] [-c bytes] prog args"
364#define chpst_full_usage \ 376#define chpst_full_usage "\n\n" \
365 "Change the process state and run specified program\n" \ 377 "Change the process state and run specified program\n" \
366 "\nOptions:" \ 378 "\nOptions:" \
367 "\n -u USER[:GRP] Set uid and gid" \ 379 "\n -u USER[:GRP] Set uid and gid" \
@@ -385,23 +397,23 @@
385 397
386#define setuidgid_trivial_usage \ 398#define setuidgid_trivial_usage \
387 "account prog args" 399 "account prog args"
388#define setuidgid_full_usage \ 400#define setuidgid_full_usage "\n\n" \
389 "Set uid and gid to account's uid and gid, removing all supplementary\n" \ 401 "Set uid and gid to account's uid and gid, removing all supplementary\n" \
390 "groups, then run prog" 402 "groups, then run prog"
391#define envuidgid_trivial_usage \ 403#define envuidgid_trivial_usage \
392 "account prog args" 404 "account prog args"
393#define envuidgid_full_usage \ 405#define envuidgid_full_usage "\n\n" \
394 "Set $UID to account's uid and $GID to account's gid, then run prog" 406 "Set $UID to account's uid and $GID to account's gid, then run prog"
395#define envdir_trivial_usage \ 407#define envdir_trivial_usage \
396 "dir prog args" 408 "dir prog args"
397#define envdir_full_usage \ 409#define envdir_full_usage "\n\n" \
398 "Set various environment variables as specified by files\n" \ 410 "Set various environment variables as specified by files\n" \
399 "in the directory dir, then run prog" 411 "in the directory dir, then run prog"
400#define softlimit_trivial_usage \ 412#define softlimit_trivial_usage \
401 "[-a allbytes] [-c corebytes] [-d databytes] [-f filebytes] " \ 413 "[-a allbytes] [-c corebytes] [-d databytes] [-f filebytes] " \
402 "[-l lockbytes] [-m membytes] [-o openfiles] [-p processes] " \ 414 "[-l lockbytes] [-m membytes] [-o openfiles] [-p processes] " \
403 "[-r residentbytes] [-s stackbytes] [-t cpusecs] prog args" 415 "[-r residentbytes] [-s stackbytes] [-t cpusecs] prog args"
404#define softlimit_full_usage \ 416#define softlimit_full_usage "\n\n" \
405 "Set soft resource limits, then run prog\n" \ 417 "Set soft resource limits, then run prog\n" \
406 "\nOptions:" \ 418 "\nOptions:" \
407 "\n -m n Same as -d n -s n -l n -a n" \ 419 "\n -m n Same as -d n -s n -l n -a n" \
@@ -425,7 +437,7 @@
425 437
426#define chroot_trivial_usage \ 438#define chroot_trivial_usage \
427 "NEWROOT [COMMAND...]" 439 "NEWROOT [COMMAND...]"
428#define chroot_full_usage \ 440#define chroot_full_usage "\n\n" \
429 "Run COMMAND with root directory set to NEWROOT" 441 "Run COMMAND with root directory set to NEWROOT"
430#define chroot_example_usage \ 442#define chroot_example_usage \
431 "$ ls -l /bin/ls\n" \ 443 "$ ls -l /bin/ls\n" \
@@ -437,22 +449,22 @@
437 449
438#define chvt_trivial_usage \ 450#define chvt_trivial_usage \
439 "N" 451 "N"
440#define chvt_full_usage \ 452#define chvt_full_usage "\n\n" \
441 "Change the foreground virtual terminal to /dev/ttyN" 453 "Change the foreground virtual terminal to /dev/ttyN"
442 454
443#define cksum_trivial_usage \ 455#define cksum_trivial_usage \
444 "FILES..." 456 "FILES..."
445#define cksum_full_usage \ 457#define cksum_full_usage "\n\n" \
446 "Calculate the CRC32 checksums of FILES" 458 "Calculate the CRC32 checksums of FILES"
447 459
448#define clear_trivial_usage \ 460#define clear_trivial_usage \
449 "" 461 ""
450#define clear_full_usage \ 462#define clear_full_usage "\n\n" \
451 "Clear screen" 463 "Clear screen"
452 464
453#define cmp_trivial_usage \ 465#define cmp_trivial_usage \
454 "[-l] [-s] FILE1 [FILE2" USE_DESKTOP(" [SKIP1 [SKIP2]") "]]" 466 "[-l] [-s] FILE1 [FILE2" USE_DESKTOP(" [SKIP1 [SKIP2]") "]]"
455#define cmp_full_usage \ 467#define cmp_full_usage "\n\n" \
456 "Compares FILE1 vs stdin if FILE2 is not specified\n" \ 468 "Compares FILE1 vs stdin if FILE2 is not specified\n" \
457 "\nOptions:" \ 469 "\nOptions:" \
458 "\n -l Write the byte numbers (decimal) and values (octal)" \ 470 "\n -l Write the byte numbers (decimal) and values (octal)" \
@@ -461,7 +473,7 @@
461 473
462#define comm_trivial_usage \ 474#define comm_trivial_usage \
463 "[-123] FILE1 FILE2" 475 "[-123] FILE1 FILE2"
464#define comm_full_usage \ 476#define comm_full_usage "\n\n" \
465 "Compare FILE1 to FILE2, or to stdin if - is specified\n" \ 477 "Compare FILE1 to FILE2, or to stdin if - is specified\n" \
466 "\nOptions:" \ 478 "\nOptions:" \
467 "\n -1 Suppress lines unique to FILE1" \ 479 "\n -1 Suppress lines unique to FILE1" \
@@ -470,18 +482,18 @@
470 482
471#define bbconfig_trivial_usage \ 483#define bbconfig_trivial_usage \
472 "" 484 ""
473#define bbconfig_full_usage \ 485#define bbconfig_full_usage "\n\n" \
474 "Print the config file which built busybox" 486 "Print the config file which built busybox"
475 487
476#define bbsh_trivial_usage \ 488#define bbsh_trivial_usage \
477 "[FILE]...\n" \ 489 "[FILE]...\n" \
478 "or: bbsh -c command [args]..." 490 "or: bbsh -c command [args]..."
479#define bbsh_full_usage \ 491#define bbsh_full_usage "\n\n" \
480 "The bbsh shell (command interpreter)" 492 "The bbsh shell (command interpreter)"
481 493
482#define chrt_trivial_usage \ 494#define chrt_trivial_usage \
483 "[OPTION]... [prio] [pid | command [arg]...]" 495 "[OPTION]... [prio] [pid | command [arg]...]"
484#define chrt_full_usage \ 496#define chrt_full_usage "\n\n" \
485 "Manipulate real-time attributes of a process\n" \ 497 "Manipulate real-time attributes of a process\n" \
486 "\nOptions:" \ 498 "\nOptions:" \
487 "\n -p Operate on pid" \ 499 "\n -p Operate on pid" \
@@ -497,7 +509,7 @@
497 509
498#define cp_trivial_usage \ 510#define cp_trivial_usage \
499 "[OPTION]... SOURCE DEST" 511 "[OPTION]... SOURCE DEST"
500#define cp_full_usage \ 512#define cp_full_usage "\n\n" \
501 "Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY\n" \ 513 "Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY\n" \
502 "\nOptions:" \ 514 "\nOptions:" \
503 "\n -a Same as -dpR" \ 515 "\n -a Same as -dpR" \
@@ -515,7 +527,7 @@
515#define cpio_trivial_usage \ 527#define cpio_trivial_usage \
516 "-[dim" USE_FEATURE_CPIO_O("o") "tuv][F cpiofile]" \ 528 "-[dim" USE_FEATURE_CPIO_O("o") "tuv][F cpiofile]" \
517 USE_FEATURE_CPIO_O( "[H newc]" ) 529 USE_FEATURE_CPIO_O( "[H newc]" )
518#define cpio_full_usage \ 530#define cpio_full_usage "\n\n" \
519 "Extract or list files from a cpio archive" \ 531 "Extract or list files from a cpio archive" \
520 USE_FEATURE_CPIO_O( ", or create a cpio archive" ) \ 532 USE_FEATURE_CPIO_O( ", or create a cpio archive" ) \
521 "\n" \ 533 "\n" \
@@ -534,7 +546,7 @@
534 546
535#define crond_trivial_usage \ 547#define crond_trivial_usage \
536 "-fbS -l N " USE_DEBUG_CROND_OPTION("-d N ") "-L LOGFILE -c DIR" 548 "-fbS -l N " USE_DEBUG_CROND_OPTION("-d N ") "-L LOGFILE -c DIR"
537#define crond_full_usage \ 549#define crond_full_usage "\n\n" \
538 " -f Foreground" \ 550 " -f Foreground" \
539 "\n -b Background (default)" \ 551 "\n -b Background (default)" \
540 "\n -S Log to syslog (default)" \ 552 "\n -S Log to syslog (default)" \
@@ -547,7 +559,7 @@
547 559
548#define crontab_trivial_usage \ 560#define crontab_trivial_usage \
549 "[-c DIR] [-u USER] [-ler]|[FILE]" 561 "[-c DIR] [-u USER] [-ler]|[FILE]"
550#define crontab_full_usage \ 562#define crontab_full_usage "\n\n" \
551 " -c Crontab directory" \ 563 " -c Crontab directory" \
552 "\n -u User" \ 564 "\n -u User" \
553 "\n -l List crontab" \ 565 "\n -l List crontab" \
@@ -557,15 +569,18 @@
557 569
558#define cryptpw_trivial_usage \ 570#define cryptpw_trivial_usage \
559 "[-a des|md5] [string]" 571 "[-a des|md5] [string]"
560#define cryptpw_full_usage \ 572#define cryptpw_full_usage "\n\n" \
561 "Output crypted string.\n" \ 573 "Output crypted string.\n" \
562 "If string isn't supplied on cmdline, read it from stdin.\n" \ 574 "If string isn't supplied on cmdline, read it from stdin.\n" \
563 "\nOptions:" \ 575 "\nOptions:" \
564 "\n -a Algorithm to use (default: md5)" \ 576 "\n -a Algorithm to use (default: md5)" \
565 577
578#define cttyhack_trivial_usage NOUSAGE_STR
579#define cttyhack_full_usage ""
580
566#define cut_trivial_usage \ 581#define cut_trivial_usage \
567 "[OPTION]... [FILE]..." 582 "[OPTION]... [FILE]..."
568#define cut_full_usage \ 583#define cut_full_usage "\n\n" \
569 "Print selected fields from each input FILE to standard output\n" \ 584 "Print selected fields from each input FILE to standard output\n" \
570 "\nOptions:" \ 585 "\nOptions:" \
571 "\n -b LIST Output only bytes from LIST" \ 586 "\n -b LIST Output only bytes from LIST" \
@@ -583,7 +598,7 @@
583 598
584#define date_trivial_usage \ 599#define date_trivial_usage \
585 "[OPTION]... [+FMT] [TIME]" 600 "[OPTION]... [+FMT] [TIME]"
586#define date_full_usage \ 601#define date_full_usage "\n\n" \
587 "Display time (using +FMT), or set time\n" \ 602 "Display time (using +FMT), or set time\n" \
588 "\nOptions:" \ 603 "\nOptions:" \
589 "\n -u Work in UTC (don't convert to local time)" \ 604 "\n -u Work in UTC (don't convert to local time)" \
@@ -612,7 +627,7 @@
612 627
613#define dc_trivial_usage \ 628#define dc_trivial_usage \
614 "expression..." 629 "expression..."
615#define dc_full_usage \ 630#define dc_full_usage "\n\n" \
616 "Tiny RPN calculator. Operations:\n" \ 631 "Tiny RPN calculator. Operations:\n" \
617 "+, add, -, sub, *, mul, /, div, %, mod, **, exp, and, or, not, eor,\n" \ 632 "+, add, -, sub, *, mul, /, div, %, mod, **, exp, and, or, not, eor,\n" \
618 "p - print top of the stack (without altering the stack),\n" \ 633 "p - print top of the stack (without altering the stack),\n" \
@@ -635,7 +650,7 @@
635#define dd_trivial_usage \ 650#define dd_trivial_usage \
636 "[if=FILE] [of=FILE] " USE_FEATURE_DD_IBS_OBS("[ibs=N] [obs=N] ") "[bs=N] [count=N] [skip=N]\n" \ 651 "[if=FILE] [of=FILE] " USE_FEATURE_DD_IBS_OBS("[ibs=N] [obs=N] ") "[bs=N] [count=N] [skip=N]\n" \
637 " [seek=N]" USE_FEATURE_DD_IBS_OBS(" [conv=notrunc|noerror|sync|fsync]") 652 " [seek=N]" USE_FEATURE_DD_IBS_OBS(" [conv=notrunc|noerror|sync|fsync]")
638#define dd_full_usage \ 653#define dd_full_usage "\n\n" \
639 "Copy a file with converting and formatting\n" \ 654 "Copy a file with converting and formatting\n" \
640 "\nOptions:" \ 655 "\nOptions:" \
641 "\n if=FILE Read from FILE instead of stdin" \ 656 "\n if=FILE Read from FILE instead of stdin" \
@@ -667,23 +682,23 @@
667 682
668#define deallocvt_trivial_usage \ 683#define deallocvt_trivial_usage \
669 "[N]" 684 "[N]"
670#define deallocvt_full_usage \ 685#define deallocvt_full_usage "\n\n" \
671 "Deallocate unused virtual terminal /dev/ttyN" 686 "Deallocate unused virtual terminal /dev/ttyN"
672 687
673#define delgroup_trivial_usage \ 688#define delgroup_trivial_usage \
674 USE_FEATURE_DEL_USER_FROM_GROUP("[USER] ")"GROUP" 689 USE_FEATURE_DEL_USER_FROM_GROUP("[USER] ")"GROUP"
675#define delgroup_full_usage \ 690#define delgroup_full_usage "\n\n" \
676 "Delete group GROUP from the system" \ 691 "Delete group GROUP from the system" \
677 USE_FEATURE_DEL_USER_FROM_GROUP(" or user USER from group GROUP") 692 USE_FEATURE_DEL_USER_FROM_GROUP(" or user USER from group GROUP")
678 693
679#define deluser_trivial_usage \ 694#define deluser_trivial_usage \
680 "USER" 695 "USER"
681#define deluser_full_usage \ 696#define deluser_full_usage "\n\n" \
682 "Delete user USER from the system" 697 "Delete user USER from the system"
683 698
684#define devfsd_trivial_usage \ 699#define devfsd_trivial_usage \
685 "mntpnt [-v]" USE_DEVFSD_FG_NP("[-fg][-np]") 700 "mntpnt [-v]" USE_DEVFSD_FG_NP("[-fg][-np]")
686#define devfsd_full_usage \ 701#define devfsd_full_usage "\n\n" \
687 "Manage devfs permissions and old device name symlinks\n" \ 702 "Manage devfs permissions and old device name symlinks\n" \
688 "\nOptions:" \ 703 "\nOptions:" \
689 "\n mntpnt The mount point where devfs is mounted" \ 704 "\n mntpnt The mount point where devfs is mounted" \
@@ -707,7 +722,7 @@
707 DF_HAS_OPTIONS("[-") \ 722 DF_HAS_OPTIONS("[-") \
708 USE_FEATURE_HUMAN_READABLE("hmk") USE_FEATURE_DF_INODE("i") \ 723 USE_FEATURE_HUMAN_READABLE("hmk") USE_FEATURE_DF_INODE("i") \
709 DF_HAS_OPTIONS("] ") "[FILESYSTEM...]" 724 DF_HAS_OPTIONS("] ") "[FILESYSTEM...]"
710#define df_full_usage \ 725#define df_full_usage "\n\n" \
711 "Print filesystem usage statistics\n" \ 726 "Print filesystem usage statistics\n" \
712 DF_HAS_OPTIONS("\nOptions:") \ 727 DF_HAS_OPTIONS("\nOptions:") \
713 USE_FEATURE_HUMAN_READABLE( \ 728 USE_FEATURE_HUMAN_READABLE( \
@@ -729,17 +744,17 @@
729 744
730#define dhcprelay_trivial_usage \ 745#define dhcprelay_trivial_usage \
731 "[client_device_list] [server_device]" 746 "[client_device_list] [server_device]"
732#define dhcprelay_full_usage \ 747#define dhcprelay_full_usage "\n\n" \
733 "Relay dhcp requests from client devices to server device" 748 "Relay dhcp requests from client devices to server device"
734 749
735#define dhcprelay_trivial_usage \ 750#define dhcprelay_trivial_usage \
736 "[client_device_list] [server_device]" 751 "[client_device_list] [server_device]"
737#define dhcprelay_full_usage \ 752#define dhcprelay_full_usage "\n\n" \
738 "Relay dhcp requests from client devices to server device" 753 "Relay dhcp requests from client devices to server device"
739 754
740#define diff_trivial_usage \ 755#define diff_trivial_usage \
741 "[-abdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] FILE1 FILE2" 756 "[-abdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] FILE1 FILE2"
742#define diff_full_usage \ 757#define diff_full_usage "\n\n" \
743 "Compare files line by line and output the differences between them.\n" \ 758 "Compare files line by line and output the differences between them.\n" \
744 "This implementation supports unified diffs only.\n" \ 759 "This implementation supports unified diffs only.\n" \
745 "\nOptions:" \ 760 "\nOptions:" \
@@ -760,7 +775,7 @@
760 775
761#define dirname_trivial_usage \ 776#define dirname_trivial_usage \
762 "FILENAME" 777 "FILENAME"
763#define dirname_full_usage \ 778#define dirname_full_usage "\n\n" \
764 "Strip non-directory suffix from FILENAME" 779 "Strip non-directory suffix from FILENAME"
765#define dirname_example_usage \ 780#define dirname_example_usage \
766 "$ dirname /tmp/foo\n" \ 781 "$ dirname /tmp/foo\n" \
@@ -770,7 +785,7 @@
770 785
771#define dmesg_trivial_usage \ 786#define dmesg_trivial_usage \
772 "[-c] [-n LEVEL] [-s SIZE]" 787 "[-c] [-n LEVEL] [-s SIZE]"
773#define dmesg_full_usage \ 788#define dmesg_full_usage "\n\n" \
774 "Print or control the kernel ring buffer\n" \ 789 "Print or control the kernel ring buffer\n" \
775 "\nOptions:" \ 790 "\nOptions:" \
776 "\n -c Clear ring buffer after printing" \ 791 "\n -c Clear ring buffer after printing" \
@@ -779,7 +794,7 @@
779 794
780#define dnsd_trivial_usage \ 795#define dnsd_trivial_usage \
781 "[-c config] [-t seconds] [-p port] [-i iface-ip] [-d]" 796 "[-c config] [-t seconds] [-p port] [-i iface-ip] [-d]"
782#define dnsd_full_usage \ 797#define dnsd_full_usage "\n\n" \
783 "Small static DNS server daemon\n" \ 798 "Small static DNS server daemon\n" \
784 "\nOptions:" \ 799 "\nOptions:" \
785 "\n -c Config filename" \ 800 "\n -c Config filename" \
@@ -790,7 +805,7 @@
790 805
791#define dos2unix_trivial_usage \ 806#define dos2unix_trivial_usage \
792 "[option] [FILE]" 807 "[option] [FILE]"
793#define dos2unix_full_usage \ 808#define dos2unix_full_usage "\n\n" \
794 "Convert FILE from dos to unix format.\n" \ 809 "Convert FILE from dos to unix format.\n" \
795 "When no file is given, use stdin/stdout.\n" \ 810 "When no file is given, use stdin/stdout.\n" \
796 "\nOptions:" \ 811 "\nOptions:" \
@@ -799,7 +814,7 @@
799 814
800#define dpkg_trivial_usage \ 815#define dpkg_trivial_usage \
801 "[-ilCPru] [-F option] package_name" 816 "[-ilCPru] [-F option] package_name"
802#define dpkg_full_usage \ 817#define dpkg_full_usage "\n\n" \
803 "Install, remove and manage Debian packages\n" \ 818 "Install, remove and manage Debian packages\n" \
804 "\nOptions:" \ 819 "\nOptions:" \
805 "\n -i Install the package" \ 820 "\n -i Install the package" \
@@ -812,7 +827,7 @@
812 827
813#define dpkg_deb_trivial_usage \ 828#define dpkg_deb_trivial_usage \
814 "[-cefxX] FILE [argument]" 829 "[-cefxX] FILE [argument]"
815#define dpkg_deb_full_usage \ 830#define dpkg_deb_full_usage "\n\n" \
816 "Perform actions on Debian packages (.debs)\n" \ 831 "Perform actions on Debian packages (.debs)\n" \
817 "\nOptions:" \ 832 "\nOptions:" \
818 "\n -c List contents of filesystem tree" \ 833 "\n -c List contents of filesystem tree" \
@@ -826,7 +841,7 @@
826 841
827#define du_trivial_usage \ 842#define du_trivial_usage \
828 "[-aHLdclsx" USE_FEATURE_HUMAN_READABLE("hm") "k] [FILE]..." 843 "[-aHLdclsx" USE_FEATURE_HUMAN_READABLE("hm") "k] [FILE]..."
829#define du_full_usage \ 844#define du_full_usage "\n\n" \
830 "Summarize disk space used for each FILE and/or directory.\n" \ 845 "Summarize disk space used for each FILE and/or directory.\n" \
831 "Disk space is printed in units of " \ 846 "Disk space is printed in units of " \
832 USE_FEATURE_DU_DEFAULT_BLOCKSIZE_1K("1024") \ 847 USE_FEATURE_DU_DEFAULT_BLOCKSIZE_1K("1024") \
@@ -863,14 +878,14 @@
863 878
864#define dumpkmap_trivial_usage \ 879#define dumpkmap_trivial_usage \
865 "> keymap" 880 "> keymap"
866#define dumpkmap_full_usage \ 881#define dumpkmap_full_usage "\n\n" \
867 "Print out a binary keyboard translation table to standard output" 882 "Print out a binary keyboard translation table to standard output"
868#define dumpkmap_example_usage \ 883#define dumpkmap_example_usage \
869 "$ dumpkmap > keymap\n" 884 "$ dumpkmap > keymap\n"
870 885
871#define dumpleases_trivial_usage \ 886#define dumpleases_trivial_usage \
872 "[-r|-a] [-f LEASEFILE]" 887 "[-r|-a] [-f LEASEFILE]"
873#define dumpleases_full_usage \ 888#define dumpleases_full_usage "\n\n" \
874 "Display DHCP leases granted by udhcpd\n" \ 889 "Display DHCP leases granted by udhcpd\n" \
875 "\nOptions:" \ 890 "\nOptions:" \
876 USE_GETOPT_LONG( \ 891 USE_GETOPT_LONG( \
@@ -889,7 +904,7 @@
889 "[-I inode_buffer_blocks] [-P process_inode_size] " \ 904 "[-I inode_buffer_blocks] [-P process_inode_size] " \
890 "[-l|-L bad_blocks_file] [-C fd] [-j external_journal] " \ 905 "[-l|-L bad_blocks_file] [-C fd] [-j external_journal] " \
891 "[-E extended-options] device" 906 "[-E extended-options] device"
892#define e2fsck_full_usage \ 907#define e2fsck_full_usage "\n\n" \
893 "Check ext2/ext3 file system\n" \ 908 "Check ext2/ext3 file system\n" \
894 "\nOptions:" \ 909 "\nOptions:" \
895 "\n -p Automatic repair (no questions)" \ 910 "\n -p Automatic repair (no questions)" \
@@ -906,7 +921,7 @@
906 921
907#define echo_trivial_usage \ 922#define echo_trivial_usage \
908 USE_FEATURE_FANCY_ECHO("[-neE] ") "[ARG...]" 923 USE_FEATURE_FANCY_ECHO("[-neE] ") "[ARG...]"
909#define echo_full_usage \ 924#define echo_full_usage "\n\n" \
910 "Print the specified ARGs to stdout" \ 925 "Print the specified ARGs to stdout" \
911 USE_FEATURE_FANCY_ECHO( "\n" \ 926 USE_FEATURE_FANCY_ECHO( "\n" \
912 "\nOptions:" \ 927 "\nOptions:" \
@@ -926,7 +941,7 @@
926 941
927#define eject_trivial_usage \ 942#define eject_trivial_usage \
928 "[-t] [-T] [DEVICE]" 943 "[-t] [-T] [DEVICE]"
929#define eject_full_usage \ 944#define eject_full_usage "\n\n" \
930 "Eject specified DEVICE (or default /dev/cdrom)\n" \ 945 "Eject specified DEVICE (or default /dev/cdrom)\n" \
931 "\nOptions:" \ 946 "\nOptions:" \
932 USE_FEATURE_EJECT_SCSI( \ 947 USE_FEATURE_EJECT_SCSI( \
@@ -940,7 +955,7 @@
940 955
941#define env_trivial_usage \ 956#define env_trivial_usage \
942 "[-iu] [-] [name=value]... [command]" 957 "[-iu] [-] [name=value]... [command]"
943#define env_full_usage \ 958#define env_full_usage "\n\n" \
944 "Print the current environment or run a program after setting\n" \ 959 "Print the current environment or run a program after setting\n" \
945 "up the specified environment\n" \ 960 "up the specified environment\n" \
946 "\nOptions:" \ 961 "\nOptions:" \
@@ -949,7 +964,7 @@
949 964
950#define ether_wake_trivial_usage \ 965#define ether_wake_trivial_usage \
951 "[-b] [-i iface] [-p aa:bb:cc:dd[:ee:ff]] MAC" 966 "[-b] [-i iface] [-p aa:bb:cc:dd[:ee:ff]] MAC"
952#define ether_wake_full_usage \ 967#define ether_wake_full_usage "\n\n" \
953 "Send a magic packet to wake up sleeping machines.\n" \ 968 "Send a magic packet to wake up sleeping machines.\n" \
954 "MAC must be a station address (00:11:22:33:44:55) or\n" \ 969 "MAC must be a station address (00:11:22:33:44:55) or\n" \
955 "a hostname with a known 'ethers' entry.\n" \ 970 "a hostname with a known 'ethers' entry.\n" \
@@ -960,7 +975,7 @@
960 975
961#define expand_trivial_usage \ 976#define expand_trivial_usage \
962 "[-i] [-t NUM] [FILE|-]" 977 "[-i] [-t NUM] [FILE|-]"
963#define expand_full_usage \ 978#define expand_full_usage "\n\n" \
964 "Convert tabs to spaces, writing to standard output.\n" \ 979 "Convert tabs to spaces, writing to standard output.\n" \
965 "\nOptions:" \ 980 "\nOptions:" \
966 USE_FEATURE_EXPAND_LONG_OPTIONS( \ 981 USE_FEATURE_EXPAND_LONG_OPTIONS( \
@@ -974,7 +989,7 @@
974 989
975#define expr_trivial_usage \ 990#define expr_trivial_usage \
976 "EXPRESSION" 991 "EXPRESSION"
977#define expr_full_usage \ 992#define expr_full_usage "\n\n" \
978 "Print the value of EXPRESSION to standard output.\n" \ 993 "Print the value of EXPRESSION to standard output.\n" \
979 "\n" \ 994 "\n" \
980 "EXPRESSION may be:\n" \ 995 "EXPRESSION may be:\n" \
@@ -1009,7 +1024,7 @@
1009 1024
1010#define fakeidentd_trivial_usage \ 1025#define fakeidentd_trivial_usage \
1011 "[-fiw] [-b ADDR] [STRING]" 1026 "[-fiw] [-b ADDR] [STRING]"
1012#define fakeidentd_full_usage \ 1027#define fakeidentd_full_usage "\n\n" \
1013 "Provide fake ident (auth) service\n" \ 1028 "Provide fake ident (auth) service\n" \
1014 "\nOptions:" \ 1029 "\nOptions:" \
1015 "\n -f Run in foreground" \ 1030 "\n -f Run in foreground" \
@@ -1020,7 +1035,7 @@
1020 1035
1021#define false_trivial_usage \ 1036#define false_trivial_usage \
1022 "" 1037 ""
1023#define false_full_usage \ 1038#define false_full_usage "\n\n" \
1024 "Return an exit code of FALSE (1)" 1039 "Return an exit code of FALSE (1)"
1025 1040
1026#define false_example_usage \ 1041#define false_example_usage \
@@ -1030,7 +1045,7 @@
1030 1045
1031#define fbset_trivial_usage \ 1046#define fbset_trivial_usage \
1032 "[options] [mode]" 1047 "[options] [mode]"
1033#define fbset_full_usage \ 1048#define fbset_full_usage "\n\n" \
1034 "Show and modify frame buffer settings" 1049 "Show and modify frame buffer settings"
1035 1050
1036#define fbset_example_usage \ 1051#define fbset_example_usage \
@@ -1045,12 +1060,12 @@
1045 1060
1046#define fdflush_trivial_usage \ 1061#define fdflush_trivial_usage \
1047 "DEVICE" 1062 "DEVICE"
1048#define fdflush_full_usage \ 1063#define fdflush_full_usage "\n\n" \
1049 "Force floppy disk drive to detect disk change" 1064 "Force floppy disk drive to detect disk change"
1050 1065
1051#define fdformat_trivial_usage \ 1066#define fdformat_trivial_usage \
1052 "[-n] DEVICE" 1067 "[-n] DEVICE"
1053#define fdformat_full_usage \ 1068#define fdformat_full_usage "\n\n" \
1054 "Format floppy disk\n" \ 1069 "Format floppy disk\n" \
1055 "\nOptions:" \ 1070 "\nOptions:" \
1056 "\n -n Don't verify after format" \ 1071 "\n -n Don't verify after format" \
@@ -1064,7 +1079,7 @@
1064#define fdisk_trivial_usage \ 1079#define fdisk_trivial_usage \
1065 "[-ul" USE_FEATURE_FDISK_BLKSIZE("s") "] " \ 1080 "[-ul" USE_FEATURE_FDISK_BLKSIZE("s") "] " \
1066 "[-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SSZ] DISK" 1081 "[-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SSZ] DISK"
1067#define fdisk_full_usage \ 1082#define fdisk_full_usage "\n\n" \
1068 "Change partition table\n" \ 1083 "Change partition table\n" \
1069 "\nOptions:" \ 1084 "\nOptions:" \
1070 "\n -u Start and End are in sectors (instead of cylinders)" \ 1085 "\n -u Start and End are in sectors (instead of cylinders)" \
@@ -1079,7 +1094,7 @@
1079 1094
1080#define fetchmail_trivial_usage \ 1095#define fetchmail_trivial_usage \
1081 "[-w timeout] [-U user] -P password [-X] [-t] [-z] server[:port] maildir [prog]" 1096 "[-w timeout] [-U user] -P password [-X] [-t] [-z] server[:port] maildir [prog]"
1082#define fetchmail_full_usage \ 1097#define fetchmail_full_usage "\n\n" \
1083 "Fetch content of remote mailbox to local Maildir.\n" \ 1098 "Fetch content of remote mailbox to local Maildir.\n" \
1084 "\nOptions:" \ 1099 "\nOptions:" \
1085 "\n -w timeout Set timeout on network operations" \ 1100 "\n -w timeout Set timeout on network operations" \
@@ -1092,14 +1107,14 @@
1092 1107
1093#define findfs_trivial_usage \ 1108#define findfs_trivial_usage \
1094 "LABEL=label or UUID=uuid" 1109 "LABEL=label or UUID=uuid"
1095#define findfs_full_usage \ 1110#define findfs_full_usage "\n\n" \
1096 "Find a filesystem device based on a label or UUID." 1111 "Find a filesystem device based on a label or UUID."
1097#define findfs_example_usage \ 1112#define findfs_example_usage \
1098 "$ findfs LABEL=MyDevice" 1113 "$ findfs LABEL=MyDevice"
1099 1114
1100#define find_trivial_usage \ 1115#define find_trivial_usage \
1101 "[PATH...] [EXPRESSION]" 1116 "[PATH...] [EXPRESSION]"
1102#define find_full_usage \ 1117#define find_full_usage "\n\n" \
1103 "Search for files. The default PATH is the current directory,\n" \ 1118 "Search for files. The default PATH is the current directory,\n" \
1104 "default EXPRESSION is '-print'\n" \ 1119 "default EXPRESSION is '-print'\n" \
1105 "\nEXPRESSION may consist of:" \ 1120 "\nEXPRESSION may consist of:" \
@@ -1161,7 +1176,7 @@
1161 1176
1162#define fold_trivial_usage \ 1177#define fold_trivial_usage \
1163 "[-bs] [-w WIDTH] [FILE]" 1178 "[-bs] [-w WIDTH] [FILE]"
1164#define fold_full_usage \ 1179#define fold_full_usage "\n\n" \
1165 "Wrap input lines in each FILE (standard input by default), writing to\n" \ 1180 "Wrap input lines in each FILE (standard input by default), writing to\n" \
1166 "standard output\n" \ 1181 "standard output\n" \
1167 "\nOptions:" \ 1182 "\nOptions:" \
@@ -1171,7 +1186,7 @@
1171 1186
1172#define free_trivial_usage \ 1187#define free_trivial_usage \
1173 "" 1188 ""
1174#define free_full_usage \ 1189#define free_full_usage "\n\n" \
1175 "Display the amount of free and used system memory" 1190 "Display the amount of free and used system memory"
1176#define free_example_usage \ 1191#define free_example_usage \
1177 "$ free\n" \ 1192 "$ free\n" \
@@ -1182,14 +1197,14 @@
1182 1197
1183#define freeramdisk_trivial_usage \ 1198#define freeramdisk_trivial_usage \
1184 "DEVICE" 1199 "DEVICE"
1185#define freeramdisk_full_usage \ 1200#define freeramdisk_full_usage "\n\n" \
1186 "Free all memory used by the specified ramdisk" 1201 "Free all memory used by the specified ramdisk"
1187#define freeramdisk_example_usage \ 1202#define freeramdisk_example_usage \
1188 "$ freeramdisk /dev/ram2\n" 1203 "$ freeramdisk /dev/ram2\n"
1189 1204
1190#define fsck_trivial_usage \ 1205#define fsck_trivial_usage \
1191 "[-ANPRTV] [-C fd] [-t fstype] [fs-options] [filesys...]" 1206 "[-ANPRTV] [-C fd] [-t fstype] [fs-options] [filesys...]"
1192#define fsck_full_usage \ 1207#define fsck_full_usage "\n\n" \
1193 "Check and repair filesystems\n" \ 1208 "Check and repair filesystems\n" \
1194 "\nOptions:" \ 1209 "\nOptions:" \
1195 "\n -A Walk /etc/fstab and check all filesystems" \ 1210 "\n -A Walk /etc/fstab and check all filesystems" \
@@ -1203,7 +1218,7 @@
1203 1218
1204#define fsck_minix_trivial_usage \ 1219#define fsck_minix_trivial_usage \
1205 "[-larvsmf] /dev/name" 1220 "[-larvsmf] /dev/name"
1206#define fsck_minix_full_usage \ 1221#define fsck_minix_full_usage "\n\n" \
1207 "Check MINIX filesystem\n" \ 1222 "Check MINIX filesystem\n" \
1208 "\nOptions:" \ 1223 "\nOptions:" \
1209 "\n -l List all filenames" \ 1224 "\n -l List all filenames" \
@@ -1216,7 +1231,7 @@
1216 1231
1217#define ftpget_trivial_usage \ 1232#define ftpget_trivial_usage \
1218 "[options] remote-host local-file remote-file" 1233 "[options] remote-host local-file remote-file"
1219#define ftpget_full_usage \ 1234#define ftpget_full_usage "\n\n" \
1220 "Retrieve a remote file via FTP\n" \ 1235 "Retrieve a remote file via FTP\n" \
1221 "\nOptions:" \ 1236 "\nOptions:" \
1222 USE_GETOPT_LONG( \ 1237 USE_GETOPT_LONG( \
@@ -1236,7 +1251,7 @@
1236 1251
1237#define ftpput_trivial_usage \ 1252#define ftpput_trivial_usage \
1238 "[options] remote-host remote-file local-file" 1253 "[options] remote-host remote-file local-file"
1239#define ftpput_full_usage \ 1254#define ftpput_full_usage "\n\n" \
1240 "Store a local file on a remote machine via FTP\n" \ 1255 "Store a local file on a remote machine via FTP\n" \
1241 "\nOptions:" \ 1256 "\nOptions:" \
1242 USE_GETOPT_LONG( \ 1257 USE_GETOPT_LONG( \
@@ -1254,7 +1269,7 @@
1254 1269
1255#define fuser_trivial_usage \ 1270#define fuser_trivial_usage \
1256 "[options] FILE or PORT/PROTO" 1271 "[options] FILE or PORT/PROTO"
1257#define fuser_full_usage \ 1272#define fuser_full_usage "\n\n" \
1258 "Find processes which use FILEs or PORTs\n" \ 1273 "Find processes which use FILEs or PORTs\n" \
1259 "\nOptions:" \ 1274 "\nOptions:" \
1260 "\n -m Find processes which use same fs as FILEs" \ 1275 "\n -m Find processes which use same fs as FILEs" \
@@ -1269,7 +1284,7 @@
1269 1284
1270#define getopt_trivial_usage \ 1285#define getopt_trivial_usage \
1271 "[OPTIONS]..." 1286 "[OPTIONS]..."
1272#define getopt_full_usage \ 1287#define getopt_full_usage "\n\n" \
1273 "Parse command options\n" \ 1288 "Parse command options\n" \
1274 USE_GETOPT_LONG( \ 1289 USE_GETOPT_LONG( \
1275 "\n -a,--alternative Allow long options starting with single -" \ 1290 "\n -a,--alternative Allow long options starting with single -" \
@@ -1316,12 +1331,12 @@
1316 1331
1317#define getsebool_trivial_usage \ 1332#define getsebool_trivial_usage \
1318 "-a or getsebool boolean..." 1333 "-a or getsebool boolean..."
1319#define getsebool_full_usage \ 1334#define getsebool_full_usage "\n\n" \
1320 " -a Show all SELinux booleans" 1335 " -a Show all SELinux booleans"
1321 1336
1322#define getty_trivial_usage \ 1337#define getty_trivial_usage \
1323 "[OPTIONS] BAUD_RATE TTY [TERMTYPE]" 1338 "[OPTIONS] BAUD_RATE TTY [TERMTYPE]"
1324#define getty_full_usage \ 1339#define getty_full_usage "\n\n" \
1325 "Open a tty, prompt for a login name, then invoke /bin/login\n" \ 1340 "Open a tty, prompt for a login name, then invoke /bin/login\n" \
1326 "\nOptions:" \ 1341 "\nOptions:" \
1327 "\n -h Enable hardware (RTS/CTS) flow control" \ 1342 "\n -h Enable hardware (RTS/CTS) flow control" \
@@ -1343,7 +1358,7 @@
1343 USE_FEATURE_GREP_EGREP_ALIAS("E") \ 1358 USE_FEATURE_GREP_EGREP_ALIAS("E") \
1344 USE_FEATURE_GREP_CONTEXT("ABC") \ 1359 USE_FEATURE_GREP_CONTEXT("ABC") \
1345 "] PATTERN [FILEs...]" 1360 "] PATTERN [FILEs...]"
1346#define grep_full_usage \ 1361#define grep_full_usage "\n\n" \
1347 "Search for PATTERN in each FILE or standard input\n" \ 1362 "Search for PATTERN in each FILE or standard input\n" \
1348 "\nOptions:" \ 1363 "\nOptions:" \
1349 "\n -H Prefix output lines with filename where match was found" \ 1364 "\n -H Prefix output lines with filename where match was found" \
@@ -1377,9 +1392,15 @@
1377 "$ grep ^[rR]oo. /etc/passwd\n" \ 1392 "$ grep ^[rR]oo. /etc/passwd\n" \
1378 "root:x:0:0:root:/root:/bin/bash\n" 1393 "root:x:0:0:root:/root:/bin/bash\n"
1379 1394
1395#define egrep_trivial_usage NOUSAGE_STR
1396#define egrep_full_usage ""
1397
1398#define fgrep_trivial_usage NOUSAGE_STR
1399#define fgrep_full_usage ""
1400
1380#define gunzip_trivial_usage \ 1401#define gunzip_trivial_usage \
1381 "[OPTION]... [FILE]..." 1402 "[OPTION]... [FILE]..."
1382#define gunzip_full_usage \ 1403#define gunzip_full_usage "\n\n" \
1383 "Uncompress FILEs (or standard input)\n" \ 1404 "Uncompress FILEs (or standard input)\n" \
1384 "\nOptions:" \ 1405 "\nOptions:" \
1385 "\n -c Write to standard output" \ 1406 "\n -c Write to standard output" \
@@ -1395,7 +1416,7 @@
1395 1416
1396#define gzip_trivial_usage \ 1417#define gzip_trivial_usage \
1397 "[OPTION]... [FILE]..." 1418 "[OPTION]... [FILE]..."
1398#define gzip_full_usage \ 1419#define gzip_full_usage "\n\n" \
1399 "Compress FILEs (or standard input)\n" \ 1420 "Compress FILEs (or standard input)\n" \
1400 "\nOptions:" \ 1421 "\nOptions:" \
1401 "\n -c Write to standard output" \ 1422 "\n -c Write to standard output" \
@@ -1411,7 +1432,7 @@
1411 1432
1412#define halt_trivial_usage \ 1433#define halt_trivial_usage \
1413 "[-d delay] [-n] [-f]" 1434 "[-d delay] [-n] [-f]"
1414#define halt_full_usage \ 1435#define halt_full_usage "\n\n" \
1415 "Halt the system\n" \ 1436 "Halt the system\n" \
1416 "\nOptions:" \ 1437 "\nOptions:" \
1417 "\n -d Delay interval for halting" \ 1438 "\n -d Delay interval for halting" \
@@ -1423,7 +1444,7 @@
1423 1444
1424#define hdparm_trivial_usage \ 1445#define hdparm_trivial_usage \
1425 "[options] [device] .." 1446 "[options] [device] .."
1426#define hdparm_full_usage \ 1447#define hdparm_full_usage "\n\n" \
1427 "Options:" \ 1448 "Options:" \
1428 "\n -a Get/set fs readahead" \ 1449 "\n -a Get/set fs readahead" \
1429 "\n -A Set drive read-lookahead flag (0/1)" \ 1450 "\n -A Set drive read-lookahead flag (0/1)" \
@@ -1474,7 +1495,7 @@
1474 1495
1475#define head_trivial_usage \ 1496#define head_trivial_usage \
1476 "[OPTION]... [FILE]..." 1497 "[OPTION]... [FILE]..."
1477#define head_full_usage \ 1498#define head_full_usage "\n\n" \
1478 "Print first 10 lines of each FILE to standard output.\n" \ 1499 "Print first 10 lines of each FILE to standard output.\n" \
1479 "With more than one FILE, precede each with a header giving the\n" \ 1500 "With more than one FILE, precede each with a header giving the\n" \
1480 "file name. With no FILE, or when FILE is -, read standard input.\n" \ 1501 "file name. With no FILE, or when FILE is -, read standard input.\n" \
@@ -1492,7 +1513,7 @@
1492 1513
1493#define hexdump_trivial_usage \ 1514#define hexdump_trivial_usage \
1494 "[-bcCdefnosvx" USE_FEATURE_HEXDUMP_REVERSE("R") "] FILE..." 1515 "[-bcCdefnosvx" USE_FEATURE_HEXDUMP_REVERSE("R") "] FILE..."
1495#define hexdump_full_usage \ 1516#define hexdump_full_usage "\n\n" \
1496 "Display file(s) or standard input in a user specified format\n" \ 1517 "Display file(s) or standard input in a user specified format\n" \
1497 "\nOptions:" \ 1518 "\nOptions:" \
1498 "\n -b One-byte octal display" \ 1519 "\n -b One-byte octal display" \
@@ -1511,17 +1532,17 @@
1511 1532
1512#define hd_trivial_usage \ 1533#define hd_trivial_usage \
1513 "FILE..." 1534 "FILE..."
1514#define hd_full_usage \ 1535#define hd_full_usage "\n\n" \
1515 "hd is an alias for hexdump -C" 1536 "hd is an alias for hexdump -C"
1516 1537
1517#define hostid_trivial_usage \ 1538#define hostid_trivial_usage \
1518 "" 1539 ""
1519#define hostid_full_usage \ 1540#define hostid_full_usage "\n\n" \
1520 "Print out a unique 32-bit identifier for the machine" 1541 "Print out a unique 32-bit identifier for the machine"
1521 1542
1522#define hostname_trivial_usage \ 1543#define hostname_trivial_usage \
1523 "[OPTION] [hostname | -F FILE]" 1544 "[OPTION] [hostname | -F FILE]"
1524#define hostname_full_usage \ 1545#define hostname_full_usage "\n\n" \
1525 "Get or set hostname or DNS domain name\n" \ 1546 "Get or set hostname or DNS domain name\n" \
1526 "\nOptions:" \ 1547 "\nOptions:" \
1527 "\n -s Short" \ 1548 "\n -s Short" \
@@ -1543,7 +1564,7 @@
1543 USE_FEATURE_HTTPD_AUTH_MD5(" [-m pass]") \ 1564 USE_FEATURE_HTTPD_AUTH_MD5(" [-m pass]") \
1544 " [-h home]" \ 1565 " [-h home]" \
1545 " [-d/-e string]" 1566 " [-d/-e string]"
1546#define httpd_full_usage \ 1567#define httpd_full_usage "\n\n" \
1547 "Listen for incoming HTTP requests\n" \ 1568 "Listen for incoming HTTP requests\n" \
1548 "\nOptions:" \ 1569 "\nOptions:" \
1549 "\n -c FILE Configuration file (default httpd.conf)" \ 1570 "\n -c FILE Configuration file (default httpd.conf)" \
@@ -1570,7 +1591,7 @@
1570 SKIP_GETOPT_LONG( \ 1591 SKIP_GETOPT_LONG( \
1571 "[-r] [-s] [-w] [-l] [-u] [-f FILE]" \ 1592 "[-r] [-s] [-w] [-l] [-u] [-f FILE]" \
1572 ) 1593 )
1573#define hwclock_full_usage \ 1594#define hwclock_full_usage "\n\n" \
1574 "Query and set hardware clock (RTC)\n" \ 1595 "Query and set hardware clock (RTC)\n" \
1575 "\nOptions:" \ 1596 "\nOptions:" \
1576 "\n -r Show hardware clock time" \ 1597 "\n -r Show hardware clock time" \
@@ -1582,7 +1603,7 @@
1582 1603
1583#define id_trivial_usage \ 1604#define id_trivial_usage \
1584 "[OPTIONS]... [USER]" 1605 "[OPTIONS]... [USER]"
1585#define id_full_usage \ 1606#define id_full_usage "\n\n" \
1586 "Print information about USER or the current user\n" \ 1607 "Print information about USER or the current user\n" \
1587 "\nOptions:" \ 1608 "\nOptions:" \
1588 USE_SELINUX( \ 1609 USE_SELINUX( \
@@ -1599,7 +1620,7 @@
1599 1620
1600#define ifconfig_trivial_usage \ 1621#define ifconfig_trivial_usage \
1601 USE_FEATURE_IFCONFIG_STATUS("[-a]") " interface [address]" 1622 USE_FEATURE_IFCONFIG_STATUS("[-a]") " interface [address]"
1602#define ifconfig_full_usage \ 1623#define ifconfig_full_usage "\n\n" \
1603 "Configure a network interface\n" \ 1624 "Configure a network interface\n" \
1604 "\nOptions:" \ 1625 "\nOptions:" \
1605 "\n" \ 1626 "\n" \
@@ -1620,7 +1641,7 @@
1620 1641
1621#define ifenslave_trivial_usage \ 1642#define ifenslave_trivial_usage \
1622 "[-cdf] master-iface <slave-iface...>" 1643 "[-cdf] master-iface <slave-iface...>"
1623#define ifenslave_full_usage \ 1644#define ifenslave_full_usage "\n\n" \
1624 "Configure network interfaces for parallel routing\n" \ 1645 "Configure network interfaces for parallel routing\n" \
1625 "\nOptions:" \ 1646 "\nOptions:" \
1626 "\n -c, --change-active Change active slave" \ 1647 "\n -c, --change-active Change active slave" \
@@ -1647,7 +1668,7 @@
1647 1668
1648#define ifup_trivial_usage \ 1669#define ifup_trivial_usage \
1649 "[-ahinv] ifaces..." 1670 "[-ahinv] ifaces..."
1650#define ifup_full_usage \ 1671#define ifup_full_usage "\n\n" \
1651 "Options:" \ 1672 "Options:" \
1652 "\n -a De/configure all interfaces automatically" \ 1673 "\n -a De/configure all interfaces automatically" \
1653 "\n -i FILE Use FILE for interface definitions" \ 1674 "\n -i FILE Use FILE for interface definitions" \
@@ -1659,7 +1680,7 @@
1659 1680
1660#define ifdown_trivial_usage \ 1681#define ifdown_trivial_usage \
1661 "[-ahinv] ifaces..." 1682 "[-ahinv] ifaces..."
1662#define ifdown_full_usage \ 1683#define ifdown_full_usage "\n\n" \
1663 "Options:" \ 1684 "Options:" \
1664 "\n -a De/configure all interfaces automatically" \ 1685 "\n -a De/configure all interfaces automatically" \
1665 "\n -i FILE Use FILE for interface definitions" \ 1686 "\n -i FILE Use FILE for interface definitions" \
@@ -1671,7 +1692,7 @@
1671 1692
1672#define inetd_trivial_usage \ 1693#define inetd_trivial_usage \
1673 "[-fe] [-q N] [-R N] [CONFFILE]" 1694 "[-fe] [-q N] [-R N] [CONFFILE]"
1674#define inetd_full_usage \ 1695#define inetd_full_usage "\n\n" \
1675 "Listen for network connections and launch programs\n" \ 1696 "Listen for network connections and launch programs\n" \
1676 "\nOptions:" \ 1697 "\nOptions:" \
1677 "\n -f Run in foreground" \ 1698 "\n -f Run in foreground" \
@@ -1682,7 +1703,7 @@
1682 1703
1683#define init_trivial_usage \ 1704#define init_trivial_usage \
1684 "" 1705 ""
1685#define init_full_usage \ 1706#define init_full_usage "\n\n" \
1686 "Init is the parent of all processes" 1707 "Init is the parent of all processes"
1687 1708
1688#define init_notes_usage \ 1709#define init_notes_usage \
@@ -1814,7 +1835,7 @@
1814 1835
1815#define insmod_trivial_usage \ 1836#define insmod_trivial_usage \
1816 USE_FEATURE_2_4_MODULES("[OPTION]... ") "MODULE [symbol=value]..." 1837 USE_FEATURE_2_4_MODULES("[OPTION]... ") "MODULE [symbol=value]..."
1817#define insmod_full_usage \ 1838#define insmod_full_usage "\n\n" \
1818 "Load the specified kernel modules into the kernel" \ 1839 "Load the specified kernel modules into the kernel" \
1819 USE_FEATURE_2_4_MODULES( "\n" \ 1840 USE_FEATURE_2_4_MODULES( "\n" \
1820 "\nOptions:" \ 1841 "\nOptions:" \
@@ -1832,7 +1853,7 @@
1832 1853
1833#define install_trivial_usage \ 1854#define install_trivial_usage \
1834 "[-cgmops] [sources] dest|directory" 1855 "[-cgmops] [sources] dest|directory"
1835#define install_full_usage \ 1856#define install_full_usage "\n\n" \
1836 "Copy files and set attributes\n" \ 1857 "Copy files and set attributes\n" \
1837 "\nOptions:" \ 1858 "\nOptions:" \
1838 "\n -c Copy the file, default" \ 1859 "\n -c Copy the file, default" \
@@ -1855,7 +1876,7 @@
1855 USE_FEATURE_IP_TUNNEL("tunnel | ") \ 1876 USE_FEATURE_IP_TUNNEL("tunnel | ") \
1856 USE_FEATURE_IP_RULE("rule") \ 1877 USE_FEATURE_IP_RULE("rule") \
1857 "} {COMMAND}" 1878 "} {COMMAND}"
1858#define ip_full_usage \ 1879#define ip_full_usage "\n\n" \
1859 "ip [OPTIONS] OBJECT {COMMAND}\n" \ 1880 "ip [OPTIONS] OBJECT {COMMAND}\n" \
1860 "where OBJECT := {" \ 1881 "where OBJECT := {" \
1861 USE_FEATURE_IP_ADDRESS("address | ") \ 1882 USE_FEATURE_IP_ADDRESS("address | ") \
@@ -1869,7 +1890,7 @@
1869#define ipaddr_trivial_usage \ 1890#define ipaddr_trivial_usage \
1870 "{ {add|del} IFADDR dev STRING | {show|flush}\n" \ 1891 "{ {add|del} IFADDR dev STRING | {show|flush}\n" \
1871 " [dev STRING] [to PREFIX] }" 1892 " [dev STRING] [to PREFIX] }"
1872#define ipaddr_full_usage \ 1893#define ipaddr_full_usage "\n\n" \
1873 "ipaddr {add|delete} IFADDR dev STRING\n" \ 1894 "ipaddr {add|delete} IFADDR dev STRING\n" \
1874 "ipaddr {show|flush} [dev STRING] [scope SCOPE-ID]\n" \ 1895 "ipaddr {show|flush} [dev STRING] [scope SCOPE-ID]\n" \
1875 " [to PREFIX] [label PATTERN]\n" \ 1896 " [to PREFIX] [label PATTERN]\n" \
@@ -1880,7 +1901,7 @@
1880 1901
1881#define ipcalc_trivial_usage \ 1902#define ipcalc_trivial_usage \
1882 "[OPTION]... ADDRESS[[/]NETMASK] [NETMASK]" 1903 "[OPTION]... ADDRESS[[/]NETMASK] [NETMASK]"
1883#define ipcalc_full_usage \ 1904#define ipcalc_full_usage "\n\n" \
1884 "Calculate IP network settings from a IP address\n" \ 1905 "Calculate IP network settings from a IP address\n" \
1885 "\nOptions:" \ 1906 "\nOptions:" \
1886 USE_FEATURE_IPCALC_LONG_OPTIONS( \ 1907 USE_FEATURE_IPCALC_LONG_OPTIONS( \
@@ -1906,7 +1927,7 @@
1906 1927
1907#define ipcrm_trivial_usage \ 1928#define ipcrm_trivial_usage \
1908 "[-MQS key] [-mqs id]" 1929 "[-MQS key] [-mqs id]"
1909#define ipcrm_full_usage \ 1930#define ipcrm_full_usage "\n\n" \
1910 "Upper-case options MQS remove an object by shmkey value.\n" \ 1931 "Upper-case options MQS remove an object by shmkey value.\n" \
1911 "Lower-case options remove an object by shmid value.\n" \ 1932 "Lower-case options remove an object by shmid value.\n" \
1912 "\nOptions:" \ 1933 "\nOptions:" \
@@ -1916,7 +1937,7 @@
1916 1937
1917#define ipcs_trivial_usage \ 1938#define ipcs_trivial_usage \
1918 "[[-smq] -i shmid] | [[-asmq] [-tcplu]]" 1939 "[[-smq] -i shmid] | [[-asmq] [-tcplu]]"
1919#define ipcs_full_usage \ 1940#define ipcs_full_usage "\n\n" \
1920 " -i Show specific resource" \ 1941 " -i Show specific resource" \
1921 "\nResource specification:" \ 1942 "\nResource specification:" \
1922 "\n -m Shared memory segments" \ 1943 "\n -m Shared memory segments" \
@@ -1932,7 +1953,7 @@
1932 1953
1933#define iplink_trivial_usage \ 1954#define iplink_trivial_usage \
1934 "{ set DEVICE { up | down | arp { on | off } | show [DEVICE] }" 1955 "{ set DEVICE { up | down | arp { on | off } | show [DEVICE] }"
1935#define iplink_full_usage \ 1956#define iplink_full_usage "\n\n" \
1936 "iplink set DEVICE { up | down | arp | multicast { on | off } |\n" \ 1957 "iplink set DEVICE { up | down | arp | multicast { on | off } |\n" \
1937 " dynamic { on | off } |\n" \ 1958 " dynamic { on | off } |\n" \
1938 " mtu MTU }\n" \ 1959 " mtu MTU }\n" \
@@ -1941,7 +1962,7 @@
1941#define iproute_trivial_usage \ 1962#define iproute_trivial_usage \
1942 "{ list | flush | { add | del | change | append |\n" \ 1963 "{ list | flush | { add | del | change | append |\n" \
1943 " replace | monitor } ROUTE }" 1964 " replace | monitor } ROUTE }"
1944#define iproute_full_usage \ 1965#define iproute_full_usage "\n\n" \
1945 "iproute { list | flush } SELECTOR\n" \ 1966 "iproute { list | flush } SELECTOR\n" \
1946 "iproute get ADDRESS [from ADDRESS iif STRING]\n" \ 1967 "iproute get ADDRESS [from ADDRESS iif STRING]\n" \
1947 " [oif STRING] [tos TOS]\n" \ 1968 " [oif STRING] [tos TOS]\n" \
@@ -1951,7 +1972,7 @@
1951 1972
1952#define iprule_trivial_usage \ 1973#define iprule_trivial_usage \
1953 "{[list | add | del] RULE}" 1974 "{[list | add | del] RULE}"
1954#define iprule_full_usage \ 1975#define iprule_full_usage "\n\n" \
1955 "iprule [list | add | del] SELECTOR ACTION\n" \ 1976 "iprule [list | add | del] SELECTOR ACTION\n" \
1956 " SELECTOR := [from PREFIX] [to PREFIX] [tos TOS] [fwmark FWMARK]\n" \ 1977 " SELECTOR := [from PREFIX] [to PREFIX] [tos TOS] [fwmark FWMARK]\n" \
1957 " [dev STRING] [pref NUMBER]\n" \ 1978 " [dev STRING] [pref NUMBER]\n" \
@@ -1964,7 +1985,7 @@
1964 "{ add | change | del | show } [NAME]\n" \ 1985 "{ add | change | del | show } [NAME]\n" \
1965 " [mode { ipip | gre | sit }]\n" \ 1986 " [mode { ipip | gre | sit }]\n" \
1966 " [remote ADDR] [local ADDR] [ttl TTL]" 1987 " [remote ADDR] [local ADDR] [ttl TTL]"
1967#define iptunnel_full_usage \ 1988#define iptunnel_full_usage "\n\n" \
1968 "iptunnel { add | change | del | show } [NAME]\n" \ 1989 "iptunnel { add | change | del | show } [NAME]\n" \
1969 " [mode { ipip | gre | sit }] [remote ADDR] [local ADDR]\n" \ 1990 " [mode { ipip | gre | sit }] [remote ADDR] [local ADDR]\n" \
1970 " [[i|o]seq] [[i|o]key KEY] [[i|o]csum]\n" \ 1991 " [[i|o]seq] [[i|o]key KEY] [[i|o]csum]\n" \
@@ -1972,7 +1993,7 @@
1972 1993
1973#define kbd_mode_trivial_usage \ 1994#define kbd_mode_trivial_usage \
1974 "[-a|k|s|u]" 1995 "[-a|k|s|u]"
1975#define kbd_mode_full_usage \ 1996#define kbd_mode_full_usage "\n\n" \
1976 "Report or set the keyboard mode\n" \ 1997 "Report or set the keyboard mode\n" \
1977 "\nOptions set mode:" \ 1998 "\nOptions set mode:" \
1978 "\n -a Default (ASCII)" \ 1999 "\n -a Default (ASCII)" \
@@ -1982,7 +2003,7 @@
1982 2003
1983#define kill_trivial_usage \ 2004#define kill_trivial_usage \
1984 "[-l] [-signal] process-id..." 2005 "[-l] [-signal] process-id..."
1985#define kill_full_usage \ 2006#define kill_full_usage "\n\n" \
1986 "Send a signal (default is TERM) to the specified process(es)\n" \ 2007 "Send a signal (default is TERM) to the specified process(es)\n" \
1987 "\nOptions:" \ 2008 "\nOptions:" \
1988 "\n -l List all signal names and numbers" \ 2009 "\n -l List all signal names and numbers" \
@@ -1999,7 +2020,7 @@
1999 2020
2000#define killall_trivial_usage \ 2021#define killall_trivial_usage \
2001 "[-l] [-q] [-signal] process-name..." 2022 "[-l] [-q] [-signal] process-name..."
2002#define killall_full_usage \ 2023#define killall_full_usage "\n\n" \
2003 "Send a signal (default is TERM) to the specified process(es)\n" \ 2024 "Send a signal (default is TERM) to the specified process(es)\n" \
2004 "\nOptions:" \ 2025 "\nOptions:" \
2005 "\n -l List all signal names and numbers" \ 2026 "\n -l List all signal names and numbers" \
@@ -2010,14 +2031,14 @@
2010 2031
2011#define killall5_trivial_usage \ 2032#define killall5_trivial_usage \
2012 "[-l] [-signal]" 2033 "[-l] [-signal]"
2013#define killall5_full_usage \ 2034#define killall5_full_usage "\n\n" \
2014 "Send a signal (default is TERM) to all processes outside current session\n" \ 2035 "Send a signal (default is TERM) to all processes outside current session\n" \
2015 "\nOptions:" \ 2036 "\nOptions:" \
2016 "\n -l List all signal names and numbers" \ 2037 "\n -l List all signal names and numbers" \
2017 2038
2018#define klogd_trivial_usage \ 2039#define klogd_trivial_usage \
2019 "[-c n] [-n]" 2040 "[-c n] [-n]"
2020#define klogd_full_usage \ 2041#define klogd_full_usage "\n\n" \
2021 "Kernel logger\n" \ 2042 "Kernel logger\n" \
2022 "\nOptions:" \ 2043 "\nOptions:" \
2023 "\n -c n Set the default log level of console messages to n" \ 2044 "\n -c n Set the default log level of console messages to n" \
@@ -2025,7 +2046,7 @@
2025 2046
2026#define length_trivial_usage \ 2047#define length_trivial_usage \
2027 "STRING" 2048 "STRING"
2028#define length_full_usage \ 2049#define length_full_usage "\n\n" \
2029 "Print STRING's length" 2050 "Print STRING's length"
2030 2051
2031#define length_example_usage \ 2052#define length_example_usage \
@@ -2034,7 +2055,7 @@
2034 2055
2035#define less_trivial_usage \ 2056#define less_trivial_usage \
2036 "[-EMNmh~?] [FILE...]" 2057 "[-EMNmh~?] [FILE...]"
2037#define less_full_usage \ 2058#define less_full_usage "\n\n" \
2038 "View a file or list of files. The position within files can be\n" \ 2059 "View a file or list of files. The position within files can be\n" \
2039 "changed, and files can be manipulated in various ways.\n" \ 2060 "changed, and files can be manipulated in various ways.\n" \
2040 "\nOptions:" \ 2061 "\nOptions:" \
@@ -2044,16 +2065,24 @@
2044 "\n -N Prefix line numbers to each line" \ 2065 "\n -N Prefix line numbers to each line" \
2045 "\n -~ Suppress ~s displayed past the end of the file" \ 2066 "\n -~ Suppress ~s displayed past the end of the file" \
2046 2067
2068#define linux32_trivial_usage NOUSAGE_STR
2069#define linux32_full_usage ""
2070#define linux64_trivial_usage NOUSAGE_STR
2071#define linux64_full_usage ""
2072
2073#define linuxrc_trivial_usage NOUSAGE_STR
2074#define linuxrc_full_usage ""
2075
2047#define setarch_trivial_usage \ 2076#define setarch_trivial_usage \
2048 "personality program [args...]" 2077 "personality program [args...]"
2049#define setarch_full_usage \ 2078#define setarch_full_usage "\n\n" \
2050 "Personality may be:\n" \ 2079 "Personality may be:\n" \
2051 " linux32 Set 32bit uname emulation\n" \ 2080 " linux32 Set 32bit uname emulation\n" \
2052 " linux64 Set 64bit uname emulation" \ 2081 " linux64 Set 64bit uname emulation" \
2053 2082
2054#define ln_trivial_usage \ 2083#define ln_trivial_usage \
2055 "[OPTION] TARGET... LINK_NAME|DIRECTORY" 2084 "[OPTION] TARGET... LINK_NAME|DIRECTORY"
2056#define ln_full_usage \ 2085#define ln_full_usage "\n\n" \
2057 "Create a link named LINK_NAME or DIRECTORY to the specified TARGET.\n" \ 2086 "Create a link named LINK_NAME or DIRECTORY to the specified TARGET.\n" \
2058 "Use '--' to indicate that all following arguments are non-options.\n" \ 2087 "Use '--' to indicate that all following arguments are non-options.\n" \
2059 "\nOptions:" \ 2088 "\nOptions:" \
@@ -2074,21 +2103,21 @@
2074 2103
2075#define loadfont_trivial_usage \ 2104#define loadfont_trivial_usage \
2076 "< font" 2105 "< font"
2077#define loadfont_full_usage \ 2106#define loadfont_full_usage "\n\n" \
2078 "Load a console font from standard input" 2107 "Load a console font from standard input"
2079#define loadfont_example_usage \ 2108#define loadfont_example_usage \
2080 "$ loadfont < /etc/i18n/fontname\n" 2109 "$ loadfont < /etc/i18n/fontname\n"
2081 2110
2082#define loadkmap_trivial_usage \ 2111#define loadkmap_trivial_usage \
2083 "< keymap" 2112 "< keymap"
2084#define loadkmap_full_usage \ 2113#define loadkmap_full_usage "\n\n" \
2085 "Load a binary keyboard translation table from standard input" 2114 "Load a binary keyboard translation table from standard input"
2086#define loadkmap_example_usage \ 2115#define loadkmap_example_usage \
2087 "$ loadkmap < /etc/i18n/lang-keymap\n" 2116 "$ loadkmap < /etc/i18n/lang-keymap\n"
2088 2117
2089#define logger_trivial_usage \ 2118#define logger_trivial_usage \
2090 "[OPTION]... [MESSAGE]" 2119 "[OPTION]... [MESSAGE]"
2091#define logger_full_usage \ 2120#define logger_full_usage "\n\n" \
2092 "Write MESSAGE to the system log. If MESSAGE is omitted, log stdin.\n" \ 2121 "Write MESSAGE to the system log. If MESSAGE is omitted, log stdin.\n" \
2093 "\nOptions:" \ 2122 "\nOptions:" \
2094 "\n -s Log to stderr as well as the system log" \ 2123 "\n -s Log to stderr as well as the system log" \
@@ -2100,7 +2129,7 @@
2100 2129
2101#define login_trivial_usage \ 2130#define login_trivial_usage \
2102 "[-p] [-h HOST] [[-f] USER]" 2131 "[-p] [-h HOST] [[-f] USER]"
2103#define login_full_usage \ 2132#define login_full_usage "\n\n" \
2104 "Begin a new session on the system\n" \ 2133 "Begin a new session on the system\n" \
2105 "\nOptions:" \ 2134 "\nOptions:" \
2106 "\n -f Do not authenticate (user already authenticated)" \ 2135 "\n -f Do not authenticate (user already authenticated)" \
@@ -2109,7 +2138,7 @@
2109 2138
2110#define logname_trivial_usage \ 2139#define logname_trivial_usage \
2111 "" 2140 ""
2112#define logname_full_usage \ 2141#define logname_full_usage "\n\n" \
2113 "Print the name of the current user" 2142 "Print the name of the current user"
2114#define logname_example_usage \ 2143#define logname_example_usage \
2115 "$ logname\n" \ 2144 "$ logname\n" \
@@ -2117,7 +2146,7 @@
2117 2146
2118#define logread_trivial_usage \ 2147#define logread_trivial_usage \
2119 "[OPTION]..." 2148 "[OPTION]..."
2120#define logread_full_usage \ 2149#define logread_full_usage "\n\n" \
2121 "Show messages in syslogd's circular buffer\n" \ 2150 "Show messages in syslogd's circular buffer\n" \
2122 "\nOptions:" \ 2151 "\nOptions:" \
2123 "\n -f Output data as log grows" \ 2152 "\n -f Output data as log grows" \
@@ -2126,7 +2155,7 @@
2126 "[-o OFS] LOOPDEV FILE - associate loop devices\n" \ 2155 "[-o OFS] LOOPDEV FILE - associate loop devices\n" \
2127 " losetup -d LOOPDEV - disassociate\n" \ 2156 " losetup -d LOOPDEV - disassociate\n" \
2128 " losetup [-f] - show" 2157 " losetup [-f] - show"
2129#define losetup_full_usage \ 2158#define losetup_full_usage "\n\n" \
2130 "Options:" \ 2159 "Options:" \
2131 "\n -o OFS Start OFS bytes into FILE" \ 2160 "\n -o OFS Start OFS bytes into FILE" \
2132 "\n -f Show first free loop device" \ 2161 "\n -f Show first free loop device" \
@@ -2142,13 +2171,13 @@
2142 2171
2143#define lpd_trivial_usage \ 2172#define lpd_trivial_usage \
2144 "SPOOLDIR [HELPER [ARGS...]]" 2173 "SPOOLDIR [HELPER [ARGS...]]"
2145#define lpd_full_usage \ 2174#define lpd_full_usage "\n\n" \
2146 "Example:" \ 2175 "Example:" \
2147 "\n tcpsvd -E 0 515 softlimit -m 999999 lpd /var/spool ./print" 2176 "\n tcpsvd -E 0 515 softlimit -m 999999 lpd /var/spool ./print"
2148 2177
2149#define lpq_trivial_usage \ 2178#define lpq_trivial_usage \
2150 "[-P queue[@host[:port]]] [-U USERNAME] [-d JOBID...] [-fs]" 2179 "[-P queue[@host[:port]]] [-U USERNAME] [-d JOBID...] [-fs]"
2151#define lpq_full_usage \ 2180#define lpq_full_usage "\n\n" \
2152 "Options:" \ 2181 "Options:" \
2153 "\n -P lp service to connect to (else uses $PRINTER)" \ 2182 "\n -P lp service to connect to (else uses $PRINTER)" \
2154 "\n -d Delete jobs" \ 2183 "\n -d Delete jobs" \
@@ -2159,7 +2188,7 @@
2159 "-P queue[@host[:port]] -U USERNAME -J TITLE -Vmh [FILE...]" 2188 "-P queue[@host[:port]] -U USERNAME -J TITLE -Vmh [FILE...]"
2160/* -C CLASS exists too, not shown. 2189/* -C CLASS exists too, not shown.
2161 * CLASS is supposed to be printed on banner page, if one is requested */ 2190 * CLASS is supposed to be printed on banner page, if one is requested */
2162#define lpr_full_usage \ 2191#define lpr_full_usage "\n\n" \
2163 "Options:" \ 2192 "Options:" \
2164 "\n -P lp service to connect to (else uses $PRINTER)"\ 2193 "\n -P lp service to connect to (else uses $PRINTER)"\
2165 "\n -m Send mail on completion" \ 2194 "\n -m Send mail on completion" \
@@ -2175,7 +2204,7 @@
2175 USE_FEATURE_LS_SORTFILES("v") USE_FEATURE_AUTOWIDTH("w") "x" \ 2204 USE_FEATURE_LS_SORTFILES("v") USE_FEATURE_AUTOWIDTH("w") "x" \
2176 USE_FEATURE_LS_SORTFILES("X") USE_FEATURE_HUMAN_READABLE("h") "k" \ 2205 USE_FEATURE_LS_SORTFILES("X") USE_FEATURE_HUMAN_READABLE("h") "k" \
2177 USE_SELINUX("K") "] [filenames...]" 2206 USE_SELINUX("K") "] [filenames...]"
2178#define ls_full_usage \ 2207#define ls_full_usage "\n\n" \
2179 "List directory contents\n" \ 2208 "List directory contents\n" \
2180 "\nOptions:" \ 2209 "\nOptions:" \
2181 "\n -1 List files in a single column" \ 2210 "\n -1 List files in a single column" \
@@ -2229,7 +2258,7 @@
2229 2258
2230#define lsattr_trivial_usage \ 2259#define lsattr_trivial_usage \
2231 "[-Radlv] [files...]" 2260 "[-Radlv] [files...]"
2232#define lsattr_full_usage \ 2261#define lsattr_full_usage "\n\n" \
2233 "List file attributes on an ext2 fs\n" \ 2262 "List file attributes on an ext2 fs\n" \
2234 "\nOptions:" \ 2263 "\nOptions:" \
2235 "\n -R Recursively list subdirectories" \ 2264 "\n -R Recursively list subdirectories" \
@@ -2240,13 +2269,13 @@
2240 2269
2241#define lsmod_trivial_usage \ 2270#define lsmod_trivial_usage \
2242 "" 2271 ""
2243#define lsmod_full_usage \ 2272#define lsmod_full_usage "\n\n" \
2244 "List the currently loaded kernel modules" 2273 "List the currently loaded kernel modules"
2245 2274
2246#if ENABLE_FEATURE_MAKEDEVS_LEAF 2275#if ENABLE_FEATURE_MAKEDEVS_LEAF
2247#define makedevs_trivial_usage \ 2276#define makedevs_trivial_usage \
2248 "NAME TYPE MAJOR MINOR FIRST LAST [s]" 2277 "NAME TYPE MAJOR MINOR FIRST LAST [s]"
2249#define makedevs_full_usage \ 2278#define makedevs_full_usage "\n\n" \
2250 "Create a range of block or character special files\n\n" \ 2279 "Create a range of block or character special files\n\n" \
2251 "TYPEs include:\n" \ 2280 "TYPEs include:\n" \
2252 " b Make a block device\n" \ 2281 " b Make a block device\n" \
@@ -2269,7 +2298,7 @@
2269#if ENABLE_FEATURE_MAKEDEVS_TABLE 2298#if ENABLE_FEATURE_MAKEDEVS_TABLE
2270#define makedevs_trivial_usage \ 2299#define makedevs_trivial_usage \
2271 "[-d device_table] rootdir" 2300 "[-d device_table] rootdir"
2272#define makedevs_full_usage \ 2301#define makedevs_full_usage "\n\n" \
2273 "Create a range of special files as specified in a device table.\n" \ 2302 "Create a range of special files as specified in a device table.\n" \
2274 "Device table entries take the form of:\n" \ 2303 "Device table entries take the form of:\n" \
2275 "<type> <mode> <uid> <gid> <major> <minor> <start> <inc> <count>\n" \ 2304 "<type> <mode> <uid> <gid> <major> <minor> <start> <inc> <count>\n" \
@@ -2302,7 +2331,7 @@
2302 2331
2303#define man_trivial_usage \ 2332#define man_trivial_usage \
2304 "[OPTION]... [MANPAGE]..." 2333 "[OPTION]... [MANPAGE]..."
2305#define man_full_usage \ 2334#define man_full_usage "\n\n" \
2306 "Format and display manual page\n" \ 2335 "Format and display manual page\n" \
2307 "\nOptions:" \ 2336 "\nOptions:" \
2308 "\n -a Display all pages" \ 2337 "\n -a Display all pages" \
@@ -2310,7 +2339,7 @@
2310 2339
2311#define matchpathcon_trivial_usage \ 2340#define matchpathcon_trivial_usage \
2312 "[-n] [-N] [-f file_contexts_file] [-p prefix] [-V]" 2341 "[-n] [-N] [-f file_contexts_file] [-p prefix] [-V]"
2313#define matchpathcon_full_usage \ 2342#define matchpathcon_full_usage "\n\n" \
2314 " -n Do not display path" \ 2343 " -n Do not display path" \
2315 "\n -N Do not use translations" \ 2344 "\n -N Do not use translations" \
2316 "\n -f Use alternate file_context file" \ 2345 "\n -f Use alternate file_context file" \
@@ -2320,7 +2349,7 @@
2320#define md5sum_trivial_usage \ 2349#define md5sum_trivial_usage \
2321 "[OPTION] [FILEs...]" \ 2350 "[OPTION] [FILEs...]" \
2322 USE_FEATURE_MD5_SHA1_SUM_CHECK("\n or: md5sum [OPTION] -c [FILE]") 2351 USE_FEATURE_MD5_SHA1_SUM_CHECK("\n or: md5sum [OPTION] -c [FILE]")
2323#define md5sum_full_usage \ 2352#define md5sum_full_usage "\n\n" \
2324 "Print" USE_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " MD5 checksums" \ 2353 "Print" USE_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " MD5 checksums" \
2325 USE_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \ 2354 USE_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \
2326 "\nOptions:" \ 2355 "\nOptions:" \
@@ -2340,7 +2369,7 @@
2340 2369
2341#define mdev_trivial_usage \ 2370#define mdev_trivial_usage \
2342 "[-s]" 2371 "[-s]"
2343#define mdev_full_usage \ 2372#define mdev_full_usage "\n\n" \
2344 " -s Scan /sys and populate /dev during system boot\n" \ 2373 " -s Scan /sys and populate /dev during system boot\n" \
2345 "\n" \ 2374 "\n" \
2346 "Called with no options (via hotplug) it uses environment variables\n" \ 2375 "Called with no options (via hotplug) it uses environment variables\n" \
@@ -2368,14 +2397,14 @@
2368 2397
2369#define mesg_trivial_usage \ 2398#define mesg_trivial_usage \
2370 "[y|n]" 2399 "[y|n]"
2371#define mesg_full_usage \ 2400#define mesg_full_usage "\n\n" \
2372 "Control write access to your terminal\n" \ 2401 "Control write access to your terminal\n" \
2373 " y Allow write access to your terminal\n" \ 2402 " y Allow write access to your terminal\n" \
2374 " n Disallow write access to your terminal" 2403 " n Disallow write access to your terminal"
2375 2404
2376#define microcom_trivial_usage \ 2405#define microcom_trivial_usage \
2377 "[-d DELAY] [-t TIMEOUT] [-s SPEED] [-X] TTY" 2406 "[-d DELAY] [-t TIMEOUT] [-s SPEED] [-X] TTY"
2378#define microcom_full_usage \ 2407#define microcom_full_usage "\n\n" \
2379 "Copy bytes for stdin to TTY and from TTY to stdout\n" \ 2408 "Copy bytes for stdin to TTY and from TTY to stdout\n" \
2380 "\nOptions:" \ 2409 "\nOptions:" \
2381 "\n -d Wait up to DELAY ms for TTY output before sending every" \ 2410 "\n -d Wait up to DELAY ms for TTY output before sending every" \
@@ -2386,7 +2415,7 @@
2386 2415
2387#define mkdir_trivial_usage \ 2416#define mkdir_trivial_usage \
2388 "[OPTION] DIRECTORY..." 2417 "[OPTION] DIRECTORY..."
2389#define mkdir_full_usage \ 2418#define mkdir_full_usage "\n\n" \
2390 "Create DIRECTORY\n" \ 2419 "Create DIRECTORY\n" \
2391 "\nOptions:" \ 2420 "\nOptions:" \
2392 "\n -m Set permission mode (as in chmod), not rwxrwxrwx - umask" \ 2421 "\n -m Set permission mode (as in chmod), not rwxrwxrwx - umask" \
@@ -2410,7 +2439,7 @@
2410 "[r fs-revision-level] [-E extended-options] [-v] [-F] [-L volume-label] " \ 2439 "[r fs-revision-level] [-E extended-options] [-v] [-F] [-L volume-label] " \
2411 "[-M last-mounted-directory] [-S] [-T filesystem-type] " \ 2440 "[-M last-mounted-directory] [-S] [-T filesystem-type] " \
2412 "device [blocks-count]" 2441 "device [blocks-count]"
2413#define mke2fs_full_usage \ 2442#define mke2fs_full_usage "\n\n" \
2414 " -b size Block size in bytes" \ 2443 " -b size Block size in bytes" \
2415 "\n -c Check for bad blocks before creating" \ 2444 "\n -c Check for bad blocks before creating" \
2416 "\n -E opts Set extended options" \ 2445 "\n -E opts Set extended options" \
@@ -2436,7 +2465,7 @@
2436 2465
2437#define mkfifo_trivial_usage \ 2466#define mkfifo_trivial_usage \
2438 "[OPTIONS] name" 2467 "[OPTIONS] name"
2439#define mkfifo_full_usage \ 2468#define mkfifo_full_usage "\n\n" \
2440 "Create named pipe (identical to 'mknod name p')\n" \ 2469 "Create named pipe (identical to 'mknod name p')\n" \
2441 "\nOptions:" \ 2470 "\nOptions:" \
2442 "\n -m MODE Mode (default a=rw)" \ 2471 "\n -m MODE Mode (default a=rw)" \
@@ -2446,7 +2475,7 @@
2446 2475
2447#define mkfs_minix_trivial_usage \ 2476#define mkfs_minix_trivial_usage \
2448 "[-c | -l filename] [-nXX] [-iXX] /dev/name [blocks]" 2477 "[-c | -l filename] [-nXX] [-iXX] /dev/name [blocks]"
2449#define mkfs_minix_full_usage \ 2478#define mkfs_minix_full_usage "\n\n" \
2450 "Make a MINIX filesystem\n" \ 2479 "Make a MINIX filesystem\n" \
2451 "\nOptions:" \ 2480 "\nOptions:" \
2452 "\n -c Check device for bad blocks" \ 2481 "\n -c Check device for bad blocks" \
@@ -2457,7 +2486,7 @@
2457 2486
2458#define mknod_trivial_usage \ 2487#define mknod_trivial_usage \
2459 "[OPTIONS] NAME TYPE MAJOR MINOR" 2488 "[OPTIONS] NAME TYPE MAJOR MINOR"
2460#define mknod_full_usage \ 2489#define mknod_full_usage "\n\n" \
2461 "Create a special file (block, character, or pipe)\n" \ 2490 "Create a special file (block, character, or pipe)\n" \
2462 "\nOptions:" \ 2491 "\nOptions:" \
2463 "\n -m Create the special file using the specified mode (default a=rw)" \ 2492 "\n -m Create the special file using the specified mode (default a=rw)" \
@@ -2475,7 +2504,7 @@
2475 2504
2476#define mkswap_trivial_usage \ 2505#define mkswap_trivial_usage \
2477 "DEVICE" 2506 "DEVICE"
2478#define mkswap_full_usage \ 2507#define mkswap_full_usage "\n\n" \
2479 "Prepare block device to be used as swap partition" 2508 "Prepare block device to be used as swap partition"
2480#if 0 2509#if 0
2481 "[-c] [-v0|-v1] DEVICE [BLOCKS]" 2510 "[-c] [-v0|-v1] DEVICE [BLOCKS]"
@@ -2488,7 +2517,7 @@
2488 2517
2489#define mktemp_trivial_usage \ 2518#define mktemp_trivial_usage \
2490 "[-dt] [-p DIR] TEMPLATE" 2519 "[-dt] [-p DIR] TEMPLATE"
2491#define mktemp_full_usage \ 2520#define mktemp_full_usage "\n\n" \
2492 "Create a temporary file with its name based on TEMPLATE.\n" \ 2521 "Create a temporary file with its name based on TEMPLATE.\n" \
2493 "TEMPLATE is any name with six 'Xs' (i.e., /tmp/temp.XXXXXX).\n" \ 2522 "TEMPLATE is any name with six 'Xs' (i.e., /tmp/temp.XXXXXX).\n" \
2494 "\nOptions:" \ 2523 "\nOptions:" \
@@ -2509,7 +2538,7 @@
2509 2538
2510#define modprobe_trivial_usage \ 2539#define modprobe_trivial_usage \
2511 "[-knqrsv] MODULE [symbol=value...]" 2540 "[-knqrsv] MODULE [symbol=value...]"
2512#define modprobe_full_usage \ 2541#define modprobe_full_usage "\n\n" \
2513 "Options:" \ 2542 "Options:" \
2514 "\n -k Make module autoclean-able" \ 2543 "\n -k Make module autoclean-able" \
2515 "\n -n Dry run" \ 2544 "\n -n Dry run" \
@@ -2580,7 +2609,7 @@
2580 2609
2581#define more_trivial_usage \ 2610#define more_trivial_usage \
2582 "[FILE...]" 2611 "[FILE...]"
2583#define more_full_usage \ 2612#define more_full_usage "\n\n" \
2584 "View FILE or standard input one screenful at a time" 2613 "View FILE or standard input one screenful at a time"
2585 2614
2586#define more_example_usage \ 2615#define more_example_usage \
@@ -2588,7 +2617,7 @@
2588 2617
2589#define mount_trivial_usage \ 2618#define mount_trivial_usage \
2590 "[flags] DEVICE NODE [-o options,more-options]" 2619 "[flags] DEVICE NODE [-o options,more-options]"
2591#define mount_full_usage \ 2620#define mount_full_usage "\n\n" \
2592 "Mount a filesystem. Filesystem autodetection requires /proc be mounted.\n" \ 2621 "Mount a filesystem. Filesystem autodetection requires /proc be mounted.\n" \
2593 "\nOptions:" \ 2622 "\nOptions:" \
2594 "\n -a Mount all filesystems in fstab" \ 2623 "\n -a Mount all filesystems in fstab" \
@@ -2639,7 +2668,7 @@
2639 2668
2640#define mountpoint_trivial_usage \ 2669#define mountpoint_trivial_usage \
2641 "[-q] <[-d] DIR | -x DEVICE>" 2670 "[-q] <[-d] DIR | -x DEVICE>"
2642#define mountpoint_full_usage \ 2671#define mountpoint_full_usage "\n\n" \
2643 "mountpoint checks if the directory is a mountpoint\n" \ 2672 "mountpoint checks if the directory is a mountpoint\n" \
2644 "\nOptions:" \ 2673 "\nOptions:" \
2645 "\n -q Quiet" \ 2674 "\n -q Quiet" \
@@ -2654,7 +2683,7 @@
2654 2683
2655#define mt_trivial_usage \ 2684#define mt_trivial_usage \
2656 "[-f device] opcode value" 2685 "[-f device] opcode value"
2657#define mt_full_usage \ 2686#define mt_full_usage "\n\n" \
2658 "Control magnetic tape drive operation\n" \ 2687 "Control magnetic tape drive operation\n" \
2659 "\n" \ 2688 "\n" \
2660 "Available Opcodes:\n" \ 2689 "Available Opcodes:\n" \
@@ -2667,7 +2696,7 @@
2667#define mv_trivial_usage \ 2696#define mv_trivial_usage \
2668 "[OPTION]... SOURCE DEST\n" \ 2697 "[OPTION]... SOURCE DEST\n" \
2669 "or: mv [OPTION]... SOURCE... DIRECTORY" 2698 "or: mv [OPTION]... SOURCE... DIRECTORY"
2670#define mv_full_usage \ 2699#define mv_full_usage "\n\n" \
2671 "Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY\n" \ 2700 "Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY\n" \
2672 "\nOptions:" \ 2701 "\nOptions:" \
2673 "\n -f Don't prompt before overwriting" \ 2702 "\n -f Don't prompt before overwriting" \
@@ -2678,7 +2707,7 @@
2678 2707
2679#define nameif_trivial_usage \ 2708#define nameif_trivial_usage \
2680 "[-s] [-c FILE] [{IFNAME MACADDR}]" 2709 "[-s] [-c FILE] [{IFNAME MACADDR}]"
2681#define nameif_full_usage \ 2710#define nameif_full_usage "\n\n" \
2682 "Rename network interface while it in the down state\n" \ 2711 "Rename network interface while it in the down state\n" \
2683 "\nOptions:" \ 2712 "\nOptions:" \
2684 "\n -c FILE Use configuration file (default is /etc/mactab)" \ 2713 "\n -c FILE Use configuration file (default is /etc/mactab)" \
@@ -2701,7 +2730,7 @@
2701#define nc_trivial_usage \ 2730#define nc_trivial_usage \
2702 USE_NC_EXTRA("[-iN] [-wN] ")USE_NC_SERVER("[-l] [-p PORT] ") \ 2731 USE_NC_EXTRA("[-iN] [-wN] ")USE_NC_SERVER("[-l] [-p PORT] ") \
2703 "["USE_NC_EXTRA("-f FILENAME|")"IPADDR PORTNUM]"USE_NC_EXTRA(" [-e COMMAND]") 2732 "["USE_NC_EXTRA("-f FILENAME|")"IPADDR PORTNUM]"USE_NC_EXTRA(" [-e COMMAND]")
2704#define nc_full_usage \ 2733#define nc_full_usage "\n\n" \
2705 "Open a pipe to IP:port" USE_NC_EXTRA(" or file") \ 2734 "Open a pipe to IP:port" USE_NC_EXTRA(" or file") \
2706 NC_OPTIONS_STR \ 2735 NC_OPTIONS_STR \
2707 USE_NC_EXTRA( \ 2736 USE_NC_EXTRA( \
@@ -2740,7 +2769,7 @@
2740 "[-options] hostname port - connect" \ 2769 "[-options] hostname port - connect" \
2741 USE_NC_SERVER("\n" \ 2770 USE_NC_SERVER("\n" \
2742 "nc [-options] -l -p port [hostname] [port] - listen") 2771 "nc [-options] -l -p port [hostname] [port] - listen")
2743#define nc_full_usage \ 2772#define nc_full_usage "\n\n" \
2744 "Options:" \ 2773 "Options:" \
2745 "\n -e prog [args] Program to exec after connect (must be last)" \ 2774 "\n -e prog [args] Program to exec after connect (must be last)" \
2746 USE_NC_SERVER( \ 2775 USE_NC_SERVER( \
@@ -2766,7 +2795,7 @@
2766 2795
2767#define netstat_trivial_usage \ 2796#define netstat_trivial_usage \
2768 "[-laentuwxr"USE_FEATURE_NETSTAT_WIDE("W")"]" 2797 "[-laentuwxr"USE_FEATURE_NETSTAT_WIDE("W")"]"
2769#define netstat_full_usage \ 2798#define netstat_full_usage "\n\n" \
2770 "Display networking information\n" \ 2799 "Display networking information\n" \
2771 "\nOptions:" \ 2800 "\nOptions:" \
2772 "\n -l Display listening server sockets" \ 2801 "\n -l Display listening server sockets" \
@@ -2784,14 +2813,14 @@
2784 2813
2785#define nice_trivial_usage \ 2814#define nice_trivial_usage \
2786 "[-n ADJUST] [COMMAND [ARG]...]" 2815 "[-n ADJUST] [COMMAND [ARG]...]"
2787#define nice_full_usage \ 2816#define nice_full_usage "\n\n" \
2788 "Run a program with modified scheduling priority\n" \ 2817 "Run a program with modified scheduling priority\n" \
2789 "\nOptions:" \ 2818 "\nOptions:" \
2790 "\n -n ADJUST Adjust the scheduling priority by ADJUST" \ 2819 "\n -n ADJUST Adjust the scheduling priority by ADJUST" \
2791 2820
2792#define nmeter_trivial_usage \ 2821#define nmeter_trivial_usage \
2793 "format_string" 2822 "format_string"
2794#define nmeter_full_usage \ 2823#define nmeter_full_usage "\n\n" \
2795 "Monitor system in real time\n\n" \ 2824 "Monitor system in real time\n\n" \
2796 "Format specifiers:\n" \ 2825 "Format specifiers:\n" \
2797 "%Nc or %[cN] Monitor CPU. N - bar size, default 10\n" \ 2826 "%Nc or %[cN] Monitor CPU. N - bar size, default 10\n" \
@@ -2816,14 +2845,14 @@
2816 2845
2817#define nohup_trivial_usage \ 2846#define nohup_trivial_usage \
2818 "COMMAND [ARGS]" 2847 "COMMAND [ARGS]"
2819#define nohup_full_usage \ 2848#define nohup_full_usage "\n\n" \
2820 "Run a command immune to hangups, with output to a non-tty" 2849 "Run a command immune to hangups, with output to a non-tty"
2821#define nohup_example_usage \ 2850#define nohup_example_usage \
2822 "$ nohup make &" 2851 "$ nohup make &"
2823 2852
2824#define nslookup_trivial_usage \ 2853#define nslookup_trivial_usage \
2825 "[HOST] [SERVER]" 2854 "[HOST] [SERVER]"
2826#define nslookup_full_usage \ 2855#define nslookup_full_usage "\n\n" \
2827 "Query the nameserver for the IP address of the given HOST\n" \ 2856 "Query the nameserver for the IP address of the given HOST\n" \
2828 "optionally using a specified DNS server" 2857 "optionally using a specified DNS server"
2829#define nslookup_example_usage \ 2858#define nslookup_example_usage \
@@ -2836,13 +2865,13 @@
2836 2865
2837#define od_trivial_usage \ 2866#define od_trivial_usage \
2838 "[-aBbcDdeFfHhIiLlOovXx] " USE_DESKTOP("[-t TYPE] ") "[FILE]" 2867 "[-aBbcDdeFfHhIiLlOovXx] " USE_DESKTOP("[-t TYPE] ") "[FILE]"
2839#define od_full_usage \ 2868#define od_full_usage "\n\n" \
2840 "Write an unambiguous representation, octal bytes by default, of FILE\n" \ 2869 "Write an unambiguous representation, octal bytes by default, of FILE\n" \
2841 "to standard output. With no FILE or when FILE is -, read standard input." 2870 "to standard output. With no FILE or when FILE is -, read standard input."
2842 2871
2843#define openvt_trivial_usage \ 2872#define openvt_trivial_usage \
2844 "[-c NUM] [-sw] [COMMAND [ARGS]]" 2873 "[-c NUM] [-sw] [COMMAND [ARGS]]"
2845#define openvt_full_usage \ 2874#define openvt_full_usage "\n\n" \
2846 "Start COMMAND on a new virtual terminal\n" \ 2875 "Start COMMAND on a new virtual terminal\n" \
2847 "\nOptions:" \ 2876 "\nOptions:" \
2848 "\n -c Use specified VT" \ 2877 "\n -c Use specified VT" \
@@ -2855,7 +2884,7 @@
2855 2884
2856#define passwd_trivial_usage \ 2885#define passwd_trivial_usage \
2857 "[OPTION] [name]" 2886 "[OPTION] [name]"
2858#define passwd_full_usage \ 2887#define passwd_full_usage "\n\n" \
2859 "Change user's password. If no name is specified,\n" \ 2888 "Change user's password. If no name is specified,\n" \
2860 "changes the password for the current user.\n" \ 2889 "changes the password for the current user.\n" \
2861 "\nOptions:" \ 2890 "\nOptions:" \
@@ -2866,7 +2895,7 @@
2866 2895
2867#define chpasswd_trivial_usage \ 2896#define chpasswd_trivial_usage \
2868 USE_GETOPT_LONG("[--md5|--encrypt]") SKIP_GETOPT_LONG("[-m|-e]") 2897 USE_GETOPT_LONG("[--md5|--encrypt]") SKIP_GETOPT_LONG("[-m|-e]")
2869#define chpasswd_full_usage \ 2898#define chpasswd_full_usage "\n\n" \
2870 "Read user:password information from stdin\n" \ 2899 "Read user:password information from stdin\n" \
2871 "and update /etc/passwd accordingly.\n" \ 2900 "and update /etc/passwd accordingly.\n" \
2872 "\nOptions:" \ 2901 "\nOptions:" \
@@ -2881,7 +2910,7 @@
2881 2910
2882#define patch_trivial_usage \ 2911#define patch_trivial_usage \
2883 "[-p NUM] [-i DIFF] [-R]" 2912 "[-p NUM] [-i DIFF] [-R]"
2884#define patch_full_usage \ 2913#define patch_full_usage "\n\n" \
2885 " -p NUM Strip NUM leading components from file names" \ 2914 " -p NUM Strip NUM leading components from file names" \
2886 "\n -i DIFF Read DIFF instead of stdin" \ 2915 "\n -i DIFF Read DIFF instead of stdin" \
2887 "\n -R Reverse patch" \ 2916 "\n -R Reverse patch" \
@@ -2892,7 +2921,7 @@
2892 2921
2893#define pgrep_trivial_usage \ 2922#define pgrep_trivial_usage \
2894 "[-flnovx] pattern" 2923 "[-flnovx] pattern"
2895#define pgrep_full_usage \ 2924#define pgrep_full_usage "\n\n" \
2896 "Display process(es) selected by regex pattern\n" \ 2925 "Display process(es) selected by regex pattern\n" \
2897 "\nOptions:" \ 2926 "\nOptions:" \
2898 "\n -l Show command name too" \ 2927 "\n -l Show command name too" \
@@ -2911,7 +2940,7 @@
2911 "[NAME...]" 2940 "[NAME...]"
2912#define USAGE_PIDOF /* none */ 2941#define USAGE_PIDOF /* none */
2913#endif 2942#endif
2914#define pidof_full_usage \ 2943#define pidof_full_usage "\n\n" \
2915 "List PIDs of all processes with names that match NAMEs" \ 2944 "List PIDs of all processes with names that match NAMEs" \
2916 USAGE_PIDOF \ 2945 USAGE_PIDOF \
2917 USE_FEATURE_PIDOF_SINGLE( \ 2946 USE_FEATURE_PIDOF_SINGLE( \
@@ -2931,16 +2960,16 @@
2931#if !ENABLE_FEATURE_FANCY_PING 2960#if !ENABLE_FEATURE_FANCY_PING
2932#define ping_trivial_usage \ 2961#define ping_trivial_usage \
2933 "host" 2962 "host"
2934#define ping_full_usage \ 2963#define ping_full_usage "\n\n" \
2935 "Send ICMP ECHO_REQUEST packets to network hosts" 2964 "Send ICMP ECHO_REQUEST packets to network hosts"
2936#define ping6_trivial_usage \ 2965#define ping6_trivial_usage \
2937 "host" 2966 "host"
2938#define ping6_full_usage \ 2967#define ping6_full_usage "\n\n" \
2939 "Send ICMP ECHO_REQUEST packets to network hosts" 2968 "Send ICMP ECHO_REQUEST packets to network hosts"
2940#else 2969#else
2941#define ping_trivial_usage \ 2970#define ping_trivial_usage \
2942 "[OPTION]... host" 2971 "[OPTION]... host"
2943#define ping_full_usage \ 2972#define ping_full_usage "\n\n" \
2944 "Send ICMP ECHO_REQUEST packets to network hosts\n" \ 2973 "Send ICMP ECHO_REQUEST packets to network hosts\n" \
2945 "\nOptions:" \ 2974 "\nOptions:" \
2946 "\n -4, -6 Force IPv4 or IPv6 hostname resolution" \ 2975 "\n -4, -6 Force IPv4 or IPv6 hostname resolution" \
@@ -2956,7 +2985,7 @@
2956 2985
2957#define ping6_trivial_usage \ 2986#define ping6_trivial_usage \
2958 "[OPTION]... host" 2987 "[OPTION]... host"
2959#define ping6_full_usage \ 2988#define ping6_full_usage "\n\n" \
2960 "Send ICMP ECHO_REQUEST packets to network hosts\n" \ 2989 "Send ICMP ECHO_REQUEST packets to network hosts\n" \
2961 "\nOptions:" \ 2990 "\nOptions:" \
2962 "\n -c CNT Send only CNT pings" \ 2991 "\n -c CNT Send only CNT pings" \
@@ -2983,15 +3012,18 @@
2983 "1 packets transmitted, 1 packets received, 0% packet loss\n" \ 3012 "1 packets transmitted, 1 packets received, 0% packet loss\n" \
2984 "round-trip min/avg/max = 20.1/20.1/20.1 ms\n" 3013 "round-trip min/avg/max = 20.1/20.1/20.1 ms\n"
2985 3014
3015#define pipe_progress_trivial_usage NOUSAGE_STR
3016#define pipe_progress_full_usage ""
3017
2986#define pivot_root_trivial_usage \ 3018#define pivot_root_trivial_usage \
2987 "NEW_ROOT PUT_OLD" 3019 "NEW_ROOT PUT_OLD"
2988#define pivot_root_full_usage \ 3020#define pivot_root_full_usage "\n\n" \
2989 "Move the current root file system to PUT_OLD and make NEW_ROOT\n" \ 3021 "Move the current root file system to PUT_OLD and make NEW_ROOT\n" \
2990 "the new root file system" 3022 "the new root file system"
2991 3023
2992#define pkill_trivial_usage \ 3024#define pkill_trivial_usage \
2993 "[-l] | [-fnovx] [-signal] pattern" 3025 "[-l] | [-fnovx] [-signal] pattern"
2994#define pkill_full_usage \ 3026#define pkill_full_usage "\n\n" \
2995 "Send a signal to process(es) selected by regex pattern\n" \ 3027 "Send a signal to process(es) selected by regex pattern\n" \
2996 "\nOptions:" \ 3028 "\nOptions:" \
2997 "\n -l List all signals" \ 3029 "\n -l List all signals" \
@@ -3003,7 +3035,7 @@
3003 3035
3004#define poweroff_trivial_usage \ 3036#define poweroff_trivial_usage \
3005 "[-d delay] [-n] [-f]" 3037 "[-d delay] [-n] [-f]"
3006#define poweroff_full_usage \ 3038#define poweroff_full_usage "\n\n" \
3007 "Halt and shut off power\n" \ 3039 "Halt and shut off power\n" \
3008 "\nOptions:" \ 3040 "\nOptions:" \
3009 "\n -d Delay interval for halting" \ 3041 "\n -d Delay interval for halting" \
@@ -3012,13 +3044,13 @@
3012 3044
3013#define printenv_trivial_usage \ 3045#define printenv_trivial_usage \
3014 "[VARIABLES...]" 3046 "[VARIABLES...]"
3015#define printenv_full_usage \ 3047#define printenv_full_usage "\n\n" \
3016 "Print all or part of environment.\n" \ 3048 "Print all or part of environment.\n" \
3017 "If no environment VARIABLE specified, print them all." 3049 "If no environment VARIABLE specified, print them all."
3018 3050
3019#define printf_trivial_usage \ 3051#define printf_trivial_usage \
3020 "FORMAT [ARGUMENT...]" 3052 "FORMAT [ARGUMENT...]"
3021#define printf_full_usage \ 3053#define printf_full_usage "\n\n" \
3022 "Format and print ARGUMENT(s) according to FORMAT,\n" \ 3054 "Format and print ARGUMENT(s) according to FORMAT,\n" \
3023 "where FORMAT controls the output exactly as in C printf" 3055 "where FORMAT controls the output exactly as in C printf"
3024#define printf_example_usage \ 3056#define printf_example_usage \
@@ -3030,7 +3062,7 @@
3030 3062
3031#define ps_trivial_usage \ 3063#define ps_trivial_usage \
3032 "" 3064 ""
3033#define ps_full_usage \ 3065#define ps_full_usage "\n\n" \
3034 "Report process status\n" \ 3066 "Report process status\n" \
3035 "\nOptions:" \ 3067 "\nOptions:" \
3036 "\n -o col1,col2=header Select columns for display" \ 3068 "\n -o col1,col2=header Select columns for display" \
@@ -3045,7 +3077,7 @@
3045 3077
3046#define ps_trivial_usage \ 3078#define ps_trivial_usage \
3047 "" 3079 ""
3048#define ps_full_usage \ 3080#define ps_full_usage "\n\n" \
3049 "Report process status\n" \ 3081 "Report process status\n" \
3050 USAGE_PS \ 3082 USAGE_PS \
3051 USE_SELINUX( \ 3083 USE_SELINUX( \
@@ -3072,7 +3104,7 @@
3072 3104
3073#define pscan_trivial_usage \ 3105#define pscan_trivial_usage \
3074 "[-cb] [-p MIN_PORT] [-P MAX_PORT] [-t TIMEOUT] [-T MIN_RTT] HOST" 3106 "[-cb] [-p MIN_PORT] [-P MAX_PORT] [-t TIMEOUT] [-T MIN_RTT] HOST"
3075#define pscan_full_usage \ 3107#define pscan_full_usage "\n\n" \
3076 "Scan a host, print all open ports\n" \ 3108 "Scan a host, print all open ports\n" \
3077 "\nOptions:" \ 3109 "\nOptions:" \
3078 "\n -c Show closed ports too" \ 3110 "\n -c Show closed ports too" \
@@ -3084,7 +3116,7 @@
3084 3116
3085#define pwd_trivial_usage \ 3117#define pwd_trivial_usage \
3086 "" 3118 ""
3087#define pwd_full_usage \ 3119#define pwd_full_usage "\n\n" \
3088 "Print the full filename of the current working directory" 3120 "Print the full filename of the current working directory"
3089#define pwd_example_usage \ 3121#define pwd_example_usage \
3090 "$ pwd\n" \ 3122 "$ pwd\n" \
@@ -3092,14 +3124,14 @@
3092 3124
3093#define raidautorun_trivial_usage \ 3125#define raidautorun_trivial_usage \
3094 "DEVICE" 3126 "DEVICE"
3095#define raidautorun_full_usage \ 3127#define raidautorun_full_usage "\n\n" \
3096 "Tell the kernel to automatically search and start RAID arrays" 3128 "Tell the kernel to automatically search and start RAID arrays"
3097#define raidautorun_example_usage \ 3129#define raidautorun_example_usage \
3098 "$ raidautorun /dev/md0" 3130 "$ raidautorun /dev/md0"
3099 3131
3100#define rdate_trivial_usage \ 3132#define rdate_trivial_usage \
3101 "[-sp] HOST" 3133 "[-sp] HOST"
3102#define rdate_full_usage \ 3134#define rdate_full_usage "\n\n" \
3103 "Get and possibly set the system date and time from a remote HOST\n" \ 3135 "Get and possibly set the system date and time from a remote HOST\n" \
3104 "\nOptions:" \ 3136 "\nOptions:" \
3105 "\n -s Set the system date and time (default)" \ 3137 "\n -s Set the system date and time (default)" \
@@ -3107,13 +3139,13 @@
3107 3139
3108#define readahead_trivial_usage \ 3140#define readahead_trivial_usage \
3109 "[FILE]..." 3141 "[FILE]..."
3110#define readahead_full_usage \ 3142#define readahead_full_usage "\n\n" \
3111 "Preload FILE(s) in RAM cache so that subsequent reads for those" \ 3143 "Preload FILE(s) in RAM cache so that subsequent reads for those" \
3112 "files do not block on disk I/O" 3144 "files do not block on disk I/O"
3113 3145
3114#define readlink_trivial_usage \ 3146#define readlink_trivial_usage \
3115 USE_FEATURE_READLINK_FOLLOW("[-f] ") "FILE" 3147 USE_FEATURE_READLINK_FOLLOW("[-f] ") "FILE"
3116#define readlink_full_usage \ 3148#define readlink_full_usage "\n\n" \
3117 "Display the value of a symlink" \ 3149 "Display the value of a symlink" \
3118 USE_FEATURE_READLINK_FOLLOW( "\n" \ 3150 USE_FEATURE_READLINK_FOLLOW( "\n" \
3119 "\nOptions:" \ 3151 "\nOptions:" \
@@ -3121,7 +3153,7 @@
3121 3153
3122#define readprofile_trivial_usage \ 3154#define readprofile_trivial_usage \
3123 "[OPTIONS]..." 3155 "[OPTIONS]..."
3124#define readprofile_full_usage \ 3156#define readprofile_full_usage "\n\n" \
3125 "Options:" \ 3157 "Options:" \
3126 "\n -m mapfile (Default: /boot/System.map)" \ 3158 "\n -m mapfile (Default: /boot/System.map)" \
3127 "\n -p profile (Default: /proc/profile)" \ 3159 "\n -p profile (Default: /proc/profile)" \
@@ -3136,12 +3168,12 @@
3136 3168
3137#define realpath_trivial_usage \ 3169#define realpath_trivial_usage \
3138 "pathname..." 3170 "pathname..."
3139#define realpath_full_usage \ 3171#define realpath_full_usage "\n\n" \
3140 "Return the absolute pathnames of given argument" 3172 "Return the absolute pathnames of given argument"
3141 3173
3142#define reboot_trivial_usage \ 3174#define reboot_trivial_usage \
3143 "[-d delay] [-n] [-f]" 3175 "[-d delay] [-n] [-f]"
3144#define reboot_full_usage \ 3176#define reboot_full_usage "\n\n" \
3145 "Reboot the system\n" \ 3177 "Reboot the system\n" \
3146 "\nOptions:" \ 3178 "\nOptions:" \
3147 "\n -d Delay interval for rebooting" \ 3179 "\n -d Delay interval for rebooting" \
@@ -3150,7 +3182,7 @@
3150 3182
3151#define renice_trivial_usage \ 3183#define renice_trivial_usage \
3152 "{{-n INCREMENT} | PRIORITY} [[-p | -g | -u] ID...]" 3184 "{{-n INCREMENT} | PRIORITY} [[-p | -g | -u] ID...]"
3153#define renice_full_usage \ 3185#define renice_full_usage "\n\n" \
3154 "Change priority of running processes\n" \ 3186 "Change priority of running processes\n" \
3155 "\nOptions:" \ 3187 "\nOptions:" \
3156 "\n -n Adjust current nice value (smaller is faster)" \ 3188 "\n -n Adjust current nice value (smaller is faster)" \
@@ -3160,17 +3192,17 @@
3160 3192
3161#define reset_trivial_usage \ 3193#define reset_trivial_usage \
3162 "" 3194 ""
3163#define reset_full_usage \ 3195#define reset_full_usage "\n\n" \
3164 "Reset the screen" 3196 "Reset the screen"
3165 3197
3166#define resize_trivial_usage \ 3198#define resize_trivial_usage \
3167 "" 3199 ""
3168#define resize_full_usage \ 3200#define resize_full_usage "\n\n" \
3169 "Resize the screen" 3201 "Resize the screen"
3170 3202
3171#define restorecon_trivial_usage \ 3203#define restorecon_trivial_usage \
3172 "[-iFnrRv] [-e excludedir]... [-o filename] [-f filename | pathname]" 3204 "[-iFnrRv] [-e excludedir]... [-o filename] [-f filename | pathname]"
3173#define restorecon_full_usage \ 3205#define restorecon_full_usage "\n\n" \
3174 "Reset security contexts of files in pathname\n" \ 3206 "Reset security contexts of files in pathname\n" \
3175 "\n -i Ignore files that do not exist" \ 3207 "\n -i Ignore files that do not exist" \
3176 "\n -f file File with list of files to process. Use - for stdin" \ 3208 "\n -f file File with list of files to process. Use - for stdin" \
@@ -3186,7 +3218,7 @@
3186 3218
3187#define rm_trivial_usage \ 3219#define rm_trivial_usage \
3188 "[OPTION]... FILE..." 3220 "[OPTION]... FILE..."
3189#define rm_full_usage \ 3221#define rm_full_usage "\n\n" \
3190 "Remove (unlink) the FILE(s). Use '--' to\n" \ 3222 "Remove (unlink) the FILE(s). Use '--' to\n" \
3191 "indicate that all following arguments are non-options.\n" \ 3223 "indicate that all following arguments are non-options.\n" \
3192 "\nOptions:" \ 3224 "\nOptions:" \
@@ -3199,14 +3231,14 @@
3199 3231
3200#define rmdir_trivial_usage \ 3232#define rmdir_trivial_usage \
3201 "[OPTION]... DIRECTORY..." 3233 "[OPTION]... DIRECTORY..."
3202#define rmdir_full_usage \ 3234#define rmdir_full_usage "\n\n" \
3203 "Remove the DIRECTORY, if it is empty" 3235 "Remove the DIRECTORY, if it is empty"
3204#define rmdir_example_usage \ 3236#define rmdir_example_usage \
3205 "# rmdir /tmp/foo\n" 3237 "# rmdir /tmp/foo\n"
3206 3238
3207#define rmmod_trivial_usage \ 3239#define rmmod_trivial_usage \
3208 "[OPTION]... [MODULE]..." 3240 "[OPTION]... [MODULE]..."
3209#define rmmod_full_usage \ 3241#define rmmod_full_usage "\n\n" \
3210 "Unload the specified kernel modules from the kernel\n" \ 3242 "Unload the specified kernel modules from the kernel\n" \
3211 "\nOptions:" \ 3243 "\nOptions:" \
3212 "\n -a Remove all unused modules (recursively)" \ 3244 "\n -a Remove all unused modules (recursively)" \
@@ -3216,7 +3248,7 @@
3216 3248
3217#define route_trivial_usage \ 3249#define route_trivial_usage \
3218 "[{add|del|delete}]" 3250 "[{add|del|delete}]"
3219#define route_full_usage \ 3251#define route_full_usage "\n\n" \
3220 "Edit the kernel's routing tables\n" \ 3252 "Edit the kernel's routing tables\n" \
3221 "\nOptions:" \ 3253 "\nOptions:" \
3222 "\n -n Don't resolve names" \ 3254 "\n -n Don't resolve names" \
@@ -3225,7 +3257,7 @@
3225 3257
3226#define rpm_trivial_usage \ 3258#define rpm_trivial_usage \
3227 "-i -q[ildc]p package.rpm" 3259 "-i -q[ildc]p package.rpm"
3228#define rpm_full_usage \ 3260#define rpm_full_usage "\n\n" \
3229 "Manipulate RPM packages\n" \ 3261 "Manipulate RPM packages\n" \
3230 "\nOptions:" \ 3262 "\nOptions:" \
3231 "\n -i Install package" \ 3263 "\n -i Install package" \
@@ -3238,12 +3270,12 @@
3238 3270
3239#define rpm2cpio_trivial_usage \ 3271#define rpm2cpio_trivial_usage \
3240 "package.rpm" 3272 "package.rpm"
3241#define rpm2cpio_full_usage \ 3273#define rpm2cpio_full_usage "\n\n" \
3242 "Output a cpio archive of the rpm file" 3274 "Output a cpio archive of the rpm file"
3243 3275
3244#define rtcwake_trivial_usage \ 3276#define rtcwake_trivial_usage \
3245 "[-a | -l | -u] [-d DEV] [-m MODE] [-s SECS | -t TIME]" 3277 "[-a | -l | -u] [-d DEV] [-m MODE] [-s SECS | -t TIME]"
3246#define rtcwake_full_usage \ 3278#define rtcwake_full_usage "\n\n" \
3247 "Enter a system sleep state until specified wakeup time\n" \ 3279 "Enter a system sleep state until specified wakeup time\n" \
3248 USE_GETOPT_LONG( \ 3280 USE_GETOPT_LONG( \
3249 "\n -a,--auto Read clock mode from adjtime" \ 3281 "\n -a,--auto Read clock mode from adjtime" \
@@ -3267,7 +3299,7 @@
3267#define runcon_trivial_usage \ 3299#define runcon_trivial_usage \
3268 "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] COMMAND [args]\n" \ 3300 "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] COMMAND [args]\n" \
3269 " runcon CONTEXT COMMAND [args]" 3301 " runcon CONTEXT COMMAND [args]"
3270#define runcon_full_usage \ 3302#define runcon_full_usage "\n\n" \
3271 "Run a program in a different security context\n" \ 3303 "Run a program in a different security context\n" \
3272 "\n CONTEXT Complete security context\n" \ 3304 "\n CONTEXT Complete security context\n" \
3273 USE_GETOPT_LONG( \ 3305 USE_GETOPT_LONG( \
@@ -3287,7 +3319,7 @@
3287 3319
3288#define run_parts_trivial_usage \ 3320#define run_parts_trivial_usage \
3289 "[-t] "USE_FEATURE_RUN_PARTS_FANCY("[-l] ")"[-a ARG] [-u MASK] DIRECTORY" 3321 "[-t] "USE_FEATURE_RUN_PARTS_FANCY("[-l] ")"[-a ARG] [-u MASK] DIRECTORY"
3290#define run_parts_full_usage \ 3322#define run_parts_full_usage "\n\n" \
3291 "Run a bunch of scripts in a directory\n" \ 3323 "Run a bunch of scripts in a directory\n" \
3292 "\nOptions:" \ 3324 "\nOptions:" \
3293 "\n -t Print what would be run, but don't actually run anything" \ 3325 "\n -t Print what would be run, but don't actually run anything" \
@@ -3313,7 +3345,7 @@
3313 3345
3314#define runlevel_trivial_usage \ 3346#define runlevel_trivial_usage \
3315 "[utmp]" 3347 "[utmp]"
3316#define runlevel_full_usage \ 3348#define runlevel_full_usage "\n\n" \
3317 "Find the current and previous system runlevel.\n\n" \ 3349 "Find the current and previous system runlevel.\n\n" \
3318 "If no utmp file exists or if no runlevel record can be found,\n" \ 3350 "If no utmp file exists or if no runlevel record can be found,\n" \
3319 "print \"unknown\"" 3351 "print \"unknown\""
@@ -3323,24 +3355,24 @@
3323 3355
3324#define runsv_trivial_usage \ 3356#define runsv_trivial_usage \
3325 "dir" 3357 "dir"
3326#define runsv_full_usage \ 3358#define runsv_full_usage "\n\n" \
3327 "Start and monitor a service and optionally an appendant log service" 3359 "Start and monitor a service and optionally an appendant log service"
3328 3360
3329#define runsvdir_trivial_usage \ 3361#define runsvdir_trivial_usage \
3330 "[-P] dir" 3362 "[-P] dir"
3331#define runsvdir_full_usage \ 3363#define runsvdir_full_usage "\n\n" \
3332 "Start a runsv process for each subdirectory" 3364 "Start a runsv process for each subdirectory"
3333 3365
3334#define rx_trivial_usage \ 3366#define rx_trivial_usage \
3335 "FILE" 3367 "FILE"
3336#define rx_full_usage \ 3368#define rx_full_usage "\n\n" \
3337 "Receive a file using the xmodem protocol" 3369 "Receive a file using the xmodem protocol"
3338#define rx_example_usage \ 3370#define rx_example_usage \
3339 "$ rx /tmp/foo\n" 3371 "$ rx /tmp/foo\n"
3340 3372
3341#define script_trivial_usage \ 3373#define script_trivial_usage \
3342 "[-afq] [-c COMMAND] [OUTFILE]" 3374 "[-afq] [-c COMMAND] [OUTFILE]"
3343#define script_full_usage \ 3375#define script_full_usage "\n\n" \
3344 "Options:" \ 3376 "Options:" \
3345 "\n -a Append output" \ 3377 "\n -a Append output" \
3346 "\n -c Run COMMAND, not shell" \ 3378 "\n -c Run COMMAND, not shell" \
@@ -3349,7 +3381,7 @@
3349 3381
3350#define sed_trivial_usage \ 3382#define sed_trivial_usage \
3351 "[-efinr] pattern [files...]" 3383 "[-efinr] pattern [files...]"
3352#define sed_full_usage \ 3384#define sed_full_usage "\n\n" \
3353 "Options:" \ 3385 "Options:" \
3354 "\n -e script Add the script to the commands to be executed" \ 3386 "\n -e script Add the script to the commands to be executed" \
3355 "\n -f scriptfile Add scriptfile contents to the" \ 3387 "\n -f scriptfile Add scriptfile contents to the" \
@@ -3373,7 +3405,7 @@
3373#define sendmail_trivial_usage \ 3405#define sendmail_trivial_usage \
3374 "[-w timeout] [-U user] [-P password] [-X]\n" \ 3406 "[-w timeout] [-U user] [-P password] [-X]\n" \
3375 "-t to [-t to]... [-n] [-s subject] [-c charset] server[:port] from [body] [attachment ...]" 3407 "-t to [-t to]... [-n] [-s subject] [-c charset] server[:port] from [body] [attachment ...]"
3376#define sendmail_full_usage \ 3408#define sendmail_full_usage "\n\n" \
3377 "Send an email.\n" \ 3409 "Send an email.\n" \
3378 "\nOptions:" \ 3410 "\nOptions:" \
3379 "\n -w timeout Set timeout on network operations" \ 3411 "\n -w timeout Set timeout on network operations" \
@@ -3387,7 +3419,7 @@
3387 3419
3388#define seq_trivial_usage \ 3420#define seq_trivial_usage \
3389 "[first [increment]] last" 3421 "[first [increment]] last"
3390#define seq_full_usage \ 3422#define seq_full_usage "\n\n" \
3391 "Print numbers from FIRST to LAST, in steps of INCREMENT.\n" \ 3423 "Print numbers from FIRST to LAST, in steps of INCREMENT.\n" \
3392 "FIRST, INCREMENT default to 1" \ 3424 "FIRST, INCREMENT default to 1" \
3393 "\n\nArguments:\n" \ 3425 "\n\nArguments:\n" \
@@ -3397,13 +3429,13 @@
3397 3429
3398#define sestatus_trivial_usage \ 3430#define sestatus_trivial_usage \
3399 "[-vb]" 3431 "[-vb]"
3400#define sestatus_full_usage \ 3432#define sestatus_full_usage "\n\n" \
3401 " -v Verbose" \ 3433 " -v Verbose" \
3402 "\n -b Display current state of booleans" \ 3434 "\n -b Display current state of booleans" \
3403 3435
3404#define setconsole_trivial_usage \ 3436#define setconsole_trivial_usage \
3405 "[-r" USE_FEATURE_SETCONSOLE_LONG_OPTIONS("|--reset") "] [DEVICE]" 3437 "[-r" USE_FEATURE_SETCONSOLE_LONG_OPTIONS("|--reset") "] [DEVICE]"
3406#define setconsole_full_usage \ 3438#define setconsole_full_usage "\n\n" \
3407 "Redirect system console output to DEVICE (default: /dev/tty)\n" \ 3439 "Redirect system console output to DEVICE (default: /dev/tty)\n" \
3408 "\nOptions:" \ 3440 "\nOptions:" \
3409 "\n -r Reset output to /dev/console" \ 3441 "\n -r Reset output to /dev/console" \
@@ -3418,7 +3450,7 @@
3418 " [-c policyfile] spec_file" \ 3450 " [-c policyfile] spec_file" \
3419 ) \ 3451 ) \
3420 " pathname" 3452 " pathname"
3421#define setfiles_full_usage \ 3453#define setfiles_full_usage "\n\n" \
3422 "Reset file contexts under pathname according to spec_file\n" \ 3454 "Reset file contexts under pathname according to spec_file\n" \
3423 USE_FEATURE_SETFILES_CHECK_OPTION( \ 3455 USE_FEATURE_SETFILES_CHECK_OPTION( \
3424 "\n -c file Check the validity of the contexts against the specified binary policy" \ 3456 "\n -c file Check the validity of the contexts against the specified binary policy" \
@@ -3438,7 +3470,7 @@
3438 3470
3439#define setkeycodes_trivial_usage \ 3471#define setkeycodes_trivial_usage \
3440 "SCANCODE KEYCODE..." 3472 "SCANCODE KEYCODE..."
3441#define setkeycodes_full_usage \ 3473#define setkeycodes_full_usage "\n\n" \
3442 "Set entries into the kernel's scancode-to-keycode map,\n" \ 3474 "Set entries into the kernel's scancode-to-keycode map,\n" \
3443 "allowing unusual keyboards to generate usable keycodes.\n\n" \ 3475 "allowing unusual keyboards to generate usable keycodes.\n\n" \
3444 "SCANCODE may be either xx or e0xx (hexadecimal),\n" \ 3476 "SCANCODE may be either xx or e0xx (hexadecimal),\n" \
@@ -3449,18 +3481,18 @@
3449 3481
3450#define setlogcons_trivial_usage \ 3482#define setlogcons_trivial_usage \
3451 "N" 3483 "N"
3452#define setlogcons_full_usage \ 3484#define setlogcons_full_usage "\n\n" \
3453 "Redirect the kernel output to console N (0 for current)" 3485 "Redirect the kernel output to console N (0 for current)"
3454 3486
3455#define setsebool_trivial_usage \ 3487#define setsebool_trivial_usage \
3456 "boolean value" 3488 "boolean value"
3457 3489
3458#define setsebool_full_usage \ 3490#define setsebool_full_usage "\n\n" \
3459 "Change boolean setting" 3491 "Change boolean setting"
3460 3492
3461#define setsid_trivial_usage \ 3493#define setsid_trivial_usage \
3462 "PROG [ARG...]" 3494 "PROG [ARG...]"
3463#define setsid_full_usage \ 3495#define setsid_full_usage "\n\n" \
3464 "Run PROG in a new session. PROG will have no controlling terminal\n" \ 3496 "Run PROG in a new session. PROG will have no controlling terminal\n" \
3465 "and will not be affected by keyboard signals (Ctrl-C etc).\n" \ 3497 "and will not be affected by keyboard signals (Ctrl-C etc).\n" \
3466 "See setsid(2) for details." \ 3498 "See setsid(2) for details." \
@@ -3468,18 +3500,18 @@
3468#define lash_trivial_usage \ 3500#define lash_trivial_usage \
3469 "[FILE]...\n" \ 3501 "[FILE]...\n" \
3470 "or: sh -c command [args]..." 3502 "or: sh -c command [args]..."
3471#define lash_full_usage \ 3503#define lash_full_usage "\n\n" \
3472 "lash is deprecated, please use hush" 3504 "lash is deprecated, please use hush"
3473 3505
3474#define last_trivial_usage \ 3506#define last_trivial_usage \
3475 "" 3507 ""
3476#define last_full_usage \ 3508#define last_full_usage "\n\n" \
3477 "Show listing of the last users that logged into the system" 3509 "Show listing of the last users that logged into the system"
3478 3510
3479#define sha1sum_trivial_usage \ 3511#define sha1sum_trivial_usage \
3480 "[OPTION] [FILEs...]" \ 3512 "[OPTION] [FILEs...]" \
3481 USE_FEATURE_MD5_SHA1_SUM_CHECK("\n or: sha1sum [OPTION] -c [FILE]") 3513 USE_FEATURE_MD5_SHA1_SUM_CHECK("\n or: sha1sum [OPTION] -c [FILE]")
3482#define sha1sum_full_usage \ 3514#define sha1sum_full_usage "\n\n" \
3483 "Print" USE_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " SHA1 checksums." \ 3515 "Print" USE_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " SHA1 checksums." \
3484 USE_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \ 3516 USE_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \
3485 "\nOptions:" \ 3517 "\nOptions:" \
@@ -3490,7 +3522,7 @@
3490 3522
3491#define slattach_trivial_usage \ 3523#define slattach_trivial_usage \
3492 "[-cehmLF] [-s speed] [-p protocol] DEVICEs" 3524 "[-cehmLF] [-s speed] [-p protocol] DEVICEs"
3493#define slattach_full_usage \ 3525#define slattach_full_usage "\n\n" \
3494 "Attach network interface(s) to serial line(s)\n" \ 3526 "Attach network interface(s) to serial line(s)\n" \
3495 "\nOptions:" \ 3527 "\nOptions:" \
3496 "\n -p Set protocol (slip, cslip, slip6, clisp6 or adaptive)" \ 3528 "\n -p Set protocol (slip, cslip, slip6, clisp6 or adaptive)" \
@@ -3504,7 +3536,7 @@
3504 3536
3505#define sleep_trivial_usage \ 3537#define sleep_trivial_usage \
3506 USE_FEATURE_FANCY_SLEEP("[") "N" USE_FEATURE_FANCY_SLEEP("]...") 3538 USE_FEATURE_FANCY_SLEEP("[") "N" USE_FEATURE_FANCY_SLEEP("]...")
3507#define sleep_full_usage \ 3539#define sleep_full_usage "\n\n" \
3508 SKIP_FEATURE_FANCY_SLEEP("Pause for N seconds") \ 3540 SKIP_FEATURE_FANCY_SLEEP("Pause for N seconds") \
3509 USE_FEATURE_FANCY_SLEEP( \ 3541 USE_FEATURE_FANCY_SLEEP( \
3510 "Pause for a time equal to the total of the args given, where each arg can\n" \ 3542 "Pause for a time equal to the total of the args given, where each arg can\n" \
@@ -3520,7 +3552,7 @@
3520 "[-nru" \ 3552 "[-nru" \
3521 USE_FEATURE_SORT_BIG("gMcszbdfimSTokt] [-o FILE] [-k start[.offset][opts][,end[.offset][opts]] [-t CHAR") \ 3553 USE_FEATURE_SORT_BIG("gMcszbdfimSTokt] [-o FILE] [-k start[.offset][opts][,end[.offset][opts]] [-t CHAR") \
3522 "] [FILE]..." 3554 "] [FILE]..."
3523#define sort_full_usage \ 3555#define sort_full_usage "\n\n" \
3524 "Sort lines of text\n" \ 3556 "Sort lines of text\n" \
3525 "\nOptions:" \ 3557 "\nOptions:" \
3526 USE_FEATURE_SORT_BIG( \ 3558 USE_FEATURE_SORT_BIG( \
@@ -3566,7 +3598,7 @@
3566 3598
3567#define split_trivial_usage \ 3599#define split_trivial_usage \
3568 "[OPTION] [INPUT [PREFIX]]" 3600 "[OPTION] [INPUT [PREFIX]]"
3569#define split_full_usage \ 3601#define split_full_usage "\n\n" \
3570 "Options:" \ 3602 "Options:" \
3571 "\n -b n[k|m] Split by bytes" \ 3603 "\n -b n[k|m] Split by bytes" \
3572 "\n -l n Split by lines" \ 3604 "\n -l n Split by lines" \
@@ -3580,7 +3612,7 @@
3580 "[OPTIONS] [" \ 3612 "[OPTIONS] [" \
3581 USE_GETOPT_LONG("--start|--stop") SKIP_GETOPT_LONG("-S|-K") \ 3613 USE_GETOPT_LONG("--start|--stop") SKIP_GETOPT_LONG("-S|-K") \
3582 "] ... [-- arguments...]" 3614 "] ... [-- arguments...]"
3583#define start_stop_daemon_full_usage \ 3615#define start_stop_daemon_full_usage "\n\n" \
3584 "Start and stop services\n" \ 3616 "Start and stop services\n" \
3585 "\nOptions:" \ 3617 "\nOptions:" \
3586 USE_GETOPT_LONG( \ 3618 USE_GETOPT_LONG( \
@@ -3624,7 +3656,7 @@
3624 3656
3625#define stat_trivial_usage \ 3657#define stat_trivial_usage \
3626 "[OPTION] FILE..." 3658 "[OPTION] FILE..."
3627#define stat_full_usage \ 3659#define stat_full_usage "\n\n" \
3628 "Display file (default) or filesystem status\n" \ 3660 "Display file (default) or filesystem status\n" \
3629 "\nOptions:" \ 3661 "\nOptions:" \
3630 USE_FEATURE_STAT_FORMAT( \ 3662 USE_FEATURE_STAT_FORMAT( \
@@ -3684,7 +3716,7 @@
3684 3716
3685#define strings_trivial_usage \ 3717#define strings_trivial_usage \
3686 "[-afo] [-n length] [file...]" 3718 "[-afo] [-n length] [file...]"
3687#define strings_full_usage \ 3719#define strings_full_usage "\n\n" \
3688 "Display printable strings in a binary file\n" \ 3720 "Display printable strings in a binary file\n" \
3689 "\nOptions:" \ 3721 "\nOptions:" \
3690 "\n -a Scan whole file (default)" \ 3722 "\n -a Scan whole file (default)" \
@@ -3694,7 +3726,7 @@
3694 3726
3695#define stty_trivial_usage \ 3727#define stty_trivial_usage \
3696 "[-a|g] [-F DEVICE] [SETTING]..." 3728 "[-a|g] [-F DEVICE] [SETTING]..."
3697#define stty_full_usage \ 3729#define stty_full_usage "\n\n" \
3698 "Without arguments, prints baud rate, line discipline,\n" \ 3730 "Without arguments, prints baud rate, line discipline,\n" \
3699 "and deviations from stty sane\n" \ 3731 "and deviations from stty sane\n" \
3700 "\nOptions:" \ 3732 "\nOptions:" \
@@ -3705,7 +3737,7 @@
3705 3737
3706#define su_trivial_usage \ 3738#define su_trivial_usage \
3707 "[OPTION]... [-] [username]" 3739 "[OPTION]... [-] [username]"
3708#define su_full_usage \ 3740#define su_full_usage "\n\n" \
3709 "Change user id or become root\n" \ 3741 "Change user id or become root\n" \
3710 "\nOptions:" \ 3742 "\nOptions:" \
3711 "\n -p, -m Preserve environment" \ 3743 "\n -p, -m Preserve environment" \
@@ -3714,14 +3746,14 @@
3714 3746
3715#define sulogin_trivial_usage \ 3747#define sulogin_trivial_usage \
3716 "[OPTION]... [tty-device]" 3748 "[OPTION]... [tty-device]"
3717#define sulogin_full_usage \ 3749#define sulogin_full_usage "\n\n" \
3718 "Single user login\n" \ 3750 "Single user login\n" \
3719 "\nOptions:" \ 3751 "\nOptions:" \
3720 "\n -t Timeout" \ 3752 "\n -t Timeout" \
3721 3753
3722#define sum_trivial_usage \ 3754#define sum_trivial_usage \
3723 "[rs] [files...]" 3755 "[rs] [files...]"
3724#define sum_full_usage \ 3756#define sum_full_usage "\n\n" \
3725 "Checksum and count the blocks in a file\n" \ 3757 "Checksum and count the blocks in a file\n" \
3726 "\nOptions:" \ 3758 "\nOptions:" \
3727 "\n -r Use BSD sum algorithm (1K blocks)" \ 3759 "\n -r Use BSD sum algorithm (1K blocks)" \
@@ -3729,7 +3761,7 @@
3729 3761
3730#define sv_trivial_usage \ 3762#define sv_trivial_usage \
3731 "[-v] [-w sec] command service..." 3763 "[-v] [-w sec] command service..."
3732#define sv_full_usage \ 3764#define sv_full_usage "\n\n" \
3733 "Control services monitored by runsv supervisor.\n" \ 3765 "Control services monitored by runsv supervisor.\n" \
3734 "Commands (only first character is enough):\n" \ 3766 "Commands (only first character is enough):\n" \
3735 "\n" \ 3767 "\n" \
@@ -3745,28 +3777,28 @@
3745 3777
3746#define svlogd_trivial_usage \ 3778#define svlogd_trivial_usage \
3747 "[-ttv] [-r c] [-R abc] [-l len] [-b buflen] dir..." 3779 "[-ttv] [-r c] [-R abc] [-l len] [-b buflen] dir..."
3748#define svlogd_full_usage \ 3780#define svlogd_full_usage "\n\n" \
3749 "Continuously read log data from standard input, optionally " \ 3781 "Continuously read log data from standard input, optionally " \
3750 "filter log messages, and write the data to one or more automatically " \ 3782 "filter log messages, and write the data to one or more automatically " \
3751 "rotated logs" \ 3783 "rotated logs" \
3752 3784
3753#define swapoff_trivial_usage \ 3785#define swapoff_trivial_usage \
3754 "[-a] [DEVICE]" 3786 "[-a] [DEVICE]"
3755#define swapoff_full_usage \ 3787#define swapoff_full_usage "\n\n" \
3756 "Stop swapping on DEVICE\n" \ 3788 "Stop swapping on DEVICE\n" \
3757 "\nOptions:" \ 3789 "\nOptions:" \
3758 "\n -a Stop swapping on all swap devices" \ 3790 "\n -a Stop swapping on all swap devices" \
3759 3791
3760#define swapon_trivial_usage \ 3792#define swapon_trivial_usage \
3761 "[-a] [DEVICE]" 3793 "[-a] [DEVICE]"
3762#define swapon_full_usage \ 3794#define swapon_full_usage "\n\n" \
3763 "Start swapping on DEVICE\n" \ 3795 "Start swapping on DEVICE\n" \
3764 "\nOptions:" \ 3796 "\nOptions:" \
3765 "\n -a Start swapping on all swap devices" \ 3797 "\n -a Start swapping on all swap devices" \
3766 3798
3767#define switch_root_trivial_usage \ 3799#define switch_root_trivial_usage \
3768 "[-c /dev/console] NEW_ROOT NEW_INIT [ARGUMENTS_TO_INIT]" 3800 "[-c /dev/console] NEW_ROOT NEW_INIT [ARGUMENTS_TO_INIT]"
3769#define switch_root_full_usage \ 3801#define switch_root_full_usage "\n\n" \
3770 "Use from PID 1 under initramfs to free initramfs, chroot to NEW_ROOT,\n" \ 3802 "Use from PID 1 under initramfs to free initramfs, chroot to NEW_ROOT,\n" \
3771 "and exec NEW_INIT\n" \ 3803 "and exec NEW_INIT\n" \
3772 "\nOptions:" \ 3804 "\nOptions:" \
@@ -3774,12 +3806,12 @@
3774 3806
3775#define sync_trivial_usage \ 3807#define sync_trivial_usage \
3776 "" 3808 ""
3777#define sync_full_usage \ 3809#define sync_full_usage "\n\n" \
3778 "Write all buffered filesystem blocks to disk" 3810 "Write all buffered filesystem blocks to disk"
3779 3811
3780#define sysctl_trivial_usage \ 3812#define sysctl_trivial_usage \
3781 "[OPTIONS]... [VALUE]..." 3813 "[OPTIONS]... [VALUE]..."
3782#define sysctl_full_usage \ 3814#define sysctl_full_usage "\n\n" \
3783 "Configure kernel parameters at runtime\n" \ 3815 "Configure kernel parameters at runtime\n" \
3784 "\nOptions:" \ 3816 "\nOptions:" \
3785 "\n -n Disable printing of key names" \ 3817 "\n -n Disable printing of key names" \
@@ -3798,7 +3830,7 @@
3798 3830
3799#define syslogd_trivial_usage \ 3831#define syslogd_trivial_usage \
3800 "[OPTION]..." 3832 "[OPTION]..."
3801#define syslogd_full_usage \ 3833#define syslogd_full_usage "\n\n" \
3802 "System logging utility.\n" \ 3834 "System logging utility.\n" \
3803 "Note that this version of syslogd ignores /etc/syslog.conf.\n" \ 3835 "Note that this version of syslogd ignores /etc/syslog.conf.\n" \
3804 "\nOptions:" \ 3836 "\nOptions:" \
@@ -3825,12 +3857,12 @@
3825 3857
3826#define tac_trivial_usage \ 3858#define tac_trivial_usage \
3827 "[FILE]..." 3859 "[FILE]..."
3828#define tac_full_usage \ 3860#define tac_full_usage "\n\n" \
3829 "Concatenate FILE(s) and print them in reverse" 3861 "Concatenate FILE(s) and print them in reverse"
3830 3862
3831#define tail_trivial_usage \ 3863#define tail_trivial_usage \
3832 "[OPTION]... [FILE]..." 3864 "[OPTION]... [FILE]..."
3833#define tail_full_usage \ 3865#define tail_full_usage "\n\n" \
3834 "Print last 10 lines of each FILE to standard output.\n" \ 3866 "Print last 10 lines of each FILE to standard output.\n" \
3835 "With more than one FILE, precede each with a header giving the\n" \ 3867 "With more than one FILE, precede each with a header giving the\n" \
3836 "file name. With no FILE, or when FILE is -, read standard input.\n" \ 3868 "file name. With no FILE, or when FILE is -, read standard input.\n" \
@@ -3858,7 +3890,7 @@
3858 USE_FEATURE_TAR_COMPRESS("Z") "xtvO] " \ 3890 USE_FEATURE_TAR_COMPRESS("Z") "xtvO] " \
3859 USE_FEATURE_TAR_FROM("[-X FILE] ") \ 3891 USE_FEATURE_TAR_FROM("[-X FILE] ") \
3860 "[-f TARFILE] [-C DIR] [FILE(s)]..." 3892 "[-f TARFILE] [-C DIR] [FILE(s)]..."
3861#define tar_full_usage \ 3893#define tar_full_usage "\n\n" \
3862 "Create, extract, or list files from a tar file\n" \ 3894 "Create, extract, or list files from a tar file\n" \
3863 "\nOptions:" \ 3895 "\nOptions:" \
3864 USE_FEATURE_TAR_CREATE( \ 3896 USE_FEATURE_TAR_CREATE( \
@@ -3894,7 +3926,7 @@
3894 3926
3895#define taskset_trivial_usage \ 3927#define taskset_trivial_usage \
3896 "[-p] [mask] [pid | command [arg]...]" 3928 "[-p] [mask] [pid | command [arg]...]"
3897#define taskset_full_usage \ 3929#define taskset_full_usage "\n\n" \
3898 "Set or get CPU affinity\n" \ 3930 "Set or get CPU affinity\n" \
3899 "\nOptions:" \ 3931 "\nOptions:" \
3900 "\n -p Operate on an existing PID" \ 3932 "\n -p Operate on an existing PID" \
@@ -3912,7 +3944,7 @@
3912 3944
3913#define tee_trivial_usage \ 3945#define tee_trivial_usage \
3914 "[OPTION]... [FILE]..." 3946 "[OPTION]... [FILE]..."
3915#define tee_full_usage \ 3947#define tee_full_usage "\n\n" \
3916 "Copy standard input to each FILE, and also to standard output\n" \ 3948 "Copy standard input to each FILE, and also to standard output\n" \
3917 "\nOptions:" \ 3949 "\nOptions:" \
3918 "\n -a Append to the given FILEs, do not overwrite" \ 3950 "\n -a Append to the given FILEs, do not overwrite" \
@@ -3926,7 +3958,7 @@
3926#if ENABLE_FEATURE_TELNET_AUTOLOGIN 3958#if ENABLE_FEATURE_TELNET_AUTOLOGIN
3927#define telnet_trivial_usage \ 3959#define telnet_trivial_usage \
3928 "[-a] [-l USER] HOST [PORT]" 3960 "[-a] [-l USER] HOST [PORT]"
3929#define telnet_full_usage \ 3961#define telnet_full_usage "\n\n" \
3930 "Connect to telnet server\n" \ 3962 "Connect to telnet server\n" \
3931 "\nOptions:" \ 3963 "\nOptions:" \
3932 "\n -a Attempt an automatic login with USER variable" \ 3964 "\n -a Attempt an automatic login with USER variable" \
@@ -3935,13 +3967,13 @@
3935#else 3967#else
3936#define telnet_trivial_usage \ 3968#define telnet_trivial_usage \
3937 "HOST [PORT]" 3969 "HOST [PORT]"
3938#define telnet_full_usage \ 3970#define telnet_full_usage "\n\n" \
3939 "Connect to telnet server" 3971 "Connect to telnet server"
3940#endif 3972#endif
3941 3973
3942#define telnetd_trivial_usage \ 3974#define telnetd_trivial_usage \
3943 "[OPTION]" 3975 "[OPTION]"
3944#define telnetd_full_usage \ 3976#define telnetd_full_usage "\n\n" \
3945 "Handle incoming telnet connections" \ 3977 "Handle incoming telnet connections" \
3946 SKIP_FEATURE_TELNETD_STANDALONE(" via inetd") "\n" \ 3978 SKIP_FEATURE_TELNETD_STANDALONE(" via inetd") "\n" \
3947 "\nOptions:" \ 3979 "\nOptions:" \
@@ -3959,7 +3991,7 @@
3959#define test_trivial_usage \ 3991#define test_trivial_usage \
3960 "EXPRESSION\n" \ 3992 "EXPRESSION\n" \
3961 " or [ EXPRESSION ]" 3993 " or [ EXPRESSION ]"
3962#define test_full_usage \ 3994#define test_full_usage "\n\n" \
3963 "Check file types and compares values returning an exit code\n" \ 3995 "Check file types and compares values returning an exit code\n" \
3964 "determined by the value of EXPRESSION" 3996 "determined by the value of EXPRESSION"
3965#define test_example_usage \ 3997#define test_example_usage \
@@ -3980,7 +4012,7 @@
3980 "[-hEv] [-c n] [-C n:msg] [-b n] [-u user] [-l name] ip port prog..." 4012 "[-hEv] [-c n] [-C n:msg] [-b n] [-u user] [-l name] ip port prog..."
3981/* with not-implemented options: */ 4013/* with not-implemented options: */
3982/* "[-hpEvv] [-c n] [-C n:msg] [-b n] [-u user] [-l name] [-i dir|-x cdb] [-t sec] ip port prog..." */ 4014/* "[-hpEvv] [-c n] [-C n:msg] [-b n] [-u user] [-l name] [-i dir|-x cdb] [-t sec] ip port prog..." */
3983#define tcpsvd_full_usage \ 4015#define tcpsvd_full_usage "\n\n" \
3984 "Create TCP socket, bind it to ip:port and listen\n" \ 4016 "Create TCP socket, bind it to ip:port and listen\n" \
3985 "for incoming connection. Run PROG for each connection.\n" \ 4017 "for incoming connection. Run PROG for each connection.\n" \
3986 "\nip IP to listen on. '0' = all" \ 4018 "\nip IP to listen on. '0' = all" \
@@ -3999,7 +4031,7 @@
3999 4031
4000#define udpsvd_trivial_usage \ 4032#define udpsvd_trivial_usage \
4001 "[-hEv] [-c n] [-u user] [-l name] ip port prog" 4033 "[-hEv] [-c n] [-u user] [-l name] ip port prog"
4002#define udpsvd_full_usage \ 4034#define udpsvd_full_usage "\n\n" \
4003 "Create UDP socket, bind it to ip:port and wait\n" \ 4035 "Create UDP socket, bind it to ip:port and wait\n" \
4004 "for incoming packets. Run PROG for each packet,\n" \ 4036 "for incoming packets. Run PROG for each packet,\n" \
4005 "redirecting all further packets with same peer ip:port to it\n" \ 4037 "redirecting all further packets with same peer ip:port to it\n" \
@@ -4015,7 +4047,7 @@
4015 4047
4016#define tftp_trivial_usage \ 4048#define tftp_trivial_usage \
4017 "[OPTION]... HOST [PORT]" 4049 "[OPTION]... HOST [PORT]"
4018#define tftp_full_usage \ 4050#define tftp_full_usage "\n\n" \
4019 "Transfer a file from/to tftp server\n" \ 4051 "Transfer a file from/to tftp server\n" \
4020 "\nOptions:" \ 4052 "\nOptions:" \
4021 "\n -l FILE Local FILE" \ 4053 "\n -l FILE Local FILE" \
@@ -4032,7 +4064,7 @@
4032 4064
4033#define tftpd_trivial_usage \ 4065#define tftpd_trivial_usage \
4034 "[-cr] [-u USER] [DIR]" 4066 "[-cr] [-u USER] [DIR]"
4035#define tftpd_full_usage \ 4067#define tftpd_full_usage "\n\n" \
4036 "Transfer a file on tftp client's request.\n" \ 4068 "Transfer a file on tftp client's request.\n" \
4037 "\nOptions:" \ 4069 "\nOptions:" \
4038 "\n -r Prohibit upload" \ 4070 "\n -r Prohibit upload" \
@@ -4041,7 +4073,7 @@
4041 4073
4042#define time_trivial_usage \ 4074#define time_trivial_usage \
4043 "[OPTION]... COMMAND [ARGS...]" 4075 "[OPTION]... COMMAND [ARGS...]"
4044#define time_full_usage \ 4076#define time_full_usage "\n\n" \
4045 "Run the program COMMAND with arguments ARGS. When COMMAND finishes,\n" \ 4077 "Run the program COMMAND with arguments ARGS. When COMMAND finishes,\n" \
4046 "COMMAND's resource usage information is displayed.\n" \ 4078 "COMMAND's resource usage information is displayed.\n" \
4047 "\nOptions:" \ 4079 "\nOptions:" \
@@ -4049,14 +4081,14 @@
4049 4081
4050#define top_trivial_usage \ 4082#define top_trivial_usage \
4051 "[-b] [-n COUNT] [-d SECONDS]" 4083 "[-b] [-n COUNT] [-d SECONDS]"
4052#define top_full_usage \ 4084#define top_full_usage "\n\n" \
4053 "Provide a view of process activity in real time.\n" \ 4085 "Provide a view of process activity in real time.\n" \
4054 "Read the status of all processes from /proc each SECONDS\n" \ 4086 "Read the status of all processes from /proc each SECONDS\n" \
4055 "and show the status for however many processes will fit on the screen." \ 4087 "and show the status for however many processes will fit on the screen." \
4056 4088
4057#define touch_trivial_usage \ 4089#define touch_trivial_usage \
4058 "[-c] FILE [FILE...]" 4090 "[-c] FILE [FILE...]"
4059#define touch_full_usage \ 4091#define touch_full_usage "\n\n" \
4060 "Update the last-modified date on the given FILE[s]\n" \ 4092 "Update the last-modified date on the given FILE[s]\n" \
4061 "\nOptions:" \ 4093 "\nOptions:" \
4062 "\n -c Do not create any files" \ 4094 "\n -c Do not create any files" \
@@ -4070,7 +4102,7 @@
4070 4102
4071#define tr_trivial_usage \ 4103#define tr_trivial_usage \
4072 "[-cds] STRING1 [STRING2]" 4104 "[-cds] STRING1 [STRING2]"
4073#define tr_full_usage \ 4105#define tr_full_usage "\n\n" \
4074 "Translate, squeeze, and/or delete characters from\n" \ 4106 "Translate, squeeze, and/or delete characters from\n" \
4075 "standard input, writing to standard output\n" \ 4107 "standard input, writing to standard output\n" \
4076 "\nOptions:" \ 4108 "\nOptions:" \
@@ -4086,7 +4118,7 @@
4086 "[-FIldnrv] [-f 1st_ttl] [-m max_ttl] [-p port#] [-q nqueries]\n" \ 4118 "[-FIldnrv] [-f 1st_ttl] [-m max_ttl] [-p port#] [-q nqueries]\n" \
4087 " [-s src_addr] [-t tos] [-w wait] [-g gateway] [-i iface]\n" \ 4119 " [-s src_addr] [-t tos] [-w wait] [-g gateway] [-i iface]\n" \
4088 " [-z pausemsecs] HOST [data size]" 4120 " [-z pausemsecs] HOST [data size]"
4089#define traceroute_full_usage \ 4121#define traceroute_full_usage "\n\n" \
4090 "Trace the route to HOST\n" \ 4122 "Trace the route to HOST\n" \
4091 "\nOptions:" \ 4123 "\nOptions:" \
4092 "\n -F Set the don't fragment bit" \ 4124 "\n -F Set the don't fragment bit" \
@@ -4108,7 +4140,7 @@
4108 4140
4109#define true_trivial_usage \ 4141#define true_trivial_usage \
4110 "" 4142 ""
4111#define true_full_usage \ 4143#define true_full_usage "\n\n" \
4112 "Return an exit code of TRUE (0)" 4144 "Return an exit code of TRUE (0)"
4113#define true_example_usage \ 4145#define true_example_usage \
4114 "$ true\n" \ 4146 "$ true\n" \
@@ -4117,7 +4149,7 @@
4117 4149
4118#define tty_trivial_usage \ 4150#define tty_trivial_usage \
4119 "" 4151 ""
4120#define tty_full_usage \ 4152#define tty_full_usage "\n\n" \
4121 "Print file name of standard input's terminal" \ 4153 "Print file name of standard input's terminal" \
4122 USE_INCLUDE_SUSv2( "\n" \ 4154 USE_INCLUDE_SUSv2( "\n" \
4123 "\nOptions:" \ 4155 "\nOptions:" \
@@ -4129,7 +4161,7 @@
4129 4161
4130#define ttysize_trivial_usage \ 4162#define ttysize_trivial_usage \
4131 "[w] [h]" 4163 "[w] [h]"
4132#define ttysize_full_usage \ 4164#define ttysize_full_usage "\n\n" \
4133 "Print dimension(s) of standard input's terminal, on error return 80x25" 4165 "Print dimension(s) of standard input's terminal, on error return 80x25"
4134 4166
4135#define tune2fs_trivial_usage \ 4167#define tune2fs_trivial_usage \
@@ -4139,13 +4171,13 @@
4139 "[-r reserved-blocks-count] [-u user] [-C mount-count] " \ 4171 "[-r reserved-blocks-count] [-u user] [-C mount-count] " \
4140 "[-L volume-label] [-M last-mounted-dir] [-O [^]feature[,...]] " \ 4172 "[-L volume-label] [-M last-mounted-dir] [-O [^]feature[,...]] " \
4141 "[-T last-check-time] [-U UUID] device" 4173 "[-T last-check-time] [-U UUID] device"
4142#define tune2fs_full_usage \ 4174#define tune2fs_full_usage "\n\n" \
4143 "Adjust filesystem options on ext[23] filesystems" 4175 "Adjust filesystem options on ext[23] filesystems"
4144 4176
4145#define udhcpc_trivial_usage \ 4177#define udhcpc_trivial_usage \
4146 "[-Cfbnqtvo] [-c CID] [-V VCLS] [-H HOSTNAME] [-i INTERFACE]\n" \ 4178 "[-Cfbnqtvo] [-c CID] [-V VCLS] [-H HOSTNAME] [-i INTERFACE]\n" \
4147 " [-p pidfile] [-r IP] [-s script] [-O dhcp-option]..." USE_FEATURE_UDHCP_PORT(" [-P N]") 4179 " [-p pidfile] [-r IP] [-s script] [-O dhcp-option]..." USE_FEATURE_UDHCP_PORT(" [-P N]")
4148#define udhcpc_full_usage \ 4180#define udhcpc_full_usage "\n\n" \
4149 USE_GETOPT_LONG( \ 4181 USE_GETOPT_LONG( \
4150 " -V,--vendorclass=CLASSID Vendor class identifier" \ 4182 " -V,--vendorclass=CLASSID Vendor class identifier" \
4151 "\n -i,--interface=INTERFACE Interface to use (default eth0)" \ 4183 "\n -i,--interface=INTERFACE Interface to use (default eth0)" \
@@ -4204,7 +4236,7 @@
4204#define udhcpd_trivial_usage \ 4236#define udhcpd_trivial_usage \
4205 "[-fS]" USE_FEATURE_UDHCP_PORT(" [-P N]") " [configfile]" \ 4237 "[-fS]" USE_FEATURE_UDHCP_PORT(" [-P N]") " [configfile]" \
4206 4238
4207#define udhcpd_full_usage \ 4239#define udhcpd_full_usage "\n\n" \
4208 "DHCP server\n" \ 4240 "DHCP server\n" \
4209 "\n -f Run in foreground" \ 4241 "\n -f Run in foreground" \
4210 "\n -S Log to syslog too" \ 4242 "\n -S Log to syslog too" \
@@ -4214,7 +4246,7 @@
4214 4246
4215#define umount_trivial_usage \ 4247#define umount_trivial_usage \
4216 "[flags] FILESYSTEM|DIRECTORY" 4248 "[flags] FILESYSTEM|DIRECTORY"
4217#define umount_full_usage \ 4249#define umount_full_usage "\n\n" \
4218 "Unmount file systems\n" \ 4250 "Unmount file systems\n" \
4219 "\nOptions:" \ 4251 "\nOptions:" \
4220 USE_FEATURE_UMOUNT_ALL( \ 4252 USE_FEATURE_UMOUNT_ALL( \
@@ -4235,7 +4267,7 @@
4235 4267
4236#define uname_trivial_usage \ 4268#define uname_trivial_usage \
4237 "[-amnrspv]" 4269 "[-amnrspv]"
4238#define uname_full_usage \ 4270#define uname_full_usage "\n\n" \
4239 "Print system information.\n" \ 4271 "Print system information.\n" \
4240 "\nOptions:" \ 4272 "\nOptions:" \
4241 "\n -a Print all" \ 4273 "\n -a Print all" \
@@ -4252,7 +4284,7 @@
4252 4284
4253#define uncompress_trivial_usage \ 4285#define uncompress_trivial_usage \
4254 "[-c] [-f] [name...]" 4286 "[-c] [-f] [name...]"
4255#define uncompress_full_usage \ 4287#define uncompress_full_usage "\n\n" \
4256 "Uncompress .Z file[s]\n" \ 4288 "Uncompress .Z file[s]\n" \
4257 "\nOptions:" \ 4289 "\nOptions:" \
4258 "\n -c Extract to stdout" \ 4290 "\n -c Extract to stdout" \
@@ -4260,7 +4292,7 @@
4260 4292
4261#define unexpand_trivial_usage \ 4293#define unexpand_trivial_usage \
4262 "[-f][-a][-t NUM] [FILE|-]" 4294 "[-f][-a][-t NUM] [FILE|-]"
4263#define unexpand_full_usage \ 4295#define unexpand_full_usage "\n\n" \
4264 "Convert spaces to tabs, writing to standard output.\n" \ 4296 "Convert spaces to tabs, writing to standard output.\n" \
4265 "\nOptions:" \ 4297 "\nOptions:" \
4266 USE_FEATURE_UNEXPAND_LONG_OPTIONS( \ 4298 USE_FEATURE_UNEXPAND_LONG_OPTIONS( \
@@ -4276,7 +4308,7 @@
4276 4308
4277#define uniq_trivial_usage \ 4309#define uniq_trivial_usage \
4278 "[-fscdu]... [INPUT [OUTPUT]]" 4310 "[-fscdu]... [INPUT [OUTPUT]]"
4279#define uniq_full_usage \ 4311#define uniq_full_usage "\n\n" \
4280 "Discard all but one of successive identical lines from INPUT\n" \ 4312 "Discard all but one of successive identical lines from INPUT\n" \
4281 "(or standard input), writing to OUTPUT (or standard output)\n" \ 4313 "(or standard input), writing to OUTPUT (or standard output)\n" \
4282 "\nOptions:" \ 4314 "\nOptions:" \
@@ -4294,7 +4326,7 @@
4294 4326
4295#define unix2dos_trivial_usage \ 4327#define unix2dos_trivial_usage \
4296 "[option] [FILE]" 4328 "[option] [FILE]"
4297#define unix2dos_full_usage \ 4329#define unix2dos_full_usage "\n\n" \
4298 "Convert FILE from unix to dos format.\n" \ 4330 "Convert FILE from unix to dos format.\n" \
4299 "When no file is given, use stdin/stdout.\n" \ 4331 "When no file is given, use stdin/stdout.\n" \
4300 "\nOptions:" \ 4332 "\nOptions:" \
@@ -4303,7 +4335,7 @@
4303 4335
4304#define unzip_trivial_usage \ 4336#define unzip_trivial_usage \
4305 "[-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]" 4337 "[-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]"
4306#define unzip_full_usage \ 4338#define unzip_full_usage "\n\n" \
4307 "Extract files from ZIP archives\n" \ 4339 "Extract files from ZIP archives\n" \
4308 "\nOptions:" \ 4340 "\nOptions:" \
4309 "\n -l List archive contents (with -q for short form)" \ 4341 "\n -l List archive contents (with -q for short form)" \
@@ -4316,7 +4348,7 @@
4316 4348
4317#define uptime_trivial_usage \ 4349#define uptime_trivial_usage \
4318 "" 4350 ""
4319#define uptime_full_usage \ 4351#define uptime_full_usage "\n\n" \
4320 "Display the time since the last boot" 4352 "Display the time since the last boot"
4321 4353
4322#define uptime_example_usage \ 4354#define uptime_example_usage \
@@ -4325,7 +4357,7 @@
4325 4357
4326#define usleep_trivial_usage \ 4358#define usleep_trivial_usage \
4327 "N" 4359 "N"
4328#define usleep_full_usage \ 4360#define usleep_full_usage "\n\n" \
4329 "Pause for N microseconds" 4361 "Pause for N microseconds"
4330 4362
4331#define usleep_example_usage \ 4363#define usleep_example_usage \
@@ -4334,7 +4366,7 @@
4334 4366
4335#define uudecode_trivial_usage \ 4367#define uudecode_trivial_usage \
4336 "[-o outfile] [infile]" 4368 "[-o outfile] [infile]"
4337#define uudecode_full_usage \ 4369#define uudecode_full_usage "\n\n" \
4338 "Uudecode a file\n" \ 4370 "Uudecode a file\n" \
4339 "Finds outfile name in uuencoded source unless -o is given" 4371 "Finds outfile name in uuencoded source unless -o is given"
4340 4372
@@ -4345,7 +4377,7 @@
4345 4377
4346#define uuencode_trivial_usage \ 4378#define uuencode_trivial_usage \
4347 "[-m] [infile] stored_filename" 4379 "[-m] [infile] stored_filename"
4348#define uuencode_full_usage \ 4380#define uuencode_full_usage "\n\n" \
4349 "Uuencode a file to stdout\n" \ 4381 "Uuencode a file to stdout\n" \
4350 "\nOptions:" \ 4382 "\nOptions:" \
4351 "\n -m Use base64 encoding per RFC1521" \ 4383 "\n -m Use base64 encoding per RFC1521" \
@@ -4359,7 +4391,7 @@
4359 4391
4360#define vconfig_trivial_usage \ 4392#define vconfig_trivial_usage \
4361 "COMMAND [OPTIONS]..." 4393 "COMMAND [OPTIONS]..."
4362#define vconfig_full_usage \ 4394#define vconfig_full_usage "\n\n" \
4363 "Create and remove virtual ethernet devices\n" \ 4395 "Create and remove virtual ethernet devices\n" \
4364 "\nOptions:" \ 4396 "\nOptions:" \
4365 "\n add [interface-name] [vlan_id]" \ 4397 "\n add [interface-name] [vlan_id]" \
@@ -4371,7 +4403,7 @@
4371 4403
4372#define vi_trivial_usage \ 4404#define vi_trivial_usage \
4373 "[OPTION] [FILE]..." 4405 "[OPTION] [FILE]..."
4374#define vi_full_usage \ 4406#define vi_full_usage "\n\n" \
4375 "Edit FILE\n" \ 4407 "Edit FILE\n" \
4376 "\nOptions:" \ 4408 "\nOptions:" \
4377 USE_FEATURE_VI_COLON( \ 4409 USE_FEATURE_VI_COLON( \
@@ -4382,14 +4414,14 @@
4382 4414
4383#define vlock_trivial_usage \ 4415#define vlock_trivial_usage \
4384 "[OPTIONS]" 4416 "[OPTIONS]"
4385#define vlock_full_usage \ 4417#define vlock_full_usage "\n\n" \
4386 "Lock a virtual terminal. A password is required to unlock.\n" \ 4418 "Lock a virtual terminal. A password is required to unlock.\n" \
4387 "\nOptions:" \ 4419 "\nOptions:" \
4388 "\n -a Lock all VTs" \ 4420 "\n -a Lock all VTs" \
4389 4421
4390#define watch_trivial_usage \ 4422#define watch_trivial_usage \
4391 "[-n seconds] [-t] COMMAND..." 4423 "[-n seconds] [-t] COMMAND..."
4392#define watch_full_usage \ 4424#define watch_full_usage "\n\n" \
4393 "Execute a program periodically\n" \ 4425 "Execute a program periodically\n" \
4394 "\nOptions:" \ 4426 "\nOptions:" \
4395 "\n -n Loop period in seconds (default 2)" \ 4427 "\n -n Loop period in seconds (default 2)" \
@@ -4403,7 +4435,7 @@
4403 4435
4404#define watchdog_trivial_usage \ 4436#define watchdog_trivial_usage \
4405 "[-t N[ms]] [-F] DEV" 4437 "[-t N[ms]] [-F] DEV"
4406#define watchdog_full_usage \ 4438#define watchdog_full_usage "\n\n" \
4407 "Periodically write to watchdog device DEV\n" \ 4439 "Periodically write to watchdog device DEV\n" \
4408 "\nOptions:" \ 4440 "\nOptions:" \
4409 "\n -t N Timer period (default 30)" \ 4441 "\n -t N Timer period (default 30)" \
@@ -4413,7 +4445,7 @@
4413 4445
4414#define wc_trivial_usage \ 4446#define wc_trivial_usage \
4415 "[OPTION]... [FILE]..." 4447 "[OPTION]... [FILE]..."
4416#define wc_full_usage \ 4448#define wc_full_usage "\n\n" \
4417 "Print line, word, and byte counts for each FILE, and a total line if\n" \ 4449 "Print line, word, and byte counts for each FILE, and a total line if\n" \
4418 "more than one FILE is specified. With no FILE, read standard input.\n" \ 4450 "more than one FILE is specified. With no FILE, read standard input.\n" \
4419 "\nOptions:" \ 4451 "\nOptions:" \
@@ -4435,7 +4467,7 @@
4435 SKIP_GETOPT_LONG( \ 4467 SKIP_GETOPT_LONG( \
4436 "[-csq] [-O file] [-Y on/off] [-P DIR] [-U agent] url" \ 4468 "[-csq] [-O file] [-Y on/off] [-P DIR] [-U agent] url" \
4437 ) 4469 )
4438#define wget_full_usage \ 4470#define wget_full_usage "\n\n" \
4439 "Retrieve files via HTTP or FTP\n" \ 4471 "Retrieve files via HTTP or FTP\n" \
4440 "\nOptions:" \ 4472 "\nOptions:" \
4441 "\n -s Spider mode - only check file existence" \ 4473 "\n -s Spider mode - only check file existence" \
@@ -4448,7 +4480,7 @@
4448 4480
4449#define which_trivial_usage \ 4481#define which_trivial_usage \
4450 "[COMMAND...]" 4482 "[COMMAND...]"
4451#define which_full_usage \ 4483#define which_full_usage "\n\n" \
4452 "Locate a COMMAND" 4484 "Locate a COMMAND"
4453#define which_example_usage \ 4485#define which_example_usage \
4454 "$ which login\n" \ 4486 "$ which login\n" \
@@ -4456,19 +4488,19 @@
4456 4488
4457#define who_trivial_usage \ 4489#define who_trivial_usage \
4458 "[-a]" 4490 "[-a]"
4459#define who_full_usage \ 4491#define who_full_usage "\n\n" \
4460 "Show who is logged on\n" \ 4492 "Show who is logged on\n" \
4461 "\nOptions:" \ 4493 "\nOptions:" \
4462 "\n -a show all" \ 4494 "\n -a show all" \
4463 4495
4464#define whoami_trivial_usage \ 4496#define whoami_trivial_usage \
4465 "" 4497 ""
4466#define whoami_full_usage \ 4498#define whoami_full_usage "\n\n" \
4467 "Print the user name associated with the current effective user id" 4499 "Print the user name associated with the current effective user id"
4468 4500
4469#define xargs_trivial_usage \ 4501#define xargs_trivial_usage \
4470 "[OPTIONS] [COMMAND] [ARGS...]" 4502 "[OPTIONS] [COMMAND] [ARGS...]"
4471#define xargs_full_usage \ 4503#define xargs_full_usage "\n\n" \
4472 "Execute COMMAND on every item given by standard input\n" \ 4504 "Execute COMMAND on every item given by standard input\n" \
4473 "\nOptions:" \ 4505 "\nOptions:" \
4474 USE_FEATURE_XARGS_SUPPORT_CONFIRMATION( \ 4506 USE_FEATURE_XARGS_SUPPORT_CONFIRMATION( \
@@ -4486,17 +4518,17 @@
4486 4518
4487#define yes_trivial_usage \ 4519#define yes_trivial_usage \
4488 "[OPTION]... [STRING]..." 4520 "[OPTION]... [STRING]..."
4489#define yes_full_usage \ 4521#define yes_full_usage "\n\n" \
4490 "Repeatedly output a line with all specified STRING(s), or 'y'" 4522 "Repeatedly output a line with all specified STRING(s), or 'y'"
4491 4523
4492#define zcat_trivial_usage \ 4524#define zcat_trivial_usage \
4493 "FILE" 4525 "FILE"
4494#define zcat_full_usage \ 4526#define zcat_full_usage "\n\n" \
4495 "Uncompress to stdout" 4527 "Uncompress to stdout"
4496 4528
4497#define zcip_trivial_usage \ 4529#define zcip_trivial_usage \
4498 "[OPTIONS] ifname script" 4530 "[OPTIONS] ifname script"
4499#define zcip_full_usage \ 4531#define zcip_full_usage "\n\n" \
4500 "Manage a ZeroConf IPv4 link-local address\n" \ 4532 "Manage a ZeroConf IPv4 link-local address\n" \
4501 "\nOptions:" \ 4533 "\nOptions:" \
4502 "\n -f Run in foreground" \ 4534 "\n -f Run in foreground" \