move remaining help text from include/usage.src.h

Signed-off-by: Pere Orga <gotrunks@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Pere Orga 2011-04-11 03:29:49 +02:00 committed by Denys Vlasenko
parent 73ef15cf38
commit 5bc8c005a8
142 changed files with 2369 additions and 2312 deletions

View File

@ -18,6 +18,17 @@
//usage:
//usage:#define loadfont_example_usage
//usage: "$ loadfont < /etc/i18n/fontname\n"
//usage:
//usage:#define setfont_trivial_usage
//usage: "FONT [-m MAPFILE] [-C TTY]"
//usage:#define setfont_full_usage "\n\n"
//usage: "Load a console font\n"
//usage: "\nOptions:"
//usage: "\n -m MAPFILE Load console screen map"
//usage: "\n -C TTY Affect TTY instead of /dev/tty"
//usage:
//usage:#define setfont_example_usage
//usage: "$ setfont -m koi8-r /etc/i18n/fontname\n"
#include "libbb.h"
#include <sys/kd.h>

View File

@ -29,6 +29,28 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
/*
//usage:#define e2fsck_trivial_usage
//usage: "[-panyrcdfvstDFSV] [-b superblock] [-B blocksize] "
//usage: "[-I inode_buffer_blocks] [-P process_inode_size] "
//usage: "[-l|-L bad_blocks_file] [-C fd] [-j external_journal] "
//usage: "[-E extended-options] device"
//usage:#define e2fsck_full_usage "\n\n"
//usage: "Check ext2/ext3 file system\n"
//usage: "\nOptions:"
//usage: "\n -p Automatic repair (no questions)"
//usage: "\n -n Make no changes to the filesystem"
//usage: "\n -y Assume 'yes' to all questions"
//usage: "\n -c Check for bad blocks and add them to the badblock list"
//usage: "\n -f Force checking even if filesystem is marked clean"
//usage: "\n -v Verbose"
//usage: "\n -b superblock Use alternative superblock"
//usage: "\n -B blocksize Force blocksize when looking for superblock"
//usage: "\n -j journal Set location of the external journal"
//usage: "\n -l file Add to badblocks list"
//usage: "\n -L file Set badblocks list"
*/
#include "e2fsck.h" /*Put all of our defines here to clean things up*/
#define _(x) x

File diff suppressed because it is too large Load Diff

View File

@ -8,6 +8,12 @@
* Also for use in uClibc (http://uclibc.org/) licensed under LGPLv2.1 or later.
*/
/*
//usage:#define parse_trivial_usage
//usage: "[-n MAXTOKENS] [-m MINTOKENS] [-d DELIMS] [-f FLAGS] FILE..."
//usage:#define parse_full_usage ""
*/
#include "libbb.h"
#if defined ENABLE_PARSE && ENABLE_PARSE

View File

@ -11,6 +11,18 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define adjtimex_trivial_usage
//usage: "[-q] [-o OFF] [-f FREQ] [-p TCONST] [-t TICK]"
//usage:#define adjtimex_full_usage "\n\n"
//usage: "Read and optionally set system timebase parameters. See adjtimex(2)\n"
//usage: "\nOptions:"
//usage: "\n -q Quiet"
//usage: "\n -o OFF Time offset, microseconds"
//usage: "\n -f FREQ Frequency adjust, integer kernel units (65536 is 1ppm)"
//usage: "\n (positive values make clock run faster)"
//usage: "\n -t TICK Microseconds per tick, usually 10000"
//usage: "\n -p TCONST"
#include "libbb.h"
#include <sys/timex.h>

View File

@ -1,6 +1,12 @@
/* vi: set sw=4 ts=4: */
/* This file was released into the public domain by Paul Fox.
*/
//usage:#define bbconfig_trivial_usage
//usage: ""
//usage:#define bbconfig_full_usage "\n\n"
//usage: "Print the config file used by busybox build"
#include "libbb.h"
#include "bbconfigopts.h"
#if ENABLE_FEATURE_COMPRESS_BBCONFIG

View File

@ -7,6 +7,17 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*
*/
//usage:#define beep_trivial_usage
//usage: "-f FREQ -l LEN -d DELAY -r COUNT -n"
//usage:#define beep_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -f Frequency in Hz"
//usage: "\n -l Length in ms"
//usage: "\n -d Delay in ms"
//usage: "\n -r Repetitions"
//usage: "\n -n Start new tone"
#include "libbb.h"
#include <linux/kd.h>

View File

@ -7,6 +7,15 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define chat_trivial_usage
//usage: "EXPECT [SEND [EXPECT [SEND...]]]"
//usage:#define chat_full_usage "\n\n"
//usage: "Useful for interacting with a modem connected to stdin/stdout.\n"
//usage: "A script consists of one or more \"expect-send\" pairs of strings,\n"
//usage: "each pair is a pair of arguments. Example:\n"
//usage: "chat '' ATZ OK ATD123456 CONNECT '' ogin: pppuser word: ppppass '~'"
#include "libbb.h"
// default timeout: 45 sec

View File

@ -5,6 +5,23 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define chrt_trivial_usage
//usage: "[-prfom] [PRIO] [PID | PROG ARGS]"
//usage:#define chrt_full_usage "\n\n"
//usage: "Change scheduling priority and class for a process\n"
//usage: "\nOptions:"
//usage: "\n -p Operate on PID"
//usage: "\n -r Set SCHED_RR class"
//usage: "\n -f Set SCHED_FIFO class"
//usage: "\n -o Set SCHED_OTHER class"
//usage: "\n -m Show min/max priorities"
//usage:
//usage:#define chrt_example_usage
//usage: "$ chrt -r 4 sleep 900; x=$!\n"
//usage: "$ chrt -f -p 3 $x\n"
//usage: "You need CAP_SYS_NICE privileges to set scheduling attributes of a process"
#include <sched.h>
#include "libbb.h"
#ifndef _POSIX_PRIORITY_SCHEDULING

View File

@ -11,6 +11,19 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define crond_trivial_usage
//usage: "-fbS -l N " IF_FEATURE_CROND_D("-d N ") "-L LOGFILE -c DIR"
//usage:#define crond_full_usage "\n\n"
//usage: " -f Foreground"
//usage: "\n -b Background (default)"
//usage: "\n -S Log to syslog (default)"
//usage: "\n -l Set log level. 0 is the most verbose, default 8"
//usage: IF_FEATURE_CROND_D(
//usage: "\n -d Set log level, log to stderr"
//usage: )
//usage: "\n -L Log to file"
//usage: "\n -c Working dir"
#include "libbb.h"
#include <syslog.h>

View File

@ -10,6 +10,16 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define crontab_trivial_usage
//usage: "[-c DIR] [-u USER] [-ler]|[FILE]"
//usage:#define crontab_full_usage "\n\n"
//usage: " -c Crontab directory"
//usage: "\n -u User"
//usage: "\n -l List crontab"
//usage: "\n -e Edit crontab"
//usage: "\n -r Delete crontab"
//usage: "\n FILE Replace crontab by FILE ('-': stdin)"
#include "libbb.h"
#define CRONTABS CONFIG_FEATURE_CROND_DIR "/crontabs"

View File

@ -53,6 +53,22 @@
The postal address is:
Richard Gooch, c/o ATNF, P. O. Box 76, Epping, N.S.W., 2121, Australia.
*/
//usage:#define devfsd_trivial_usage
//usage: "mntpnt [-v]" IF_DEVFSD_FG_NP("[-fg][-np]")
//usage:#define devfsd_full_usage "\n\n"
//usage: "Manage devfs permissions and old device name symlinks\n"
//usage: "\nOptions:"
//usage: "\n mntpnt The mount point where devfs is mounted"
//usage: "\n -v Print the protocol version numbers for devfsd"
//usage: "\n and the kernel-side protocol version and exit"
//usage: IF_DEVFSD_FG_NP(
//usage: "\n -fg Run in foreground"
//usage: "\n -np Exit after parsing the configuration file"
//usage: "\n and processing synthetic REGISTER events,"
//usage: "\n don't poll for events"
//usage: )
#include "libbb.h"
#include "xregex.h"
#include <syslog.h>

View File

@ -4,6 +4,14 @@
* Copyright (C) 2008, BusyBox Team. -solar 4/26/08
*/
//usage:#define devmem_trivial_usage
//usage: "ADDRESS [WIDTH [VALUE]]"
//usage:#define devmem_full_usage "\n\n"
//usage: "Read/write from physical address\n"
//usage: "\n ADDRESS Address to act upon"
//usage: "\n WIDTH Width (8/16/...)"
//usage: "\n VALUE Data to be written"
#include "libbb.h"
int devmem_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -13,6 +13,17 @@
* Most of the dirty work blatantly ripped off from cat.c =)
*/
//usage:#define eject_trivial_usage
//usage: "[-t] [-T] [DEVICE]"
//usage:#define eject_full_usage "\n\n"
//usage: "Eject DEVICE or default /dev/cdrom\n"
//usage: "\nOptions:"
//usage: IF_FEATURE_EJECT_SCSI(
//usage: "\n -s SCSI device"
//usage: )
//usage: "\n -t Close tray"
//usage: "\n -T Open/close tray (toggle)"
#include <sys/mount.h>
#include "libbb.h"
/* Must be after libbb.h: they need size_t */

View File

@ -21,6 +21,19 @@
* "exit" (or just close fifo) - well you guessed it.
*/
//usage:#define fbsplash_trivial_usage
//usage: "-s IMGFILE [-c] [-d DEV] [-i INIFILE] [-f CMD]"
//usage:#define fbsplash_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -s Image"
//usage: "\n -c Hide cursor"
//usage: "\n -d Framebuffer device (default /dev/fb0)"
//usage: "\n -i Config file (var=value):"
//usage: "\n BAR_LEFT,BAR_TOP,BAR_WIDTH,BAR_HEIGHT"
//usage: "\n BAR_R,BAR_G,BAR_B"
//usage: "\n -f Control pipe (else exit after drawing image)"
//usage: "\n commands: 'NN' (% for progress bar) or 'exit'"
#include "libbb.h"
#include <linux/fb.h>

View File

@ -10,6 +10,14 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define flash_eraseall_trivial_usage
//usage: "[-jq] MTD_DEVICE"
//usage:#define flash_eraseall_full_usage "\n\n"
//usage: "Erase an MTD device\n"
//usage: "\nOptions:"
//usage: "\n -j Format the device for jffs2"
//usage: "\n -q Don't display progress messages"
#include "libbb.h"
#include <mtd/mtd-user.h>
#include <linux/jffs2.h>

View File

@ -3,6 +3,18 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define flash_lock_trivial_usage
//usage: "MTD_DEVICE OFFSET SECTORS"
//usage:#define flash_lock_full_usage "\n\n"
//usage: "Lock part or all of an MTD device. If SECTORS is -1, then all sectors\n"
//usage: "will be locked, regardless of the value of OFFSET"
//usage:
//usage:#define flash_unlock_trivial_usage
//usage: "MTD_DEVICE"
//usage:#define flash_unlock_full_usage "\n\n"
//usage: "Unlock an MTD device"
#include "libbb.h"
#include <mtd/mtd-user.h>

View File

@ -7,6 +7,13 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define flashcp_trivial_usage
//usage: "-v FILE MTD_DEVICE"
//usage:#define flashcp_full_usage "\n\n"
//usage: "Copy an image to MTD device\n"
//usage: "\nOptions:"
//usage: "\n -v Verbose"
#include "libbb.h"
#include <mtd/mtd-user.h>

View File

@ -11,6 +11,58 @@
* hdparm.c - Command line interface to get/set hard disk parameters
* - by Mark Lord (C) 1994-2002 -- freely distributable
*/
//usage:#define hdparm_trivial_usage
//usage: "[OPTIONS] [DEVICE]"
//usage:#define hdparm_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -a Get/set fs readahead"
//usage: "\n -A Set drive read-lookahead flag (0/1)"
//usage: "\n -b Get/set bus state (0 == off, 1 == on, 2 == tristate)"
//usage: "\n -B Set Advanced Power Management setting (1-255)"
//usage: "\n -c Get/set IDE 32-bit IO setting"
//usage: "\n -C Check IDE power mode status"
//usage: IF_FEATURE_HDPARM_HDIO_GETSET_DMA(
//usage: "\n -d Get/set using_dma flag")
//usage: "\n -D Enable/disable drive defect-mgmt"
//usage: "\n -f Flush buffer cache for device on exit"
//usage: "\n -g Display drive geometry"
//usage: "\n -h Display terse usage information"
//usage: IF_FEATURE_HDPARM_GET_IDENTITY(
//usage: "\n -i Display drive identification")
//usage: IF_FEATURE_HDPARM_GET_IDENTITY(
//usage: "\n -I Detailed/current information directly from drive")
//usage: "\n -k Get/set keep_settings_over_reset flag (0/1)"
//usage: "\n -K Set drive keep_features_over_reset flag (0/1)"
//usage: "\n -L Set drive doorlock (0/1) (removable harddisks only)"
//usage: "\n -m Get/set multiple sector count"
//usage: "\n -n Get/set ignore-write-errors flag (0/1)"
//usage: "\n -p Set PIO mode on IDE interface chipset (0,1,2,3,4,...)"
//usage: "\n -P Set drive prefetch count"
/* //usage: "\n -q Change next setting quietly" - not supported ib bbox */
//usage: "\n -Q Get/set DMA tagged-queuing depth (if supported)"
//usage: "\n -r Get/set readonly flag (DANGEROUS to set)"
//usage: IF_FEATURE_HDPARM_HDIO_SCAN_HWIF(
//usage: "\n -R Register an IDE interface (DANGEROUS)")
//usage: "\n -S Set standby (spindown) timeout"
//usage: "\n -t Perform device read timings"
//usage: "\n -T Perform cache read timings"
//usage: "\n -u Get/set unmaskirq flag (0/1)"
//usage: IF_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF(
//usage: "\n -U Unregister an IDE interface (DANGEROUS)")
//usage: "\n -v Defaults; same as -mcudkrag for IDE drives"
//usage: "\n -V Display program version and exit immediately"
//usage: IF_FEATURE_HDPARM_HDIO_DRIVE_RESET(
//usage: "\n -w Perform device reset (DANGEROUS)")
//usage: "\n -W Set drive write-caching flag (0/1) (DANGEROUS)"
//usage: IF_FEATURE_HDPARM_HDIO_TRISTATE_HWIF(
//usage: "\n -x Tristate device for hotswap (0/1) (DANGEROUS)")
//usage: "\n -X Set IDE xfer mode (DANGEROUS)"
//usage: "\n -y Put IDE drive in standby mode"
//usage: "\n -Y Put IDE drive to sleep"
//usage: "\n -Z Disable Seagate auto-powersaving mode"
//usage: "\n -z Reread partition table"
#include "libbb.h"
/* must be _after_ libbb.h: */
#include <linux/hdreg.h>

View File

@ -27,6 +27,33 @@
* See below for mask names explanation.
*/
//usage:#define inotifyd_trivial_usage
//usage: "PROG FILE1[:MASK]..."
//usage:#define inotifyd_full_usage "\n\n"
//usage: "Run PROG on filesystem changes."
//usage: "\nWhen a filesystem event matching MASK occurs on FILEn,"
//usage: "\nPROG ACTUAL_EVENTS FILEn [SUBFILE] is run."
//usage: "\nEvents:"
//usage: "\n a File is accessed"
//usage: "\n c File is modified"
//usage: "\n e Metadata changed"
//usage: "\n w Writable file is closed"
//usage: "\n 0 Unwritable file is closed"
//usage: "\n r File is opened"
//usage: "\n D File is deleted"
//usage: "\n M File is moved"
//usage: "\n u Backing fs is unmounted"
//usage: "\n o Event queue overflowed"
//usage: "\n x File can't be watched anymore"
//usage: "\nIf watching a directory:"
//usage: "\n m Subfile is moved into dir"
//usage: "\n y Subfile is moved out of dir"
//usage: "\n n Subfile is created"
//usage: "\n d Subfile is deleted"
//usage: "\n"
//usage: "\ninotifyd waits for PROG to exit."
//usage: "\nWhen x event happens for all FILEs, inotifyd exits."
#include "libbb.h"
#include <sys/inotify.h>

View File

@ -7,6 +7,14 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define ionice_trivial_usage
//usage: "[-c 1-3] [-n 0-7] [-p PID] [PROG]"
//usage:#define ionice_full_usage "\n\n"
//usage: "Change I/O priority and class\n"
//usage: "\nOptions:"
//usage: "\n -c Class. 1:realtime 2:best-effort 3:idle"
//usage: "\n -n Priority"
#include <sys/syscall.h>
#include <asm/unistd.h>
#include "libbb.h"

View File

@ -7,6 +7,17 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define last_trivial_usage
//usage: ""IF_FEATURE_LAST_FANCY("[-HW] [-f FILE]")
//usage:#define last_full_usage "\n\n"
//usage: "Show listing of the last users that logged into the system"
//usage: IF_FEATURE_LAST_FANCY( "\n"
//usage: "\nOptions:"
/* //usage: "\n -H Show header line" */
//usage: "\n -W Display with no host column truncation"
//usage: "\n -f FILE Read from FILE instead of /var/log/wtmp"
//usage: )
#include "libbb.h"
/* NB: ut_name and ut_user are the same field, use only one name (ut_user)

View File

@ -21,6 +21,18 @@
* redirected input has been read from stdin
*/
//usage:#define less_trivial_usage
//usage: "[-EMNmh~I?] [FILE]..."
//usage:#define less_full_usage "\n\n"
//usage: "View FILE (or stdin) one screenful at a time\n"
//usage: "\nOptions:"
//usage: "\n -E Quit once the end of a file is reached"
//usage: "\n -M,-m Display status line with line numbers"
//usage: "\n and percentage through the file"
//usage: "\n -N Prefix line number to each line"
//usage: "\n -I Ignore case in all searches"
//usage: "\n -~ Suppress ~s displayed past the end of the file"
#include <sched.h> /* sched_yield() */
#include "libbb.h"

View File

@ -7,6 +7,66 @@
* known bugs: can't deal with alpha ranges
*/
//usage:#if ENABLE_FEATURE_MAKEDEVS_LEAF
//usage:#define makedevs_trivial_usage
//usage: "NAME TYPE MAJOR MINOR FIRST LAST [s]"
//usage:#define makedevs_full_usage "\n\n"
//usage: "Create a range of block or character special files"
//usage: "\n"
//usage: "\nTYPE is:"
//usage: "\n b Block device"
//usage: "\n c Character device"
//usage: "\n f FIFO, MAJOR and MINOR are ignored"
//usage: "\n"
//usage: "\nFIRST..LAST specify numbers appended to NAME."
//usage: "\nIf 's' is the last argument, the base device is created as well."
//usage: "\n"
//usage: "\nExamples:"
//usage: "\n makedevs /dev/ttyS c 4 66 2 63 -> ttyS2-ttyS63"
//usage: "\n makedevs /dev/hda b 3 0 0 8 s -> hda,hda1-hda8"
//usage:
//usage:#define makedevs_example_usage
//usage: "# makedevs /dev/ttyS c 4 66 2 63\n"
//usage: "[creates ttyS2-ttyS63]\n"
//usage: "# makedevs /dev/hda b 3 0 0 8 s\n"
//usage: "[creates hda,hda1-hda8]\n"
//usage:#endif
//usage:
//usage:#if ENABLE_FEATURE_MAKEDEVS_TABLE
//usage:#define makedevs_trivial_usage
//usage: "[-d device_table] rootdir"
//usage:#define makedevs_full_usage "\n\n"
//usage: "Create a range of special files as specified in a device table.\n"
//usage: "Device table entries take the form of:\n"
//usage: "<type> <mode> <uid> <gid> <major> <minor> <start> <inc> <count>\n"
//usage: "Where name is the file name, type can be one of:\n"
//usage: " f Regular file\n"
//usage: " d Directory\n"
//usage: " c Character device\n"
//usage: " b Block device\n"
//usage: " p Fifo (named pipe)\n"
//usage: "uid is the user id for the target file, gid is the group id for the\n"
//usage: "target file. The rest of the entries (major, minor, etc) apply to\n"
//usage: "to device special files. A '-' may be used for blank entries."
//usage:
//usage:#define makedevs_example_usage
//usage: "For example:\n"
//usage: "<name> <type> <mode><uid><gid><major><minor><start><inc><count>\n"
//usage: "/dev d 755 0 0 - - - - -\n"
//usage: "/dev/console c 666 0 0 5 1 - - -\n"
//usage: "/dev/null c 666 0 0 1 3 0 0 -\n"
//usage: "/dev/zero c 666 0 0 1 5 0 0 -\n"
//usage: "/dev/hda b 640 0 0 3 0 0 0 -\n"
//usage: "/dev/hda b 640 0 0 3 1 1 1 15\n\n"
//usage: "Will Produce:\n"
//usage: "/dev\n"
//usage: "/dev/console\n"
//usage: "/dev/null\n"
//usage: "/dev/zero\n"
//usage: "/dev/hda\n"
//usage: "/dev/hda[0-15]\n"
//usage:#endif
#include "libbb.h"
#if ENABLE_FEATURE_MAKEDEVS_LEAF

View File

@ -3,6 +3,14 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define man_trivial_usage
//usage: "[-aw] [MANPAGE]..."
//usage:#define man_full_usage "\n\n"
//usage: "Format and display manual page\n"
//usage: "\nOptions:"
//usage: "\n -a Display all pages"
//usage: "\n -w Show page locations"
#include "libbb.h"
enum {

View File

@ -7,6 +7,18 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define microcom_trivial_usage
//usage: "[-d DELAY] [-t TIMEOUT] [-s SPEED] [-X] TTY"
//usage:#define microcom_full_usage "\n\n"
//usage: "Copy bytes for stdin to TTY and from TTY to stdout\n"
//usage: "\nOptions:"
//usage: "\n -d Wait up to DELAY ms for TTY output before sending every"
//usage: "\n next byte to it"
//usage: "\n -t Exit if both stdin and TTY are silent for TIMEOUT ms"
//usage: "\n -s Set serial line to SPEED"
//usage: "\n -X Disable special meaning of NUL and Ctrl-X from stdin"
#include "libbb.h"
// set raw tty mode

View File

@ -9,6 +9,22 @@
* Based on sysvinit's mountpoint
*/
//usage:#define mountpoint_trivial_usage
//usage: "[-q] <[-dn] DIR | -x DEVICE>"
//usage:#define mountpoint_full_usage "\n\n"
//usage: "Check if the directory is a mountpoint\n"
//usage: "\nOptions:"
//usage: "\n -q Quiet"
//usage: "\n -d Print major/minor device number of the filesystem"
//usage: "\n -n Print device name of the filesystem"
//usage: "\n -x Print major/minor device number of the blockdevice"
//usage:
//usage:#define mountpoint_example_usage
//usage: "$ mountpoint /proc\n"
//usage: "/proc is not a mountpoint\n"
//usage: "$ mountpoint /sys\n"
//usage: "/sys is a mountpoint\n"
#include "libbb.h"
int mountpoint_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -3,6 +3,18 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define mt_trivial_usage
//usage: "[-f device] opcode value"
//usage:#define mt_full_usage "\n\n"
//usage: "Control magnetic tape drive operation\n"
//usage: "\n"
//usage: "Available Opcodes:\n"
//usage: "\n"
//usage: "bsf bsfm bsr bss datacompression drvbuffer eof eom erase\n"
//usage: "fsf fsfm fsr fss load lock mkpart nop offline ras1 ras2\n"
//usage: "ras3 reset retension rewind rewoffline seek setblk setdensity\n"
//usage: "setpart tell unload unlock weof wset"
#include "libbb.h"
#include <sys/mtio.h>

View File

@ -8,6 +8,14 @@
*
*/
//usage:#define raidautorun_trivial_usage
//usage: "DEVICE"
//usage:#define raidautorun_full_usage "\n\n"
//usage: "Tell the kernel to automatically search and start RAID arrays"
//usage:
//usage:#define raidautorun_example_usage
//usage: "$ raidautorun /dev/md0"
#include "libbb.h"
#include <linux/major.h>

View File

@ -10,6 +10,11 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define readahead_trivial_usage
//usage: "[FILE]..."
//usage:#define readahead_full_usage "\n\n"
//usage: "Preload FILEs to RAM"
#include "libbb.h"
int readahead_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -6,6 +6,19 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define rfkill_trivial_usage
//usage: "COMMAND [INDEX|TYPE]"
//usage:#define rfkill_full_usage "\n\n"
//usage: "Enable/disable wireless devices\n"
//usage: "\nCommands:"
//usage: "\n list [INDEX|TYPE] List current state"
//usage: "\n block INDEX|TYPE Disable device"
//usage: "\n unblock INDEX|TYPE Enable device"
//usage: "\n"
//usage: "\n TYPE: all, wlan(wifi), bluetooth, uwb(ultrawideband),"
//usage: "\n wimax, wwan, gps, fm"
#include "libbb.h"
#include <linux/rfkill.h>

View File

@ -11,6 +11,19 @@
*
* initially busyboxified by Bernhard Reutner-Fischer
*/
//usage:#define runlevel_trivial_usage
//usage: "[FILE]"
//usage:#define runlevel_full_usage "\n\n"
//usage: "Find the current and previous system runlevel\n"
//usage: "\n"
//usage: "If no utmp FILE exists or if no runlevel record can be found,\n"
//usage: "print \"unknown\""
//usage:
//usage:#define runlevel_example_usage
//usage: "$ runlevel /var/run/utmp\n"
//usage: "N 2"
#include "libbb.h"
int runlevel_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -15,6 +15,14 @@
* This was originally written for blob and then adapted for busybox.
*/
//usage:#define rx_trivial_usage
//usage: "FILE"
//usage:#define rx_full_usage "\n\n"
//usage: "Receive a file using the xmodem protocol"
//usage:
//usage:#define rx_example_usage
//usage: "$ rx /tmp/foo\n"
#include "libbb.h"
#define SOH 0x01

View File

@ -14,6 +14,13 @@
* - busyboxed
*/
//usage:#define setsid_trivial_usage
//usage: "PROG ARGS"
//usage:#define setsid_full_usage "\n\n"
//usage: "Run PROG in a new session. PROG will have no controlling terminal\n"
//usage: "and will not be affected by keyboard signals (Ctrl-C etc).\n"
//usage: "See setsid(2) for details."
#include "libbb.h"
int setsid_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -7,6 +7,16 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define strings_trivial_usage
//usage: "[-afo] [-n LEN] [FILE]..."
//usage:#define strings_full_usage "\n\n"
//usage: "Display printable strings in a binary file\n"
//usage: "\nOptions:"
//usage: "\n -a Scan whole file (default)"
//usage: "\n -f Precede strings with filenames"
//usage: "\n -n LEN At least LEN characters form a string (default 4)"
//usage: "\n -o Precede strings with decimal offsets"
#include "libbb.h"
#define WHOLE_FILE 1

View File

@ -6,6 +6,24 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define taskset_trivial_usage
//usage: "[-p] [MASK] [PID | PROG ARGS]"
//usage:#define taskset_full_usage "\n\n"
//usage: "Set or get CPU affinity\n"
//usage: "\nOptions:"
//usage: "\n -p Operate on an existing PID"
//usage:
//usage:#define taskset_example_usage
//usage: "$ taskset 0x7 ./dgemm_test&\n"
//usage: "$ taskset -p 0x1 $!\n"
//usage: "pid 4790's current affinity mask: 7\n"
//usage: "pid 4790's new affinity mask: 1\n"
//usage: "$ taskset 0x7 /bin/sh -c './taskset -p 0x1 $$'\n"
//usage: "pid 6671's current affinity mask: 1\n"
//usage: "pid 6671's new affinity mask: 1\n"
//usage: "$ taskset -p 1\n"
//usage: "pid 1's current affinity mask: 3\n"
#include <sched.h>
#include "libbb.h"

View File

@ -9,6 +9,13 @@
Heavily modified for busybox by Erik Andersen <andersen@codepoet.org>
*/
//usage:#define time_trivial_usage
//usage: "[-v] PROG ARGS"
//usage:#define time_full_usage "\n\n"
//usage: "Run PROG, display resource usage when it exits\n"
//usage: "\nOptions:"
//usage: "\n -v Verbose"
#include "libbb.h"
/* Information on the resources used by a child process. */

View File

@ -28,6 +28,12 @@
* rewrite 14-11-2008 vda
*/
//usage:#define timeout_trivial_usage
//usage: "[-t SECS] [-s SIG] PROG ARGS"
//usage:#define timeout_full_usage "\n\n"
//usage: "Runs PROG. Sends SIG to it if it is not gone in SECS seconds.\n"
//usage: "Defaults: SECS: 10, SIG: TERM."
#include "libbb.h"
int timeout_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -9,6 +9,12 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define ttysize_trivial_usage
//usage: "[w] [h]"
//usage:#define ttysize_full_usage "\n\n"
//usage: "Print dimension(s) of stdin's terminal, on error return 80x25"
#include "libbb.h"
int ttysize_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -27,6 +27,12 @@
* mods from distributed source (eject-2.0.13) are by
* Matthew Stoltenberg <d3matt@gmail.com>
*/
//usage:#define volname_trivial_usage
//usage: "[DEVICE]"
//usage:#define volname_full_usage "\n\n"
//usage: "Show CD volume name of the DEVICE (default /dev/cdrom)"
#include "libbb.h"
int volname_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -6,6 +6,15 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define wall_trivial_usage
//usage: "[FILE]"
//usage:#define wall_full_usage "\n\n"
//usage: "Write content of FILE or stdin to all logged-in users"
//usage:
//usage:#define wall_sample_usage
//usage: "echo foo | wall\n"
//usage: "wall ./mymessage"
#include "libbb.h"
int wall_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -9,6 +9,17 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define watchdog_trivial_usage
//usage: "[-t N[ms]] [-T N[ms]] [-F] DEV"
//usage:#define watchdog_full_usage "\n\n"
//usage: "Periodically write to watchdog device DEV\n"
//usage: "\nOptions:"
//usage: "\n -T N Reboot after N seconds if not reset (default 60)"
//usage: "\n -t N Reset every N seconds (default 30)"
//usage: "\n -F Run in foreground"
//usage: "\n"
//usage: "\nUse 500ms to specify period in milliseconds"
#include "libbb.h"
#include "linux/types.h" /* for __u32 */
#include "linux/watchdog.h"

View File

@ -13,6 +13,25 @@
* modified for getopt32 by Arne Bernin <arne [at] alamut.de>
*/
//usage:#define arp_trivial_usage
//usage: "\n[-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]"
//usage: "\n[-v] [-i IF] -d HOSTNAME [pub]"
//usage: "\n[-v] [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [temp]"
//usage: "\n[-v] [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [netmask MASK] pub"
//usage: "\n[-v] [-H HWTYPE] [-i IF] -Ds HOSTNAME IFACE [netmask MASK] pub"
//usage:#define arp_full_usage "\n\n"
//usage: "Manipulate ARP cache\n"
//usage: "\nOptions:"
//usage: "\n -a Display (all) hosts"
//usage: "\n -s Set new ARP entry"
//usage: "\n -d Delete a specified entry"
//usage: "\n -v Verbose"
//usage: "\n -n Don't resolve names"
//usage: "\n -i IF Network interface"
//usage: "\n -D Read <hwaddr> from given device"
//usage: "\n -A,-p AF Protocol family"
//usage: "\n -H HWTYPE Hardware address type"
#include "libbb.h"
#include "inet_common.h"

View File

@ -6,6 +6,23 @@
* Busybox port: Nick Fedchik <nick@fedchik.org.ua>
*/
//usage:#define arping_trivial_usage
//usage: "[-fqbDUA] [-c CNT] [-w TIMEOUT] [-I IFACE] [-s SRC_IP] DST_IP"
//usage:#define arping_full_usage "\n\n"
//usage: "Send ARP requests/replies\n"
//usage: "\nOptions:"
//usage: "\n -f Quit on first ARP reply"
//usage: "\n -q Quiet"
//usage: "\n -b Keep broadcasting, don't go unicast"
//usage: "\n -D Duplicated address detection mode"
//usage: "\n -U Unsolicited ARP mode, update your neighbors"
//usage: "\n -A ARP answer mode, update your neighbors"
//usage: "\n -c N Stop after sending N ARP requests"
//usage: "\n -w TIMEOUT Time to wait for ARP reply, seconds"
//usage: "\n -I IFACE Interface to use (default eth0)"
//usage: "\n -s SRC_IP Sender IP address"
//usage: "\n DST_IP Target IP address"
#include <arpa/inet.h>
#include <net/if.h>
#include <netinet/ether.h>

View File

@ -12,6 +12,30 @@
/* This applet currently uses only the ioctl interface and no sysfs at all.
* At the time of this writing this was considered a feature.
*/
//usage:#define brctl_trivial_usage
//usage: "COMMAND [BRIDGE [INTERFACE]]"
//usage:#define brctl_full_usage "\n\n"
//usage: "Manage ethernet bridges\n"
//usage: "\nCommands:"
//usage: IF_FEATURE_BRCTL_SHOW(
//usage: "\n show Show a list of bridges"
//usage: )
//usage: "\n addbr BRIDGE Create BRIDGE"
//usage: "\n delbr BRIDGE Delete BRIDGE"
//usage: "\n addif BRIDGE IFACE Add IFACE to BRIDGE"
//usage: "\n delif BRIDGE IFACE Delete IFACE from BRIDGE"
//usage: IF_FEATURE_BRCTL_FANCY(
//usage: "\n setageing BRIDGE TIME Set ageing time"
//usage: "\n setfd BRIDGE TIME Set bridge forward delay"
//usage: "\n sethello BRIDGE TIME Set hello time"
//usage: "\n setmaxage BRIDGE TIME Set max message age"
//usage: "\n setpathcost BRIDGE COST Set path cost"
//usage: "\n setportprio BRIDGE PRIO Set port priority"
//usage: "\n setbridgeprio BRIDGE PRIO Set bridge priority"
//usage: "\n stp BRIDGE [1/yes/on|0/no/off] STP on/off"
//usage: )
#include "libbb.h"
#include <linux/sockios.h>
#include <net/if.h>

View File

@ -17,6 +17,22 @@
* the first porting of oao' scdns to busybox also.
*/
//usage:#define dnsd_trivial_usage
//usage: "[-dvs] [-c CONFFILE] [-t TTL_SEC] [-p PORT] [-i ADDR]"
//usage:#define dnsd_full_usage "\n\n"
//usage: "Small static DNS server daemon\n"
//usage: "\nOptions:"
//usage: "\n -c FILE Config file"
//usage: "\n -t SEC TTL"
//usage: "\n -p PORT Listen on PORT"
//usage: "\n -i ADDR Listen on ADDR"
//usage: "\n -d Daemonize"
//usage: "\n -v Verbose"
//usage: "\n -s Send successful replies only. Use this if you want"
//usage: "\n to use /etc/resolv.conf with two nameserver lines:"
//usage: "\n nameserver DNSD_SERVER"
//usage: "\n nameserver NORNAL_DNS_SERVER"
#include "libbb.h"
#include <syslog.h>

View File

@ -64,6 +64,16 @@
* filter. That configuration consumes more power.
*/
//usage:#define ether_wake_trivial_usage
//usage: "[-b] [-i iface] [-p aa:bb:cc:dd[:ee:ff]] MAC"
//usage:#define ether_wake_full_usage "\n\n"
//usage: "Send a magic packet to wake up sleeping machines.\n"
//usage: "MAC must be a station address (00:11:22:33:44:55) or\n"
//usage: "a hostname with a known 'ethers' entry.\n"
//usage: "\nOptions:"
//usage: "\n -b Send wake-up packet to the broadcast address"
//usage: "\n -i iface Interface to use (default eth0)"
//usage: "\n -p pass Append four or six byte password PW to the packet"
#include <netpacket/packet.h>
#include <net/ethernet.h>

View File

@ -13,6 +13,44 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define ftpget_trivial_usage
//usage: "[OPTIONS] HOST [LOCAL_FILE] REMOTE_FILE"
//usage:#define ftpget_full_usage "\n\n"
//usage: "Retrieve a remote file via FTP\n"
//usage: "\nOptions:"
//usage: IF_FEATURE_FTPGETPUT_LONG_OPTIONS(
//usage: "\n -c,--continue Continue previous transfer"
//usage: "\n -v,--verbose Verbose"
//usage: "\n -u,--username Username"
//usage: "\n -p,--password Password"
//usage: "\n -P,--port Port number"
//usage: )
//usage: IF_NOT_FEATURE_FTPGETPUT_LONG_OPTIONS(
//usage: "\n -c Continue previous transfer"
//usage: "\n -v Verbose"
//usage: "\n -u Username"
//usage: "\n -p Password"
//usage: "\n -P Port number"
//usage: )
//usage:
//usage:#define ftpput_trivial_usage
//usage: "[OPTIONS] HOST [REMOTE_FILE] LOCAL_FILE"
//usage:#define ftpput_full_usage "\n\n"
//usage: "Store a local file on a remote machine via FTP\n"
//usage: "\nOptions:"
//usage: IF_FEATURE_FTPGETPUT_LONG_OPTIONS(
//usage: "\n -v,--verbose Verbose"
//usage: "\n -u,--username Username"
//usage: "\n -p,--password Password"
//usage: "\n -P,--port Port number"
//usage: )
//usage: IF_NOT_FEATURE_FTPGETPUT_LONG_OPTIONS(
//usage: "\n -v Verbose"
//usage: "\n -u Username"
//usage: "\n -p Password"
//usage: "\n -P Port number"
//usage: )
#include "libbb.h"
struct globals {

View File

@ -9,6 +9,25 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define hostname_trivial_usage
//usage: "[OPTIONS] [HOSTNAME | -F FILE]"
//usage:#define hostname_full_usage "\n\n"
//usage: "Get or set hostname or DNS domain name\n"
//usage: "\nOptions:"
//usage: "\n -s Short"
//usage: "\n -i Addresses for the hostname"
//usage: "\n -d DNS domain name"
//usage: "\n -f Fully qualified domain name"
//usage: "\n -F FILE Use FILE's content as hostname"
//usage:
//usage:#define hostname_example_usage
//usage: "$ hostname\n"
//usage: "sage\n"
//usage:
//usage:#define dnsdomainname_trivial_usage NOUSAGE_STR
//usage:#define dnsdomainname_full_usage ""
#include "libbb.h"
static void do_sethostname(char *s, int isfile)

View File

@ -97,6 +97,32 @@
*/
/* TODO: use TCP_CORK, parse_config() */
//usage:#define httpd_trivial_usage
//usage: "[-ifv[v]]"
//usage: " [-c CONFFILE]"
//usage: " [-p [IP:]PORT]"
//usage: IF_FEATURE_HTTPD_SETUID(" [-u USER[:GRP]]")
//usage: IF_FEATURE_HTTPD_BASIC_AUTH(" [-r REALM]")
//usage: " [-h HOME]\n"
//usage: "or httpd -d/-e" IF_FEATURE_HTTPD_AUTH_MD5("/-m") " STRING"
//usage:#define httpd_full_usage "\n\n"
//usage: "Listen for incoming HTTP requests\n"
//usage: "\nOptions:"
//usage: "\n -i Inetd mode"
//usage: "\n -f Don't daemonize"
//usage: "\n -v[v] Verbose"
//usage: "\n -p [IP:]PORT Bind to IP:PORT (default *:80)"
//usage: IF_FEATURE_HTTPD_SETUID(
//usage: "\n -u USER[:GRP] Set uid/gid after binding to port")
//usage: IF_FEATURE_HTTPD_BASIC_AUTH(
//usage: "\n -r REALM Authentication Realm for Basic Authentication")
//usage: "\n -h HOME Home directory (default .)"
//usage: "\n -c FILE Configuration file (default {/etc,HOME}/httpd.conf)"
//usage: IF_FEATURE_HTTPD_AUTH_MD5(
//usage: "\n -m STRING MD5 crypt STRING")
//usage: "\n -e STRING HTML encode STRING"
//usage: "\n -d STRING URL decode STRING"
#include "libbb.h"
#if ENABLE_FEATURE_HTTPD_USE_SENDFILE
# include <sys/sendfile.h>

View File

@ -26,6 +26,27 @@
* IPV6 support added by Bart Visscher <magick@linux-fan.com>
*/
//usage:#define ifconfig_trivial_usage
//usage: IF_FEATURE_IFCONFIG_STATUS("[-a]") " interface [address]"
//usage:#define ifconfig_full_usage "\n\n"
//usage: "Configure a network interface\n"
//usage: "\nOptions:"
//usage: "\n"
//usage: IF_FEATURE_IPV6(
//usage: " [add ADDRESS[/PREFIXLEN]]\n")
//usage: IF_FEATURE_IPV6(
//usage: " [del ADDRESS[/PREFIXLEN]]\n")
//usage: " [[-]broadcast [ADDRESS]] [[-]pointopoint [ADDRESS]]\n"
//usage: " [netmask ADDRESS] [dstaddr ADDRESS]\n"
//usage: IF_FEATURE_IFCONFIG_SLIP(
//usage: " [outfill NN] [keepalive NN]\n")
//usage: " " IF_FEATURE_IFCONFIG_HW("[hw ether" IF_FEATURE_HWIB("|infiniband")" ADDRESS] ") "[metric NN] [mtu NN]\n"
//usage: " [[-]trailers] [[-]arp] [[-]allmulti]\n"
//usage: " [multicast] [[-]promisc] [txqueuelen NN] [[-]dynamic]\n"
//usage: IF_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ(
//usage: " [mem_start NN] [io_addr NN] [irq NN]\n")
//usage: " [up|down] ..."
#include <net/if.h>
#include <net/if_arp.h>
#include <netinet/in.h>

View File

@ -98,6 +98,33 @@
* set version to 1.1.0
*/
//usage:#define ifenslave_trivial_usage
//usage: "[-cdf] MASTER_IFACE SLAVE_IFACE..."
//usage:#define ifenslave_full_usage "\n\n"
//usage: "Configure network interfaces for parallel routing\n"
//usage: "\nOptions:"
//usage: "\n -c,--change-active Change active slave"
//usage: "\n -d,--detach Remove slave interface from bonding device"
//usage: "\n -f,--force Force, even if interface is not Ethernet"
/* //usage: "\n -r,--receive-slave Create a receive-only slave" */
//usage:
//usage:#define ifenslave_example_usage
//usage: "To create a bond device, simply follow these three steps:\n"
//usage: "- ensure that the required drivers are properly loaded:\n"
//usage: " # modprobe bonding ; modprobe <3c59x|eepro100|pcnet32|tulip|...>\n"
//usage: "- assign an IP address to the bond device:\n"
//usage: " # ifconfig bond0 <addr> netmask <mask> broadcast <bcast>\n"
//usage: "- attach all the interfaces you need to the bond device:\n"
//usage: " # ifenslave bond0 eth0 eth1 eth2\n"
//usage: " If bond0 didn't have a MAC address, it will take eth0's. Then, all\n"
//usage: " interfaces attached AFTER this assignment will get the same MAC addr.\n\n"
//usage: " To detach a dead interface without setting the bond device down:\n"
//usage: " # ifenslave -d bond0 eth1\n\n"
//usage: " To set the bond device down and automatically release all the slaves:\n"
//usage: " # ifconfig bond0 down\n\n"
//usage: " To change active slave:\n"
//usage: " # ifenslave -c bond0 eth0\n"
#include "libbb.h"
/* #include <net/if.h> - no. linux/if_bonding.h pulls in linux/if.h */

View File

@ -6,6 +6,32 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define ifplugd_trivial_usage
//usage: "[OPTIONS]"
//usage:#define ifplugd_full_usage "\n\n"
//usage: "Network interface plug detection daemon\n"
//usage: "\nOptions:"
//usage: "\n -n Don't daemonize"
//usage: "\n -s Don't log to syslog"
//usage: "\n -i IFACE Interface"
//usage: "\n -f/-F Treat link detection error as link down/link up"
//usage: "\n (otherwise exit on error)"
//usage: "\n -a Don't up interface at each link probe"
//usage: "\n -M Monitor creation/destruction of interface"
//usage: "\n (otherwise it must exist)"
//usage: "\n -r PROG Script to run"
//usage: "\n -x ARG Extra argument for script"
//usage: "\n -I Don't exit on nonzero exit code from script"
//usage: "\n -p Don't run script on daemon startup"
//usage: "\n -q Don't run script on daemon quit"
//usage: "\n -l Run script on startup even if no cable is detected"
//usage: "\n -t SECS Poll time in seconds"
//usage: "\n -u SECS Delay before running script after link up"
//usage: "\n -d SECS Delay after link down"
//usage: "\n -m MODE API mode (mii, priv, ethtool, wlan, iff, auto)"
//usage: "\n -k Kill running daemon"
#include "libbb.h"
#include "fix_u32.h"

View File

@ -17,6 +17,34 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define ifup_trivial_usage
//usage: "[-an"IF_FEATURE_IFUPDOWN_MAPPING("m")"vf] [-i FILE] IFACE..."
//usage:#define ifup_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -a De/configure all interfaces automatically"
//usage: "\n -i FILE Use FILE for interface definitions"
//usage: "\n -n Print out what would happen, but don't do it"
//usage: IF_FEATURE_IFUPDOWN_MAPPING(
//usage: "\n (note: doesn't disable mappings)"
//usage: "\n -m Don't run any mappings"
//usage: )
//usage: "\n -v Print out what would happen before doing it"
//usage: "\n -f Force de/configuration"
//usage:
//usage:#define ifdown_trivial_usage
//usage: "[-an"IF_FEATURE_IFUPDOWN_MAPPING("m")"vf] [-i FILE] IFACE..."
//usage:#define ifdown_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -a De/configure all interfaces automatically"
//usage: "\n -i FILE Use FILE for interface definitions"
//usage: "\n -n Print out what would happen, but don't do it"
//usage: IF_FEATURE_IFUPDOWN_MAPPING(
//usage: "\n (note: doesn't disable mappings)"
//usage: "\n -m Don't run any mappings"
//usage: )
//usage: "\n -v Print out what would happen before doing it"
//usage: "\n -f Force de/configuration"
#include "libbb.h"
/* After libbb.h, since it needs sys/types.h on some systems */
#include <sys/utsname.h>

View File

@ -154,6 +154,17 @@
* setuid()
*/
//usage:#define inetd_trivial_usage
//usage: "[-fe] [-q N] [-R N] [CONFFILE]"
//usage:#define inetd_full_usage "\n\n"
//usage: "Listen for network connections and launch programs\n"
//usage: "\nOptions:"
//usage: "\n -f Run in foreground"
//usage: "\n -e Log to stderr"
//usage: "\n -q N Socket listen queue (default: 128)"
//usage: "\n -R N Pause services after N connects/min"
//usage: "\n (default: 0 - disabled)"
#include <syslog.h>
#include <sys/un.h>

View File

@ -9,6 +9,79 @@
* Bernhard Reutner-Fischer rewrote to use index_in_substr_array
*/
/* would need to make the " | " optional depending on more than one selected: */
//usage:#define ip_trivial_usage
//usage: "[OPTIONS] {"
//usage: IF_FEATURE_IP_ADDRESS("address | ")
//usage: IF_FEATURE_IP_ROUTE("route | ")
//usage: IF_FEATURE_IP_LINK("link | ")
//usage: IF_FEATURE_IP_TUNNEL("tunnel | ")
//usage: IF_FEATURE_IP_RULE("rule")
//usage: "} {COMMAND}"
//usage:#define ip_full_usage "\n\n"
//usage: "ip [OPTIONS] OBJECT {COMMAND}\n"
//usage: "where OBJECT := {"
//usage: IF_FEATURE_IP_ADDRESS("address | ")
//usage: IF_FEATURE_IP_ROUTE("route | ")
//usage: IF_FEATURE_IP_LINK("link | ")
//usage: IF_FEATURE_IP_TUNNEL("tunnel | ")
//usage: IF_FEATURE_IP_RULE("rule")
//usage: "}\n"
//usage: "OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }"
//usage:
//usage:#define ipaddr_trivial_usage
//usage: "{ {add|del} IFADDR dev STRING | {show|flush}\n"
//usage: " [dev STRING] [to PREFIX] }"
//usage:#define ipaddr_full_usage "\n\n"
//usage: "ipaddr {add|delete} IFADDR dev STRING\n"
//usage: "ipaddr {show|flush} [dev STRING] [scope SCOPE-ID]\n"
//usage: " [to PREFIX] [label PATTERN]\n"
//usage: " IFADDR := PREFIX | ADDR peer PREFIX\n"
//usage: " [broadcast ADDR] [anycast ADDR]\n"
//usage: " [label STRING] [scope SCOPE-ID]\n"
//usage: " SCOPE-ID := [host | link | global | NUMBER]"
//usage:
//usage:#define iplink_trivial_usage
//usage: "{ set DEVICE { up | down | arp { on | off } | show [DEVICE] }"
//usage:#define iplink_full_usage "\n\n"
//usage: "iplink set DEVICE { up | down | arp | multicast { on | off } |\n"
//usage: " dynamic { on | off } |\n"
//usage: " mtu MTU }\n"
//usage: "iplink show [DEVICE]"
//usage:
//usage:#define iproute_trivial_usage
//usage: "{ list | flush | { add | del | change | append |\n"
//usage: " replace | monitor } ROUTE }"
//usage:#define iproute_full_usage "\n\n"
//usage: "iproute { list | flush } SELECTOR\n"
//usage: "iproute get ADDRESS [from ADDRESS iif STRING]\n"
//usage: " [oif STRING] [tos TOS]\n"
//usage: "iproute { add | del | change | append | replace | monitor } ROUTE\n"
//usage: " SELECTOR := [root PREFIX] [match PREFIX] [proto RTPROTO]\n"
//usage: " ROUTE := [TYPE] PREFIX [tos TOS] [proto RTPROTO]\n"
//usage: " [metric METRIC]"
//usage:
//usage:#define iprule_trivial_usage
//usage: "{[list | add | del] RULE}"
//usage:#define iprule_full_usage "\n\n"
//usage: "iprule [list | add | del] SELECTOR ACTION\n"
//usage: " SELECTOR := [from PREFIX] [to PREFIX] [tos TOS] [fwmark FWMARK]\n"
//usage: " [dev STRING] [pref NUMBER]\n"
//usage: " ACTION := [table TABLE_ID] [nat ADDRESS]\n"
//usage: " [prohibit | reject | unreachable]\n"
//usage: " [realms [SRCREALM/]DSTREALM]\n"
//usage: " TABLE_ID := [local | main | default | NUMBER]"
//usage:
//usage:#define iptunnel_trivial_usage
//usage: "{ add | change | del | show } [NAME]\n"
//usage: " [mode { ipip | gre | sit }]\n"
//usage: " [remote ADDR] [local ADDR] [ttl TTL]"
//usage:#define iptunnel_full_usage "\n\n"
//usage: "iptunnel { add | change | del | show } [NAME]\n"
//usage: " [mode { ipip | gre | sit }] [remote ADDR] [local ADDR]\n"
//usage: " [[i|o]seq] [[i|o]key KEY] [[i|o]csum]\n"
//usage: " [ttl TTL] [tos TOS] [[no]pmtudisc] [dev PHYS_DEV]"
#include "libbb.h"
#include "libiproute/utils.h"

View File

@ -11,6 +11,33 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define ipcalc_trivial_usage
//usage: "[OPTIONS] ADDRESS[[/]NETMASK] [NETMASK]"
//usage:#define ipcalc_full_usage "\n\n"
//usage: "Calculate IP network settings from a IP address\n"
//usage: "\nOptions:"
//usage: IF_FEATURE_IPCALC_LONG_OPTIONS(
//usage: "\n -b,--broadcast Display calculated broadcast address"
//usage: "\n -n,--network Display calculated network address"
//usage: "\n -m,--netmask Display default netmask for IP"
//usage: IF_FEATURE_IPCALC_FANCY(
//usage: "\n -p,--prefix Display the prefix for IP/NETMASK"
//usage: "\n -h,--hostname Display first resolved host name"
//usage: "\n -s,--silent Don't ever display error messages"
//usage: )
//usage: )
//usage: IF_NOT_FEATURE_IPCALC_LONG_OPTIONS(
//usage: "\n -b Display calculated broadcast address"
//usage: "\n -n Display calculated network address"
//usage: "\n -m Display default netmask for IP"
//usage: IF_FEATURE_IPCALC_FANCY(
//usage: "\n -p Display the prefix for IP/NETMASK"
//usage: "\n -h Display first resolved host name"
//usage: "\n -s Don't ever display error messages"
//usage: )
//usage: )
#include "libbb.h"
/* After libbb.h, because on some systems it needs other includes */
#include <arpa/inet.h>

View File

@ -7,6 +7,17 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define fakeidentd_trivial_usage
//usage: "[-fiw] [-b ADDR] [STRING]"
//usage:#define fakeidentd_full_usage "\n\n"
//usage: "Provide fake ident (auth) service\n"
//usage: "\nOptions:"
//usage: "\n -f Run in foreground"
//usage: "\n -i Inetd mode"
//usage: "\n -w Inetd 'wait' mode"
//usage: "\n -b ADDR Bind to specified address"
//usage: "\n STRING Ident answer string (default: nobody)"
#include "libbb.h"
#include <syslog.h>
#include "isrv.h"

View File

@ -11,6 +11,20 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define nslookup_trivial_usage
//usage: "[HOST] [SERVER]"
//usage:#define nslookup_full_usage "\n\n"
//usage: "Query the nameserver for the IP address of the given HOST\n"
//usage: "optionally using a specified DNS server"
//usage:
//usage:#define nslookup_example_usage
//usage: "$ nslookup localhost\n"
//usage: "Server: default\n"
//usage: "Address: default\n"
//usage: "\n"
//usage: "Name: debian\n"
//usage: "Address: 127.0.0.1\n"
#include <resolv.h>
#include "libbb.h"

View File

@ -27,6 +27,23 @@
* *
***********************************************************************
*/
//usage:#define ntpd_trivial_usage
//usage: "[-dnqNw"IF_FEATURE_NTPD_SERVER("l")"] [-S PROG] [-p PEER]..."
//usage:#define ntpd_full_usage "\n\n"
//usage: "NTP client/server\n"
//usage: "\nOptions:"
//usage: "\n -d Verbose"
//usage: "\n -n Do not daemonize"
//usage: "\n -q Quit after clock is set"
//usage: "\n -N Run at high priority"
//usage: "\n -w Do not set time (only query peers), implies -n"
//usage: IF_FEATURE_NTPD_SERVER(
//usage: "\n -l Run as server on port 123"
//usage: )
//usage: "\n -S PROG Run PROG after stepping time, stratum change, and every 11 mins"
//usage: "\n -p PEER Obtain time from PEER (may be repeated)"
#include "libbb.h"
#include <math.h>
#include <netinet/ip.h> /* For IPTOS_LOWDELAY definition */

View File

@ -6,6 +6,18 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define pscan_trivial_usage
//usage: "[-cb] [-p MIN_PORT] [-P MAX_PORT] [-t TIMEOUT] [-T MIN_RTT] HOST"
//usage:#define pscan_full_usage "\n\n"
//usage: "Scan a host, print all open ports\n"
//usage: "\nOptions:"
//usage: "\n -c Show closed ports too"
//usage: "\n -b Show blocked ports too"
//usage: "\n -p Scan from this port (default 1)"
//usage: "\n -P Scan up to this port (default 1024)"
//usage: "\n -t Timeout (default 5000 ms)"
//usage: "\n -T Minimum rtt (default 5 ms, increase for congested hosts)"
#include "libbb.h"
/* debugging */

View File

@ -25,6 +25,15 @@
* remove ridiculous amounts of bloat.
*/
//usage:#define route_trivial_usage
//usage: "[{add|del|delete}]"
//usage:#define route_full_usage "\n\n"
//usage: "Edit kernel routing tables\n"
//usage: "\nOptions:"
//usage: "\n -n Don't resolve names"
//usage: "\n -e Display other/more information"
//usage: "\n -A inet" IF_FEATURE_IPV6("{6}") " Select address family"
#include <net/route.h>
#include <net/if.h>

View File

@ -13,6 +13,20 @@
* - The -F options allows disabling of RTS/CTS flow control.
*/
//usage:#define slattach_trivial_usage
//usage: "[-cehmLF] [-s SPEED] [-p PROTOCOL] DEVICE"
//usage:#define slattach_full_usage "\n\n"
//usage: "Attach network interface(s) to serial line(s)\n"
//usage: "\nOptions:"
//usage: "\n -p PROT Set protocol (slip, cslip, slip6, clisp6 or adaptive)"
//usage: "\n -s SPD Set line speed"
//usage: "\n -e Exit after initializing device"
//usage: "\n -h Exit when the carrier is lost"
//usage: "\n -c PROG Run PROG when the line is hung up"
//usage: "\n -m Do NOT initialize the line in raw 8 bits mode"
//usage: "\n -L Enable 3-wire operation"
//usage: "\n -F Disable RTS/CTS flow control"
#include "libbb.h"
#include "libiproute/utils.h" /* invarg() */

View File

@ -7,6 +7,27 @@
* Bernhard Reutner-Fischer adjusted for busybox
*/
//usage:#define tc_trivial_usage
/* //usage: "[OPTIONS] OBJECT CMD [dev STRING]" */
//usage: "OBJECT CMD [dev STRING]"
//usage:#define tc_full_usage "\n\n"
//usage: "OBJECT: {qdisc|class|filter}\n"
//usage: "CMD: {add|del|change|replace|show}\n"
//usage: "\n"
//usage: "qdisc [ handle QHANDLE ] [ root |"IF_FEATURE_TC_INGRESS(" ingress |")" parent CLASSID ]\n"
/* //usage: "[ estimator INTERVAL TIME_CONSTANT ]\n" */
//usage: " [ [ QDISC_KIND ] [ help | OPTIONS ] ]\n"
//usage: " QDISC_KIND := { [p|b]fifo | tbf | prio | cbq | red | etc. }\n"
//usage: "qdisc show [ dev STRING ]"IF_FEATURE_TC_INGRESS(" [ingress]")"\n"
//usage: "class [ classid CLASSID ] [ root | parent CLASSID ]\n"
//usage: " [ [ QDISC_KIND ] [ help | OPTIONS ] ]\n"
//usage: "class show [ dev STRING ] [ root | parent CLASSID ]\n"
//usage: "filter [ pref PRIO ] [ protocol PROTO ]\n"
/* //usage: "\t[ estimator INTERVAL TIME_CONSTANT ]\n" */
//usage: " [ root | classid CLASSID ] [ handle FILTERID ]\n"
//usage: " [ [ FILTER_TYPE ] [ help | OPTIONS ] ]\n"
//usage: "filter show [ dev STRING ] [ root | parent CLASSID ]"
#include "libbb.h"
#include "libiproute/utils.h"

View File

@ -29,6 +29,43 @@
* - don't know how to retrieve ORIGDST for udp.
*/
//usage:#define tcpsvd_trivial_usage
//usage: "[-hEv] [-c N] [-C N[:MSG]] [-b N] [-u USER] [-l NAME] IP PORT PROG"
/* with not-implemented options: */
/* //usage: "[-hpEvv] [-c N] [-C N[:MSG]] [-b N] [-u USER] [-l NAME] [-i DIR|-x CDB] [-t SEC] IP PORT PROG" */
//usage:#define tcpsvd_full_usage "\n\n"
//usage: "Create TCP socket, bind to IP:PORT and listen\n"
//usage: "for incoming connection. Run PROG for each connection.\n"
//usage: "\n IP IP to listen on. '0' = all"
//usage: "\n PORT Port to listen on"
//usage: "\n PROG ARGS Program to run"
//usage: "\n -l NAME Local hostname (else looks up local hostname in DNS)"
//usage: "\n -u USER[:GRP] Change to user/group after bind"
//usage: "\n -c N Handle up to N connections simultaneously"
//usage: "\n -b N Allow a backlog of approximately N TCP SYNs"
//usage: "\n -C N[:MSG] Allow only up to N connections from the same IP."
//usage: "\n New connections from this IP address are closed"
//usage: "\n immediately. MSG is written to the peer before close"
//usage: "\n -h Look up peer's hostname"
//usage: "\n -E Don't set up environment variables"
//usage: "\n -v Verbose"
//usage:
//usage:#define udpsvd_trivial_usage
//usage: "[-hEv] [-c N] [-u USER] [-l NAME] IP PORT PROG"
//usage:#define udpsvd_full_usage "\n\n"
//usage: "Create UDP socket, bind to IP:PORT and wait\n"
//usage: "for incoming packets. Run PROG for each packet,\n"
//usage: "redirecting all further packets with same peer ip:port to it.\n"
//usage: "\n IP IP to listen on. '0' = all"
//usage: "\n PORT Port to listen on"
//usage: "\n PROG ARGS Program to run"
//usage: "\n -l NAME Local hostname (else looks up local hostname in DNS)"
//usage: "\n -u USER[:GRP] Change to user/group after bind"
//usage: "\n -c N Handle up to N connections simultaneously"
//usage: "\n -h Look up peer's hostname"
//usage: "\n -E Don't set up environment variables"
//usage: "\n -v Verbose"
#include "libbb.h"
/* Wants <limits.h> etc, thus included after libbb.h: */

View File

@ -21,6 +21,22 @@
*
*/
//usage:#if ENABLE_FEATURE_TELNET_AUTOLOGIN
//usage:#define telnet_trivial_usage
//usage: "[-a] [-l USER] HOST [PORT]"
//usage:#define telnet_full_usage "\n\n"
//usage: "Connect to telnet server\n"
//usage: "\nOptions:"
//usage: "\n -a Automatic login with $USER variable"
//usage: "\n -l USER Automatic login as USER"
//usage:
//usage:#else
//usage:#define telnet_trivial_usage
//usage: "HOST [PORT]"
//usage:#define telnet_full_usage "\n\n"
//usage: "Connect to telnet server"
//usage:#endif
#include <arpa/telnet.h>
#include <netinet/in.h>
#include "libbb.h"

View File

@ -20,6 +20,28 @@
* Vladimir Oleynik <dzo@simtreas.ru> 2001
* Set process group corrections, initial busybox port
*/
//usage:#define telnetd_trivial_usage
//usage: "[OPTIONS]"
//usage:#define telnetd_full_usage "\n\n"
//usage: "Handle incoming telnet connections"
//usage: IF_NOT_FEATURE_TELNETD_STANDALONE(" via inetd") "\n"
//usage: "\nOptions:"
//usage: "\n -l LOGIN Exec LOGIN on connect"
//usage: "\n -f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue"
//usage: "\n -K Close connection as soon as login exits"
//usage: "\n (normally wait until all programs close slave pty)"
//usage: IF_FEATURE_TELNETD_STANDALONE(
//usage: "\n -p PORT Port to listen on"
//usage: "\n -b ADDR[:PORT] Address to bind to"
//usage: "\n -F Run in foreground"
//usage: "\n -i Inetd mode"
//usage: IF_FEATURE_TELNETD_INETD_WAIT(
//usage: "\n -w SEC Inetd 'wait' mode, linger time SEC"
//usage: "\n -S Log to syslog (implied by -i or without -F and -w)"
//usage: )
//usage: )
#define DEBUG 0
#include "libbb.h"

View File

@ -18,6 +18,39 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define tftp_trivial_usage
//usage: "[OPTIONS] HOST [PORT]"
//usage:#define tftp_full_usage "\n\n"
//usage: "Transfer a file from/to tftp server\n"
//usage: "\nOptions:"
//usage: "\n -l FILE Local FILE"
//usage: "\n -r FILE Remote FILE"
//usage: IF_FEATURE_TFTP_GET(
//usage: "\n -g Get file"
//usage: )
//usage: IF_FEATURE_TFTP_PUT(
//usage: "\n -p Put file"
//usage: )
//usage: IF_FEATURE_TFTP_BLOCKSIZE(
//usage: "\n -b SIZE Transfer blocks of SIZE octets"
//usage: )
//usage:
//usage:#define tftpd_trivial_usage
//usage: "[-cr] [-u USER] [DIR]"
//usage:#define tftpd_full_usage "\n\n"
//usage: "Transfer a file on tftp client's request\n"
//usage: "\n"
//usage: "tftpd should be used as an inetd service.\n"
//usage: "tftpd's line for inetd.conf:\n"
//usage: " 69 dgram udp nowait root tftpd tftpd /files/to/serve\n"
//usage: "It also can be ran from udpsvd:\n"
//usage: " udpsvd -vE 0.0.0.0 69 tftpd /files/to/serve\n"
//usage: "\nOptions:"
//usage: "\n -r Prohibit upload"
//usage: "\n -c Allow file creation via upload"
//usage: "\n -u Access files as USER"
#include "libbb.h"
#if ENABLE_FEATURE_TFTP_GET || ENABLE_FEATURE_TFTP_PUT

View File

@ -210,6 +210,51 @@
* Tue Dec 20 03:50:13 PST 1988
*/
//usage:#define traceroute_trivial_usage
//usage: "[-"IF_TRACEROUTE6("46")"FIldnrv] [-f 1ST_TTL] [-m MAXTTL] [-p PORT] [-q PROBES]\n"
//usage: " [-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-g GATEWAY] [-i IFACE]\n"
//usage: " [-z PAUSE_MSEC] HOST [BYTES]"
//usage:#define traceroute_full_usage "\n\n"
//usage: "Trace the route to HOST\n"
//usage: "\nOptions:"
//usage: IF_TRACEROUTE6(
//usage: "\n -4,-6 Force IP or IPv6 name resolution"
//usage: )
//usage: "\n -F Set the don't fragment bit"
//usage: "\n -I Use ICMP ECHO instead of UDP datagrams"
//usage: "\n -l Display the TTL value of the returned packet"
//usage: "\n -d Set SO_DEBUG options to socket"
//usage: "\n -n Print numeric addresses"
//usage: "\n -r Bypass routing tables, send directly to HOST"
//usage: "\n -v Verbose"
//usage: "\n -m Max time-to-live (max number of hops)"
//usage: "\n -p Base UDP port number used in probes"
//usage: "\n (default 33434)"
//usage: "\n -q Number of probes per TTL (default 3)"
//usage: "\n -s IP address to use as the source address"
//usage: "\n -t Type-of-service in probe packets (default 0)"
//usage: "\n -w Time in seconds to wait for a response (default 3)"
//usage: "\n -g Loose source route gateway (8 max)"
//usage:
//usage:#define traceroute6_trivial_usage
//usage: "[-dnrv] [-m MAXTTL] [-p PORT] [-q PROBES]\n"
//usage: " [-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-i IFACE]\n"
//usage: " HOST [BYTES]"
//usage:#define traceroute6_full_usage "\n\n"
//usage: "Trace the route to HOST\n"
//usage: "\nOptions:"
//usage: "\n -d Set SO_DEBUG options to socket"
//usage: "\n -n Print numeric addresses"
//usage: "\n -r Bypass routing tables, send directly to HOST"
//usage: "\n -v Verbose"
//usage: "\n -m Max time-to-live (max number of hops)"
//usage: "\n -p Base UDP port number used in probes"
//usage: "\n (default is 33434)"
//usage: "\n -q Number of probes per TTL (default 3)"
//usage: "\n -s IP address to use as the source address"
//usage: "\n -t Type-of-service in probe packets (default 0)"
//usage: "\n -w Time in seconds to wait for a response (default 3)"
#define TRACEROUTE_SO_DEBUG 0
/* TODO: undefs were uncommented - ??! we have config system for that! */

View File

@ -9,6 +9,25 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define tunctl_trivial_usage
//usage: "[-f device] ([-t name] | -d name)" IF_FEATURE_TUNCTL_UG(" [-u owner] [-g group] [-b]")
//usage:#define tunctl_full_usage "\n\n"
//usage: "Create or delete tun interfaces\n"
//usage: "\nOptions:"
//usage: "\n -f name tun device (/dev/net/tun)"
//usage: "\n -t name Create iface 'name'"
//usage: "\n -d name Delete iface 'name'"
//usage: IF_FEATURE_TUNCTL_UG(
//usage: "\n -u owner Set iface owner"
//usage: "\n -g group Set iface group"
//usage: "\n -b Brief output"
//usage: )
//usage:
//usage:#define tunctl_example_usage
//usage: "# tunctl\n"
//usage: "# tunctl -d tun0\n"
#include <netinet/in.h>
#include <net/if.h>
#include <linux/if_tun.h>

View File

@ -20,6 +20,17 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
//usage:#define udhcpd_trivial_usage
//usage: "[-fS]" IF_FEATURE_UDHCP_PORT(" [-P N]") " [CONFFILE]"
//usage:#define udhcpd_full_usage "\n\n"
//usage: "DHCP server\n"
//usage: "\n -f Run in foreground"
//usage: "\n -S Log to syslog too"
//usage: IF_FEATURE_UDHCP_PORT(
//usage: "\n -P N Use port N (default 67)"
//usage: )
#include <syslog.h>
#include "common.h"
#include "dhcpc.h"

View File

@ -9,6 +9,12 @@
* Netbeat AG
* Upstream has GPL v2 or later
*/
//usage:#define dhcprelay_trivial_usage
//usage: "CLIENT_IFACE[,CLIENT_IFACE2]... SERVER_IFACE [SERVER_IP]"
//usage:#define dhcprelay_full_usage "\n\n"
//usage: "Relay DHCP requests between clients and server"
#include "common.h"
#define SERVER_PORT 67

View File

@ -2,6 +2,23 @@
/*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define dumpleases_trivial_usage
//usage: "[-r|-a] [-f LEASEFILE]"
//usage:#define dumpleases_full_usage "\n\n"
//usage: "Display DHCP leases granted by udhcpd\n"
//usage: "\nOptions:"
//usage: IF_LONG_OPTS(
//usage: "\n -f,--file=FILE Lease file"
//usage: "\n -r,--remaining Show remaining time"
//usage: "\n -a,--absolute Show expiration time"
//usage: )
//usage: IF_NOT_LONG_OPTS(
//usage: "\n -f FILE Lease file"
//usage: "\n -r Show remaining time"
//usage: "\n -a Show expiration time"
//usage: )
#include "common.h"
#include "dhcpd.h"
#include "unicode.h"

View File

@ -9,6 +9,18 @@
/* BB_AUDIT SUSv3 N/A */
//usage:#define vconfig_trivial_usage
//usage: "COMMAND [OPTIONS]"
//usage:#define vconfig_full_usage "\n\n"
//usage: "Create and remove virtual ethernet devices\n"
//usage: "\nOptions:"
//usage: "\n add [interface-name] [vlan_id]"
//usage: "\n rem [vlan-name]"
//usage: "\n set_flag [interface-name] [flag-num] [0 | 1]"
//usage: "\n set_egress_map [vlan-name] [skb_priority] [vlan_qos]"
//usage: "\n set_ingress_map [vlan-name] [skb_priority] [vlan_qos]"
//usage: "\n set_name_type [name-type]"
#include "libbb.h"
#include <net/if.h>

View File

@ -23,6 +23,19 @@
// - avoid silent script failures, especially under load...
// - link status monitoring (restart on link-up; stop on link-down)
//usage:#define zcip_trivial_usage
//usage: "[OPTIONS] IFACE SCRIPT"
//usage:#define zcip_full_usage "\n\n"
//usage: "Manage a ZeroConf IPv4 link-local address\n"
//usage: "\nOptions:"
//usage: "\n -f Run in foreground"
//usage: "\n -q Quit after obtaining address"
//usage: "\n -r 169.254.x.x Request this address first"
//usage: "\n -v Verbose"
//usage: "\n"
//usage: "\nWith no -q, runs continuously monitoring for ARP conflicts,"
//usage: "\nexits only on I/O errors (link down etc)"
#include <netinet/ether.h>
#include <net/ethernet.h>
#include <net/if.h>

View File

@ -70,6 +70,17 @@
* mv -f ./"$DATAFILE" save/
*/
//usage:#define lpd_trivial_usage
//usage: "SPOOLDIR [HELPER [ARGS]]"
//usage:#define lpd_full_usage "\n\n"
//usage: "SPOOLDIR must contain (symlinks to) device nodes or directories"
//usage: "\nwith names matching print queue names. In the first case, jobs are"
//usage: "\nsent directly to the device. Otherwise each job is stored in queue"
//usage: "\ndirectory and HELPER program is called. Name of file to print"
//usage: "\nis passed in $DATAFILE variable."
//usage: "\nExample:"
//usage: "\n tcpsvd -E 0 515 softlimit -m 999999 lpd /var/spool ./print"
#include "libbb.h"
// strip argument of bad chars

View File

@ -11,6 +11,27 @@
*
* See RFC 1179 for protocol description.
*/
//usage:#define lpr_trivial_usage
//usage: "-P queue[@host[:port]] -U USERNAME -J TITLE -Vmh [FILE]..."
/* -C CLASS exists too, not shown.
* CLASS is supposed to be printed on banner page, if one is requested */
//usage:#define lpr_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -P lp service to connect to (else uses $PRINTER)"
//usage: "\n -m Send mail on completion"
//usage: "\n -h Print banner page too"
//usage: "\n -V Verbose"
//usage:
//usage:#define lpq_trivial_usage
//usage: "[-P queue[@host[:port]]] [-U USERNAME] [-d JOBID]... [-fs]"
//usage:#define lpq_full_usage "\n\n"
//usage: "Options:"
//usage: "\n -P lp service to connect to (else uses $PRINTER)"
//usage: "\n -d Delete jobs"
//usage: "\n -f Force any waiting job to be printed"
//usage: "\n -s Short display"
#include "libbb.h"
/*

View File

@ -9,6 +9,18 @@
/* getopt not needed */
//usage:#define free_trivial_usage
//usage: "" IF_DESKTOP("[-b/k/m/g]")
//usage:#define free_full_usage "\n\n"
//usage: "Display the amount of free and used system memory"
//usage:
//usage:#define free_example_usage
//usage: "$ free\n"
//usage: " total used free shared buffers\n"
//usage: " Mem: 257628 248724 8904 59644 93124\n"
//usage: " Swap: 128516 8404 120112\n"
//usage: "Total: 386144 257128 129016\n"
#include "libbb.h"
struct globals {

View File

@ -7,6 +7,17 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define fuser_trivial_usage
//usage: "[OPTIONS] FILE or PORT/PROTO"
//usage:#define fuser_full_usage "\n\n"
//usage: "Find processes which use FILEs or PORTs\n"
//usage: "\nOptions:"
//usage: "\n -m Find processes which use same fs as FILEs"
//usage: "\n -4,-6 Search only IPv4/IPv6 space"
//usage: "\n -s Don't display PIDs"
//usage: "\n -k Kill found processes"
//usage: "\n -SIGNAL Signal to send (default: KILL)"
#include "libbb.h"
#define MAX_LINE 255

View File

@ -8,6 +8,45 @@
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define kill_trivial_usage
//usage: "[-l] [-SIG] PID..."
//usage:#define kill_full_usage "\n\n"
//usage: "Send a signal (default: TERM) to given PIDs\n"
//usage: "\nOptions:"
//usage: "\n -l List all signal names and numbers"
/* //usage: "\n -s SIG Yet another way of specifying SIG" */
//usage:
//usage:#define kill_example_usage
//usage: "$ ps | grep apache\n"
//usage: "252 root root S [apache]\n"
//usage: "263 www-data www-data S [apache]\n"
//usage: "264 www-data www-data S [apache]\n"
//usage: "265 www-data www-data S [apache]\n"
//usage: "266 www-data www-data S [apache]\n"
//usage: "267 www-data www-data S [apache]\n"
//usage: "$ kill 252\n"
//usage:
//usage:#define killall_trivial_usage
//usage: "[-l] [-q] [-SIG] PROCESS_NAME..."
//usage:#define killall_full_usage "\n\n"
//usage: "Send a signal (default: TERM) to given processes\n"
//usage: "\nOptions:"
//usage: "\n -l List all signal names and numbers"
/* //usage: "\n -s SIG Yet another way of specifying SIG" */
//usage: "\n -q Don't complain if no processes were killed"
//usage:
//usage:#define killall_example_usage
//usage: "$ killall apache\n"
//usage:
//usage:#define killall5_trivial_usage
//usage: "[-l] [-SIG] [-o PID]..."
//usage:#define killall5_full_usage "\n\n"
//usage: "Send a signal (default: TERM) to all processes outside current session\n"
//usage: "\nOptions:"
//usage: "\n -l List all signal names and numbers"
//usage: "\n -o PID Don't signal this PID"
/* //usage: "\n -s SIG Yet another way of specifying SIG" */
#include "libbb.h"
/* Note: kill_main is directly called from shell in order to implement

View File

@ -6,6 +6,35 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
//usage:#define pgrep_trivial_usage
//usage: "[-flnovx] [-s SID|-P PPID|PATTERN]"
//usage:#define pgrep_full_usage "\n\n"
//usage: "Display process(es) selected by regex PATTERN\n"
//usage: "\nOptions:"
//usage: "\n -l Show command name too"
//usage: "\n -f Match against entire command line"
//usage: "\n -n Show the newest process only"
//usage: "\n -o Show the oldest process only"
//usage: "\n -v Negate the match"
//usage: "\n -x Match whole name (not substring)"
//usage: "\n -s Match session ID (0 for current)"
//usage: "\n -P Match parent process ID"
//usage:
//usage:#define pkill_trivial_usage
//usage: "[-l|-SIGNAL] [-fnovx] [-s SID|-P PPID|PATTERN]"
//usage:#define pkill_full_usage "\n\n"
//usage: "Send a signal to process(es) selected by regex PATTERN\n"
//usage: "\nOptions:"
//usage: "\n -l List all signals"
//usage: "\n -f Match against entire command line"
//usage: "\n -n Signal the newest process only"
//usage: "\n -o Signal the oldest process only"
//usage: "\n -v Negate the match"
//usage: "\n -x Match whole name (not substring)"
//usage: "\n -s Match session ID (0 for current)"
//usage: "\n -P Match parent process ID"
#include "libbb.h"
#include "xregex.h"

View File

@ -7,6 +7,34 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#if (ENABLE_FEATURE_PIDOF_SINGLE || ENABLE_FEATURE_PIDOF_OMIT)
//usage:#define pidof_trivial_usage
//usage: "[OPTIONS] [NAME]..."
//usage:#define USAGE_PIDOF "\n\nOptions:"
//usage:#else
//usage:#define pidof_trivial_usage
//usage: "[NAME]..."
//usage:#define USAGE_PIDOF /* none */
//usage:#endif
//usage:#define pidof_full_usage "\n\n"
//usage: "List PIDs of all processes with names that match NAMEs"
//usage: USAGE_PIDOF
//usage: IF_FEATURE_PIDOF_SINGLE(
//usage: "\n -s Show only one PID"
//usage: )
//usage: IF_FEATURE_PIDOF_OMIT(
//usage: "\n -o PID Omit given pid"
//usage: "\n Use %PPID to omit pid of pidof's parent"
//usage: )
//usage:
//usage:#define pidof_example_usage
//usage: "$ pidof init\n"
//usage: "1\n"
//usage: IF_FEATURE_PIDOF_OMIT(
//usage: "$ pidof /bin/sh\n20351 5973 5950\n")
//usage: IF_FEATURE_PIDOF_OMIT(
//usage: "$ pidof /bin/sh -o %PPID\n20351 5950")
#include "libbb.h"
enum {

View File

@ -9,6 +9,53 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#if ENABLE_DESKTOP
//usage:
//usage:#define ps_trivial_usage
//usage: "[-o COL1,COL2=HEADER]" IF_FEATURE_SHOW_THREADS(" [-T]")
//usage:#define ps_full_usage "\n\n"
//usage: "Show list of processes\n"
//usage: "\nOptions:"
//usage: "\n -o COL1,COL2=HEADER Select columns for display"
//usage: IF_FEATURE_SHOW_THREADS(
//usage: "\n -T Show threads"
//usage: )
//usage:
//usage:#else /* !ENABLE_DESKTOP */
//usage:
//usage:#if !ENABLE_SELINUX && !ENABLE_FEATURE_PS_WIDE
//usage:#define USAGE_PS "\nThis version of ps accepts no options"
//usage:#else
//usage:#define USAGE_PS "\nOptions:"
//usage:#endif
//usage:
//usage:#define ps_trivial_usage
//usage: ""
//usage:#define ps_full_usage "\n\n"
//usage: "Show list of processes\n"
//usage: USAGE_PS
//usage: IF_SELINUX(
//usage: "\n -Z Show selinux context"
//usage: )
//usage: IF_FEATURE_PS_WIDE(
//usage: "\n w Wide output"
//usage: )
//usage:
//usage:#endif /* ENABLE_DESKTOP */
//usage:
//usage:#define ps_example_usage
//usage: "$ ps\n"
//usage: " PID Uid Gid State Command\n"
//usage: " 1 root root S init\n"
//usage: " 2 root root S [kflushd]\n"
//usage: " 3 root root S [kupdate]\n"
//usage: " 4 root root S [kpiod]\n"
//usage: " 5 root root S [kswapd]\n"
//usage: " 742 andersen andersen S [bash]\n"
//usage: " 743 andersen andersen S -bash\n"
//usage: " 745 root root S [getty]\n"
//usage: " 2990 andersen andersen R ps\n"
#include "libbb.h"
/* Absolute maximum on output line length */

View File

@ -19,6 +19,16 @@
* following IDs (if any). Multiple switches are allowed.
*/
//usage:#define renice_trivial_usage
//usage: "{{-n INCREMENT} | PRIORITY} [[-p | -g | -u] ID...]"
//usage:#define renice_full_usage "\n\n"
//usage: "Change scheduling priority for a running process\n"
//usage: "\nOptions:"
//usage: "\n -n Adjust current nice value (smaller is faster)"
//usage: "\n -p Process id(s) (default)"
//usage: "\n -g Process group id(s)"
//usage: "\n -u Process user name(s) and/or id(s)"
#include "libbb.h"
#include <sys/resource.h>

View File

@ -11,6 +11,25 @@
* v1.01.1 - busybox applet aware by <solar@gentoo.org>
*/
//usage:#define sysctl_trivial_usage
//usage: "[OPTIONS] [VALUE]..."
//usage:#define sysctl_full_usage "\n\n"
//usage: "Configure kernel parameters at runtime\n"
//usage: "\nOptions:"
//usage: "\n -n Don't print key names"
//usage: "\n -e Don't warn about unknown keys"
//usage: "\n -w Change sysctl setting"
//usage: "\n -p FILE Load sysctl settings from FILE (default /etc/sysctl.conf)"
//usage: "\n -a Display all values"
//usage: "\n -A Display all values in table form"
//usage:
//usage:#define sysctl_example_usage
//usage: "sysctl [-n] [-e] variable...\n"
//usage: "sysctl [-n] [-e] -w variable=value...\n"
//usage: "sysctl [-n] [-e] -a\n"
//usage: "sysctl [-n] [-e] -p file (default /etc/sysctl.conf)\n"
//usage: "sysctl [-n] [-e] -A\n"
#include "libbb.h"
enum {

View File

@ -15,6 +15,15 @@
/* getopt not needed */
//usage:#define uptime_trivial_usage
//usage: ""
//usage:#define uptime_full_usage "\n\n"
//usage: "Display the time since the last boot"
//usage:
//usage:#define uptime_example_usage
//usage: "$ uptime\n"
//usage: " 1:55pm up 2:30, load average: 0.09, 0.04, 0.00\n"
#include "libbb.h"
#ifndef FSHIFT

View File

@ -11,6 +11,20 @@
/* BB_AUDIT SUSv3 N/A */
/* BB_AUDIT GNU defects -- only option -n is supported. */
//usage:#define watch_trivial_usage
//usage: "[-n SEC] [-t] PROG ARGS"
//usage:#define watch_full_usage "\n\n"
//usage: "Run PROG periodically\n"
//usage: "\nOptions:"
//usage: "\n -n Loop period in seconds (default 2)"
//usage: "\n -t Don't print header"
//usage:
//usage:#define watch_example_usage
//usage: "$ watch date\n"
//usage: "Mon Dec 17 10:31:40 GMT 2000\n"
//usage: "Mon Dec 17 10:31:42 GMT 2000\n"
//usage: "Mon Dec 17 10:31:44 GMT 2000"
#include "libbb.h"
// procps 2.0.18:

View File

@ -28,6 +28,70 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* Busyboxed by Denys Vlasenko <vda.linux@googlemail.com> */
/* Dependencies on runit_lib.c removed */
//usage:#define chpst_trivial_usage
//usage: "[-vP012] [-u USER[:GRP]] [-U USER[:GRP]] [-e DIR]\n"
//usage: " [-/ DIR] [-n NICE] [-m BYTES] [-d BYTES] [-o N]\n"
//usage: " [-p N] [-f BYTES] [-c BYTES] PROG ARGS"
//usage:#define chpst_full_usage "\n\n"
//usage: "Change the process state, run PROG\n"
//usage: "\nOptions:"
//usage: "\n -u USER[:GRP] Set uid and gid"
//usage: "\n -U USER[:GRP] Set $UID and $GID in environment"
//usage: "\n -e DIR Set environment variables as specified by files"
//usage: "\n in DIR: file=1st_line_of_file"
//usage: "\n -/ DIR Chroot to DIR"
//usage: "\n -n NICE Add NICE to nice value"
//usage: "\n -m BYTES Same as -d BYTES -s BYTES -l BYTES"
//usage: "\n -d BYTES Limit data segment"
//usage: "\n -o N Limit number of open files per process"
//usage: "\n -p N Limit number of processes per uid"
//usage: "\n -f BYTES Limit output file sizes"
//usage: "\n -c BYTES Limit core file size"
//usage: "\n -v Verbose"
//usage: "\n -P Create new process group"
//usage: "\n -0 Close stdin"
//usage: "\n -1 Close stdout"
//usage: "\n -2 Close stderr"
//usage:
//usage:#define envdir_trivial_usage
//usage: "DIR PROG ARGS"
//usage:#define envdir_full_usage "\n\n"
//usage: "Set various environment variables as specified by files\n"
//usage: "in the directory DIR, run PROG"
//usage:
//usage:#define envuidgid_trivial_usage
//usage: "USER PROG ARGS"
//usage:#define envuidgid_full_usage "\n\n"
//usage: "Set $UID to USER's uid and $GID to USER's gid, run PROG"
//usage:
//usage:#define setuidgid_trivial_usage
//usage: "USER PROG ARGS"
//usage:#define setuidgid_full_usage "\n\n"
//usage: "Set uid and gid to USER's uid and gid, drop supplementary group ids,\n"
//usage: "run PROG"
//usage:
//usage:#define softlimit_trivial_usage
//usage: "[-a BYTES] [-m BYTES] [-d BYTES] [-s BYTES] [-l BYTES]\n"
//usage: " [-f BYTES] [-c BYTES] [-r BYTES] [-o N] [-p N] [-t N]\n"
//usage: " PROG ARGS"
//usage:#define softlimit_full_usage "\n\n"
//usage: "Set soft resource limits, then run PROG\n"
//usage: "\nOptions:"
//usage: "\n -a BYTES Limit total size of all segments"
//usage: "\n -m BYTES Same as -d BYTES -s BYTES -l BYTES -a BYTES"
//usage: "\n -d BYTES Limit data segment"
//usage: "\n -s BYTES Limit stack segment"
//usage: "\n -l BYTES Limit locked memory size"
//usage: "\n -o N Limit number of open files per process"
//usage: "\n -p N Limit number of processes per uid"
//usage: "\nOptions controlling file sizes:"
//usage: "\n -f BYTES Limit output file sizes"
//usage: "\n -c BYTES Limit core file size"
//usage: "\nEfficiency opts:"
//usage: "\n -r BYTES Limit resident set size"
//usage: "\n -t N Limit CPU time, process receives"
//usage: "\n a SIGXCPU after N seconds"
#include "libbb.h"
/*

View File

@ -28,6 +28,11 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* Busyboxed by Denys Vlasenko <vda.linux@googlemail.com> */
/* TODO: depends on runit_lib.c - review and reduce/eliminate */
//usage:#define runsv_trivial_usage
//usage: "DIR"
//usage:#define runsv_full_usage "\n\n"
//usage: "Start and monitor a service and optionally an appendant log service"
#include <sys/poll.h>
#include <sys/file.h>
#include "libbb.h"

View File

@ -28,6 +28,13 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* Busyboxed by Denys Vlasenko <vda.linux@googlemail.com> */
/* TODO: depends on runit_lib.c - review and reduce/eliminate */
//usage:#define runsvdir_trivial_usage
//usage: "[-P] [-s SCRIPT] DIR"
//usage:#define runsvdir_full_usage "\n\n"
//usage: "Start a runsv process for each subdirectory. If it exits, restart it.\n"
//usage: "\n -P Put each runsv in a new session"
//usage: "\n -s SCRIPT Run SCRIPT <signo> after signal is processed"
#include <sys/poll.h>
#include <sys/file.h>
#include "libbb.h"

View File

@ -153,6 +153,22 @@ Exit Codes
/* Busyboxed by Denys Vlasenko <vda.linux@googlemail.com> */
/* TODO: depends on runit_lib.c - review and reduce/eliminate */
//usage:#define sv_trivial_usage
//usage: "[-v] [-w SEC] CMD SERVICE_DIR..."
//usage:#define sv_full_usage "\n\n"
//usage: "Control services monitored by runsv supervisor.\n"
//usage: "Commands (only first character is enough):\n"
//usage: "\n"
//usage: "status: query service status\n"
//usage: "up: if service isn't running, start it. If service stops, restart it\n"
//usage: "once: like 'up', but if service stops, don't restart it\n"
//usage: "down: send TERM and CONT signals. If ./run exits, start ./finish\n"
//usage: " if it exists. After it stops, don't restart service\n"
//usage: "exit: send TERM and CONT signals to service and log service. If they exit,\n"
//usage: " runsv exits too\n"
//usage: "pause, cont, hup, alarm, interrupt, quit, 1, 2, term, kill: send\n"
//usage: "STOP, CONT, HUP, ALRM, INT, QUIT, USR1, USR2, TERM, KILL signal to service"
#include <sys/poll.h>
#include <sys/file.h>
#include "libbb.h"

View File

@ -7,6 +7,39 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define chcon_trivial_usage
//usage: "[OPTIONS] CONTEXT FILE..."
//usage: "\n chcon [OPTIONS] [-u USER] [-r ROLE] [-l RANGE] [-t TYPE] FILE..."
//usage: IF_FEATURE_CHCON_LONG_OPTIONS(
//usage: "\n chcon [OPTIONS] --reference=RFILE FILE..."
//usage: )
//usage:#define chcon_full_usage "\n\n"
//usage: "Change the security context of each FILE to CONTEXT\n"
//usage: IF_FEATURE_CHCON_LONG_OPTIONS(
//usage: "\n -v,--verbose Verbose"
//usage: "\n -c,--changes Report changes made"
//usage: "\n -h,--no-dereference Affect symlinks instead of their targets"
//usage: "\n -f,--silent,--quiet Suppress most error messages"
//usage: "\n --reference=RFILE Use RFILE's group instead of using a CONTEXT value"
//usage: "\n -u,--user=USER Set user/role/type/range in the target"
//usage: "\n -r,--role=ROLE security context"
//usage: "\n -t,--type=TYPE"
//usage: "\n -l,--range=RANGE"
//usage: "\n -R,--recursive Recurse"
//usage: )
//usage: IF_NOT_FEATURE_CHCON_LONG_OPTIONS(
//usage: "\n -v Verbose"
//usage: "\n -c Report changes made"
//usage: "\n -h Affect symlinks instead of their targets"
//usage: "\n -f Suppress most error messages"
//usage: "\n -u USER Set user/role/type/range in the target security context"
//usage: "\n -r ROLE"
//usage: "\n -t TYPE"
//usage: "\n -l RNG"
//usage: "\n -R Recurse"
//usage: )
#include <getopt.h>
#include <selinux/context.h>

View File

@ -7,6 +7,9 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define getenforce_trivial_usage NOUSAGE_STR
//usage:#define getenforce_full_usage ""
#include "libbb.h"
int getenforce_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -7,6 +7,11 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define getsebool_trivial_usage
//usage: "-a or getsebool boolean..."
//usage:#define getsebool_full_usage "\n\n"
//usage: " -a Show all selinux booleans"
#include "libbb.h"
int getsebool_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -4,6 +4,10 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define load_policy_trivial_usage NOUSAGE_STR
//usage:#define load_policy_full_usage ""
#include "libbb.h"
int load_policy_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -5,6 +5,16 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define matchpathcon_trivial_usage
//usage: "[-n] [-N] [-f file_contexts_file] [-p prefix] [-V]"
//usage:#define matchpathcon_full_usage "\n\n"
//usage: " -n Don't display path"
//usage: "\n -N Don't use translations"
//usage: "\n -f Use alternate file_context file"
//usage: "\n -p Use prefix to speed translations"
//usage: "\n -V Verify file context on disk matches defaults"
#include "libbb.h"
static int print_matchpathcon(char *path, int noprint)

View File

@ -28,6 +28,28 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define runcon_trivial_usage
//usage: "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] PROG ARGS\n"
//usage: "runcon CONTEXT PROG ARGS"
//usage:#define runcon_full_usage "\n\n"
//usage: "Run PROG in a different security context\n"
//usage: "\n CONTEXT Complete security context\n"
//usage: IF_FEATURE_RUNCON_LONG_OPTIONS(
//usage: "\n -c,--compute Compute process transition context before modifying"
//usage: "\n -t,--type=TYPE Type (for same role as parent)"
//usage: "\n -u,--user=USER User identity"
//usage: "\n -r,--role=ROLE Role"
//usage: "\n -l,--range=RNG Levelrange"
//usage: )
//usage: IF_NOT_FEATURE_RUNCON_LONG_OPTIONS(
//usage: "\n -c Compute process transition context before modifying"
//usage: "\n -t TYPE Type (for same role as parent)"
//usage: "\n -u USER User identity"
//usage: "\n -r ROLE Role"
//usage: "\n -l RNG Levelrange"
//usage: )
#include <getopt.h>
#include <selinux/context.h>
#include <selinux/flask.h>

View File

@ -6,6 +6,10 @@
*
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define selinuxenabled_trivial_usage NOUSAGE_STR
//usage:#define selinuxenabled_full_usage ""
#include "libbb.h"
int selinuxenabled_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;

View File

@ -8,6 +8,12 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define sestatus_trivial_usage
//usage: "[-vb]"
//usage:#define sestatus_full_usage "\n\n"
//usage: " -v Verbose"
//usage: "\n -b Display current state of booleans"
#include "libbb.h"
extern char *selinux_mnt;

View File

@ -7,6 +7,10 @@
* Licensed under GPLv2, see file LICENSE in this source tree.
*/
//usage:#define setenforce_trivial_usage
//usage: "[Enforcing | Permissive | 1 | 0]"
//usage:#define setenforce_full_usage ""
#include "libbb.h"
/* These strings are arranged so that odd ones

Some files were not shown because too many files have changed in this diff Show More