Commit Graph

2491 Commits

Author SHA1 Message Date
christos
ee17e957e3 Coverity CID 343: Rework code so that we don't write after the end of the
array. The end effect is the same though.
2006-03-18 05:43:47 +00:00
christos
2ed09657c9 Coverity CID 345: Add missing free's. 2006-03-18 05:40:28 +00:00
christos
eb903308f2 Coverity CID 1559: Fix memory leak. 2006-03-18 05:33:31 +00:00
christos
3e359756c9 Coverity CID 620: Remove dead code. 2006-03-18 05:25:56 +00:00
christos
f6828859fa Coverity CID 890: Possible NULL pointer deref. 2006-03-18 05:23:08 +00:00
christos
169a269417 Coverity CID 1329: Possible NULL deref. 2006-03-18 05:17:36 +00:00
ginsbach
f127f217fb Fix Coverity CID 1863, 1864; resource leak, bp not freed when !okname()
before function return and/or bp overwritten by malloc().
2006-03-18 04:44:49 +00:00
peter
c8593a1a3c Wrap long lines. 2006-03-18 00:35:02 +00:00
peter
dfd65180e1 Don't try to dereference pw when it's NULL.
Fixes Coverity CID 900.
2006-03-18 00:32:34 +00:00
peter
6dcaf25d17 Free allocated space upon failure.
Fixes Coverity CID 1661.
2006-03-18 00:14:50 +00:00
peter
c75c0a8549 Change a return to "goto out" so that fclose will be called.
Fixes Coverity CID 1881.
2006-03-18 00:12:02 +00:00
peter
96b1a913a5 Call fts_close() at the end of rm_tree().
Fixes Coverity CID 1670.
2006-03-17 23:55:42 +00:00
christos
5653b43bfd Coverity CID 1226: Remove bogus close call. 2006-03-17 22:48:10 +00:00
christos
1006977549 Coverity CID 1324: Check adrof return; not really possible. 2006-03-17 22:38:44 +00:00
christos
65b5013e95 Coverity CID 2356: Remove bogus test !*argv; also cleanup string usage. 2006-03-17 22:30:11 +00:00
christos
b807e41c56 Coverity CID 1762. Fix resource leak. 2006-03-17 22:24:28 +00:00
christos
94f9c01465 Coverity CID 610: Dead code 2006-03-17 22:20:31 +00:00
christos
df8cbb182e Coverity CID 2479: Clarify confusion about uninitialized variable in the
presence of setjmp/vfork.
2006-03-17 17:20:47 +00:00
rumble
2174dda221 Handle asprintf failing to allocate. 2006-03-17 14:43:11 +00:00
rumble
88f1652fe8 Handle asprintf returning NULL. 2006-03-17 14:37:14 +00:00
rumble
3ad5f13d80 Handle malloc returning NULL. 2006-03-17 13:53:31 +00:00
erh
a329a6a0ae Fix Coverity issue 1754. Call fts_close() after we're done copying. 2006-03-17 06:22:30 +00:00
dmcmahill
3ebb7ce790 Correct a check for an index being in bounds for a static array. 2006-03-17 00:02:30 +00:00
aymeric
d5d0c11532 Make the -s flag of fc work correctly. Ensure that only one command is specified
and ensure that we break out of the loop after executing it.
With the previous code, because the re-executed command was added to the
history, it would think that it still had to execute it, leading to an infinite
loop.

The last thing which differs from ksh is that we get the "fc -s " command into
the history, but this is actually rather a feature in my humble opinion.

To test:
$ echo hello
$ fc -s ec
<infinite loop or correct behaviour>
2006-03-06 00:09:22 +00:00
christos
cde6642bee PR/32931: Johan Veenhuizen: cat(1) does not clear the EOF indicator for
stdin in cooked mode.
2006-02-26 19:44:24 +00:00
wiz
1ad8067cb3 Fix typos, reported by Alexey Dobriyan ("Gathered from Linux"),
forwarded by jmc@openbsd.
2006-02-25 00:58:34 +00:00
dsl
b419a25464 Ensure we exit with an error if we don't actually do anything.
There are a lot of tty_warn(0,...) and syswarn(0,...) which probably ought
to be tty_warn/syswarn(1,...) to force an error exit.  However some are
used in interactive parts (eg opening a continuation archive) where there
is a separate retry loop.
So we just pass a failure code out to main() - how quaint!
This should now cause the NetBSD build to fail when gzip tries to write
to a non-existant directory.
(I suspect there are still many errors that don't get reported correctly.)
2006-02-11 11:04:57 +00:00
dsl
cdec4ac10c Change all the 'return(x)' to 'return c'.
Makes some other searches I want to do a bit easier.
2006-02-11 10:43:17 +00:00
dsl
885e558785 Actually exit with error if we cannot open("."), make it more obvious that
we exit with error on signals.
2006-02-11 10:35:19 +00:00
christos
ef3fea8531 Solaris mkdir on an automounted component returns ENOSYS. Go figure.
Good choices whould have been EROFS, EEXIST, EACCES, EISDIR...
2006-01-31 19:25:20 +00:00
jschauma
262cdfcbd7 Start 'You have mail in' with a capital Y. 2006-01-15 18:16:30 +00:00
elad
f909cee7d7 PR/23688: don't say we're printing in 1k-blocks if -h was also specified. 2006-01-13 14:07:57 +00:00
wiz
01db637894 Bump date for progress=n description change. 2006-01-12 21:42:11 +00:00
apb
b7d86f5e4c In "dd progress=N", let the value of N control how often
to print a "." to stderr.  Previously, any non-zero
value behaved like "progress=1".

PR 24300

Approved by christos
2006-01-09 10:17:05 +00:00
yamt
d2169f9f6e obey umask as it used to be before the "mkstemp and then rename" change. 2006-01-04 22:02:11 +00:00
garbled
6ac601d8c4 Add error printing for ENAMETOOLONG. Partially addresses PR bin/13850 .
The actual bug mentioned in that PR no longer exists, but it does cause:
~~~~~: error 63
Which this fix cleans up.
2006-01-02 19:10:33 +00:00
elad
9d002bc47d Give systrace its own version of realpath() that does what it wants,
call it intercept_realpath().
Unbreaks systrace.
2005-12-31 12:33:41 +00:00
dsl
ea2078818f TOG require that 'set +o' output the options in a form suitable for
restoring them - make it so.
2005-12-13 17:44:18 +00:00
wiz
fe8b349524 Add xref to chflags(1). From Andre Luiz de Oliveira in PR 32265. 2005-12-09 20:27:02 +00:00
christos
d0d28f16f5 If we get EACCES from mkdir, try to stat() it, and if it is ok, we keep going.
Fixes problem with IRIX.
2005-12-06 19:11:15 +00:00
dsl
e60beff86b Don't change the name of the directory we are going to 'cd' to just because
we decide to remove a leading "./" when deciding whether to print the name.
Stops 'cd .//tmp' ending up the same as 'cd /tmp'.
Fixes PR/30735
2005-11-26 21:44:43 +00:00
christos
f85aae5649 PR/32103: Zafer Aydogan: Fix references to obsolete fstatfs and getfsstat 2005-11-18 05:04:24 +00:00
christos
95355c05c7 - Better detect pathname overflow (from FreeBSD)
- Change destination normal file detection to match with FreeBSD
- Trim trailing slashes from source filenames so that cp foo/ == cp foo
2005-11-16 22:42:12 +00:00
chs
83fd12c4fb add "uaddr" and improve text for "laddr". 2005-11-11 17:06:22 +00:00
chs
58c15fb5d1 add a keyword for the uarea address. very useful with crashdumps. 2005-11-05 19:27:24 +00:00
christos
c952ef6b81 PR/31923: Sergey Svishchev: pax-as-tar ignores -k, overwrites existing files
Fix from Onno van der Linden
2005-11-01 23:43:27 +00:00
jschauma
0386433d98 Somehow missed this in the last commit, where I only changed the commentary
to reflect the actual change (plus minor nits).  So here's the actual change:

Rather than '-h' suppressing '-s' when using '-l', make it display
the blocks used in human readable form, as suggested by Alan Barrett
and Daniel Carosone.

(Missing bits spotted, as usual, by wiz@.)
2005-10-31 14:13:33 +00:00
elad
2fc1513987 The emulation for these should be "native", not "netbsd".
Noted by Ray Lai.
2005-10-26 21:17:23 +00:00
jschauma
ea274fd69c Rather than '-h' suppressing '-s' when using '-l', make it display
the blocks used in human readable form, as suggested by Alan Barrett
and Daniel Carosone.
2005-10-26 02:24:22 +00:00
kleink
fd4c891ff8 Remove the "" -> "." target conversion kludge. 2005-10-24 12:59:07 +00:00
jschauma
3478ebe108 document that -h makes -l suppress -s.
(Ie 'ls -lhs' == 'ls -lh')
2005-10-23 20:52:47 +00:00
elad
c9981d258c PR/27140: "sleep time" doesn't error out.
Apply fix from Dheeraj Reddy.
2005-10-17 10:11:46 +00:00
christos
509c72ef94 - Don't output 'src -> dst' when -v and there was an error.
- Mark usage as noreturn, and remove extraneous exit.
- Pass lint.
Reported by Liam Foy.
2005-10-15 18:22:18 +00:00
jschauma
ff54312f75 Honor the COLUMNS variable even when producing output not to a terminal,
as long as a specific format (that could use COLUMNS) was requested.
This makes

env COLUMNS=50 ls -C > file

not surprise the user who clearly wanted some specific output in the file.
2005-10-14 16:02:26 +00:00
christos
8d6ffce2ad PR/31548: Alexander Rigbo: $PWD not set when shell starts up, before pwd
or cd get executed.
2005-10-10 21:14:42 +00:00
wiz
803ccc7cb0 Bump date for previous. 2005-10-10 20:46:17 +00:00
jschauma
98615dcf47 Document that '-g' overrides -1, -C, -m, and -x, but is _always_
overridden by '-l', even if '-g' was specified last.
2005-10-10 20:30:34 +00:00
christos
c05266af8a fix setmode error handling. 2005-10-01 20:23:54 +00:00
christos
16547af71a Fix setmode error handling. 2005-10-01 20:22:29 +00:00
christos
037f0a7b03 Now that setmode() is fixed, handle errors with err instead errx. 2005-10-01 20:09:18 +00:00
tv
964f98e703 Make slightly more portable without extra conditionals needed:
- Use getpgrp() rather than getpgid(0).
  (getpgrp() is already used elsewhere in this same file.)

- Use waitpid(-1, a, b) rather than wait3(a, b, NULL).
2005-09-30 18:57:55 +00:00
dsl
469d38dbae Don't leave arcn->org_name pointing to ftent->fts_path, if we being cpio
then ftent is freed just below.  Take a copy of the name and point org_name
at the copy.
Should fix PR/30627 (the fix in the PR will break pax and tar!)
2005-09-24 17:05:21 +00:00
christos
88ee54d8c2 Check for another race reported by chuq. 2005-09-18 12:15:41 +00:00
christos
b39d90de0c mkdir(2) can return EISDIR for / 2005-09-17 06:05:04 +00:00
christos
5b36787563 spelling fixes from Joerg Sonnenberger 2005-09-16 17:05:14 +00:00
christos
b60b306ef2 Another missing mkdir() race pointed out by chuq. Factor out the mkdir code. 2005-09-16 16:48:18 +00:00
christos
0743a9e845 use stat and not lstat to detect if we have a directory. refactor the mkpath()
code.
2005-09-13 20:09:55 +00:00
christos
929821126f when creating directories, check if the failure occured because someone
else created the directory before we did to avoid races. From chuq.
2005-09-13 15:50:17 +00:00
wiz
49c862f011 Use better section header. Sort sections. From YOMURA Masanori in private mail. 2005-09-11 23:21:17 +00:00
wiz
553e3c8477 Use better section header. From YOMURA Masanori in private mail. 2005-09-11 23:13:03 +00:00
christos
a74ea5fcd7 Process window size changes after xread(). [change window size]
echo $COLUMS $LINES; will now print the new sizes immediately, instead
of after the second echo. From otto@OpenBSD
2005-09-11 22:23:42 +00:00
christos
57c8db64ce The following should print \"; from OpenBSD
$ cat << EOF
\"
EOF
2005-09-11 22:16:00 +00:00
wiz
2ea3362a10 In mdoc, use .Pp for new paragraphs, not .br. 2005-09-10 22:09:43 +00:00
wiz
d8b6049e03 Sort options. Simplify macro usage. Use standard EXIT STATUS section. 2005-09-10 21:51:57 +00:00
elad
d8a0e22d8a Adjust comment. Noted by Rui Paulo. 2005-09-07 19:15:49 +00:00
elad
f777d75b5c Catch up with 64 bit inode changes. 2005-09-07 19:04:57 +00:00
elad
e6a2d9e984 Simplify man-page a bit.
Patch from Patrick Welche.
2005-09-03 11:44:45 +00:00
elad
3752840791 Add a new keyword, ``topdir'', that grants access only if the file is
in a hierarchy below the specified path.
2005-08-24 19:09:03 +00:00
dsl
8c772bc707 Don't apply CDPATH if the the first component of the target is "." or "..".
Fixes PR/30973 and applies the principle of least surprise.
Update documentation to match (including date).
(matches behaviour of pdksh - if not it's documentation)
2005-08-20 21:07:42 +00:00
elad
76ed05e8b1 Add and document -N: When used with -p, it will not copy the file flags.
PR 13645.
2005-08-15 17:13:35 +00:00
elad
2d28a8933f Document -L correctly. PR #30430. 2005-08-13 15:59:28 +00:00
elad
3df38a6c89 Make inpath work like strstr again. :) 2005-08-10 21:53:01 +00:00
elad
9d164b22bc Add comments. 2005-08-10 21:33:36 +00:00
elad
e4088913b5 Separate constructing the path to the policy away from systrace_addpolicy() and
into systrace_getpolicyfilename().
2005-08-10 18:19:21 +00:00
peter
fa141339e0 More minor cleanup:
- remove unnecessary prototype for main()
- use symbolic exit code
- KNF & wrap a long line
2005-07-22 14:27:08 +00:00
hubertf
15bc25dc45 Minor code cleanup:
* remove unneeded cast
 * use err() instead of perror() + exit()
 * use symbolic exit code

Patch contributed by Liam J. Foy <liamfoy@sepulcrum.org> in private mail.
2005-07-22 11:06:24 +00:00
wiz
980a2652ee Aspell, fix an Xref, drop trailing whitespace. 2005-07-15 22:33:48 +00:00
christos
0df4f0ca31 Only do certain actions when we are trully interactive, not just when we
are connected to a tty:
	1. enable editor
	2. print directory on directory change.
	3. print job messages
2005-07-15 17:49:43 +00:00
christos
b0d51313b4 If we have a script and we are interactive, set interactive to 2. This
allows us to run scripts with -i without printing the prompt like the
other shells do.
2005-07-15 17:46:54 +00:00
christos
e996b4625d Allow trap to work on ignored signals when the shell is interactive. 2005-07-15 17:23:48 +00:00
christos
ab760d2891 make setsig() return sig_t 2005-07-11 02:37:31 +00:00
christos
3564ac65d4 Don't hard ignore signals that were ignored by our environment, because
when we try to set a trap on them it will not work. Also while I am here:
1. don't change the action status if the signal system call failed.
2. don't try to sigignore it if signal failed.
3. clear the signal mask in case our parent blocked it for us.
2005-07-11 02:37:05 +00:00
elad
4e11de6548 Further correct handling of `inpath'.
The path in the policy is not normalized, and shouldn't be. We accept
only an absolute path, possibly with one trailing slash. Make note of
that in the manpage.
2005-07-04 16:32:30 +00:00
elad
931e7a5f52 Make `inpath' work as expected. Closes PR 29677.
Reported by Christian Biere, based on usenet post by John Wong.
2005-07-01 17:12:41 +00:00
elad
1d53f8bfa8 Use strcmp() when comparing strings in systrace.
Reported by Christian Biere in PR29676.
2005-07-01 16:12:11 +00:00
christos
d7df71ba0e Don't compile in cpio usage, if we are SMALL. 2005-06-29 02:21:27 +00:00
elad
1b7133edad From marius@openbsd:
Fix an issue when scripts are executed under systrace where the argv[0]
would be normalized, and hence break scripts that depend on how they were
called.
2005-06-27 17:11:20 +00:00
christos
10a02919cc Add some more const so that this compiles again. 2005-06-27 00:46:04 +00:00
elad
8ebc2e9bee From marius@openbsd:
Add an exec message so that whenever a set-uid/gid process executes a new
image which we may control, the exec does not go by unnoticed.
2005-06-26 19:58:29 +00:00
christos
6310b59691 sprinkle a little const, and now everything compiles with WARNS=3 2005-06-26 19:10:48 +00:00