Commit Graph

3055 Commits

Author SHA1 Message Date
njoly 9f266c104e Fix cross-reference, dir(5) -> dirent(3). 2010-12-17 19:20:42 +00:00
pooka e5d7b7bef0 remove some leftover development garbage 2010-12-14 19:04:05 +00:00
pooka 49242e416d Make compile on non-NetBSD. 2010-12-14 19:03:21 +00:00
christos 63cfe07dab PR/44229: Henning Petersen: Remove dup check for whitespace. 2010-12-13 16:54:04 +00:00
christos 187cac5a8d check return value of localtime. 2010-12-12 17:30:23 +00:00
christos 5b87ff3a6f - check return of strtoll
- misc cleanup
2010-12-11 16:57:51 +00:00
enami 8701b1fd0e Wrap long line. 2010-12-09 10:24:56 +00:00
pooka 39a175ce63 Fix most inopportune typo. from gson & jmmv. 2010-12-06 15:23:29 +00:00
jym 44e64860fc Hmm, for 'rof', I believe that C_ROF|C_OF is invalid rather than
C_ROF|C_ROF.

Hi pooka :)
2010-12-05 23:35:59 +00:00
pooka 7192ed629b extra crunchgen hoops 2010-11-22 21:59:09 +00:00
pooka 6b03da8b7e Add two new operands: "rif" and "rof". They operate exactly like
"if" and "of" with the exception that the communicate with a rump
kernel instead of the host kernel.

For example, to write stdout to /tmp/file.txt in a rump kernel namespace:
	dd rof=/tmp/file.txt

copy /file1 to /file2 inside a rump kernel:
	dd rif=/file1 rof=/file2

copy a snippet from /dev/rmd0d on the rump kernel to the host fs:
	dd rif=/dev/rmd0d of=save seek=1000 count=3

Eat that, usermode OS.

(I'll document the operands one I have some manpage to refer to
for rump client use).
2010-11-22 21:04:27 +00:00
christos 7c0ceafd8c revert again, since this breaks libtool amongst other things. 2010-11-17 13:40:48 +00:00
christos abc3b37046 PR/43469: Antii Kantee: test/util/sh/t_expand:strip fails.
Bring back fixes from revision 1.75:

- Fix a couple of bugs to make the following two echo statements print the
  same output as they should:

    line='#define bindir "/usr/bin" /* comment */'
    echo "${line%%/\**}"
    echo ${line%%/\**}

1. ISDBLQUOTE() was not working properly for non VSNORMAL expansions because
   varnest was incremented before the variable was completely parsed. Add
   an insub adjustment to keep track of that.
2. When we have a quoted backslash, we either need to escape twice, because
   one level of escaping will be stripped later (in the variable substitution
   case) or simply enter the backslash.
2010-11-16 18:17:32 +00:00
christos af7c6886fd revert previous. breaks other stuff. 2010-11-14 19:49:16 +00:00
christos 082c42cb76 - Fix a couple of bugs to make the following two echo statements print the
same output as they should:

    line='#define bindir "/usr/bin" /* comment */'
    echo "${line%%/\**}"
    echo ${line%%/\**}

1. ISDBLQUOTE() was not working properly for non VSNORMAL expansions because
   varnest was incremented before the variable was completely parsed. Add
   an insub adjustment to keep track of that.
2. When we have a quoted backslash, we need to escape twice, because one
   level of escaping will be stripped later. (XXX: Do that when insub == 1
   only?)

- Make macros statements
2010-11-14 19:43:38 +00:00
christos 232829f42f don't core-dump if we cannot open the trace file. 2010-11-14 19:36:07 +00:00
stacktic 129baba091 Make sh build in debug mode 2010-10-29 17:06:53 +00:00
stacktic 6a6f2f47f8 Initialized flag field in struct alias (Fixed PR/43281) 2010-10-29 17:04:48 +00:00
tron 1181f40421 Re-enable support for reading files of at most 8MB via mmap(2).
Write out the mmap-ed data in small chunks to avoid locking the output
file for a long time.

Suggested by David Holland on "source-changes-d" mailing list.
2010-10-25 08:19:47 +00:00
pooka efab5715bc Disable mmap path. With the current vnode locking scheme it has
a very annoying property: if the source media is slow (like a slow
network), the target file will be locked for the duration of the
entire max 8MB write and cause processes attempting to e.g. stat()
it to "tstile" (for several minutes in the worst case).  Revisit
this if/when vnode locking gets a little smarter.

chs ok (although he would rather see vnode locking improvements,
but that's a slightly larger project)
2010-10-22 17:56:06 +00:00
wiz 1318c0e8c4 Bump date for SIGINFO. 2010-10-09 07:40:58 +00:00
mrg 3b4fa1d52f add SIGINFO support; from freebsd:
when a SIGINFO is delivered, display the approximate remaining seconds.
2010-10-09 04:57:30 +00:00
gson 10d3698a9d Simplify by using setenv() instead of putenv(). 2010-10-03 08:21:27 +00:00
gson 5e313b3092 putenv() no longer accepts a const string 2010-10-02 08:26:09 +00:00
enami 0d5166c3ab Backout previous; it was wrong fix. 2010-08-31 05:07:09 +00:00
enami 15ae718747 Fix build as tools. 2010-08-31 04:50:07 +00:00
enami 6953635557 - Raise an error rather than silently creating broken archive
if user don't specify --force-local but opened file is actually
  a local file.
- Make cpio to accept -F option as described in manpage.
- Make pax to set forcelocal flag if requested to do so.
- Add missing break statement.
2010-08-31 03:16:06 +00:00
christos 42fececd08 dprintf is claimed by posix. 2010-08-30 06:27:14 +00:00
christos f69d85affc increase commented out debugging. 2010-08-30 06:26:59 +00:00
sjg 2ff6888cf4 Do not throw a usage message for -i followed by -t
since 'cpio -itv' is a valid command.
2010-08-25 21:36:02 +00:00
perry 7e5b4620db add bsd.subdir.mk 2010-08-22 02:21:31 +00:00
perry 9573f66f1d RCSIds 2010-08-22 02:19:07 +00:00
perry ee256018ca build the tutoral 2010-08-22 02:09:36 +00:00
perry 32b1d940e0 Extremely extensive updates.
This document should now serve as a reasonable tutorial for the
modern POSIX shell. Comments and additional fixes for mistakes I may
have made are solicited.
2010-08-22 02:03:06 +00:00
perry 62dd025e10 Revive S.R. Bourne's original tutorial on using the Bourne Shell.
This initial commit consists of the files as they existed in 4.4BSD,
with the copyrights altered to reflect the subsequent BSD relicensing.
2010-08-22 01:58:16 +00:00
enami 5a8bd46049 Fix broken indentation. No functional change. 2010-08-18 02:53:54 +00:00
njoly c45af2045a Do not check pcpu value against 100.0 but rather 99.95, to properly
deal with value rounding. From apb@.
2010-07-28 17:39:54 +00:00
njoly 0697f9d213 Make %cpu drop the decimal part when reaching 100%, to stay in the 5
expected columns.
2010-07-27 12:40:48 +00:00
joerg 0597463e89 Don't quite `+', `-' and `/' in set -x output. 2010-07-19 01:15:17 +00:00
rmind 1126bbae2c Add #include <sys/param.h> for howmany(). 2010-07-08 20:43:34 +00:00
wiz 9b010439be Use Fl Fl for long options. Remove unnecessary Bk/Ek. 2010-06-19 11:16:31 +00:00
christos 0ac48c3baa add --use-compress-program to pax, requested by mrg. 2010-06-19 00:43:57 +00:00
riz a9adb2c9b0 If the definition of a static function is #if DES, the declaration
of it should be too.  Fixes build of ed where MKCRYPTO=no.
2010-06-09 19:20:18 +00:00
sjg 6d83722e40 PR: 39604
Reviewed by:

add_glob:
Do not stop scanning if we see '$' as it does more harm than good.
For $HOME/tm we should return $HOME/tm*
2010-06-05 03:02:37 +00:00
christos eb956cbd4d need errno for the debug build. 2010-06-03 16:14:13 +00:00
christos f82c1d73b2 set -e is supposed to work inside eval; skip EV_TESTED. 2010-06-03 16:06:48 +00:00
dholland 30dd36f330 Note that set -o tabcomplete requires either set -o emacs or set -o vi
to work.
2010-06-03 02:05:02 +00:00
rmind 8b95f823bf Fix ps(1) and top(1) to show reasonable CPU numbers i.e. cpu_index() provided
by the kernel, instead of CPU order number, which is generally random.
2010-05-31 03:18:33 +00:00
dholland a617f5fd5a Don't blow up on date +''. Patch from Robert Elz in followup to PR 39392. 2010-05-29 20:41:58 +00:00
joerg 52bf796fd6 Explicitly quote | and : meant as separate operator. Kill trailing
whitespace. Don't use \Z' with obscure character entity. Reorder sections
to canonical order.
2010-05-24 00:29:30 +00:00
joerg a6a5384f08 Don't break lines in .It, there be dragons in groff. 2010-05-14 17:37:06 +00:00
joerg 3a7ba0e773 Reorder sections to canonical order. Use .Ex -std 2010-05-14 17:11:52 +00:00
joerg fd71eb70d7 Quote punctation. 2010-05-14 02:09:58 +00:00
joerg 22c838d332 Add MKBSDTAR, defaulting to no. It switching cpio and tar to the
libarchive based frontends.
2010-04-23 19:41:02 +00:00
joerg f95fad15ff \\ -> \e 2010-04-05 21:16:21 +00:00
joerg 00e74a9bf1 \\ -> \e 2010-04-05 16:16:53 +00:00
plunky 73d0ac941f - int putbuf_func ARGS((const char *s, size_t len));
+	int (*putbuf_func) ARGS((const char *, size_t));

for pcc
 - did not recognise pointer to function
 - argument names shadowed other arguments
2010-04-02 20:19:40 +00:00
christos b22f104713 make it obvious to grep that we are checking ctime. 2010-04-02 15:09:12 +00:00
christos 221f2e33dd handle ctime returning NULL 2010-04-01 22:23:27 +00:00
dholland 1021e8e12c bump date for previous 2010-03-23 18:09:16 +00:00
dholland bf1e7b508d The -X option of tar names a file containing exception globs, not
exception filenames, same as in gtar. PR 41168 from Perry.
2010-03-23 17:21:40 +00:00
joerg 26590112cf Use .In instead of .Aq Pa for header files 2010-03-22 18:35:09 +00:00
joerg 899808a54d Use .In instead of .Aq .Pa for signal.h. 2010-03-22 18:33:27 +00:00
joerg 6004702d47 \\ -> \e 2010-03-01 21:53:58 +00:00
christos d464f08166 fix faulty logic in previous change. 2010-02-21 09:54:57 +00:00
christos 72f71b4cd6 default to the original behavior for $ENV unless POSIXLY_CORRECT is set. 2010-02-20 23:15:17 +00:00
christos 8752bdfe89 PR/42828: Richard Hansen: Don't evaluate ${ENV} if not interactive.
http://www.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_05_03
2010-02-17 15:57:24 +00:00
he 76d4444c78 When using -lcurses, you also need -lterminfo.
This fixes the build for sun2, and also builds with LDSTATIC=-static,
since archive libraries don't record inter-library dependencies.
2010-02-06 23:45:24 +00:00
wiz e3da56d760 Remove trailing whitespace. 2010-02-04 22:56:11 +00:00
reed c0410f482f For the -d option, refer to parsedate(3) for examples. 2010-02-04 19:25:22 +00:00
roy 98eb889579 Userland now builds and uses terminfo instead of termcap.
OK: core@, jdc@
2010-02-03 15:34:37 +00:00
snj f3bbc67d3e Document "-f". From Andreas Wiese in PR bin/35409, slightly modified. 2010-01-22 05:41:36 +00:00
wiz 4eb4d50caa Match curly braces in undef(FILEC) case. Found by cppcheck. 2010-01-17 12:15:36 +00:00
wiz 2afd9d4a18 Bump date for cd -P support. 2010-01-01 21:46:31 +00:00
dholland a5ced5a04b fix another typo 2010-01-01 19:51:19 +00:00
dholland cd0a6973f8 Make the cd builtin accept and ignore -P, which is a kshism that has been
allowed to leak into POSIX and selects the behavior cd already implements.
Closes PR bin/42557 and also relevant to PR pkg/42168.

I suppose this should probably be pulled up to both -4 and -5...
2010-01-01 19:34:59 +00:00
dholland 87e87a1f8c fix typo 2010-01-01 18:09:16 +00:00
christos 7b9eb38d5c Remove unnecessary casts. 2009-12-21 12:44:48 +00:00
wiz 8bdb893510 Free pt in another error case.
Found by Henning Petersen using cppcheck, in PR 42488.
2009-12-21 09:17:37 +00:00
wiz 663935444d Bump date for previous. 2009-12-14 07:31:49 +00:00
christos e3fc7d5ba9 use .ORDER for rules that create multiple files. 2009-12-14 05:13:38 +00:00
dholland c1bd5c1780 Don't use NOGLOB_MTCH for pax, only for tar. Fixes fix for PR 41167 and
closes PR 42301. Since the 41167 fix was pulled up to -5, this needs to
be too.
2009-12-14 05:04:48 +00:00
dholland f83be7b79e Document "stty insane" properly. Closes PR bin/25024. 2009-12-14 02:34:52 +00:00
uebayasi b79e178285 Rewrite file generation rules using ${GENCMD}. No functional changes intended. 2009-12-11 08:39:42 +00:00
uebayasi 58b17edd41 Define dependencies of arith.[ch] on arith.y. 2009-12-07 16:22:41 +00:00
tsutsui 49ee47d09d Use %zu in printf format for size_t value. 2009-11-27 10:50:04 +00:00
seanb b0a8c7deed Back out fix for PR 22846 as it has issues. See PR 22846 for details. 2009-11-24 16:00:42 +00:00
gson dddcd98c78 Removed return statement in parser action that caused a memory leak with
the new yacc, making "sh MAKEDEV -MM init" consume 27 MB of virtual memory
with the result that NetBSD could no longer be installed on a 32 MB system.
2009-11-13 13:49:09 +00:00
wiz 193ee60c7d Correct usage for parentheses, and mark up "expression" in more places.
From Bug Hunting in PR 42286.
2009-11-10 18:19:46 +00:00
dsl b392d5450b Avoid generating a corrupt history file if multiple ksh exit together.
Fixes PR/28912
2009-10-31 21:54:01 +00:00
christos 5dfc26d510 use flex options instead of #defines 2009-10-29 14:21:40 +00:00
reed 7500459303 Show that -l is option for bind builtin.
(The -l is described later.)
2009-10-24 11:08:46 +00:00
seanb 282081cf28 Wrong buffer len being passed to strlcpy(). Innocuous
here but...
2009-10-22 15:53:19 +00:00
wiz 467a0fa1ae Bump date for uarea swap-out removal. 2009-10-21 22:18:37 +00:00
rmind 40cf6f3659 Remove uarea swap-out functionality:
- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code.  Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.
2009-10-21 21:11:57 +00:00
pooka 4515588628 Fix the "dne" handling and chmod behaviour properly: values of dne
need to be on a stack instead of being a single variable since
directories are processed depth-first.  Otherwise dne randomly
depends on the previously processed entry.

This fixes both chmod of non-created directories (they used to be
chmod'd even when not created if their last child element did not
exist in the target subtree) and a "foo exists" bug exposed by my
last commit which removed directory sorting.

all regression tests passed
2009-10-08 20:36:41 +00:00
christos 10aa8c24e9 only for when trap if we are going to exit. 2009-10-07 18:12:11 +00:00
christos 40ab82d3c3 fix regression exit1: Don't exec the last command in a subshell if it has
trap[0] (trap EXIT) set. Fork instead to give the shell a chance to execute
the trap when it is done.
2009-10-06 20:05:10 +00:00
apb db8f79df3d Make this slightly more portable; it has to run on arbitary host
platforms at build time.  Previousy, some shells were confused by
some of the "[ ... ]" tests.
2009-10-06 19:56:58 +00:00
spz f1afa0902b Make sure that numerical signals and pids are in range for their types.
Fixes PR bin/42143
2009-10-01 09:24:38 +00:00
pooka c817a14b24 Remove fts sorting. It was originally put there to copy files
before directories since files (usually) are in the same cylinder
group and subdirectories aren't.  However, this mostly changed with
the new ffs dirpref algorithm in 2001.

No sorting has two effects:
1) copy appears to be somewhat faster (e.g. on my laptop cp'ing build
   objdir to tmpfs is 7% faster after the change)
2) source file parameters no longer get randomly shuffled due to
   fts doing an unstable sort of them.  this means that
   "cp 1 2 3 4 dest/" will copy the files in that order instead
   of e.g. 3 4 1 2.
2009-09-29 13:30:17 +00:00
christos e5882afd65 too many dots. noted by anon-ymous 2009-09-06 13:38:50 +00:00
dholland 83b3dbf601 Fix up seriously borked mallocing of a static buffer, which seems to
have been this way since at least 4.4. This will still dump core if
malloc fails on the first trip through, instead of on any malloc
failure, but should otherwise behave much more reasonably.
2009-08-31 07:11:16 +00:00
wiz 27ce49cc21 Bump date for previous. 2009-08-03 22:22:10 +00:00
dsl 666a334b2e Remove reference to P_SYSTRACE.
Fixes PR/41426
(leave defn in sys/sysctl.h since the bit shouldn't be reused!)
2009-08-03 20:00:39 +00:00
dsl 6b42da309a Support 0xnn for hexadecimal constants - as well as 16#nn.
While here, make '-' only valid once, and at the start of the number.
Fixes PR/40512
2009-08-02 21:24:18 +00:00
dholland c314d41680 remove unused global variable 2009-07-26 02:07:12 +00:00
dholland 85d0adbcff sprinkle static in this file 2009-07-26 02:06:37 +00:00
dholland aa92b1b91b Remove the need for -Wno-pointer-sign. Does not change the output .o file. 2009-07-26 01:58:20 +00:00
roy 7027866a09 Rename internal getline() function to get_line() so it does
conflict with the soon to be added getline(3) libc function.
2009-07-13 19:05:39 +00:00
ginsbach 389bb545f4 Make sure that buffer is NULL terminated when input to strip_escapes() is
too long.  (Thanks jnemeth!)
2009-06-10 04:16:53 +00:00
ginsbach 9cd62c77f5 Fix potential buffer overflow in filename escape processing
'ed [MAXPATHLEN + 1 characters]'.  [From FreeBSD]
2009-06-10 03:24:27 +00:00
mlelstv 61ace358f2 block numbers are measured in f_frsize units. Make -P option
use this instead of f_bsize. Also account for reserved blocks
like normal non-P output.
Fixes PR bin/41541.
2009-06-06 09:30:45 +00:00
joerg f29cf7b612 Make indentation consistent. 2009-05-26 07:30:51 +00:00
wiz 1c465113fd Reduce Pf/Ns usage. 2009-05-13 22:41:43 +00:00
wiz fc61954d0b Remove leading zero in Dd argument. 2009-05-06 08:26:43 +00:00
jschauma 3ebf4f45cb Note that all file tests with the exception of -h and -L follow symbolic
links and thus evaluate the test for the file pointed at.
2009-05-05 19:04:01 +00:00
lukem 7ca13b8bcd Fix most of the -Wsign-compare issues. 2009-04-25 05:11:37 +00:00
drochner 0fa7059102 define YY_NO_INPUT where appropriate, from Kurt J. Lidl per PR misc/41160 2009-04-20 16:05:29 +00:00
joerg 0feb17a4b1 Fix markup. 2009-04-12 13:52:20 +00:00
perry a992ea7967 Fixes from christos for pr-41167
XXX -X is still broken, but that wasn't part of this PR.
2009-04-07 19:52:35 +00:00
wiz 7d6100a52d Bump date for previous. 2009-03-29 08:54:10 +00:00
mrg fcc023545e - add new RLIMIT_AS (aka RLIMIT_VMEM) resource that limits the total
address space available to processes.  this limit exists in most other
modern unix variants, and like most of them, our defaults are unlimited.
remove the old mmap / rlimit.datasize hack.

- adds the VMCMD_STACK flag to all the stack-creation vmcmd callers.
it is currently unused, but was added a few years ago.

- add a pair of new process size values to kinfo_proc2{}. one is the
total size of the process memory map, and the other is the total size
adjusted for unused stack space (since most processes have a lot of
this...)

- patch sh, and csh to notice RLIMIT_AS.  (in some cases, the alias
RLIMIT_VMEM was already present and used if availble.)

- patch ps, top and systat to notice the new k_vm_vsize member of
kinfo_proc2{}.

- update irix, svr4, svr4_32, linux and osf1 emulations to support
this information.  (freebsd could be done, but that it's best left
as part of the full-update of compat/freebsd.)


this addresses PR 7897.  it also gives correct memory usage values,
which have never been entirely correct (since mmap), and have been
very incorrect since jemalloc() was enabled.

tested on i386 and sparc64, build tested on several other platforms.

thanks to many folks for feedback and testing but most espcially
chuq and yamt for critical suggestions that lead to this patch not
having a special ugliness i wasn't happy with anyway :-)
2009-03-29 01:02:48 +00:00
joerg 70ea994ea4 Avoid .Xo/.Xc. Fix quoting of commands to give the intended effect. 2009-03-26 21:34:11 +00:00
joerg 91a9a1c98b Remove physical markup. 2009-03-24 00:10:58 +00:00
joerg 275eec0d3d Fix markup. 2009-03-15 12:01:24 +00:00
joerg 51c2955e45 Use .Rs/.Re for reference to C shell introduction. 2009-03-13 14:07:54 +00:00
joerg ddf187c649 Fix number of columns in .Bl. Escape %C. 2009-03-13 11:13:46 +00:00
joerg d8c2d82715 Remove redundant tabs 2009-03-11 12:44:19 +00:00
joerg 0739fbbbf2 Don't workaround macro argument limit in ancient troff. 2009-03-11 12:43:58 +00:00
roy 9fa1d120a0 el_gets now sets el_len to -1 on error so we can distinguish
between a NULL string and an error.
This fixes sh from exiting with libedit now allowing EINTR to return.
We may need to expand this to an errno check in the future.
2009-03-10 21:21:11 +00:00
joerg fdf2963413 Explicitly escape -- as it is not an argment to the Cm macro. 2009-03-10 15:14:28 +00:00
joerg 048b505ac7 Don't use .Xo/.Xc to workaround ancient macro argument limit. 2009-03-10 14:18:52 +00:00
joerg 997634fe14 Fix preamble to match order set out by mdoc(7). Discussed with wiz. 2009-03-09 19:24:26 +00:00
wiz 9a3995e433 Remove weird backslash that somehow must have crept in.
Found by joerg and mdocml.
2009-03-03 15:11:29 +00:00
lukem 46b57afcf7 Default to WARNS=4 (except for rcp & ksh) 2009-02-14 08:31:13 +00:00
lukem 990d25a96c fix -Wsign-compare issues 2009-02-14 08:02:04 +00:00
lukem 9050ab5cfa fix -Wsign-compare issues 2009-02-14 07:12:29 +00:00
abs 0c7bdeb6b8 Use u_int counter to count from 0 to u_int: for (u = 0; u < digits; u++) 2009-02-13 00:46:25 +00:00
drochner cbbbda3b17 make sure the table stays aligned even if no groups are to be displayed
with the "groupnames" option
2009-02-03 17:37:02 +00:00
drochner 8b7f84e12c make sure the table stays aligned even if no groups are to be displayed
with the "groups" option
2009-02-03 17:33:42 +00:00
dbj 5ae3d13a2f do not require sys/mtio.h for a tools build of pax 2009-02-03 05:22:40 +00:00
reed 81a4d4f0b0 Show that "seconds" is the expected argument for -r.
(I didn't bump the manual page date for this minor change. If I
should let me know.)
2009-01-30 13:16:16 +00:00
lukem 4a566726c2 sign-compare fix for amd64 2009-01-25 14:18:21 +00:00
joerg 5792116078 Revert for now, pending discussion of how expr should behave in the case
of pre-POSIX expressions.
2009-01-20 14:22:37 +00:00
joerg 14d25567b4 SUS says that expr must support "--" to prevent interpretation of
negative numbers as options.
2009-01-20 13:04:55 +00:00
christos 8623c59aca Revert previous commit that fixes PR/36079 (shell misses exit trap), because
the fix causes $! to point to the wrong process in pipelines, which is worse.
2009-01-19 19:47:11 +00:00
lukem c6144e484f fix -Wsign-compare issues 2009-01-18 00:24:29 +00:00
christos 3957d0cafc rlim_t will be unsigned as TOG mandates. 2008-12-28 19:53:37 +00:00
christos a5c6617db7 fix dev_t 64 bit issues. 2008-12-28 19:50:22 +00:00
christos 909ffa3267 prepare for 64 bit dev_t 2008-12-28 19:30:33 +00:00
christos 97f12feac9 don't free other jobs when we are specifically using the wait built-in. 2008-12-21 17:16:11 +00:00
christos 271febebf6 use EXP_CASE only when trimming and unquoted. 2008-12-21 17:15:09 +00:00
christos ae1cc09549 PR/36079: M. Levinson: Disable the optimization of not forking for the last
command in a subshell, otherwise we miss the exit trap.
2008-12-21 03:15:32 +00:00
christos 9ac082db6c PR/35055: Wada Keiji: wait did not keep the status of terminated jobs as
expected.
2008-12-21 00:19:59 +00:00
christos 26edf84a4b PR/36954: Roland Illig: don't eat backlash escapes in variable patterns.
Makes ${line%%\**} work.
2008-12-20 20:36:44 +00:00
yamt 8277de5576 document "EXIT" pseudo signal. 2008-12-11 04:34:45 +00:00
dholland afde5a17cd Don't pass strings from argv[] to free(). Fixes PR 39992. 2008-11-23 10:08:50 +00:00
dholland 23ba00db99 "compatibility", not "compatability". 2008-11-23 09:51:10 +00:00
snj 976326ad53 Some spelling fixes from VaX#n8 in PR bin/23812. 2008-11-15 17:01:38 +00:00
christos c8877ef31c and if you don't succeed twice, try again. 2008-11-08 00:14:05 +00:00
christos 440e6c6264 Try a different fix for PR/11317: Don't ignore errors in list(). 2008-11-07 15:18:11 +00:00
christos 2afd855bd9 Break PR/11317 again. The counting parentheses fix does not handle case
statements properly. Fixes PR/39873.
2008-11-07 15:08:43 +00:00
christos 9fd1d5af01 PR/11317: Hubert Feyrer: Recognize mismatched parentheses inside old style
command substitution.
2008-11-05 22:04:43 +00:00
ahoka c111d82975 Implement a printtotal function to avoid code repetition. 2008-11-02 02:27:32 +00:00
christos bc4eb9bdd7 show better quoting output for sh -x, from Aleksey Cheusov 2008-10-31 14:38:42 +00:00
apb 3f6e3bc032 In foo="`echo \"hi\"`", the backslashes should be removed by the outer
double quotes, not seen by the inner backquotes.  Previously, ksh(1)
handled this correctly in non-posix mode but incorrectly in posix mode.

The previous comments in src/bin/ksh/lex.c quote parts of some version
of the POSIX specification.  The version of POSIX being quoted is not
identified, but the wording is very similar to that in SUSv3
<http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html>.

It seems clear that the words "having escape characters removed"
mean, in that context, that the backslash before the double quote in
"...`...\"...`..." is removed as part of the handling of the outer
double quotes, so that the backslash is not present when the inner
backquotes are handled.  The new code in this commit follows this
interpretation.  The previous code followed a different interpretation
which is now believed to be incorrect.

Discussed in tech-userlevel.  Closes PR 26493.
2008-10-27 19:52:28 +00:00
apb f46c1de7cb Use ${TOOL_SED} instead if plain sed in Makefiles. 2008-10-25 22:27:34 +00:00
apb 89799ead73 Pass SED=${TOOL_SED:Q} in the environment to scripts run during the build. 2008-10-25 22:23:55 +00:00
apb 125b7c8cbb In shell scripts run during the build, add a SED variable, defaulting
to "sed".  SED=${TOOL_SED:Q} should be passed in the environment to
override this.
2008-10-25 22:18:15 +00:00
apb 9577284633 Don't try to remove trailing newlines from shell variables via
constructs like ${var%$nl}.  Apparently this allows the Ubuntu Linux
/bin/sh (dash) to be used as a host shell during the build.
Patch from PR 39786 by Andy Shevchenko.
2008-10-23 20:21:57 +00:00
apb 20d1e9a13e Pass AWK in environment to shell scripts run during the build. 2008-10-20 07:11:55 +00:00
apb cd5c0f944d In shell scripts invoked during a build, and in crunchgen, use ${AWK}
instead of plain "awk".  The Makefiles that invoke these scripts
or programs will pass AWK=${HOST_AWK:Q}.
2008-10-19 22:10:04 +00:00
apb 96230fab84 Use ${TOOL_AWK} instead of ${AWK} or plain "awk" in make commands.
Pass AWK=${TOOL_AWK:Q} to shell scripts that use awk.
2008-10-19 22:05:19 +00:00
wiz fddd6ca288 Improve wording. 2008-10-19 17:04:49 +00:00
christos cca36888f5 Use 'O' for LSONPROC like solaris instead of bundling LSIDL, LSRUN, LSONPROC
to 'R'
2008-10-19 02:39:08 +00:00
dholland 7fb5a8c68e The field width passed for a %.*s printf format is supposed to be int, not
ptrdiff_t; on 64-bit platforms the latter will be too wide.
Adjust accordingly.
2008-10-16 17:58:29 +00:00
dholland 72c2627f1f Wrap declaration of a STATIC function that's only conditionally defined
in a suitable ifdef, so things still compile if STATIC is defined as
"static", which is for some reason not the default.
2008-10-16 15:36:23 +00:00
dholland 744c8edc4b Wrap declaration of a STATIC function that's only conditionally defined
in a suitable ifdef, so things still compile if STATIC is defined as
"static", which is for some reason not the default.

(In the long run STATIC should go away - it might have once been a
portability hack but now definitely serves no purpose.)
2008-10-16 15:31:05 +00:00
dholland e54c6daca4 Remove unused global variables 2008-10-16 14:55:28 +00:00
dholland 0faa1734e3 Use "extern" properly for referencing globals defined in other modules.
Now builds cleanly with -warn-common.
2008-10-16 14:36:40 +00:00
dholland 30a1416240 output.c output.h: expose OUTPUT_ERR (flag for an exposed flags variable)
bltin.h: support ferror()
echo.c: use ferror() to fail on output write errors

Another piece of PR bin/39574.
2008-10-12 01:40:37 +00:00
wiz 2869cb061b Sync usage with man page. 2008-09-26 13:02:42 +00:00
wiz 6ea06b6e0e Sort options.
Remove systrace reference.
2008-09-26 12:59:17 +00:00
apb b35fbd4594 Add "ps -A" option. This displays information about all processes,
like BSD "ps -ax" or SYSV "ps -ef".  It's specified in SUSv3.

Also make some minor clarifications to the man page.
2008-09-26 08:09:31 +00:00
lukem 41f5d0fda6 Change '-n' so that it implies '-l' rather than requires '-l'.
Brings ls(1) closer to POSIX.1 2004.
Per discussion with Thomas Klausner and Igor Sobrado.
2008-09-25 23:44:05 +00:00
joerg d7cb6e00ad Moved to src/external/bsd/libarchive/bin. 2008-09-19 22:04:19 +00:00
dholland baa6f0b95b Check ferror(stdout) and exit(1) if there's been a problem.
Fixes PR bin/39574 from Ed Ravin, but with a simpler patch.
2008-09-18 05:42:08 +00:00
sjg 2a76c8a41c Avoid sign extention problems leading to:
$ ulimit -dH
3145728
$ ulimit -d 3145728
ksh: ulimit: bad limit: Invalid argument
$
2008-09-14 05:00:23 +00:00
christos 2e63684c48 bin/39446: Aleksey Cheusov: always produce errors on empty numbers. 2008-09-10 19:00:51 +00:00
gmcgarry 3c9a95916d Wrap compiler-specific flags with HAVE_GCC and HAVE_PCC as necessary. Add a few flags for PCC. 2008-08-29 00:02:21 +00:00
christos 8c54d84110 Fix here documents that end abruptly without NL before EOF.
(Andy Shevchenko)
2008-08-23 10:05:52 +00:00
lukem 2fe2731d3f Remove the \n and tabs from the __COPYRIGHT() strings. 2008-07-20 00:52:39 +00:00
gmcgarry 686556951e Add test for HAVE_PCC with HAVE_GCC which turn off compiler warning flags. 2008-07-12 12:29:42 +00:00
dogcow c3b638be42 %d doesn't work so well with the now-u_long type. (HI GMCGARRY!) 2008-06-27 08:17:43 +00:00
gmcgarry c6470d3748 ioctl commands are unsigned long. 2008-06-27 01:42:44 +00:00
christos afd857d440 make getn return long long to support large numbers on all archs. 2008-06-20 23:29:36 +00:00
mrg 04f2afbef7 convert the rest of my licenses to 2-clause, extracting myself out
from a group as necessary.

bozohttpd remains, but it will get fixed next time i update it.
2008-05-30 02:29:37 +00:00
dholland b63851a8b9 Distinguish "this file failed" from "any file failed", to make cp -v
output behave itself. PR bin/37018 from Dieter Roelants.

(I used a slightly different patch to make sure "any file failed"
didn't get lost in the shuffle, and renamed the variables in the name
of greater clarity.)
2008-05-26 22:45:33 +00:00
tron 9cae530b67 Revert revisions 1.91 and 1.92. The POSIX spec about the correct behaviour
is contradictory at best. And these changes seem to cause more problems
that they are worth.
2008-05-26 14:55:17 +00:00