Commit Graph

2875 Commits

Author SHA1 Message Date
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