summaryrefslogtreecommitdiff
path: root/toys.h
AgeCommit message (Collapse)AuthorFilesLines
2014-12-31Redo option parsing infrastructure so #define FORCE_FLAGS can unzero flag ↵Rob Landley1-2/+1
macros for a disabled command (needed when multiple commands share infrastructure with a common set of flags). This means the flag space is no longer packed, but leaves gaps where the zeroes go. (Actual flag bit positions are the same for all configs.) Since the option parsing needs to know where the holes are, the OPTSTR values are now generated as part of flags.h with ascii 1 values for the disabled values. (So generated/oldflags.h went away.) This also means that the option string argument for OLDTOY() went away, it now uses the same arguments as the NEWTOY() it references.
2014-12-31When you include the posix header libgen.h, glibc #defines basename to some ↵Rob Landley1-1/+0
random other symbol name (because gnu) and this screws up nontrivial macro expansions of NEWTOY(basename), so work around it in portability.h.
2014-11-19probe for getspnam(), forkpty(), utmpx, replace sethostname()Isaac Dunham1-2/+1
Android is missing all of these; we need to probe for some so we have a config symbol to depend on. sethostname() is easily replaced. We got termios.h via pty.h; now it's not included in configure-step tools, so we need termios.h to generate globals.
2014-10-26xexec() recursion limiter has to go after rebound or toy_init() zeroes it.Rob Landley1-1/+1
2014-09-27Have OLDTOY emit (redundant) function prototype so single.sh can build ↵Rob Landley1-1/+1
OLDTOY standalone (if it has its own config symbol).
2014-09-09Two problems: 1) Sometimes toy_exec() needs to re-exec to gain dropped root ↵Rob Landley1-0/+1
permissions, 2) shouldn't recurse forever without exec, stack depth increases and we may leak other resources. Limit it to ~5 levels.
2014-06-09When locale is enabled, sprintf("%.123s", str) is counting characters, not ↵Rob Landley1-0/+4
bytes, so we can't globally enable locale without opening stack/heap smashing vulnerabilities. Make commands individually request setlocale() using TOYFLAGS instead.
2014-05-21Add generic_signal() handler, which sets toys.signal and writes byte to ↵Rob Landley1-0/+3
toys.signalfd if set.
2014-05-05Fix bug reported by Ashwini Sharma: rebound has to be at the end or ↵Rob Landley1-1/+3
toy_init() doesn't zero the rest of the struct.
2014-04-09modprobe: cleanup, incorporate Ashwini's fix for alias loadingIsaac Dunham1-0/+1
Move <fnmatch.h> to toys.h, since it's POSIX. Avoid duplicating code in an if/else block. Terser error messages, spelling. Don't always print the state.
2014-03-29Group headers by standard (POSIX or LSB) or function (internationalization, ↵Rob Landley1-16/+17
networking). Move headers standards ignore (but which have been there >15 years) to lib/portability.h. Fold xregcomp into lib since it's posix.
2014-03-28Add help -a (to show all commands) and -h (to produce HTML output).Rob Landley1-3/+4
2013-11-02Merge toynet.h into toys.h: musl supports it and micromanaging uClibc config ↵Rob Landley1-0/+11
options isn't very interesting anymore.
2013-10-03Switch flag generation from shell to C.Rob Landley1-0/+1
This should actually generate FLAG_longopt 0 #defines for disabled bare longopts (ala ls without --color). Put temporary executables under "generated" (including instlist for install).
2013-09-03Introduce libbuf analogous to toybuf but for use by lib/*.c. Change ↵Rob Landley1-2/+2
readfile() semantics to be able to read into an existing buffer, or malloc its own if that's NULL.
2013-08-17su: cleaneryStrake1-0/+2
* make help message more like others * s/TT\.(.)Argu/TT.\1/g * move environ to toys.h * simplify failure messages * clear password before quit * not check what execve returns * -lc
2013-08-15Forgot to check in toys.h when generated/oldtoys.h went in. (Oops.)Rob Landley1-0/+1
2013-04-21Fix some comments from way back when toybox first started (in 2006), when I ↵Rob Landley1-1/+1
was still cleaning busybox-isms out of my head...
2012-12-10Add stat submission to new "pending" directory, along with infrastructure to ↵Rob Landley1-0/+1
support pending.
2012-12-01Add header that musl libc needs.Rob Landley1-0/+1
2012-11-26Cleanup i18n support (#ifdefectomy, move global init to process launch). ↵Rob Landley1-2/+2
Teach make.sh to emit "#define FLAG_x 0" for options inside disabled USE macros so we can unconditionally refer to them.
2012-11-21Make internalization support optionalFelix Janda1-1/+4
2012-11-16Add rebound support to intercept error_exit() and longjmp instead.Rob Landley1-0/+2
2012-11-13Reindent to two spaces per level. Remove vi: directives that haven't worked ↵Rob Landley1-13/+12
right in years (ubuntu broke its' vim implementation). Remove trailing spaces. Add/remove blank lines. Re-wordwrap in places. Update documentation with new coding style. The actual code should be the same afterward, this is just cosmetic refactoring.
2012-11-08wc -m only cares about counting characters. Attached is a try on ↵Felix Janda1-0/+3
implementing it and some test cases for it. The test cases are only for UTF-8 locales.
2012-10-08New build infrastructure to generate FLAG_ macros and TT alias, #define ↵Rob Landley1-1/+1
FOR_commandname before #including toys.h to trigger it. Rename DEFINE_GLOBALS() to just GLOBALS() (because I could never remember if it was DECLARE_GLOBALS). Convert existing commands to use new infrastructure, and replace optflag constants with FLAG_ macros where appropriate.
2012-08-14Replace TOY_LIST_LEN with more generic ARRAY_LEN()Rob Landley1-0/+2
2012-07-15Adding initial implementation of tasksetElie De Brauwer1-0/+1
2012-06-16More header fiddling: crypt.h is silly, SUSv4 requires crypt() to be ↵Rob Landley1-5/+2
prototyped in unistd.h. The fact glibc refuses to do so without a wacky #define is a glibc bug, treat it as such.
2012-04-28Georgi pointed out that some overly-pedantic C libraries require you to ↵Rob Landley1-0/+1
include both "string.h" and "strings.h". (Most don't.)
2012-04-24Adding initial version of login.cElie De Brauwer1-0/+3
2012-04-14Comment and whitespace changes.Rob Landley1-9/+9
2012-03-12Yet another header for technical susv4 compliance.Rob Landley1-0/+1
2012-03-07Consolidate headers.Rob Landley1-0/+5
2012-02-18Adding swapon and swapoffElie De Brauwer1-0/+1
2012-02-17Sigh: moving a header to toys.h isn't very useful if I forget to check in ↵Rob Landley1-0/+1
toys.h.
2012-02-04Cleaning out one more old gpl notice that no longer applies after the switch ↵Rob Landley1-2/+0
to BSD in november.
2010-01-05Add TOYBOX_SUID.Rob Landley1-0/+5
2009-08-06Make a warning go away on Fedora 11.Rob Landley1-0/+1
2009-01-25Comment tweaks.Rob Landley1-4/+9
2008-11-15Add netcat server mode, -l, -L, and -t.Rob Landley1-0/+1
2008-02-12Add TOYFLAG_UMASK.Rob Landley1-0/+2
2008-02-12Add toys.optc, an argv-style count for toys.optargs.Rob Landley1-0/+1
2008-01-20Zap toylist.h, moving contents of global structures into DEFINE_GLOBALS()Rob Landley1-1/+19
macros in each C file, and making generated/globals.h from that. Rename "toy" to "this" along the way to avoid toy/toys confusion.
2008-01-19Move NEWTOY() list from end of toylist.h to generated/newtoys.h.Rob Landley1-0/+6
2008-01-19Zap toys/Config.in and instead create generated/Config.in from contents ofRob Landley1-1/+1
toys/*.c. Move relevant info into comment at the top of each toys/*.c. Also convert more of Makefile into a thin wrapper around shell scripts that actually do the work. (Makefile is only still there for the user interface.)
2008-01-10Move some generated files into the "generated" subdirectory.Rob Landley1-1/+1
2007-12-28Make touch work reliably when file doesn't exist and clean up headers a bit.Rob Landley1-1/+4
2007-10-16Need to commit this too. :)Rob Landley1-0/+1
2007-08-15Remove strings.h which Maximilian Attems points out is obsolete:Rob Landley1-1/+0
> belows snippet directly taken from mdadm.h. > > to quote hpa: > "Including <strings.h> is a bug in the upstream source; > <strings.h> has been obsolete since at least 1989" > > one small little step for better klibc support ;)