Commit Graph

3049 Commits

Author SHA1 Message Date
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
christos
9655f5c24c PR/38755: murray armfield: /bin posix programs missing setprogname and/or
setlocale
2008-05-26 14:21:08 +00:00
christos
25ff9ac977 PR/38754: murray armfield: Rm prints diagnostic messages when invoked with -f
and no other arguments, contrary to POSIX. Also cosmetic fixes.
2008-05-26 14:12:06 +00:00
joerg
c0b012d867 Update build glue for libarchive-2.5.4b. 2008-05-25 19:34:58 +00:00
christos
e3f3bf2137 PR/38738: murray armfield: Fix type of blen, and reset it on error path. From
OpenBSD.
2008-05-25 15:01:24 +00:00
tron
4d6f948f7a Fix two more cases of bad handling of "set -e":
- false && false
- false || false
2008-05-24 22:24:32 +00:00
tron
c2987416cd Fix another problem with "set -e": "! true" should terminate the shell. 2008-05-24 19:06:43 +00:00
tron
35fbf8dd7f Port revision 1.44 of "src/bin/sh/eval.c" from FreeBSD to fix PR bin/38584.
Reviewed by Michael van Elst.
2008-05-24 17:12:53 +00:00
martin
8eba9df29f Normalize TNF license, move to 2 clause. 2008-04-30 13:39:13 +00:00
martin
11a6dbe728 Convert TNF licenses to new 2 clause variant 2008-04-30 13:10:46 +00:00
martin
3028e483e4 Convert to new 2 clause license 2008-04-29 06:53:00 +00:00
martin
ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
christos
76560beef5 Detect unmatched quotes inside old style command substitution.
echo `"`
2008-04-25 17:32:31 +00:00
apb
cd12700971 If SHELL_BUILTIN is defined (as will be the case when building external
builtins such as the printf command), then hide a few declarations.

This allows the shell to build again, fixing a problem with
"error" being declared as a function here, and as a variable in
.../usr.bin/printf/printf.c.
2008-03-29 09:58:00 +00:00
apb
d6d9ccc8ad * define SHELL_BUILTIN, which other headers may use to hide some of their
symbols if appropriate.  For example, error.h will use it to hide
  declarations that should not be seen by external builtins such as printf.
* The shell's outfmt() function returns void, but the standard fprintf()
  function returns int.  Similarly for several other functions that are
  redefined via macros in bltin.h.  Add a _RETURN_INT macro to do the
  necessary conversion.
* Delete some declarations that appear in error.h.
* Add comments on some #else/#endif lines.
2008-03-29 09:55:40 +00:00
apb
074a931bf5 Remove trailing ';' in definitions of out1c and out2c macros. 2008-03-29 09:49:52 +00:00
dholland
0a890e1609 ps -t? needs to imply -x. Otherwise the non-x logic filters all the results
out. Thanks to der Mouse for prompting me to fix it...
2008-03-10 03:44:11 +00:00
dholland
2ccf7320c1 Grammar fix and clarification from PR 37727 by Randolf Richardson.
While here, do some of my own grammar and formatting fixes too.
Bump date.
2008-03-09 20:59:13 +00:00
christos
935753c811 sort options from anon ymous 2008-03-04 20:11:00 +00:00
christos
7d01361f62 do the -g -G swap for real. 2008-03-04 18:55:57 +00:00
christos
7ca37f5cdc PR/36817: Zafer Aydogan: Don't use -g to implement the same named option
in solaris to display statvfs output, use -G instead. I researched this
and all other implementations except Solaris (OS/X, FreeBSD, us before June
24, 2007) use -g to signify gigabytes. So revert to that.
PR/38154: YAMAMOTO Takashi: df -P doesn't work without -k. Fix from Anon Ymous
together with passing lint, and exiting with the right values.
2008-03-04 17:59:55 +00:00
yamt
a9b7c5b63a restore whitespace between 'Filesystem' and 'blocks'. 2008-03-04 09:03:28 +00:00
dsl
01709217fc Generate ANSI functions.
Just indent the code by a single tab - no need to compare against the
C program generated version any more.
2008-02-27 21:56:14 +00:00
dsl
b63023e666 Change spaces to tabs for consistency with adjacent lines. 2008-02-27 21:55:07 +00:00
joerg
8a4e45ea0e Add build glue for libarchive based cpio and tar. 2008-02-27 15:39:21 +00:00
joerg
932c7ae27a Kill pre-4.4BSD compat code. 2008-02-24 20:42:46 +00:00
dholland
8392979dd5 Dividing by a time_t makes the result time_t, so it should be cast to long
when being printf'd as a long.
2008-02-24 05:20:17 +00:00
dholland
fe5990acd7 Print time_t as long long, not long. 2008-02-24 05:16:46 +00:00
dholland
6dc3dcbc38 Use strtoll rather than strtol to read the -r argument, so it will work
for wider time_t. Also mark a timed-related y2038 lossage for whenever
someone figures out the best way to shoot timed.
2008-02-24 04:49:45 +00:00
simonb
9b21141213 Set "ftent" to NULL in in ftree_arg() after we call fts_close(), so that
it isn't used later on in ftree_sel() after it's been free'd.

OK christos@ (and for the interesting test case).
2008-02-18 15:54:48 +00:00
matt
4498b1fe25 Fix inconsistent definitions 2008-02-15 17:26:06 +00:00
joerg
f04ccd71b4 Set unique mode for the history, so that repeating a command doesn't
spam the history.
2008-02-13 12:57:16 +00:00
christos
da86f0e587 Add a CPUID keyword; idea and some of the code from Anon Ymous 2008-02-10 17:47:59 +00:00
msaitoh
899c734b12 Conform to XCU Section 2.8.2 (Exit Status for Commands) 2008-01-21 06:43:03 +00:00
hubertf
76e0b9a57a Code cleanup:
- Removed case '?' before default in switch
 - Don't forget to close opened decriptors when malloc() fails
 - Hold vfork() result in variable with pid_t type (instead of int)

Sent ages ago by Slava Semushin <php-coder@altlinux.ru> in private mail.
2008-01-16 11:43:34 +00:00
tls
cfdef6ecba Teach set_ftime about symbolic links, because it has to know: on some
Linux systems, when we build as a tool we think we have lutimes but it
doesn't work on some filesystems at runtime.  A bit ugly but effective
and without use of AC_TRY_RUN in the tool build.  Tidier (than mine)
set_ftime reorganization from christos.
2008-01-10 04:24:51 +00:00
ad
2ecdf58c2c Remove systrace. Ok core@. 2007-12-31 15:31:24 +00:00
wiz
ef266ed897 Wordo fix, noted by jmc@openbsd. 2007-12-28 14:32:50 +00:00
wiz
ac14332299 Fix argument confusion, noted by drochner. 2007-12-27 12:59:56 +00:00
perry
0c0bc4573a __attribute__((__noreturn__)) to __dead 2007-12-24 16:11:50 +00:00
yamt
16d01d9a96 prtstat: PRIdMAX -> jd as suggested by Joerg Sonnenberger. 2007-12-22 00:23:36 +00:00
yamt
c7bc0cd0aa don't cast 64bit values to u_long. 2007-12-21 06:43:26 +00:00
dogcow
90ee124aaf This should have been all on one line anyway - and hey, it fixes my build
issue.
2007-12-18 07:25:00 +00:00
perry
8b0f9554ff convert __attribute__s to applicable cdefs.h macros 2007-12-15 19:44:37 +00:00
lukem
bcf893f432 use __RCSID() 2007-12-12 22:55:42 +00:00
wiz
861900d761 Fix typo in comment. 2007-12-02 21:36:44 +00:00
wiz
73f0c10536 Minimally sort options; use Dq; new sentence, new line. 2007-12-02 21:14:49 +00:00
wiz
2da3ed1c7d Minimally sort options; use Dq. 2007-12-02 21:13:23 +00:00
dsl
8e547d329f Compat pecoff uses the standard netbsd system call interface. 2007-11-10 14:41:51 +00:00
dsl
2f3bd6bcd6 netbsd32_SYS_MAXSYSCALL -> NETBSD32_SYS_MAXSYSCALL 2007-11-09 15:40:42 +00:00
wiz
acce89e796 Improve -l description. From jmc@openbsd. 2007-11-07 22:36:35 +00:00
ad
bb6c89afbf Kill another use of PZERO. 2007-11-06 00:44:46 +00:00
jnemeth
e942f6d60e PR/37243 - Joerg Niendorf -- fixup botched addition of -i option 2007-10-29 11:22:59 +00:00
hira
d13505e0de Add missing -e option. From OpenBSD. 2007-10-26 17:45:26 +00:00
hira
5952a904ed - Add -0 and -V to pax_usage().
- Add -k to tar_usage().
2007-10-26 16:38:12 +00:00
hira
82c330f342 Remove extra space from -T option in SYNOPSIS. 2007-10-26 16:35:59 +00:00
hira
e2c7784538 Sync SYNOPSIS with usage() (correct location of -P). 2007-10-26 16:31:16 +00:00
hira
c710611df5 Add -N to usage. 2007-10-26 16:21:25 +00:00
jld
eaef8d4ad7 Touching up the permissions to preserve set-ID bits is appropriate
only in the case where the destination did not previously exist, and
necessary only when -p isn't given.

Closes PR bin/30188.
2007-10-25 03:51:14 +00:00
yamt
ea03f830b4 make -s alter the default format rather than doing parsefmt.
it allows users to use -o to replace it later.
2007-10-24 12:10:11 +00:00
tls
54aef6aada Rename "csh.a" (the appendix of the document) to csh.ap: the .a suffix
is a bit of a nuisance when using cvs import and export and, of course,
clashes with .a for library archive as well.
2007-10-18 18:26:31 +00:00
lukem
db822d2217 Convert to using raise_default_signal(3). 2007-10-05 07:22:23 +00:00
ragge
8b19d01fcd Needs errno.h if !gcc. 2007-09-15 14:33:05 +00:00
apb
6fc16fbc88 Document "emul" keyword. Fixes PR 36935.
Also sort list of keywords, and bump date.
2007-09-09 10:35:32 +00:00
yamt
37ac06be56 add a keyword "lname", to print l_name. 2007-09-01 16:54:39 +00:00
hubertf
8e0c5879e7 - Cleanup for sleep.c:
+ mark two functions as static
  + remove case '?' in switch() before default
  + use return instead of exit() in main() function
  + use constants EXIT_SUCCESS/EXIT_FAILURE instead of 0/1

- In man sleep(1):
  + cleanup example

Patch submitted by Slava Semushin <php-coder@altlinux.ru> in private email.
2007-08-18 00:41:52 +00:00
mjf
16b3db7a9b Fix some grammatical errors in man pages.
Patch supplied by Joerg Niendorf in PR misc/36707, thanks.
2007-07-30 18:01:41 +00:00
dsl
bd8009e530 Don't call P_ZOMBIE(struct kinfo_proc2), it's p_stat field contains
lwp states, not process states!
Since the times are filled with zeros for zombie processes the check
before assuming teh process time is zero is moot - delete it.
Fix the other chact to test the p_realstat.
Fixer PR kern/36295
2007-07-28 17:05:50 +00:00
christos
fede0a77fc kill MFSNAMELEN 2007-07-17 20:03:10 +00:00
christos
b79c2ef26a no need to have cshbool; just make them int 2007-07-16 18:26:09 +00:00
christos
94ae12d450 Fix '-Ph' segfault; from Greg Woods 2007-07-16 14:39:53 +00:00
christos
ec01a4a425 PR/36650: Michael van Elst: Get rid of bool, because csh uses bool as a small
int.
2007-07-16 14:07:00 +00:00
dogcow
593a9183f0 Rename bool -> cshbool; despite the name, bool actually holds values other
than 0 or 1. Fixes PR/36650.
2007-07-16 02:26:50 +00:00
dogcow
7b060c43f2 exposure of bool elsewhere in the code requires the addition of stdbool;
in addition, proc.c cleverly has a variable that was initially defined "int",
but had in the actual declaration "bool". oops.
2007-07-10 00:30:23 +00:00
christos
84c48917b8 spacing fixes from Geoff Wing 2007-07-03 14:39:47 +00:00
lukem
b7fac28c5b In sig_cleanup(), attempt to reset the signal handler to the default
and raise the appropriate signal, so the correct wait status is
returned to the parent.
2007-07-03 10:20:09 +00:00
lukem
4cac80e3e4 In the SIGINT handler, explicitly display a summary and then raise the
default SIGINT handler to exit, rather than exit(0) and relying upon the
atexit() to display the summary.
Per SUS6.
2007-07-03 05:25:25 +00:00
yamt
7893935666 remove descriptions of some states. ('A', 'S', '>')
- they are wrong.  (madvise is not vadvise)
- they don't exist anymore.
2007-06-25 00:24:01 +00:00
christos
3c769789fa PR/36534: Greg A. Woods: test(1) doesn't do -r and -w quite right
Use stat(2) instead of access(2) per POSIX.
2007-06-24 18:54:58 +00:00
christos
2554aff24b PR/36531: Greg A. Woods: another very helpful DEBUG TRACE() call for execve()
failures in /bin/sh
2007-06-24 18:36:23 +00:00
christos
205a4b0786 PR/36536: Greg A. Woods: stty(1) should mention tty(4) 2007-06-24 18:03:00 +00:00
christos
57bbaf572b PR/36546: Aleksey Cheusov: problems with 8-bit input in /bin/ksh, needs to
call setlocale()
2007-06-24 18:00:49 +00:00
christos
c1686632e0 PR/36535: Greg A. Woods: rm(1) should present user:group the same way as
chown(8) et al
2007-06-24 17:59:31 +00:00
christos
546dff6580 PR/36533: Greg A. Woods: minor doc fixes for sh(1) 2007-06-24 17:57:56 +00:00
christos
98d594125d PR/36541: Greg A. Woods: fix -P option, and add solaris -g option. 2007-06-24 01:52:46 +00:00
simonb
9a8238c82f Remove a "CFLAGS+=-g" that seems to have snuck in with no good reason. 2007-06-22 03:24:16 +00:00
dsl
8da3353686 Fix sh -c 'true && ! true | false; echo $?'
Add some more TRACE((...)) calls to aid such debugging.
Fixes PR bin/36435
Clearly no one tried this test when the changes of rev 1.31 and 1.44 were done!
2007-06-07 20:57:59 +00:00
soda
7dd0dd9e6b modify a comment in previous change 2007-06-06 13:21:28 +00:00
wiz
8c64f063a1 Apply SODA Nuriyuki's patch for multibyte support.
Based on soda-revised2.patch (in private mail) with a change from
soda on tech-userlevel.

Ok christos@.
2007-06-05 17:48:19 +00:00
tls
4147a3c54a Add new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
FORTIFY_SOURCE feature of libssp, thus checking the size of arguments to
various string and memory copy and set functions (as well as a few system
calls and other miscellany) where known at function entry.  RedHat has
evidently built all "core system packages" with this option for some time.

This option should be used at the top of Makefiles (or Makefile.inc where
this is used for subdirectories) but after any setting of LIB.

This is only useful for userland code, and cannot be used in libc or in
any code which includes the libc internals, because it overrides certain
libc functions with macros.  Some effort has been made to make USE_FORT=yes
work correctly for a full-system build by having the bsd.sys.mk logic
disable the feature where it should not be used (libc, libssp iteself,
the kernel) but no attempt has been made to build the entire system with
USE_FORT and doing so will doubtless expose numerous bugs and misfeatures.

Adjust the system build so that all programs and libraries that are setuid,
directly handle network data (including serial comm data), perform
authentication, or appear likely to have (or have a history of having)
data-driven bugs (e.g. file(1)) are built with USE_FORT=yes by default,
with the exception of libc, which cannot use USE_FORT and thus uses
only USE_SSP by default.  Tested on i386 with no ill results; USE_FORT=no
per-directory or in a system build will disable if desired.
2007-05-28 12:06:17 +00:00
christos
35d9d3fddf Make sure we don't run over the end of the argument array while scanning
for input. This can happen if we have a unary not without an argument. When
we scan for the argument, we are already at the NULL element of the argument
array. Then when we scan ahead for a -a or -o, we end up testing the next
element after the NULL.
2007-05-24 18:47:08 +00:00
christos
41d09357f2 Instead of putting a full copy of realpath here, use the system's realpath. 2007-05-24 18:18:43 +00:00
christos
a59f86365c coverity CID 4378: fix bogus comparison that lead into dead code. 2007-05-16 20:49:35 +00:00
uwe
8e85c1baf1 Use the same wording for '-p' as for other file related tests. 2007-05-15 22:00:51 +00:00
christos
206f418235 PR/36275: john at iastate dot edu: tar -s modifies symlink targets
- This is explained in a comment in pat_rep.c inside mod_name(). I did not
  want to change the default behavior, so I added another modifier "s" which
  when set, the pattern will not modify the symlink destination.
- While here I fixed another bug that was introduced before by the fix in
  PR/35257 where the renaming was happening twice since we called rep_name
  twice.
- Finally if we are renaming hard of soft-link targets print the renames for
  those too.
2007-05-04 21:19:36 +00:00
msaitoh
8ce1f4fff2 fix typos 2007-04-29 20:23:34 +00:00
christos
135e711f26 bump date. 2007-04-23 18:41:11 +00:00
christos
702d1ca548 PR/36194: Greg A. Woods: add a '-V' flag to pax for verbose summary without
listing (and other minor fixes)
2007-04-23 18:40:22 +00:00
plunky
4796b4c1d9 escape * and - properly 2007-04-13 00:40:11 +00:00
lukem
3851cea520 Use IEC 60027-2 prefixes for 2^n based prefixes. 2007-04-13 00:38:45 +00:00
christos
06519c05da PR/36092: B K: algorithmic inefficiency in bin/test/test.c:t_lex
test(1) scans for "operators" linearly in an array using strcmp() to
find a match. Since the list of "operators" is fixed, split them
into one and two character ones, and ones that start with a `-' and
ones they don't. This way we can optimize the compare function to
just check for one or two characters. Sort and use bsearch(3). We
could have used a single sorted array and bsearch(3), to save some
complexity, but I decided to be a bit fancier.
2007-03-28 01:47:25 +00:00
apb
faafdc7e21 Document that shell arithmetic now uses intmax_t. Document that
variables in shell arithmetic don't need "$" signs.
2007-03-25 06:56:43 +00:00
apb
1a20cbd95e WARNS=4 2007-03-25 06:30:37 +00:00
apb
91ce988bec Make /bin/sh use intmax_t (instead of int) for arithmetic in $((...)). 2007-03-25 06:29:26 +00:00
msaitoh
548cdc0050 s/intialized/initialized/ 2007-03-17 13:51:46 +00:00
hubertf
7ce5824ba3 Remove unused ctype.h
From: Slava Semushin <php-coder@altlinux.ru>
2007-03-10 01:16:17 +00:00
rillig
bbe065310a EROFS is not a critical error in a "mkdir -p". 2007-03-08 17:01:30 +00:00