mirror of
https://github.com/topjohnwu/ndk-busybox.git
synced 2024-11-23 11:49:39 +00:00
Convert all coreutils/* applets to "new style" applet definitions
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
5b966c6180
commit
af3f420116
@ -7,656 +7,12 @@ menu "Coreutils"
|
||||
|
||||
INSERT
|
||||
|
||||
config CAL
|
||||
bool "cal"
|
||||
default y
|
||||
help
|
||||
cal is used to display a monthly calendar.
|
||||
|
||||
config CATV
|
||||
bool "catv"
|
||||
default y
|
||||
help
|
||||
Display nonprinting characters as escape sequences (like some
|
||||
implementations' cat -v option).
|
||||
|
||||
config CHGRP
|
||||
bool "chgrp"
|
||||
default y
|
||||
help
|
||||
chgrp is used to change the group ownership of files.
|
||||
|
||||
config CHMOD
|
||||
bool "chmod"
|
||||
default y
|
||||
help
|
||||
chmod is used to change the access permission of files.
|
||||
|
||||
config CHOWN
|
||||
bool "chown"
|
||||
default y
|
||||
help
|
||||
chown is used to change the user and/or group ownership
|
||||
of files.
|
||||
|
||||
config FEATURE_CHOWN_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on CHOWN && LONG_OPTS
|
||||
help
|
||||
Enable use of long options
|
||||
|
||||
config CHROOT
|
||||
bool "chroot"
|
||||
default y
|
||||
help
|
||||
chroot is used to change the root directory and run a command.
|
||||
The default command is `/bin/sh'.
|
||||
|
||||
config CKSUM
|
||||
bool "cksum"
|
||||
default y
|
||||
help
|
||||
cksum is used to calculate the CRC32 checksum of a file.
|
||||
|
||||
config COMM
|
||||
bool "comm"
|
||||
default y
|
||||
help
|
||||
comm is used to compare two files line by line and return
|
||||
a three-column output.
|
||||
|
||||
config CP
|
||||
bool "cp"
|
||||
default y
|
||||
help
|
||||
cp is used to copy files and directories.
|
||||
|
||||
config FEATURE_CP_LONG_OPTIONS
|
||||
bool "Enable long options for cp"
|
||||
default y
|
||||
depends on CP && LONG_OPTS
|
||||
help
|
||||
Enable long options for cp.
|
||||
Also add support for --parents option.
|
||||
|
||||
config CUT
|
||||
bool "cut"
|
||||
default y
|
||||
help
|
||||
cut is used to print selected parts of lines from
|
||||
each file to stdout.
|
||||
|
||||
config DF
|
||||
bool "df"
|
||||
default y
|
||||
help
|
||||
df reports the amount of disk space used and available
|
||||
on filesystems.
|
||||
|
||||
config FEATURE_DF_FANCY
|
||||
bool "Enable -a, -i, -B"
|
||||
default y
|
||||
depends on DF
|
||||
help
|
||||
This option enables -a, -i and -B.
|
||||
|
||||
-a Show all filesystems
|
||||
-i Inodes
|
||||
-B <SIZE> Blocksize
|
||||
|
||||
config DIRNAME
|
||||
bool "dirname"
|
||||
default y
|
||||
help
|
||||
dirname is used to strip a non-directory suffix from
|
||||
a file name.
|
||||
|
||||
config DOS2UNIX
|
||||
bool "dos2unix/unix2dos"
|
||||
default y
|
||||
help
|
||||
dos2unix is used to convert a text file from DOS format to
|
||||
UNIX format, and vice versa.
|
||||
|
||||
config UNIX2DOS
|
||||
bool
|
||||
default y
|
||||
depends on DOS2UNIX
|
||||
help
|
||||
unix2dos is used to convert a text file from UNIX format to
|
||||
DOS format, and vice versa.
|
||||
|
||||
config DU
|
||||
bool "du (default blocksize of 512 bytes)"
|
||||
default y
|
||||
help
|
||||
du is used to report the amount of disk space used
|
||||
for specified files.
|
||||
|
||||
config FEATURE_DU_DEFAULT_BLOCKSIZE_1K
|
||||
bool "Use a default blocksize of 1024 bytes (1K)"
|
||||
default y
|
||||
depends on DU
|
||||
help
|
||||
Use a blocksize of (1K) instead of the default 512b.
|
||||
|
||||
config ECHO
|
||||
bool "echo (basic SuSv3 version taking no options)"
|
||||
default y
|
||||
help
|
||||
echo is used to print a specified string to stdout.
|
||||
|
||||
# this entry also appears in shell/Config.in, next to the echo builtin
|
||||
config FEATURE_FANCY_ECHO
|
||||
bool "Enable echo options (-n and -e)"
|
||||
default y
|
||||
depends on ECHO || ASH_BUILTIN_ECHO || HUSH
|
||||
help
|
||||
This adds options (-n and -e) to echo.
|
||||
|
||||
config ENV
|
||||
bool "env"
|
||||
default y
|
||||
help
|
||||
env is used to set an environment variable and run
|
||||
a command; without options it displays the current
|
||||
environment.
|
||||
|
||||
config FEATURE_ENV_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on ENV && LONG_OPTS
|
||||
help
|
||||
Support long options for the env applet.
|
||||
|
||||
config EXPAND
|
||||
bool "expand"
|
||||
default y
|
||||
help
|
||||
By default, convert all tabs to spaces.
|
||||
|
||||
config FEATURE_EXPAND_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on EXPAND && LONG_OPTS
|
||||
help
|
||||
Support long options for the expand applet.
|
||||
|
||||
config EXPR
|
||||
bool "expr"
|
||||
default y
|
||||
help
|
||||
expr is used to calculate numbers and print the result
|
||||
to standard output.
|
||||
|
||||
config EXPR_MATH_SUPPORT_64
|
||||
bool "Extend Posix numbers support to 64 bit"
|
||||
default y
|
||||
depends on EXPR
|
||||
help
|
||||
Enable 64-bit math support in the expr applet. This will make
|
||||
the applet slightly larger, but will allow computation with very
|
||||
large numbers.
|
||||
|
||||
config FALSE
|
||||
bool "false"
|
||||
default y
|
||||
help
|
||||
false returns an exit code of FALSE (1).
|
||||
|
||||
config FOLD
|
||||
bool "fold"
|
||||
default y
|
||||
help
|
||||
Wrap text to fit a specific width.
|
||||
|
||||
config FSYNC
|
||||
bool "fsync"
|
||||
default y
|
||||
help
|
||||
fsync is used to flush file-related cached blocks to disk.
|
||||
|
||||
config HEAD
|
||||
bool "head"
|
||||
default y
|
||||
help
|
||||
head is used to print the first specified number of lines
|
||||
from files.
|
||||
|
||||
config FEATURE_FANCY_HEAD
|
||||
bool "Enable head options (-c, -q, and -v)"
|
||||
default y
|
||||
depends on HEAD
|
||||
help
|
||||
This enables the head options (-c, -q, and -v).
|
||||
|
||||
config INSTALL
|
||||
bool "install"
|
||||
default y
|
||||
help
|
||||
Copy files and set attributes.
|
||||
|
||||
config FEATURE_INSTALL_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on INSTALL && LONG_OPTS
|
||||
help
|
||||
Support long options for the install applet.
|
||||
|
||||
####config LENGTH
|
||||
#### bool "length"
|
||||
#### default y
|
||||
#### help
|
||||
#### length is used to print out the length of a specified string.
|
||||
|
||||
config LN
|
||||
bool "ln"
|
||||
default y
|
||||
help
|
||||
ln is used to create hard or soft links between files.
|
||||
|
||||
config LOGNAME
|
||||
bool "logname"
|
||||
default y
|
||||
help
|
||||
logname is used to print the current user's login name.
|
||||
|
||||
config LS
|
||||
bool "ls"
|
||||
default y
|
||||
help
|
||||
ls is used to list the contents of directories.
|
||||
|
||||
config FEATURE_LS_FILETYPES
|
||||
bool "Enable filetyping options (-p and -F)"
|
||||
default y
|
||||
depends on LS
|
||||
help
|
||||
Enable the ls options (-p and -F).
|
||||
|
||||
config FEATURE_LS_FOLLOWLINKS
|
||||
bool "Enable symlinks dereferencing (-L)"
|
||||
default y
|
||||
depends on LS
|
||||
help
|
||||
Enable the ls option (-L).
|
||||
|
||||
config FEATURE_LS_RECURSIVE
|
||||
bool "Enable recursion (-R)"
|
||||
default y
|
||||
depends on LS
|
||||
help
|
||||
Enable the ls option (-R).
|
||||
|
||||
config FEATURE_LS_SORTFILES
|
||||
bool "Sort the file names"
|
||||
default y
|
||||
depends on LS
|
||||
help
|
||||
Allow ls to sort file names alphabetically.
|
||||
|
||||
config FEATURE_LS_TIMESTAMPS
|
||||
bool "Show file timestamps"
|
||||
default y
|
||||
depends on LS
|
||||
help
|
||||
Allow ls to display timestamps for files.
|
||||
|
||||
config FEATURE_LS_USERNAME
|
||||
bool "Show username/groupnames"
|
||||
default y
|
||||
depends on LS
|
||||
help
|
||||
Allow ls to display username/groupname for files.
|
||||
|
||||
config FEATURE_LS_COLOR
|
||||
bool "Allow use of color to identify file types"
|
||||
default y
|
||||
depends on LS && LONG_OPTS
|
||||
help
|
||||
This enables the --color option to ls.
|
||||
|
||||
config FEATURE_LS_COLOR_IS_DEFAULT
|
||||
bool "Produce colored ls output by default"
|
||||
default y
|
||||
depends on FEATURE_LS_COLOR
|
||||
help
|
||||
Saying yes here will turn coloring on by default,
|
||||
even if no "--color" option is given to the ls command.
|
||||
This is not recommended, since the colors are not
|
||||
configurable, and the output may not be legible on
|
||||
many output screens.
|
||||
|
||||
config MKDIR
|
||||
bool "mkdir"
|
||||
default y
|
||||
help
|
||||
mkdir is used to create directories with the specified names.
|
||||
|
||||
config FEATURE_MKDIR_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on MKDIR && LONG_OPTS
|
||||
help
|
||||
Support long options for the mkdir applet.
|
||||
|
||||
config MKFIFO
|
||||
bool "mkfifo"
|
||||
default y
|
||||
help
|
||||
mkfifo is used to create FIFOs (named pipes).
|
||||
The `mknod' program can also create FIFOs.
|
||||
|
||||
config MKNOD
|
||||
bool "mknod"
|
||||
default y
|
||||
help
|
||||
mknod is used to create FIFOs or block/character special
|
||||
files with the specified names.
|
||||
|
||||
config MV
|
||||
bool "mv"
|
||||
default y
|
||||
help
|
||||
mv is used to move or rename files or directories.
|
||||
|
||||
config FEATURE_MV_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on MV && LONG_OPTS
|
||||
help
|
||||
Support long options for the mv applet.
|
||||
|
||||
config NICE
|
||||
bool "nice"
|
||||
default y
|
||||
help
|
||||
nice runs a program with modified scheduling priority.
|
||||
|
||||
config NOHUP
|
||||
bool "nohup"
|
||||
default y
|
||||
help
|
||||
run a command immune to hangups, with output to a non-tty.
|
||||
|
||||
config OD
|
||||
bool "od"
|
||||
default y
|
||||
help
|
||||
od is used to dump binary files in octal and other formats.
|
||||
|
||||
config PRINTENV
|
||||
bool "printenv"
|
||||
default y
|
||||
help
|
||||
printenv is used to print all or part of environment.
|
||||
|
||||
config PRINTF
|
||||
bool "printf"
|
||||
default y
|
||||
help
|
||||
printf is used to format and print specified strings.
|
||||
It's similar to `echo' except it has more options.
|
||||
|
||||
config PWD
|
||||
bool "pwd"
|
||||
default y
|
||||
help
|
||||
pwd is used to print the current directory.
|
||||
|
||||
config READLINK
|
||||
bool "readlink"
|
||||
default y
|
||||
help
|
||||
This program reads a symbolic link and returns the name
|
||||
of the file it points to
|
||||
|
||||
config FEATURE_READLINK_FOLLOW
|
||||
bool "Enable canonicalization by following all symlinks (-f)"
|
||||
default y
|
||||
depends on READLINK
|
||||
help
|
||||
Enable the readlink option (-f).
|
||||
|
||||
config REALPATH
|
||||
bool "realpath"
|
||||
default y
|
||||
help
|
||||
Return the canonicalized absolute pathname.
|
||||
This isn't provided by GNU shellutils, but where else does it belong.
|
||||
|
||||
config RM
|
||||
bool "rm"
|
||||
default y
|
||||
help
|
||||
rm is used to remove files or directories.
|
||||
|
||||
config RMDIR
|
||||
bool "rmdir"
|
||||
default y
|
||||
help
|
||||
rmdir is used to remove empty directories.
|
||||
|
||||
config FEATURE_RMDIR_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on RMDIR && LONG_OPTS
|
||||
help
|
||||
Support long options for the rmdir applet, including
|
||||
--ignore-fail-on-non-empty for compatibility with GNU rmdir.
|
||||
|
||||
config SEQ
|
||||
bool "seq"
|
||||
default y
|
||||
help
|
||||
print a sequence of numbers
|
||||
|
||||
config SLEEP
|
||||
bool "sleep"
|
||||
default y
|
||||
help
|
||||
sleep is used to pause for a specified number of seconds.
|
||||
It comes in 3 versions:
|
||||
- small: takes one integer parameter
|
||||
- fancy: takes multiple integer arguments with suffixes:
|
||||
sleep 1d 2h 3m 15s
|
||||
- fancy with fractional numbers:
|
||||
sleep 2.3s 4.5h sleeps for 16202.3 seconds
|
||||
Last one is "the most compatible" with coreutils sleep,
|
||||
but it adds around 1k of code.
|
||||
|
||||
config FEATURE_FANCY_SLEEP
|
||||
bool "Enable multiple arguments and s/m/h/d suffixes"
|
||||
default y
|
||||
depends on SLEEP
|
||||
help
|
||||
Allow sleep to pause for specified minutes, hours, and days.
|
||||
|
||||
config FEATURE_FLOAT_SLEEP
|
||||
bool "Enable fractional arguments"
|
||||
default y
|
||||
depends on FEATURE_FANCY_SLEEP
|
||||
help
|
||||
Allow for fractional numeric parameters.
|
||||
|
||||
config SORT
|
||||
bool "sort"
|
||||
default y
|
||||
help
|
||||
sort is used to sort lines of text in specified files.
|
||||
|
||||
config FEATURE_SORT_BIG
|
||||
bool "Full SuSv3 compliant sort (support -ktcsbdfiozgM)"
|
||||
default y
|
||||
depends on SORT
|
||||
help
|
||||
Without this, sort only supports -r, -u, and an integer version
|
||||
of -n. Selecting this adds sort keys, floating point support, and
|
||||
more. This adds a little over 3k to a nonstatic build on x86.
|
||||
|
||||
The SuSv3 sort standard is available at:
|
||||
http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html
|
||||
|
||||
config SPLIT
|
||||
bool "split"
|
||||
default y
|
||||
help
|
||||
split a file into pieces.
|
||||
|
||||
config FEATURE_SPLIT_FANCY
|
||||
bool "Fancy extensions"
|
||||
default y
|
||||
depends on SPLIT
|
||||
help
|
||||
Add support for features not required by SUSv3.
|
||||
Supports additional suffixes 'b' for 512 bytes,
|
||||
'g' for 1GiB for the -b option.
|
||||
|
||||
config STTY
|
||||
bool "stty"
|
||||
default y
|
||||
help
|
||||
stty is used to change and print terminal line settings.
|
||||
|
||||
config SUM
|
||||
bool "sum"
|
||||
default y
|
||||
help
|
||||
checksum and count the blocks in a file
|
||||
|
||||
config TAC
|
||||
bool "tac"
|
||||
default y
|
||||
help
|
||||
tac is used to concatenate and print files in reverse.
|
||||
|
||||
config TAIL
|
||||
bool "tail"
|
||||
default y
|
||||
help
|
||||
tail is used to print the last specified number of lines
|
||||
from files.
|
||||
|
||||
config FEATURE_FANCY_TAIL
|
||||
bool "Enable extra tail options (-q, -s, -v, and -F)"
|
||||
default y
|
||||
depends on TAIL
|
||||
help
|
||||
The options (-q, -s, -v and -F) are provided by GNU tail, but
|
||||
are not specific in the SUSv3 standard.
|
||||
|
||||
-q Never output headers giving file names
|
||||
-s SEC Wait SEC seconds between reads with -f
|
||||
-v Always output headers giving file names
|
||||
-F Same as -f, but keep retrying
|
||||
|
||||
config TEE
|
||||
bool "tee"
|
||||
default y
|
||||
help
|
||||
tee is used to read from standard input and write
|
||||
to standard output and files.
|
||||
|
||||
config FEATURE_TEE_USE_BLOCK_IO
|
||||
bool "Enable block I/O (larger/faster) instead of byte I/O"
|
||||
default y
|
||||
depends on TEE
|
||||
help
|
||||
Enable this option for a faster tee, at expense of size.
|
||||
|
||||
config TRUE
|
||||
bool "true"
|
||||
default y
|
||||
help
|
||||
true returns an exit code of TRUE (0).
|
||||
|
||||
config TTY
|
||||
bool "tty"
|
||||
default y
|
||||
help
|
||||
tty is used to print the name of the current terminal to
|
||||
standard output.
|
||||
|
||||
config UNAME
|
||||
bool "uname"
|
||||
default y
|
||||
help
|
||||
uname is used to print system information.
|
||||
|
||||
config UNAME_OSNAME
|
||||
string "Operating system name"
|
||||
default "GNU/Linux"
|
||||
depends on UNAME
|
||||
help
|
||||
Sets the operating system name reported by uname -o. The
|
||||
default is "GNU/Linux".
|
||||
|
||||
config UNEXPAND
|
||||
bool "unexpand"
|
||||
default y
|
||||
help
|
||||
By default, convert only leading sequences of blanks to tabs.
|
||||
|
||||
config FEATURE_UNEXPAND_LONG_OPTIONS
|
||||
bool "Enable long options"
|
||||
default y
|
||||
depends on UNEXPAND && LONG_OPTS
|
||||
help
|
||||
Support long options for the unexpand applet.
|
||||
|
||||
config UNIQ
|
||||
bool "uniq"
|
||||
default y
|
||||
help
|
||||
uniq is used to remove duplicate lines from a sorted file.
|
||||
|
||||
config USLEEP
|
||||
bool "usleep"
|
||||
default y
|
||||
help
|
||||
usleep is used to pause for a specified number of microseconds.
|
||||
|
||||
config UUDECODE
|
||||
bool "uudecode"
|
||||
default y
|
||||
help
|
||||
uudecode is used to decode a uuencoded file.
|
||||
|
||||
config UUENCODE
|
||||
bool "uuencode"
|
||||
default y
|
||||
help
|
||||
uuencode is used to uuencode a file.
|
||||
|
||||
config WC
|
||||
bool "wc"
|
||||
default y
|
||||
help
|
||||
wc is used to print the number of bytes, words, and lines,
|
||||
in specified files.
|
||||
|
||||
config FEATURE_WC_LARGE
|
||||
bool "Support very large files in wc"
|
||||
default y
|
||||
depends on WC
|
||||
help
|
||||
Use "unsigned long long" in wc for counter variables.
|
||||
|
||||
config WHOAMI
|
||||
bool "whoami"
|
||||
default y
|
||||
help
|
||||
whoami is used to print the username of the current
|
||||
user id (same as id -un).
|
||||
|
||||
config YES
|
||||
bool "yes"
|
||||
default y
|
||||
help
|
||||
yes is used to repeatedly output a specific string, or
|
||||
the default string `y'.
|
||||
|
||||
comment "Common options"
|
||||
|
||||
config FEATURE_VERBOSE
|
||||
|
@ -9,70 +9,15 @@ libs-y += libcoreutils/
|
||||
lib-y:=
|
||||
|
||||
INSERT
|
||||
lib-$(CONFIG_CAL) += cal.o
|
||||
lib-$(CONFIG_CATV) += catv.o
|
||||
lib-$(CONFIG_CHGRP) += chgrp.o chown.o
|
||||
lib-$(CONFIG_CHMOD) += chmod.o
|
||||
lib-$(CONFIG_CHOWN) += chown.o
|
||||
|
||||
#lib-$(CONFIG_LENGTH) += length.o
|
||||
|
||||
lib-$(CONFIG_MORE) += cat.o # more uses it if stdout isn't a tty
|
||||
lib-$(CONFIG_LESS) += cat.o # less too
|
||||
lib-$(CONFIG_CRONTAB) += cat.o # crontab -l
|
||||
lib-$(CONFIG_ADDUSER) += chown.o # used by adduser
|
||||
lib-$(CONFIG_ADDGROUP) += chown.o # used by adduser
|
||||
lib-$(CONFIG_CHROOT) += chroot.o
|
||||
lib-$(CONFIG_CKSUM) += cksum.o
|
||||
lib-$(CONFIG_COMM) += comm.o
|
||||
lib-$(CONFIG_CP) += cp.o
|
||||
lib-$(CONFIG_CUT) += cut.o
|
||||
lib-$(CONFIG_DD) += dd.o
|
||||
lib-$(CONFIG_DF) += df.o
|
||||
lib-$(CONFIG_DIRNAME) += dirname.o
|
||||
lib-$(CONFIG_DOS2UNIX) += dos2unix.o
|
||||
lib-$(CONFIG_DU) += du.o
|
||||
lib-$(CONFIG_ECHO) += echo.o
|
||||
lib-$(CONFIG_ASH) += echo.o # used by ash
|
||||
lib-$(CONFIG_HUSH) += echo.o # used by hush
|
||||
lib-$(CONFIG_ENV) += env.o
|
||||
lib-$(CONFIG_EXPR) += expr.o
|
||||
lib-$(CONFIG_EXPAND) += expand.o
|
||||
lib-$(CONFIG_FALSE) += false.o
|
||||
lib-$(CONFIG_FOLD) += fold.o
|
||||
lib-$(CONFIG_FSYNC) += fsync.o
|
||||
lib-$(CONFIG_INSTALL) += install.o
|
||||
#lib-$(CONFIG_LENGTH) += length.o
|
||||
lib-$(CONFIG_LN) += ln.o
|
||||
lib-$(CONFIG_LOGNAME) += logname.o
|
||||
lib-$(CONFIG_LS) += ls.o
|
||||
lib-$(CONFIG_FTPD) += ls.o
|
||||
lib-$(CONFIG_MKDIR) += mkdir.o
|
||||
lib-$(CONFIG_MKFIFO) += mkfifo.o
|
||||
lib-$(CONFIG_MKNOD) += mknod.o
|
||||
lib-$(CONFIG_MV) += mv.o
|
||||
lib-$(CONFIG_NICE) += nice.o
|
||||
lib-$(CONFIG_NOHUP) += nohup.o
|
||||
lib-$(CONFIG_OD) += od.o
|
||||
lib-$(CONFIG_PRINTENV) += printenv.o
|
||||
lib-$(CONFIG_PRINTF) += printf.o
|
||||
lib-$(CONFIG_ASH) += echo.o # used by ash
|
||||
lib-$(CONFIG_HUSH) += echo.o # used by hush
|
||||
lib-$(CONFIG_FTPD) += ls.o # used by ftpd
|
||||
lib-$(CONFIG_ASH_BUILTIN_PRINTF) += printf.o
|
||||
lib-$(CONFIG_PWD) += pwd.o
|
||||
lib-$(CONFIG_READLINK) += readlink.o
|
||||
lib-$(CONFIG_REALPATH) += realpath.o
|
||||
lib-$(CONFIG_RM) += rm.o
|
||||
lib-$(CONFIG_RMDIR) += rmdir.o
|
||||
lib-$(CONFIG_SEQ) += seq.o
|
||||
lib-$(CONFIG_SLEEP) += sleep.o
|
||||
lib-$(CONFIG_SPLIT) += split.o
|
||||
lib-$(CONFIG_SORT) += sort.o
|
||||
lib-$(CONFIG_STAT) += stat.o
|
||||
lib-$(CONFIG_STTY) += stty.o
|
||||
lib-$(CONFIG_SUM) += sum.o
|
||||
lib-$(CONFIG_TAC) += tac.o
|
||||
lib-$(CONFIG_TEE) += tee.o
|
||||
lib-$(CONFIG_TRUE) += true.o
|
||||
lib-$(CONFIG_TTY) += tty.o
|
||||
lib-$(CONFIG_UNAME) += uname.o
|
||||
lib-$(CONFIG_UNEXPAND) += expand.o
|
||||
lib-$(CONFIG_UNIQ) += uniq.o
|
||||
lib-$(CONFIG_USLEEP) += usleep.o
|
||||
lib-$(CONFIG_UUDECODE) += uudecode.o
|
||||
lib-$(CONFIG_UUENCODE) += uuencode.o
|
||||
lib-$(CONFIG_WC) += wc.o
|
||||
lib-$(CONFIG_WHOAMI) += whoami.o
|
||||
lib-$(CONFIG_YES) += yes.o
|
||||
|
@ -14,12 +14,6 @@
|
||||
* 2) Don't check for options, as per SUSv3.
|
||||
* 3) Save some space by using strcmp(). Calling strncmp() here was silly.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/basename.html */
|
||||
|
||||
//kbuild:lib-$(CONFIG_BASENAME) += basename.o
|
||||
|
||||
//config:config BASENAME
|
||||
//config: bool "basename"
|
||||
//config: default y
|
||||
@ -28,6 +22,13 @@
|
||||
//config: leaving just the filename itself. Enable this option if you wish
|
||||
//config: to enable the 'basename' utility.
|
||||
|
||||
//applet:IF_BASENAME(APPLET_NOFORK(basename, basename, BB_DIR_USR_BIN, BB_SUID_DROP, basename))
|
||||
|
||||
//kbuild:lib-$(CONFIG_BASENAME) += basename.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/basename.html */
|
||||
|
||||
//usage:#define basename_trivial_usage
|
||||
//usage: "FILE [SUFFIX]"
|
||||
//usage:#define basename_full_usage "\n\n"
|
||||
|
@ -6,17 +6,25 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Major size reduction... over 50% (>1.5k) on i386.
|
||||
*/
|
||||
//config:config CAL
|
||||
//config: bool "cal"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: cal is used to display a monthly calendar.
|
||||
|
||||
//applet:IF_CAL(APPLET(cal, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CAL) += cal.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant with -j and -y extensions (from util-linux). */
|
||||
/* BB_AUDIT BUG: The output of 'cal -j 1752' is incorrect. The upstream
|
||||
* BB_AUDIT BUG: version in util-linux seems to be broken as well. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/cal.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Major size reduction... over 50% (>1.5k) on i386.
|
||||
*/
|
||||
|
||||
//usage:#define cal_trivial_usage
|
||||
//usage: "[-jy] [[MONTH] YEAR]"
|
||||
//usage:#define cal_full_usage "\n\n"
|
||||
|
@ -6,15 +6,6 @@
|
||||
*
|
||||
* Licensed under GPLv2, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/cat.html */
|
||||
|
||||
//kbuild:lib-$(CONFIG_CAT) += cat.o
|
||||
//kbuild:lib-$(CONFIG_MORE) += cat.o # more uses it if stdout isn't a tty
|
||||
//kbuild:lib-$(CONFIG_LESS) += cat.o # less too
|
||||
//kbuild:lib-$(CONFIG_CRONTAB) += cat.o # crontab -l
|
||||
|
||||
//config:config CAT
|
||||
//config: bool "cat"
|
||||
//config: default y
|
||||
@ -22,6 +13,13 @@
|
||||
//config: cat is used to concatenate files and print them to the standard
|
||||
//config: output. Enable this option if you wish to enable the 'cat' utility.
|
||||
|
||||
//applet:IF_CAT(APPLET_NOFORK(cat, cat, BB_DIR_BIN, BB_SUID_DROP, cat))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CAT) += cat.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/cat.html */
|
||||
|
||||
//usage:#define cat_trivial_usage
|
||||
//usage: "[FILE]..."
|
||||
//usage:#define cat_full_usage "\n\n"
|
||||
|
@ -10,6 +10,17 @@
|
||||
/* See "Cat -v considered harmful" at
|
||||
* http://cm.bell-labs.com/cm/cs/doc/84/kp.ps.gz */
|
||||
|
||||
//config:config CATV
|
||||
//config: bool "catv"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: Display nonprinting characters as escape sequences (like some
|
||||
//config: implementations' cat -v option).
|
||||
|
||||
//applet:IF_CATV(APPLET(catv, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CATV) += catv.o
|
||||
|
||||
//usage:#define catv_trivial_usage
|
||||
//usage: "[-etv] [FILE]..."
|
||||
//usage:#define catv_full_usage "\n\n"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config CHGRP
|
||||
//config: bool "chgrp"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: chgrp is used to change the group ownership of files.
|
||||
|
||||
//applet:IF_CHGRP(APPLET_NOEXEC(chgrp, chgrp, BB_DIR_BIN, BB_SUID_DROP, chgrp))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CHGRP) += chgrp.o chown.o
|
||||
|
||||
/* BB_AUDIT SUSv3 defects - none? */
|
||||
/* BB_AUDIT GNU defects - unsupported long options. */
|
||||
|
@ -9,6 +9,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config CHMOD
|
||||
//config: bool "chmod"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: chmod is used to change the access permission of files.
|
||||
|
||||
//applet:IF_CHMOD(APPLET_NOEXEC(chmod, chmod, BB_DIR_BIN, BB_SUID_DROP, chmod))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CHMOD) += chmod.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* BB_AUDIT GNU defects - unsupported long options. */
|
||||
|
@ -6,6 +6,23 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config CHOWN
|
||||
//config: bool "chown"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: chown is used to change the user and/or group ownership
|
||||
//config: of files.
|
||||
//config:
|
||||
//config:config FEATURE_CHOWN_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on CHOWN && LONG_OPTS
|
||||
//config: help
|
||||
//config: Enable use of long options
|
||||
|
||||
//applet:IF_CHOWN(APPLET_NOEXEC(chown, chown, BB_DIR_BIN, BB_SUID_DROP, chown))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CHOWN) += chown.o
|
||||
|
||||
/* BB_AUDIT SUSv3 defects - none? */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/chown.html */
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config CHROOT
|
||||
//config: bool "chroot"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: chroot is used to change the root directory and run a command.
|
||||
//config: The default command is `/bin/sh'.
|
||||
|
||||
//applet:IF_CHROOT(APPLET(chroot, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CHROOT) += chroot.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config CKSUM
|
||||
//config: bool "cksum"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: cksum is used to calculate the CRC32 checksum of a file.
|
||||
|
||||
//applet:IF_CKSUM(APPLET_NOEXEC(cksum, cksum, BB_DIR_USR_BIN, BB_SUID_DROP, cksum))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CKSUM) += cksum.o
|
||||
|
||||
//usage:#define cksum_trivial_usage
|
||||
//usage: "FILES..."
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config COMM
|
||||
//config: bool "comm"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: comm is used to compare two files line by line and return
|
||||
//config: a three-column output.
|
||||
|
||||
//applet:IF_COMM(APPLET(comm, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_COMM) += comm.o
|
||||
|
||||
//usage:#define comm_trivial_usage
|
||||
//usage: "[-123] FILE1 FILE2"
|
||||
|
@ -7,13 +7,29 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/cp.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Size reduction.
|
||||
*/
|
||||
//config:config CP
|
||||
//config: bool "cp"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: cp is used to copy files and directories.
|
||||
//config:
|
||||
//config:config FEATURE_CP_LONG_OPTIONS
|
||||
//config: bool "Enable long options for cp"
|
||||
//config: default y
|
||||
//config: depends on CP && LONG_OPTS
|
||||
//config: help
|
||||
//config: Enable long options for cp.
|
||||
//config: Also add support for --parents option.
|
||||
|
||||
//applet:IF_CP(APPLET_NOEXEC(cp, cp, BB_DIR_BIN, BB_SUID_DROP, cp))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CP) += cp.o
|
||||
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/cp.html */
|
||||
|
||||
//usage:#define cp_trivial_usage
|
||||
//usage: "[OPTIONS] SOURCE... DEST"
|
||||
|
@ -8,6 +8,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config CUT
|
||||
//config: bool "cut"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: cut is used to print selected parts of lines from
|
||||
//config: each file to stdout.
|
||||
|
||||
//applet:IF_CUT(APPLET_NOEXEC(cut, cut, BB_DIR_USR_BIN, BB_SUID_DROP, cut))
|
||||
|
||||
//kbuild:lib-$(CONFIG_CUT) += cut.o
|
||||
|
||||
//usage:#define cut_trivial_usage
|
||||
//usage: "[OPTIONS] [FILE]..."
|
||||
|
@ -8,8 +8,7 @@
|
||||
* bugfixes and cleanup by Bernhard Reutner-Fischer
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
*/
|
||||
/* This 'date' command supports only 2 time setting formats,
|
||||
all the GNU strftime stuff (its in libc, lets use it),
|
||||
setting time using UTC and displaying it, as well as
|
||||
@ -19,10 +18,6 @@
|
||||
/* Input parsing code is always bulky - used heavy duty libc stuff as
|
||||
much as possible, missed out a lot of bounds checking */
|
||||
|
||||
//applet:IF_DATE(APPLET(date, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DATE) += date.o
|
||||
|
||||
//config:config DATE
|
||||
//config: bool "date"
|
||||
//config: default y
|
||||
@ -63,6 +58,10 @@
|
||||
//config: the same format. With it on, 'date DATE' additionally supports
|
||||
//config: MMDDhhmm[[YY]YY][.ss] format.
|
||||
|
||||
//applet:IF_DATE(APPLET(date, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DATE) += date.o
|
||||
|
||||
/* GNU coreutils 6.9 man page:
|
||||
* date [OPTION]... [+FORMAT]
|
||||
* date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
|
||||
|
@ -2,12 +2,10 @@
|
||||
/*
|
||||
* Mini dd implementation for busybox
|
||||
*
|
||||
*
|
||||
* Copyright (C) 2000,2001 Matt Kraai
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
//config:config DD
|
||||
//config: bool "dd"
|
||||
//config: default y
|
||||
@ -53,6 +51,10 @@
|
||||
//config: help
|
||||
//config: Enables support for status=noxfer/none option.
|
||||
|
||||
//applet:IF_DD(APPLET_NOEXEC(dd, dd, BB_DIR_BIN, BB_SUID_DROP, dd))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DD) += dd.o
|
||||
|
||||
//usage:#define dd_trivial_usage
|
||||
//usage: "[if=FILE] [of=FILE] " IF_FEATURE_DD_IBS_OBS("[ibs=N] [obs=N] ") "[bs=N] [count=N] [skip=N]\n"
|
||||
//usage: " [seek=N]" IF_FEATURE_DD_IBS_OBS(" [conv=notrunc|noerror|sync|fsync] [iflag=skip_bytes]")
|
||||
|
@ -7,10 +7,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 _NOT_ compliant -- option -t missing. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/df.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Size reduction. Removed floating point dependency. Added error checking
|
||||
@ -21,6 +17,30 @@
|
||||
*
|
||||
* Implement -P and -B; better coreutils compat; cleanup
|
||||
*/
|
||||
//config:config DF
|
||||
//config: bool "df"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: df reports the amount of disk space used and available
|
||||
//config: on filesystems.
|
||||
//config:
|
||||
//config:config FEATURE_DF_FANCY
|
||||
//config: bool "Enable -a, -i, -B"
|
||||
//config: default y
|
||||
//config: depends on DF
|
||||
//config: help
|
||||
//config: This option enables -a, -i and -B.
|
||||
//config:
|
||||
//config: -a Show all filesystems
|
||||
//config: -i Inodes
|
||||
//config: -B <SIZE> Blocksize
|
||||
|
||||
//applet:IF_DF(APPLET(df, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DF) += df.o
|
||||
|
||||
/* BB_AUDIT SUSv3 _NOT_ compliant -- option -t missing. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/df.html */
|
||||
|
||||
//usage:#define df_trivial_usage
|
||||
//usage: "[-Pk"
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config DIRNAME
|
||||
//config: bool "dirname"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: dirname is used to strip a non-directory suffix from
|
||||
//config: a file name.
|
||||
|
||||
//applet:IF_DIRNAME(APPLET_NOFORK(dirname, dirname, BB_DIR_USR_BIN, BB_SUID_DROP, dirname))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DIRNAME) += dirname.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/dirname.html */
|
||||
|
@ -10,7 +10,27 @@
|
||||
* dos2unix filters reading input from stdin and writing output to stdout.
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
*/
|
||||
//config:config DOS2UNIX
|
||||
//config: bool "dos2unix/unix2dos"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: dos2unix is used to convert a text file from DOS format to
|
||||
//config: UNIX format, and vice versa.
|
||||
//config:
|
||||
//config:config UNIX2DOS
|
||||
//config: bool
|
||||
//config: default y
|
||||
//config: depends on DOS2UNIX
|
||||
//config: help
|
||||
//config: unix2dos is used to convert a text file from UNIX format to
|
||||
//config: DOS format, and vice versa.
|
||||
|
||||
//applet:IF_DOS2UNIX(APPLET_NOEXEC(dos2unix, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, dos2unix))
|
||||
//applet:IF_UNIX2DOS(APPLET_NOEXEC(unix2dos, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, unix2dos))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DOS2UNIX) += dos2unix.o
|
||||
//kbuild:lib-$(CONFIG_UNIX2DOS) += dos2unix.o
|
||||
|
||||
//usage:#define dos2unix_trivial_usage
|
||||
//usage: "[-ud] [FILE]"
|
||||
|
@ -8,10 +8,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant (unless default blocksize set to 1k) */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/du.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Mostly rewritten for SUSv3 compliance and to fix bugs/defects.
|
||||
@ -22,6 +18,26 @@
|
||||
* 3) Added error checking of output.
|
||||
* 4) Fixed busybox bug #1284 involving long overflow with human_readable.
|
||||
*/
|
||||
//config:config DU
|
||||
//config: bool "du (default blocksize of 512 bytes)"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: du is used to report the amount of disk space used
|
||||
//config: for specified files.
|
||||
//config:
|
||||
//config:config FEATURE_DU_DEFAULT_BLOCKSIZE_1K
|
||||
//config: bool "Use a default blocksize of 1024 bytes (1K)"
|
||||
//config: default y
|
||||
//config: depends on DU
|
||||
//config: help
|
||||
//config: Use a blocksize of (1K) instead of the default 512b.
|
||||
|
||||
//applet:IF_DU(APPLET(du, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_DU) += du.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant (unless default blocksize set to 1k) */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/du.html */
|
||||
|
||||
//usage:#define du_trivial_usage
|
||||
//usage: "[-aHLdclsx" IF_FEATURE_HUMAN_READABLE("hm") "k] [FILE]..."
|
||||
|
@ -9,10 +9,6 @@
|
||||
*
|
||||
* Original copyright notice is retained at the end of this file.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant -- unless configured as fancy echo. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/echo.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Because of behavioral differences, implemented configurable SUSv3
|
||||
@ -22,6 +18,26 @@
|
||||
* 2) SUSv3 specifies that octal escapes are of the form \0{#{#{#}}}.
|
||||
* The previous version did not allow 4-digit octals.
|
||||
*/
|
||||
//config:config ECHO
|
||||
//config: bool "echo (basic SuSv3 version taking no options)"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: echo is used to print a specified string to stdout.
|
||||
//config:
|
||||
//config:# this entry also appears in shell/Config.in, next to the echo builtin
|
||||
//config:config FEATURE_FANCY_ECHO
|
||||
//config: bool "Enable echo options (-n and -e)"
|
||||
//config: default y
|
||||
//config: depends on ECHO || ASH_BUILTIN_ECHO || HUSH
|
||||
//config: help
|
||||
//config: This adds options (-n and -e) to echo.
|
||||
|
||||
//applet:IF_ECHO(APPLET_NOFORK(echo, echo, BB_DIR_BIN, BB_SUID_DROP, echo))
|
||||
|
||||
//kbuild:lib-$(CONFIG_ECHO) += echo.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant -- unless configured as fancy echo. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/echo.html */
|
||||
|
||||
//usage:#define echo_trivial_usage
|
||||
//usage: IF_FEATURE_FANCY_ECHO("[-neE] ") "[ARG]..."
|
||||
|
@ -11,16 +11,11 @@
|
||||
*
|
||||
* Modified for BusyBox by Erik Andersen <andersen@codepoet.org>
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/env.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Fixed bug involving exit return codes if execvp fails. Also added
|
||||
* output error checking.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Modified by Vladimir Oleynik <dzo@simtreas.ru> (C) 2003
|
||||
* - correct "-" option usage
|
||||
@ -28,8 +23,27 @@
|
||||
* - GNU long option support
|
||||
* - use xfunc_error_retval
|
||||
*/
|
||||
//config:config ENV
|
||||
//config: bool "env"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: env is used to set an environment variable and run
|
||||
//config: a command; without options it displays the current
|
||||
//config: environment.
|
||||
//config:
|
||||
//config:config FEATURE_ENV_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on ENV && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the env applet.
|
||||
|
||||
/* This is a NOEXEC applet. Be very careful! */
|
||||
//applet:IF_ENV(APPLET_NOEXEC(env, env, BB_DIR_USR_BIN, BB_SUID_DROP, env))
|
||||
|
||||
//kbuild:lib-$(CONFIG_ENV) += env.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/env.html */
|
||||
|
||||
//usage:#define env_trivial_usage
|
||||
//usage: "[-iu] [-] [name=value]... [PROG ARGS]"
|
||||
|
@ -20,6 +20,37 @@
|
||||
*
|
||||
* Caveat: this versions of expand and unexpand don't accept tab lists.
|
||||
*/
|
||||
//config:config EXPAND
|
||||
//config: bool "expand"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: By default, convert all tabs to spaces.
|
||||
//config:
|
||||
//config:config FEATURE_EXPAND_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on EXPAND && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the expand applet.
|
||||
//config:
|
||||
//config:config UNEXPAND
|
||||
//config: bool "unexpand"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: By default, convert only leading sequences of blanks to tabs.
|
||||
//config:
|
||||
//config:config FEATURE_UNEXPAND_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on UNEXPAND && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the unexpand applet.
|
||||
|
||||
//applet:IF_EXPAND(APPLET(expand, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
//applet:IF_UNEXPAND(APPLET_ODDNAME(unexpand, expand, BB_DIR_USR_BIN, BB_SUID_DROP, unexpand))
|
||||
|
||||
//kbuild:lib-$(CONFIG_EXPAND) += expand.o
|
||||
//kbuild:lib-$(CONFIG_UNEXPAND) += expand.o
|
||||
|
||||
//usage:#define expand_trivial_usage
|
||||
//usage: "[-i] [-t N] [FILE]..."
|
||||
|
@ -13,7 +13,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* This program evaluates expressions. Each token (operator, operand,
|
||||
* parenthesis) of the expression must be a separate argument. The
|
||||
* parser used is a reasonably general one, though any incarnation of
|
||||
@ -21,9 +20,27 @@
|
||||
*
|
||||
* No parse tree is needed; a new node is evaluated immediately.
|
||||
* One function can handle multiple operators all of equal precedence,
|
||||
* provided they all associate ((x op x) op x). */
|
||||
* provided they all associate ((x op x) op x).
|
||||
*/
|
||||
//config:config EXPR
|
||||
//config: bool "expr"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: expr is used to calculate numbers and print the result
|
||||
//config: to standard output.
|
||||
//config:
|
||||
//config:config EXPR_MATH_SUPPORT_64
|
||||
//config: bool "Extend Posix numbers support to 64 bit"
|
||||
//config: default y
|
||||
//config: depends on EXPR
|
||||
//config: help
|
||||
//config: Enable 64-bit math support in the expr applet. This will make
|
||||
//config: the applet slightly larger, but will allow computation with very
|
||||
//config: large numbers.
|
||||
|
||||
/* no getopt needed */
|
||||
//applet:IF_EXPR(APPLET(expr, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_EXPR) += expr.o
|
||||
|
||||
//usage:#define expr_trivial_usage
|
||||
//usage: "EXPRESSION"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config FALSE
|
||||
//config: bool "false"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: false returns an exit code of FALSE (1).
|
||||
|
||||
//applet:IF_FALSE(APPLET_NOFORK(false, false, BB_DIR_BIN, BB_SUID_DROP, false))
|
||||
|
||||
//kbuild:lib-$(CONFIG_FALSE) += false.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/000095399/utilities/false.html */
|
||||
|
@ -9,6 +9,15 @@
|
||||
|
||||
Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config FOLD
|
||||
//config: bool "fold"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: Wrap text to fit a specific width.
|
||||
|
||||
//applet:IF_FOLD(APPLET_NOEXEC(fold, fold, BB_DIR_USR_BIN, BB_SUID_DROP, fold))
|
||||
|
||||
//kbuild:lib-$(CONFIG_FOLD) += fold.o
|
||||
|
||||
//usage:#define fold_trivial_usage
|
||||
//usage: "[-bs] [-w WIDTH] [FILE]..."
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config FSYNC
|
||||
//config: bool "fsync"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: fsync is used to flush file-related cached blocks to disk.
|
||||
|
||||
//applet:IF_FSYNC(APPLET_NOFORK(fsync, fsync, BB_DIR_BIN, BB_SUID_DROP, fsync))
|
||||
|
||||
//kbuild:lib-$(CONFIG_FSYNC) += fsync.o
|
||||
|
||||
//usage:#define fsync_trivial_usage
|
||||
//usage: "[-d] FILE..."
|
||||
|
@ -6,13 +6,28 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config HEAD
|
||||
//config: bool "head"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: head is used to print the first specified number of lines
|
||||
//config: from files.
|
||||
//config:
|
||||
//config:config FEATURE_FANCY_HEAD
|
||||
//config: bool "Enable head options (-c, -q, and -v)"
|
||||
//config: default y
|
||||
//config: depends on HEAD
|
||||
//config: help
|
||||
//config: This enables the head options (-c, -q, and -v).
|
||||
|
||||
//applet:IF_HEAD(APPLET_NOEXEC(head, head, BB_DIR_USR_BIN, BB_SUID_DROP, head))
|
||||
|
||||
//kbuild:lib-$(CONFIG_HEAD) += head.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* BB_AUDIT GNU compatible -c, -q, and -v options in 'fancy' configuration. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/head.html */
|
||||
|
||||
//kbuild:lib-$(CONFIG_HEAD) += head.o
|
||||
|
||||
//usage:#define head_trivial_usage
|
||||
//usage: "[OPTIONS] [FILE]..."
|
||||
//usage:#define head_full_usage "\n\n"
|
||||
|
@ -6,9 +6,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
//config:config HOSTID
|
||||
//config: bool "hostid"
|
||||
//config: default y
|
||||
@ -20,6 +17,8 @@
|
||||
|
||||
//kbuild:lib-$(CONFIG_HOSTID) += hostid.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
//usage:#define hostid_trivial_usage
|
||||
//usage: ""
|
||||
//usage:#define hostid_full_usage "\n\n"
|
||||
|
@ -7,31 +7,30 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant. */
|
||||
/* Hacked by Tito Ragusa (C) 2004 to handle usernames of whatever
|
||||
* length and to be more similar to GNU id.
|
||||
* -Z option support: by Yuichi Nakamura <ynakam@hitachisoft.jp>
|
||||
* Added -G option Tito Ragusa (C) 2008 for SUSv3.
|
||||
*/
|
||||
|
||||
//config:config ID
|
||||
//config: bool "id"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: id displays the current user and group ID names.
|
||||
|
||||
//config:
|
||||
//config:config GROUPS
|
||||
//config: bool "groups"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: Print the group names associated with current user id.
|
||||
|
||||
//applet:IF_GROUPS(APPLET_NOEXEC(groups, id, BB_DIR_USR_BIN, BB_SUID_DROP, groups))
|
||||
//applet:IF_ID( APPLET_NOEXEC(id, id, BB_DIR_USR_BIN, BB_SUID_DROP, id ))
|
||||
|
||||
//kbuild:lib-$(CONFIG_GROUPS) += id.o
|
||||
//kbuild:lib-$(CONFIG_ID) += id.o
|
||||
|
||||
//applet:IF_GROUPS(APPLET_NOEXEC(groups, id, BB_DIR_USR_BIN, BB_SUID_DROP, groups))
|
||||
//applet:IF_ID( APPLET_NOEXEC(id, id, BB_DIR_USR_BIN, BB_SUID_DROP, id ))
|
||||
/* BB_AUDIT SUSv3 compliant. */
|
||||
|
||||
//usage:#define id_trivial_usage
|
||||
//usage: "[OPTIONS] [USER]"
|
||||
|
@ -5,6 +5,22 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config INSTALL
|
||||
//config: bool "install"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: Copy files and set attributes.
|
||||
//config:
|
||||
//config:config FEATURE_INSTALL_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on INSTALL && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the install applet.
|
||||
|
||||
//applet:IF_INSTALL(APPLET(install, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_INSTALL) += install.o
|
||||
|
||||
/* -v, -b, -c are ignored */
|
||||
//usage:#define install_trivial_usage
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config LN
|
||||
//config: bool "ln"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: ln is used to create hard or soft links between files.
|
||||
|
||||
//applet:IF_LN(APPLET_NOEXEC(ln, ln, BB_DIR_BIN, BB_SUID_DROP, ln))
|
||||
|
||||
//kbuild:lib-$(CONFIG_LN) += ln.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* BB_AUDIT GNU options missing: -d, -F, -i, and -v. */
|
||||
|
@ -6,10 +6,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/logname.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* SUSv3 specifies the string used is that returned from getlogin().
|
||||
@ -19,6 +15,18 @@
|
||||
* correct course of action wrt SUSv3 for a failing getlogin() is
|
||||
* a diagnostic message and an error return.
|
||||
*/
|
||||
//config:config LOGNAME
|
||||
//config: bool "logname"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: logname is used to print the current user's login name.
|
||||
|
||||
//applet:IF_LOGNAME(APPLET_NOFORK(logname, logname, BB_DIR_USR_BIN, BB_SUID_DROP, logname))
|
||||
|
||||
//kbuild:lib-$(CONFIG_LOGNAME) += logname.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/logname.html */
|
||||
|
||||
//usage:#define logname_trivial_usage
|
||||
//usage: ""
|
||||
|
@ -4,7 +4,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* [date unknown. Perhaps before year 2000]
|
||||
* To achieve a small memory footprint, this version of 'ls' doesn't do any
|
||||
* file sorting, and only has the most essential command line switches
|
||||
@ -28,6 +27,75 @@
|
||||
* [2009-03]
|
||||
* ls sorts listing now, and supports almost all options.
|
||||
*/
|
||||
//config:config LS
|
||||
//config: bool "ls"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: ls is used to list the contents of directories.
|
||||
//config:
|
||||
//config:config FEATURE_LS_FILETYPES
|
||||
//config: bool "Enable filetyping options (-p and -F)"
|
||||
//config: default y
|
||||
//config: depends on LS
|
||||
//config: help
|
||||
//config: Enable the ls options (-p and -F).
|
||||
//config:
|
||||
//config:config FEATURE_LS_FOLLOWLINKS
|
||||
//config: bool "Enable symlinks dereferencing (-L)"
|
||||
//config: default y
|
||||
//config: depends on LS
|
||||
//config: help
|
||||
//config: Enable the ls option (-L).
|
||||
//config:
|
||||
//config:config FEATURE_LS_RECURSIVE
|
||||
//config: bool "Enable recursion (-R)"
|
||||
//config: default y
|
||||
//config: depends on LS
|
||||
//config: help
|
||||
//config: Enable the ls option (-R).
|
||||
//config:
|
||||
//config:config FEATURE_LS_SORTFILES
|
||||
//config: bool "Sort the file names"
|
||||
//config: default y
|
||||
//config: depends on LS
|
||||
//config: help
|
||||
//config: Allow ls to sort file names alphabetically.
|
||||
//config:
|
||||
//config:config FEATURE_LS_TIMESTAMPS
|
||||
//config: bool "Show file timestamps"
|
||||
//config: default y
|
||||
//config: depends on LS
|
||||
//config: help
|
||||
//config: Allow ls to display timestamps for files.
|
||||
//config:
|
||||
//config:config FEATURE_LS_USERNAME
|
||||
//config: bool "Show username/groupnames"
|
||||
//config: default y
|
||||
//config: depends on LS
|
||||
//config: help
|
||||
//config: Allow ls to display username/groupname for files.
|
||||
//config:
|
||||
//config:config FEATURE_LS_COLOR
|
||||
//config: bool "Allow use of color to identify file types"
|
||||
//config: default y
|
||||
//config: depends on LS && LONG_OPTS
|
||||
//config: help
|
||||
//config: This enables the --color option to ls.
|
||||
//config:
|
||||
//config:config FEATURE_LS_COLOR_IS_DEFAULT
|
||||
//config: bool "Produce colored ls output by default"
|
||||
//config: default y
|
||||
//config: depends on FEATURE_LS_COLOR
|
||||
//config: help
|
||||
//config: Saying yes here will turn coloring on by default,
|
||||
//config: even if no "--color" option is given to the ls command.
|
||||
//config: This is not recommended, since the colors are not
|
||||
//config: configurable, and the output may not be legible on
|
||||
//config: many output screens.
|
||||
|
||||
//applet:IF_LS(APPLET_NOEXEC(ls, ls, BB_DIR_BIN, BB_SUID_DROP, ls))
|
||||
|
||||
//kbuild:lib-$(CONFIG_LS) += ls.o
|
||||
|
||||
//usage:#define ls_trivial_usage
|
||||
//usage: "[-1AaCxd"
|
||||
|
@ -6,18 +6,32 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/mkdir.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Fixed broken permission setting when -p was used; especially in
|
||||
* conjunction with -m.
|
||||
*/
|
||||
|
||||
/* Nov 28, 2006 Yoshinori Sato <ysato@users.sourceforge.jp>: Add SELinux Support.
|
||||
*/
|
||||
//config:config MKDIR
|
||||
//config: bool "mkdir"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: mkdir is used to create directories with the specified names.
|
||||
//config:
|
||||
//config:config FEATURE_MKDIR_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on MKDIR && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the mkdir applet.
|
||||
|
||||
//applet:IF_MKDIR(APPLET_NOFORK(mkdir, mkdir, BB_DIR_BIN, BB_SUID_DROP, mkdir))
|
||||
|
||||
//kbuild:lib-$(CONFIG_MKDIR) += mkdir.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/mkdir.html */
|
||||
|
||||
//usage:#define mkdir_trivial_usage
|
||||
//usage: "[OPTIONS] DIRECTORY..."
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config MKFIFO
|
||||
//config: bool "mkfifo"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: mkfifo is used to create FIFOs (named pipes).
|
||||
//config: The 'mknod' program can also create FIFOs.
|
||||
|
||||
//applet:IF_MKFIFO(APPLET_NOEXEC(mkfifo, mkfifo, BB_DIR_USR_BIN, BB_SUID_DROP, mkfifo))
|
||||
|
||||
//kbuild:lib-$(CONFIG_MKFIFO) += mkfifo.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/mkfifo.html */
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config MKNOD
|
||||
//config: bool "mknod"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: mknod is used to create FIFOs or block/character special
|
||||
//config: files with the specified names.
|
||||
|
||||
//applet:IF_MKNOD(APPLET_NOEXEC(mknod, mknod, BB_DIR_BIN, BB_SUID_DROP, mknod))
|
||||
|
||||
//kbuild:lib-$(CONFIG_MKNOD) += mknod.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
|
@ -7,14 +7,26 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Size reduction and improved error checking.
|
||||
*/
|
||||
//config:config MV
|
||||
//config: bool "mv"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: mv is used to move or rename files or directories.
|
||||
//config:
|
||||
//config:config FEATURE_MV_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on MV && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the mv applet.
|
||||
|
||||
#include "libbb.h"
|
||||
#include "libcoreutils/coreutils.h"
|
||||
//applet:IF_MV(APPLET(mv, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_MV) += mv.o
|
||||
|
||||
//usage:#define mv_trivial_usage
|
||||
//usage: "[-fin] SOURCE DEST\n"
|
||||
@ -28,6 +40,9 @@
|
||||
//usage:#define mv_example_usage
|
||||
//usage: "$ mv /tmp/foo /bin/bar\n"
|
||||
|
||||
#include "libbb.h"
|
||||
#include "libcoreutils/coreutils.h"
|
||||
|
||||
#if ENABLE_FEATURE_MV_LONG_OPTIONS
|
||||
static const char mv_longopts[] ALIGN1 =
|
||||
"interactive\0" No_argument "i"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config NICE
|
||||
//config: bool "nice"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: nice runs a program with modified scheduling priority.
|
||||
|
||||
//applet:IF_NICE(APPLET(nice, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_NICE) += nice.o
|
||||
|
||||
//usage:#define nice_trivial_usage
|
||||
//usage: "[-n ADJUST] [PROG ARGS]"
|
||||
|
@ -9,6 +9,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config NOHUP
|
||||
//config: bool "nohup"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: run a command immune to hangups, with output to a non-tty.
|
||||
|
||||
//applet:IF_NOHUP(APPLET(nohup, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_NOHUP) += nohup.o
|
||||
|
||||
//usage:#define nohup_trivial_usage
|
||||
//usage: "PROG ARGS"
|
||||
|
@ -10,6 +10,15 @@
|
||||
*
|
||||
* Original copyright notice is retained at the end of this file.
|
||||
*/
|
||||
//config:config OD
|
||||
//config: bool "od"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: od is used to dump binary files in octal and other formats.
|
||||
|
||||
//applet:IF_OD(APPLET(od, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_OD) += od.o
|
||||
|
||||
//usage:#if !ENABLE_DESKTOP
|
||||
//usage:#define od_trivial_usage
|
||||
|
@ -7,6 +7,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config PRINTENV
|
||||
//config: bool "printenv"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: printenv is used to print all or part of environment.
|
||||
|
||||
//applet:IF_PRINTENV(APPLET_NOFORK(printenv, printenv, BB_DIR_BIN, BB_SUID_DROP, printenv))
|
||||
|
||||
//kbuild:lib-$(CONFIG_PRINTENV) += printenv.o
|
||||
|
||||
//usage:#define printenv_trivial_usage
|
||||
//usage: "[VARIABLE]..."
|
||||
|
@ -38,6 +38,17 @@
|
||||
|
||||
/* 19990508 Busy Boxed! Dave Cinege */
|
||||
|
||||
//config:config PRINTF
|
||||
//config: bool "printf"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: printf is used to format and print specified strings.
|
||||
//config: It's similar to `echo' except it has more options.
|
||||
|
||||
//applet:IF_PRINTF(APPLET_NOFORK(printf, printf, BB_DIR_USR_BIN, BB_SUID_DROP, printf))
|
||||
|
||||
//kbuild:lib-$(CONFIG_PRINTF) += printf.o
|
||||
|
||||
//usage:#define printf_trivial_usage
|
||||
//usage: "FORMAT [ARG]..."
|
||||
//usage:#define printf_full_usage "\n\n"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config PWD
|
||||
//config: bool "pwd"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: pwd is used to print the current directory.
|
||||
|
||||
//applet:IF_PWD(APPLET_NOFORK(pwd, pwd, BB_DIR_BIN, BB_SUID_DROP, pwd))
|
||||
|
||||
//kbuild:lib-$(CONFIG_PWD) += pwd.o
|
||||
|
||||
//usage:#define pwd_trivial_usage
|
||||
//usage: ""
|
||||
@ -18,8 +27,6 @@
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
/* This is a NOFORK applet. Be very careful! */
|
||||
|
||||
static int logical_getcwd(void)
|
||||
{
|
||||
struct stat st1;
|
||||
|
@ -6,6 +6,23 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config READLINK
|
||||
//config: bool "readlink"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: This program reads a symbolic link and returns the name
|
||||
//config: of the file it points to
|
||||
//config:
|
||||
//config:config FEATURE_READLINK_FOLLOW
|
||||
//config: bool "Enable canonicalization by following all symlinks (-f)"
|
||||
//config: default y
|
||||
//config: depends on READLINK
|
||||
//config: help
|
||||
//config: Enable the readlink option (-f).
|
||||
|
||||
//applet:IF_READLINK(APPLET(readlink, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_READLINK) += readlink.o
|
||||
|
||||
//usage:#define readlink_trivial_usage
|
||||
//usage: IF_FEATURE_READLINK_FOLLOW("[-fnv] ") "FILE"
|
||||
|
@ -1,7 +1,4 @@
|
||||
/* vi: set sw=4 ts=4: */
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Apparently a busybox extension. */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Now does proper error checking on output and returns a failure exit code
|
||||
@ -9,6 +6,18 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config REALPATH
|
||||
//config: bool "realpath"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: Return the canonicalized absolute pathname.
|
||||
//config: This isn't provided by GNU shellutils, but where else does it belong.
|
||||
|
||||
//applet:IF_REALPATH(APPLET(realpath, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_REALPATH) += realpath.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Apparently a busybox extension. */
|
||||
|
||||
//usage:#define realpath_trivial_usage
|
||||
//usage: "FILE..."
|
||||
|
@ -6,14 +6,22 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/rm.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Size reduction.
|
||||
*/
|
||||
//config:config RM
|
||||
//config: bool "rm"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: rm is used to remove files or directories.
|
||||
|
||||
//applet:IF_RM(APPLET_NOFORK(rm, rm, BB_DIR_BIN, BB_SUID_DROP, rm))
|
||||
|
||||
//kbuild:lib-$(CONFIG_RM) += rm.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/rm.html */
|
||||
|
||||
//usage:#define rm_trivial_usage
|
||||
//usage: "[-irf] FILE..."
|
||||
|
@ -6,6 +6,23 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config RMDIR
|
||||
//config: bool "rmdir"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: rmdir is used to remove empty directories.
|
||||
//config:
|
||||
//config:config FEATURE_RMDIR_LONG_OPTIONS
|
||||
//config: bool "Enable long options"
|
||||
//config: default y
|
||||
//config: depends on RMDIR && LONG_OPTS
|
||||
//config: help
|
||||
//config: Support long options for the rmdir applet, including
|
||||
//config: --ignore-fail-on-non-empty for compatibility with GNU rmdir.
|
||||
|
||||
//applet:IF_RMDIR(APPLET_NOFORK(rmdir, rmdir, BB_DIR_BIN, BB_SUID_DROP, rmdir))
|
||||
|
||||
//kbuild:lib-$(CONFIG_RMDIR) += rmdir.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/rmdir.html */
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config SEQ
|
||||
//config: bool "seq"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: print a sequence of numbers
|
||||
|
||||
//applet:IF_SEQ(APPLET_NOFORK(seq, seq, BB_DIR_USR_BIN, BB_SUID_DROP, seq))
|
||||
|
||||
//kbuild:lib-$(CONFIG_SEQ) += seq.o
|
||||
|
||||
//usage:#define seq_trivial_usage
|
||||
//usage: "[-w] [-s SEP] [FIRST [INC]] LAST"
|
||||
|
@ -6,17 +6,48 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* BB_AUDIT GNU issues -- fancy version matches except args must be ints. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/sleep.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Rewritten to do proper arg and error checking.
|
||||
* Also, added a 'fancy' configuration to accept multiple args with
|
||||
* time suffixes for seconds, minutes, hours, and days.
|
||||
*/
|
||||
//config:config SLEEP
|
||||
//config: bool "sleep"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: sleep is used to pause for a specified number of seconds.
|
||||
//config: It comes in 3 versions:
|
||||
//config: - small: takes one integer parameter
|
||||
//config: - fancy: takes multiple integer arguments with suffixes:
|
||||
//config: sleep 1d 2h 3m 15s
|
||||
//config: - fancy with fractional numbers:
|
||||
//config: sleep 2.3s 4.5h sleeps for 16202.3 seconds
|
||||
//config: Last one is "the most compatible" with coreutils sleep,
|
||||
//config: but it adds around 1k of code.
|
||||
//config:
|
||||
//config:config FEATURE_FANCY_SLEEP
|
||||
//config: bool "Enable multiple arguments and s/m/h/d suffixes"
|
||||
//config: default y
|
||||
//config: depends on SLEEP
|
||||
//config: help
|
||||
//config: Allow sleep to pause for specified minutes, hours, and days.
|
||||
//config:
|
||||
//config:config FEATURE_FLOAT_SLEEP
|
||||
//config: bool "Enable fractional arguments"
|
||||
//config: default y
|
||||
//config: depends on FEATURE_FANCY_SLEEP
|
||||
//config: help
|
||||
//config: Allow for fractional numeric parameters.
|
||||
|
||||
/* Do not make this applet NOFORK. It breaks ^C-ing of pauses in shells */
|
||||
//applet:IF_SLEEP(APPLET(sleep, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_SLEEP) += sleep.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* BB_AUDIT GNU issues -- fancy version matches except args must be ints. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/sleep.html */
|
||||
|
||||
//usage:#define sleep_trivial_usage
|
||||
//usage: IF_FEATURE_FANCY_SLEEP("[") "N" IF_FEATURE_FANCY_SLEEP("]...")
|
||||
@ -35,9 +66,6 @@
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
/* Do not make this applet NOFORK. It breaks ^C-ing of pauses in shells */
|
||||
|
||||
|
||||
#if ENABLE_FEATURE_FANCY_SLEEP || ENABLE_FEATURE_FLOAT_SLEEP
|
||||
static const struct suffix_mult sfx[] = {
|
||||
{ "s", 1 },
|
||||
|
@ -11,6 +11,27 @@
|
||||
* See SuS3 sort standard at:
|
||||
* http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html
|
||||
*/
|
||||
//config:config SORT
|
||||
//config: bool "sort"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: sort is used to sort lines of text in specified files.
|
||||
//config:
|
||||
//config:config FEATURE_SORT_BIG
|
||||
//config: bool "Full SuSv3 compliant sort (support -ktcsbdfiozgM)"
|
||||
//config: default y
|
||||
//config: depends on SORT
|
||||
//config: help
|
||||
//config: Without this, sort only supports -r, -u, and an integer version
|
||||
//config: of -n. Selecting this adds sort keys, floating point support, and
|
||||
//config: more. This adds a little over 3k to a nonstatic build on x86.
|
||||
//config:
|
||||
//config: The SuSv3 sort standard is available at:
|
||||
//config: http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html
|
||||
|
||||
//applet:IF_SORT(APPLET_NOEXEC(sort, sort, BB_DIR_USR_BIN, BB_SUID_DROP, sort))
|
||||
|
||||
//kbuild:lib-$(CONFIG_SORT) += sort.o
|
||||
|
||||
//usage:#define sort_trivial_usage
|
||||
//usage: "[-nru"
|
||||
|
@ -5,6 +5,25 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config SPLIT
|
||||
//config: bool "split"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: split a file into pieces.
|
||||
//config:
|
||||
//config:config FEATURE_SPLIT_FANCY
|
||||
//config: bool "Fancy extensions"
|
||||
//config: default y
|
||||
//config: depends on SPLIT
|
||||
//config: help
|
||||
//config: Add support for features not required by SUSv3.
|
||||
//config: Supports additional suffixes 'b' for 512 bytes,
|
||||
//config: 'g' for 1GiB for the -b option.
|
||||
|
||||
//applet:IF_SPLIT(APPLET(split, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_SPLIT) += split.o
|
||||
|
||||
/* BB_AUDIT: SUSv3 compliant
|
||||
* SUSv3 requirements:
|
||||
* http://www.opengroup.org/onlinepubs/009695399/utilities/split.html
|
||||
|
@ -36,6 +36,9 @@
|
||||
//config: Without this, stat will not support the '-f' option to display
|
||||
//config: information about filesystem status.
|
||||
|
||||
//applet:IF_STAT(APPLET(stat, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_STAT) += stat.o
|
||||
|
||||
//usage:#define stat_trivial_usage
|
||||
//usage: "[OPTIONS] FILE..."
|
||||
|
@ -18,8 +18,16 @@
|
||||
David MacKenzie <djm@gnu.ai.mit.edu>
|
||||
|
||||
Special for busybox ported by Vladimir Oleynik <dzo@simtreas.ru> 2001
|
||||
*/
|
||||
//config:config STTY
|
||||
//config: bool "stty"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: stty is used to change and print terminal line settings.
|
||||
|
||||
*/
|
||||
//applet:IF_STTY(APPLET(stty, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_STTY) += stty.o
|
||||
|
||||
//usage:#define stty_trivial_usage
|
||||
//usage: "[-a|g] [-F DEVICE] [SETTING]..."
|
||||
|
@ -12,6 +12,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config SUM
|
||||
//config: bool "sum"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: checksum and count the blocks in a file
|
||||
|
||||
//applet:IF_SUM(APPLET(sum, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_SUM) += sum.o
|
||||
|
||||
//usage:#define sum_trivial_usage
|
||||
//usage: "[-rs] [FILE]..."
|
||||
|
@ -7,8 +7,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
//config:config SYNC
|
||||
//config: bool "sync"
|
||||
//config: default y
|
||||
@ -22,9 +20,12 @@
|
||||
//config: sync -d FILE... executes fdatasync() on each FILE.
|
||||
//config: sync -f FILE... executes syncfs() on each FILE.
|
||||
|
||||
//kbuild:lib-$(CONFIG_SYNC) += sync.o
|
||||
//applet:IF_SYNC(APPLET_NOFORK(sync, sync, BB_DIR_BIN, BB_SUID_DROP, sync))
|
||||
|
||||
//kbuild:lib-$(CONFIG_SYNC) += sync.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
//usage:#define sync_trivial_usage
|
||||
//usage: ""IF_FEATURE_SYNC_FANCY("[-df] [FILE]...")
|
||||
//usage:#define sync_full_usage "\n\n"
|
||||
|
@ -1,20 +1,26 @@
|
||||
/* vi: set sw=4 ts=4: */
|
||||
/*
|
||||
* tac implementation for busybox
|
||||
* tac - concatenate and print files in reverse
|
||||
*
|
||||
* Copyright (C) 2003 Yang Xiaopeng <yxp at hanwang.com.cn>
|
||||
* Copyright (C) 2007 Natanael Copa <natanael.copa@gmail.com>
|
||||
* Copyright (C) 2007 Tito Ragusa <farmatito@tiscali.it>
|
||||
*
|
||||
* Licensed under GPLv2, see file LICENSE in this source tree.
|
||||
*
|
||||
*/
|
||||
|
||||
/* tac - concatenate and print files in reverse */
|
||||
|
||||
/* Based on Yang Xiaopeng's (yxp at hanwang.com.cn) patch
|
||||
* http://www.uclibc.org/lists/busybox/2003-July/008813.html
|
||||
*/
|
||||
//config:config TAC
|
||||
//config: bool "tac"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: tac is used to concatenate and print files in reverse.
|
||||
|
||||
//applet:IF_TAC(APPLET_NOEXEC(tac, tac, BB_DIR_USR_BIN, BB_SUID_DROP, tac))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TAC) += tac.o
|
||||
|
||||
//usage:#define tac_trivial_usage
|
||||
//usage: "[FILE]..."
|
||||
|
@ -6,11 +6,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant (need fancy for -c) */
|
||||
/* BB_AUDIT GNU compatible -c, -q, and -v options in 'fancy' configuration. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/tail.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Pretty much rewritten to fix numerous bugs and reduce realloc() calls.
|
||||
@ -23,9 +18,34 @@
|
||||
* 6) no check for lseek error
|
||||
* 7) lseek attempted when count==0 even if arg was +0 (from top)
|
||||
*/
|
||||
//config:config TAIL
|
||||
//config: bool "tail"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: tail is used to print the last specified number of lines
|
||||
//config: from files.
|
||||
//config:
|
||||
//config:config FEATURE_FANCY_TAIL
|
||||
//config: bool "Enable extra tail options (-q, -s, -v, and -F)"
|
||||
//config: default y
|
||||
//config: depends on TAIL
|
||||
//config: help
|
||||
//config: The options (-q, -s, -v and -F) are provided by GNU tail, but
|
||||
//config: are not specific in the SUSv3 standard.
|
||||
//config:
|
||||
//config: -q Never output headers giving file names
|
||||
//config: -s SEC Wait SEC seconds between reads with -f
|
||||
//config: -v Always output headers giving file names
|
||||
//config: -F Same as -f, but keep retrying
|
||||
|
||||
//applet:IF_TAIL(APPLET(tail, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TAIL) += tail.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant (need fancy for -c) */
|
||||
/* BB_AUDIT GNU compatible -c, -q, and -v options in 'fancy' configuration. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/tail.html */
|
||||
|
||||
//usage:#define tail_trivial_usage
|
||||
//usage: "[OPTIONS] [FILE]..."
|
||||
//usage:#define tail_full_usage "\n\n"
|
||||
|
@ -6,6 +6,23 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config TEE
|
||||
//config: bool "tee"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: tee is used to read from standard input and write
|
||||
//config: to standard output and files.
|
||||
//config:
|
||||
//config:config FEATURE_TEE_USE_BLOCK_IO
|
||||
//config: bool "Enable block I/O (larger/faster) instead of byte I/O"
|
||||
//config: default y
|
||||
//config: depends on TEE
|
||||
//config: help
|
||||
//config: Enable this option for a faster tee, at expense of size.
|
||||
|
||||
//applet:IF_TEE(APPLET(tee, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TEE) += tee.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/tee.html */
|
||||
|
@ -19,11 +19,6 @@
|
||||
* Original copyright notice states:
|
||||
* "This program is in the Public Domain."
|
||||
*/
|
||||
|
||||
//kbuild:lib-$(CONFIG_TEST) += test.o test_ptr_hack.o
|
||||
//kbuild:lib-$(CONFIG_ASH) += test.o test_ptr_hack.o
|
||||
//kbuild:lib-$(CONFIG_HUSH) += test.o test_ptr_hack.o
|
||||
|
||||
//config:config TEST
|
||||
//config: bool "test"
|
||||
//config: default y
|
||||
@ -39,6 +34,14 @@
|
||||
//config: help
|
||||
//config: Enable 64-bit support in test.
|
||||
|
||||
//applet:IF_TEST(APPLET_NOFORK([, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
|
||||
//applet:IF_TEST(APPLET_NOFORK([[, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
|
||||
//applet:IF_TEST(APPLET_NOFORK(test, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TEST) += test.o test_ptr_hack.o
|
||||
//kbuild:lib-$(CONFIG_ASH) += test.o test_ptr_hack.o
|
||||
//kbuild:lib-$(CONFIG_HUSH) += test.o test_ptr_hack.o
|
||||
|
||||
/* "test --help" is special-cased to ignore --help */
|
||||
//usage:#define test_trivial_usage NOUSAGE_STR
|
||||
//usage:#define test_full_usage ""
|
||||
|
@ -6,19 +6,12 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 _NOT_ compliant -- options -a, -m not supported. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/touch.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Previous version called open() and then utime(). While this will be
|
||||
* be necessary to implement -r and -t, it currently only makes things bigger.
|
||||
* Also, exiting on a failure was a bug. All args should be processed.
|
||||
*/
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
//config:config TOUCH
|
||||
//config: bool "touch"
|
||||
//config: default y
|
||||
@ -45,6 +38,9 @@
|
||||
|
||||
//kbuild:lib-$(CONFIG_TOUCH) += touch.o
|
||||
|
||||
/* BB_AUDIT SUSv3 _NOT_ compliant -- options -a, -m not supported. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/touch.html */
|
||||
|
||||
//usage:#define touch_trivial_usage
|
||||
//usage: "[-c]" IF_FEATURE_TOUCH_SUSV3(" [-d DATE] [-t DATE] [-r FILE]") " FILE..."
|
||||
//usage:#define touch_full_usage "\n\n"
|
||||
@ -66,8 +62,6 @@
|
||||
//usage: "$ ls -l /tmp/foo\n"
|
||||
//usage: "-rw-rw-r-- 1 andersen andersen 0 Apr 15 01:11 /tmp/foo\n"
|
||||
|
||||
/* This is a NOFORK applet. Be very careful! */
|
||||
|
||||
/* coreutils implements:
|
||||
* -a change only the access time
|
||||
* -c, --no-create
|
||||
@ -85,6 +79,8 @@
|
||||
* change the specified time: WORD is access, atime, or use
|
||||
*/
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
int touch_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
|
||||
int touch_main(int argc UNUSED_PARAM, char **argv)
|
||||
{
|
||||
|
@ -18,9 +18,6 @@
|
||||
/* http://www.opengroup.org/onlinepubs/009695399/utilities/tr.html
|
||||
* TODO: graph, print
|
||||
*/
|
||||
|
||||
//kbuild:lib-$(CONFIG_TR) += tr.o
|
||||
|
||||
//config:config TR
|
||||
//config: bool "tr"
|
||||
//config: default y
|
||||
@ -47,6 +44,10 @@
|
||||
//config: useful for cases when no other way of expressing a character
|
||||
//config: is possible.
|
||||
|
||||
//applet:IF_TR(APPLET(tr, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TR) += tr.o
|
||||
|
||||
//usage:#define tr_trivial_usage
|
||||
//usage: "[-cds] STRING1 [STRING2]"
|
||||
//usage:#define tr_full_usage "\n\n"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config TRUE
|
||||
//config: bool "true"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: true returns an exit code of TRUE (0).
|
||||
|
||||
//applet:IF_TRUE(APPLET_NOFORK(true, true, BB_DIR_BIN, BB_SUID_DROP, true))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TRUE) += true.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/true.html */
|
||||
|
@ -5,7 +5,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
//config:config TRUNCATE
|
||||
//config: bool "truncate"
|
||||
//config: default y
|
||||
@ -13,9 +12,10 @@
|
||||
//config: truncate truncates files to a given size. If a file does
|
||||
//config: not exist, it is created unless told otherwise.
|
||||
|
||||
//kbuild:lib-$(CONFIG_TRUNCATE) += truncate.o
|
||||
//applet:IF_TRUNCATE(APPLET_NOFORK(truncate, truncate, BB_DIR_USR_BIN, BB_SUID_DROP, truncate))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TRUNCATE) += truncate.o
|
||||
|
||||
//usage:#define truncate_trivial_usage
|
||||
//usage: "[-c] -s SIZE FILE..."
|
||||
//usage:#define truncate_full_usage "\n\n"
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config TTY
|
||||
//config: bool "tty"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: tty is used to print the name of the current terminal to
|
||||
//config: standard output.
|
||||
|
||||
//applet:IF_TTY(APPLET(tty, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_TTY) += tty.o
|
||||
|
||||
/* BB_AUDIT SUSv4 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/9699919799/utilities/tty.html */
|
||||
|
@ -4,10 +4,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/uname.html */
|
||||
|
||||
/* Option Example
|
||||
* -s, --sysname SunOS
|
||||
* -n, --nodename rocky8
|
||||
@ -37,7 +33,6 @@
|
||||
* -a, --all: all of the above, in the order shown.
|
||||
* If -p or -i is not known, don't show them
|
||||
*/
|
||||
|
||||
/* Busyboxed by Erik Andersen
|
||||
*
|
||||
* Before 2003: Glenn McGrath and Manuel Novoa III
|
||||
@ -47,6 +42,26 @@
|
||||
* Jan 2009:
|
||||
* Fix handling of -a to not print "unknown", add -o and -i support.
|
||||
*/
|
||||
//config:config UNAME
|
||||
//config: bool "uname"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: uname is used to print system information.
|
||||
//config:
|
||||
//config:config UNAME_OSNAME
|
||||
//config: string "Operating system name"
|
||||
//config: default "GNU/Linux"
|
||||
//config: depends on UNAME
|
||||
//config: help
|
||||
//config: Sets the operating system name reported by uname -o. The
|
||||
//config: default is "GNU/Linux".
|
||||
|
||||
//applet:IF_UNAME(APPLET(uname, BB_DIR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_UNAME) += uname.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/uname.html */
|
||||
|
||||
//usage:#define uname_trivial_usage
|
||||
//usage: "[-amnrspvio]"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config UNIQ
|
||||
//config: bool "uniq"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: uniq is used to remove duplicate lines from a sorted file.
|
||||
|
||||
//applet:IF_UNIQ(APPLET(uniq, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_UNIQ) += uniq.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/uniq.html */
|
||||
|
@ -5,17 +5,16 @@
|
||||
*
|
||||
* Licensed under GPLv2, see LICENSE in this source tree
|
||||
*/
|
||||
|
||||
//config:config UNLINK
|
||||
//config: bool "unlink"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: unlink deletes a file by calling unlink()
|
||||
|
||||
//kbuild:lib-$(CONFIG_UNLINK) += unlink.o
|
||||
|
||||
//applet:IF_UNLINK(APPLET(unlink, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_UNLINK) += unlink.o
|
||||
|
||||
//usage:#define unlink_trivial_usage
|
||||
//usage: "FILE"
|
||||
//usage:#define unlink_full_usage "\n\n"
|
||||
|
@ -6,6 +6,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config USLEEP
|
||||
//config: bool "usleep"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: usleep is used to pause for a specified number of microseconds.
|
||||
|
||||
//applet:IF_USLEEP(APPLET_NOFORK(usleep, usleep, BB_DIR_BIN, BB_SUID_DROP, usleep))
|
||||
|
||||
//kbuild:lib-$(CONFIG_USLEEP) += usleep.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Apparently a busybox extension. */
|
||||
|
||||
|
@ -10,6 +10,15 @@
|
||||
* Bugs: the spec doesn't mention anything about "`\n`\n" prior to the
|
||||
* "end" line
|
||||
*/
|
||||
//config:config UUDECODE
|
||||
//config: bool "uudecode"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: uudecode is used to decode a uuencoded file.
|
||||
|
||||
//applet:IF_UUDECODE(APPLET(uudecode, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_UUDECODE) += uudecode.o
|
||||
|
||||
//usage:#define uudecode_trivial_usage
|
||||
//usage: "[-o OUTFILE] [INFILE]"
|
||||
|
@ -7,6 +7,15 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config UUENCODE
|
||||
//config: bool "uuencode"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: uuencode is used to uuencode a file.
|
||||
|
||||
//applet:IF_UUENCODE(APPLET(uuencode, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_UUENCODE) += uuencode.o
|
||||
|
||||
//usage:#define uuencode_trivial_usage
|
||||
//usage: "[-m] [FILE] STORED_FILENAME"
|
||||
|
@ -6,10 +6,6 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/wc.html */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Rewritten to fix a number of problems and do some size optimizations.
|
||||
@ -36,6 +32,27 @@
|
||||
*
|
||||
* for which 'wc -c' should output '0'.
|
||||
*/
|
||||
//config:config WC
|
||||
//config: bool "wc"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: wc is used to print the number of bytes, words, and lines,
|
||||
//config: in specified files.
|
||||
//config:
|
||||
//config:config FEATURE_WC_LARGE
|
||||
//config: bool "Support very large files in wc"
|
||||
//config: default y
|
||||
//config: depends on WC
|
||||
//config: help
|
||||
//config: Use "unsigned long long" in wc for counter variables.
|
||||
|
||||
//applet:IF_WC(APPLET(wc, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_WC) += wc.o
|
||||
|
||||
/* BB_AUDIT SUSv3 compliant. */
|
||||
/* http://www.opengroup.org/onlinepubs/007904975/utilities/wc.html */
|
||||
|
||||
#include "libbb.h"
|
||||
#include "unicode.h"
|
||||
|
||||
|
@ -16,15 +16,13 @@
|
||||
*
|
||||
*----------------------------------------------------------------------
|
||||
*/
|
||||
/* BB_AUDIT SUSv3 _NOT_ compliant -- missing options -b, -d, -l, -m, -p, -q, -r, -s, -t, -T, -u; Missing argument 'file'. */
|
||||
|
||||
//config:config WHO
|
||||
//config: bool "who"
|
||||
//config: default y
|
||||
//config: depends on FEATURE_UTMP
|
||||
//config: help
|
||||
//config: who is used to show who is logged on.
|
||||
|
||||
//config:
|
||||
//config:config USERS
|
||||
//config: bool "users"
|
||||
//config: default y
|
||||
@ -33,11 +31,13 @@
|
||||
//config: Print users currently logged on.
|
||||
|
||||
//applet:IF_USERS(APPLET_ODDNAME(users, who, BB_DIR_USR_BIN, BB_SUID_DROP, users))
|
||||
//applet:IF_WHO( APPLET( who, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
//applet:IF_WHO(APPLET(who, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
|
||||
//kbuild:lib-$(CONFIG_USERS) += who.o
|
||||
//kbuild:lib-$(CONFIG_WHO) += who.o
|
||||
|
||||
/* BB_AUDIT SUSv3 _NOT_ compliant -- missing options -b, -d, -l, -m, -p, -q, -r, -s, -t, -T, -u; Missing argument 'file'. */
|
||||
|
||||
//usage:#define users_trivial_usage
|
||||
//usage: ""
|
||||
//usage:#define users_full_usage "\n\n"
|
||||
|
@ -6,6 +6,16 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
//config:config WHOAMI
|
||||
//config: bool "whoami"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: whoami is used to print the username of the current
|
||||
//config: user id (same as id -un).
|
||||
|
||||
//applet:IF_WHOAMI(APPLET_NOFORK(whoami, whoami, BB_DIR_USR_BIN, BB_SUID_DROP, whoami))
|
||||
|
||||
//kbuild:lib-$(CONFIG_WHOAMI) += whoami.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
@ -16,8 +26,6 @@
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
/* This is a NOFORK applet. Be very careful! */
|
||||
|
||||
int whoami_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
|
||||
int whoami_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM)
|
||||
{
|
||||
|
@ -6,23 +6,30 @@
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
/* Mar 16, 2003 Manuel Novoa III (mjn3@codepoet.org)
|
||||
*
|
||||
* Size reductions and removed redundant applet name prefix from error messages.
|
||||
*/
|
||||
//config:config YES
|
||||
//config: bool "yes"
|
||||
//config: default y
|
||||
//config: help
|
||||
//config: yes is used to repeatedly output a specific string, or
|
||||
//config: the default string `y'.
|
||||
|
||||
#include "libbb.h"
|
||||
//applet:IF_YES(APPLET_NOFORK(yes, yes, BB_DIR_USR_BIN, BB_SUID_DROP, yes))
|
||||
|
||||
/* This is a NOFORK applet. Be very careful! */
|
||||
//kbuild:lib-$(CONFIG_YES) += yes.o
|
||||
|
||||
/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
|
||||
|
||||
//usage:#define yes_trivial_usage
|
||||
//usage: "[STRING]"
|
||||
//usage:#define yes_full_usage "\n\n"
|
||||
//usage: "Repeatedly output a line with STRING, or 'y'"
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
int yes_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
|
||||
int yes_main(int argc UNUSED_PARAM, char **argv)
|
||||
{
|
||||
|
@ -73,98 +73,28 @@ s - suid type:
|
||||
|
||||
|
||||
INSERT
|
||||
IF_TEST(APPLET_NOFORK([, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
|
||||
IF_TEST(APPLET_NOFORK([[, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
|
||||
IF_BASENAME(APPLET_NOFORK(basename, basename, BB_DIR_USR_BIN, BB_SUID_DROP, basename))
|
||||
IF_CAL(APPLET(cal, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_CAT(APPLET_NOFORK(cat, cat, BB_DIR_BIN, BB_SUID_DROP, cat))
|
||||
IF_CATV(APPLET(catv, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_CHCON(APPLET(chcon, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_CHGRP(APPLET_NOEXEC(chgrp, chgrp, BB_DIR_BIN, BB_SUID_DROP, chgrp))
|
||||
IF_CHMOD(APPLET_NOEXEC(chmod, chmod, BB_DIR_BIN, BB_SUID_DROP, chmod))
|
||||
IF_CHOWN(APPLET_NOEXEC(chown, chown, BB_DIR_BIN, BB_SUID_DROP, chown))
|
||||
IF_CHROOT(APPLET(chroot, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_CKSUM(APPLET_NOEXEC(cksum, cksum, BB_DIR_USR_BIN, BB_SUID_DROP, cksum))
|
||||
IF_COMM(APPLET(comm, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_CP(APPLET_NOEXEC(cp, cp, BB_DIR_BIN, BB_SUID_DROP, cp))
|
||||
IF_CUT(APPLET_NOEXEC(cut, cut, BB_DIR_USR_BIN, BB_SUID_DROP, cut))
|
||||
IF_DD(APPLET_NOEXEC(dd, dd, BB_DIR_BIN, BB_SUID_DROP, dd))
|
||||
IF_DF(APPLET(df, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_DHCPRELAY(APPLET(dhcprelay, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_DIRNAME(APPLET_NOFORK(dirname, dirname, BB_DIR_USR_BIN, BB_SUID_DROP, dirname))
|
||||
IF_DOS2UNIX(APPLET_NOEXEC(dos2unix, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, dos2unix))
|
||||
IF_DU(APPLET(du, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_DUMPLEASES(APPLET(dumpleases, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
//IF_E2FSCK(APPLET(e2fsck, BB_DIR_SBIN, BB_SUID_DROP))
|
||||
//IF_E2LABEL(APPLET_ODDNAME(e2label, tune2fs, BB_DIR_SBIN, BB_SUID_DROP, e2label))
|
||||
IF_ECHO(APPLET_NOFORK(echo, echo, BB_DIR_BIN, BB_SUID_DROP, echo))
|
||||
IF_ENV(APPLET_NOEXEC(env, env, BB_DIR_USR_BIN, BB_SUID_DROP, env))
|
||||
IF_EXPAND(APPLET(expand, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_EXPR(APPLET(expr, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_FALSE(APPLET_NOFORK(false, false, BB_DIR_BIN, BB_SUID_DROP, false))
|
||||
IF_FOLD(APPLET_NOEXEC(fold, fold, BB_DIR_USR_BIN, BB_SUID_DROP, fold))
|
||||
//IF_E2FSCK(APPLET_ODDNAME(fsck.ext2, e2fsck, BB_DIR_SBIN, BB_SUID_DROP, fsck_ext2))
|
||||
//IF_E2FSCK(APPLET_ODDNAME(fsck.ext3, e2fsck, BB_DIR_SBIN, BB_SUID_DROP, fsck_ext3))
|
||||
IF_FSYNC(APPLET_NOFORK(fsync, fsync, BB_DIR_BIN, BB_SUID_DROP, fsync))
|
||||
IF_GETENFORCE(APPLET(getenforce, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_GETSEBOOL(APPLET(getsebool, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_HEAD(APPLET_NOEXEC(head, head, BB_DIR_USR_BIN, BB_SUID_DROP, head))
|
||||
IF_INSTALL(APPLET(install, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
//IF_LENGTH(APPLET_NOFORK(length, length, BB_DIR_USR_BIN, BB_SUID_DROP, length))
|
||||
IF_LN(APPLET_NOEXEC(ln, ln, BB_DIR_BIN, BB_SUID_DROP, ln))
|
||||
IF_LOAD_POLICY(APPLET(load_policy, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_LOGNAME(APPLET_NOFORK(logname, logname, BB_DIR_USR_BIN, BB_SUID_DROP, logname))
|
||||
IF_LS(APPLET_NOEXEC(ls, ls, BB_DIR_BIN, BB_SUID_DROP, ls))
|
||||
IF_MATCHPATHCON(APPLET(matchpathcon, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_MKDIR(APPLET_NOFORK(mkdir, mkdir, BB_DIR_BIN, BB_SUID_DROP, mkdir))
|
||||
IF_MKFIFO(APPLET_NOEXEC(mkfifo, mkfifo, BB_DIR_USR_BIN, BB_SUID_DROP, mkfifo))
|
||||
IF_MKNOD(APPLET_NOEXEC(mknod, mknod, BB_DIR_BIN, BB_SUID_DROP, mknod))
|
||||
IF_MV(APPLET(mv, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_NICE(APPLET(nice, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_NOHUP(APPLET(nohup, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_OD(APPLET(od, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
//IF_PARSE(APPLET(parse, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_PRINTENV(APPLET_NOFORK(printenv, printenv, BB_DIR_BIN, BB_SUID_DROP, printenv))
|
||||
IF_PRINTF(APPLET_NOFORK(printf, printf, BB_DIR_USR_BIN, BB_SUID_DROP, printf))
|
||||
IF_PWD(APPLET_NOFORK(pwd, pwd, BB_DIR_BIN, BB_SUID_DROP, pwd))
|
||||
IF_READLINK(APPLET(readlink, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_REALPATH(APPLET(realpath, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_RESTORECON(APPLET_ODDNAME(restorecon, setfiles, BB_DIR_SBIN, BB_SUID_DROP, restorecon))
|
||||
IF_RM(APPLET_NOFORK(rm, rm, BB_DIR_BIN, BB_SUID_DROP, rm))
|
||||
IF_RMDIR(APPLET_NOFORK(rmdir, rmdir, BB_DIR_BIN, BB_SUID_DROP, rmdir))
|
||||
IF_RUNCON(APPLET(runcon, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_SELINUXENABLED(APPLET(selinuxenabled, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_SEQ(APPLET_NOFORK(seq, seq, BB_DIR_USR_BIN, BB_SUID_DROP, seq))
|
||||
IF_SESTATUS(APPLET(sestatus, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_SETENFORCE(APPLET(setenforce, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_SETFILES(APPLET(setfiles, BB_DIR_SBIN, BB_SUID_DROP))
|
||||
IF_SETSEBOOL(APPLET(setsebool, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
/* Do not make this applet NOFORK. It breaks ^C-ing of pauses in shells: */
|
||||
IF_SLEEP(APPLET(sleep, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_SORT(APPLET_NOEXEC(sort, sort, BB_DIR_USR_BIN, BB_SUID_DROP, sort))
|
||||
IF_SPLIT(APPLET(split, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_STAT(APPLET(stat, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_STTY(APPLET(stty, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_SUM(APPLET(sum, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_TAC(APPLET_NOEXEC(tac, tac, BB_DIR_USR_BIN, BB_SUID_DROP, tac))
|
||||
IF_TAIL(APPLET(tail, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_TEE(APPLET(tee, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_TEST(APPLET_NOFORK(test, test, BB_DIR_USR_BIN, BB_SUID_DROP, test))
|
||||
IF_TR(APPLET(tr, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_TRUE(APPLET_NOFORK(true, true, BB_DIR_BIN, BB_SUID_DROP, true))
|
||||
IF_TTY(APPLET(tty, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_UDHCPC(APPLET(udhcpc, BB_DIR_SBIN, BB_SUID_DROP))
|
||||
IF_UDHCPD(APPLET(udhcpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
|
||||
IF_UNAME(APPLET(uname, BB_DIR_BIN, BB_SUID_DROP))
|
||||
IF_UNEXPAND(APPLET_ODDNAME(unexpand, expand, BB_DIR_USR_BIN, BB_SUID_DROP, unexpand))
|
||||
IF_UNIQ(APPLET(uniq, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_UNIX2DOS(APPLET_NOEXEC(unix2dos, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, unix2dos))
|
||||
IF_USLEEP(APPLET_NOFORK(usleep, usleep, BB_DIR_BIN, BB_SUID_DROP, usleep))
|
||||
IF_UUDECODE(APPLET(uudecode, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_UUENCODE(APPLET(uuencode, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_WC(APPLET(wc, BB_DIR_USR_BIN, BB_SUID_DROP))
|
||||
IF_WHOAMI(APPLET_NOFORK(whoami, whoami, BB_DIR_USR_BIN, BB_SUID_DROP, whoami))
|
||||
IF_YES(APPLET_NOFORK(yes, yes, BB_DIR_USR_BIN, BB_SUID_DROP, yes))
|
||||
|
||||
#if !defined(PROTOTYPES) && !defined(NAME_MAIN) && !defined(MAKE_USAGE) \
|
||||
&& !defined(MAKE_LINKS) && !defined(MAKE_SUID)
|
||||
|
Loading…
Reference in New Issue
Block a user