Commit Graph

522 Commits

Author SHA1 Message Date
sin cec487585c Rename pusharg() to deinputstr() 2014-01-08 20:35:05 +00:00
sin e96144118e Error out if a single argument cannot fit into the argument space 2014-01-08 20:34:56 +00:00
sin e585133012 Rename fillbuf() to fillargbuf() 2014-01-07 14:58:02 +00:00
sin 20c0a0b1e7 Factor out waiting for children into a separate function 2014-01-07 14:52:29 +00:00
sin e27c55aec3 Implement -E eofstr for xargs(1) 2014-01-07 12:03:50 +00:00
sin 7a5369ae04 Update xargs(1) manpage to mention the possible exit codes 2014-01-07 12:03:37 +00:00
sin 59222b9193 Exit with error code 123 if one or more invocations of cmd failed 2014-01-06 18:53:30 +00:00
sin 3aec0ac2a4 Use a return value to signal an invalid backslash
Just for consistency with the rest of the code.
2014-01-06 18:22:00 +00:00
sin bb4d7a0e7e Don't allow backslash at EOF 2014-01-06 18:17:44 +00:00
sin 0511ecfd84 If eatspace() encounters EOF don't try to read again from stdin 2014-01-06 18:13:27 +00:00
sin ef57a609ca Exit with error 125 if the process is killed by a signal 2014-01-06 18:05:52 +00:00
sin 2dc105ebbc Use saved errno in case weprintf() fails internally 2014-01-04 14:07:34 +00:00
sin 567869a8fe Check the exit status and return it from the parent process 2014-01-04 14:02:40 +00:00
sin 7ec616e1e5 Exit with proper error codes
We still have a few error codes to do, namely when the process
is killed or stopped by a signal or when one or more invocations
of the command returned a nonzero exit status.
2014-01-04 13:53:59 +00:00
sin 9a1c5783c1 Remove mktemp(1) from TODO
We already have mktemp(1) implemented.
2014-01-04 13:41:47 +00:00
sin 18f9f3e141 Remove xargs(1) from TODO
We already have a barebones version.
2014-01-04 13:40:42 +00:00
sin 4bdf9a9658 Add initial version of xargs(1) 2014-01-04 00:04:05 +00:00
sin 71cbd12ede Revert "Fix relocation error on OpenBSD (amd64) when compiling with pcc"
This reverts commit 06d43e4832.

Let's stick to the most basic and common options for the default
case.
2013-12-21 13:39:29 +00:00
sin 1851c02a95 Show usage instead of exiting silently on an invalid option 2013-12-12 13:30:25 +00:00
sin aff51008ea Add -R as a synonym to -r for cp(1)
List the available options in the usage line as well.
2013-12-12 13:30:17 +00:00
sin 7f6d5653c6 Add -R as a synonym to -r for rm(1)
Some scripts require this.
2013-12-12 13:15:47 +00:00
sin 544857623b Add -n support to sort(1) 2013-12-12 13:10:59 +00:00
sin 0b6b84886c Add newline at end of file 2013-12-04 17:42:33 +00:00
sin 5534e60703 Implement -G support for id(1) 2013-12-01 17:29:53 +00:00
Rob Pilling d453be2ae1 id(1) can handle uid arguments 2013-12-01 14:29:16 +00:00
Rob Pilling fd8c3b6438 curproc() isn't needed in id(1) 2013-12-01 14:29:01 +00:00
sin dac77d3089 Add support to display user and group info for any user
Currently we only handle login names - it should be trivial to
fix to allow for parsing UIDs as well.
2013-12-01 10:43:56 +00:00
sin 137ebef3ac Factor out code printing information for the current process 2013-12-01 10:43:29 +00:00
sin f1f0fba630 Forgot to remove argc from function decl
Thanks FRIGN for noticing this.
2013-11-30 21:12:40 +00:00
sin 38ca9a24c2 Be a bit more consistent and use uint8_t instead of unsigned char 2013-11-30 20:59:09 +00:00
sin abd5a0e573 We do not name parameters in declarations 2013-11-30 20:58:49 +00:00
sin 7808f4161d Implement -m for mkfifo(1) 2013-11-30 20:58:15 +00:00
sin 651dbdd700 Rename __ARG_H__ to ARG_H__
__* is reserved so do not use it.
2013-11-25 21:29:20 +00:00
sin 7a2105f5bd Forgot to update manpage for mktemp(1) 2013-11-14 19:50:07 +00:00
sin 91a643411d Check for TMPDIR and if set use it 2013-11-14 19:47:22 +00:00
sin a7b8eee6c0 Add dsp@2f30.org to LICENSE 2013-11-14 19:01:08 +00:00
sin ee8084cec0 Fix indentation 2013-11-14 19:00:52 +00:00
sin 078fce3f77 Always print the program name
This is generally very useful for sbase, especially when we
hit some case that is not implemented and we want to know which
program failed.
2013-11-14 19:00:28 +00:00
sin 3b3dffd24f _brk, _argc and _argv are reserved for the implementation
Thanks to nsz@port70.net for reporting this, the mail excerpt below.

"actually __.* and _[A-Z].* are reserved for any usage and _.* is
reserved for file scope identifiers"

We just rename them to brk_, argc_ and argv_.
2013-11-14 10:44:56 +00:00
sin 56a62c605f Implement -q support for mktemp(1) 2013-11-13 15:27:41 +00:00
sin b8edf3b4ee Add weprintf() and replace fprintf(stderr, ...) calls
There is still some programs left to be updated for this.

Many of these programs would stop on the first file that they
could not open.
2013-11-13 11:41:43 +00:00
sin 34f7a688cb Add barebones mktemp(1) 2013-11-13 11:06:55 +00:00
sin 80c5ab46ba Fix style for function definitions 2013-11-12 13:37:38 +00:00
sin 8f931fba13 Remove passwd from TODO
This cannot be made portably so we'll implement this in ubase.
2013-11-12 13:12:42 +00:00
sin 8fdfa7caeb Convert cksum(1) to use FILE * instead of an fd
In sbase we generally do I/O through FILE * instead of file
descriptors directly.

Do not error out on the first file that can't be opened.
2013-11-12 11:17:08 +00:00
sin cfe5e9ef3a Support tail-ing multiple files 2013-11-12 10:47:22 +00:00
sin d9abff1e84 Don't exit on the first file that can't be opened for head and fold 2013-11-12 10:46:53 +00:00
sin 7add068ade Rename `brk' to `_brk' to avoid polluting the namespace 2013-11-12 10:18:18 +00:00
dsp 3f9e501f6b Add ARGNUM and ARGNUMF(base)
This is useful to support the obsolete syntax -NUM for tools like
head, tail and fold.
2013-11-12 10:17:52 +00:00
sin 2046778bc9 Update manpage for binary operations in test(1) 2013-11-11 12:01:47 +00:00