+ USAGE_INSMOD_MAP("\t-m\tOutput load map to stdout") \
+ "\t-x\tdo not export externs\n"
+
+#define ip_trivial_usage \
+ "[ OPTIONS ] { address | link | route | tunnel } { COMMAND | help }"
+#define ip_full_usage \
+ "ip [ OPTIONS ] OBJECT { COMMAND | help }\n" \
+ "where OBJECT := { link | addr | route | tunnel }\n" \
+ "OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }\n"
+
+#define ipaddr_trivial_usage \
+ "{ {add|del} IFADDR dev STRING | {show|flush} [ dev STRING ] [ to PREFIX ] }"
+#define ipaddr_full_usage \
+ "ipaddr {add|del} IFADDR dev STRING\n" \
+ "ipaddr {show|flush} [ dev STRING ] [ scope SCOPE-ID ]\n" \
+ " [ to PREFIX ] [ label PATTERN ]\n" \
+ "IFADDR := PREFIX | ADDR peer PREFIX\n" \
+ " [ broadcast ADDR ] [ anycast ADDR ]\n" \
+ " [ label STRING ] [ scope SCOPE-ID ]\n" \
+ "SCOPE-ID := [ host | link | global | NUMBER ]\n"
+
+#ifndef CONFIG_FEATURE_IPCALC_FANCY
+# define ipcalc_trivial_usage \
+ "[--broadcast] [--netmask] [--network] ipaddr <netmask>"
+
+# define ipcalc_full_usage \
+ "Calculate IP network settings from a IP address\n\n" \
+ "Options:\n" \
+ "\t-b\t--broadcast\tDisplay calculated broadcast address.\n" \
+ "\t-n\t--netmask\tDisplay default netmask for IP.\n" \
+ "\t-w\t--network\tDisplay calculated network address."
+#else
+# define ipcalc_trivial_usage \
+ "[OPTION]... ipaddr <netmask>"
+
+# define ipcalc_full_usage \
+ "Calculate IP network settings from a IP address\n\n" \
+ "Options:\n" \
+ "\t-b\t--broadcast\tDisplay calculated broadcast address.\n" \
+ "\t-n\t--netmask\tDisplay default netmask for IP.\n" \
+ "\t-w\t--network\tDisplay calculated network address.\n" \
+ "\t-h\t--hostname\tDisplay first resolved host name.\n" \
+ "\t-s\t--silent\tDon't ever display error messages."
+#endif
+
+#define ipcalc_notes_usage \
+ "ipcalc provides a simple way to calculate IP information for\n" \
+ "a host. The various options specify what information ipcalc\n" \
+ "should display on standard out. Multiple options may be\n" \
+ "specified.\n"
+
+#define iplink_trivial_usage \
+ "{ set DEVICE { up | down | arp { on | off } | show [ DEVICE ] }"
+#define iplink_full_usage \
+ "iplink set DEVICE { up | down | arp { on | off } |\n" \
+ " dynamic { on | off } |\n" \
+ " mtu MTU }\n" \
+ "iplink show [ DEVICE ]\n"
+
+#define iproute_trivial_usage \
+ "{ list | flush | { add | del | change | append | replace | monitor } ROUTE }"
+#define iproute_full_usage \
+ "iproute { list | flush } SELECTOR\n" \
+ "iproute get ADDRESS [ from ADDRESS iif STRING ]\n" \
+ " [ oif STRING ] [ tos TOS ]\n" \
+ "iproute { add | del | change | append | replace | monitor } ROUTE\n" \
+ "SELECTOR := [ root PREFIX ] [ match PREFIX ] [ proto RTPROTO ]\n" \
+ "ROUTE := [ TYPE ] PREFIX [ tos TOS ] [ proto RTPROTO ]\n"
+
+#define iptunnel_trivial_usage \
+ "{ add | change | del | show } [ NAME ] [ mode { ipip | gre | sit } ] [ remote ADDR ] [ local ADDR ] [ ttl TTL ]"
+#define iptunnel_full_usage \
+ "iptunnel { add | change | del | show } [ NAME ]\n" \
+ " [ mode { ipip | gre | sit } ] [ remote ADDR ] [ local ADDR ]\n" \
+ " [ [i|o]seq ] [ [i|o]key KEY ] [ [i|o]csum ]\n" \
+ " [ ttl TTL ] [ tos TOS ] [ [no]pmtudisc ] [ dev PHYS_DEV ]\n"