Commit Graph

2658 Commits

Author SHA1 Message Date
jdarrow 5d27a9d665 Add -j flag to not actually change the clock, just parse the date given
(if any) and then display it in the format given.  Matches similar -j
flag functionality in FreeBSD/OpenBSD.

Change requested by George Georgalis on netbsd-users.

While I'm here, disambiguate the letters in the date string, by using
the same option letters as used by strftime(3).
2006-11-15 03:10:01 +00:00
christos ccc92a707d fix the sort order too. 2006-11-14 20:27:10 +00:00
christos ce725e8fad Fix signal list generation, from Jukka Salmi 2006-11-14 19:10:55 +00:00
cbiere 28fb298561 Added missing F_GETLK, F_SETLK, F_SETLKW to print_fcntlcmd(). 2006-11-12 23:29:37 +00:00
christos d0a868f481 Add support for printing the emulation of the process. 2006-10-29 22:32:53 +00:00
cbiere 1d3c56521c Applied patch from PR bin/34790 so that ~/.kshrc is mentioned. 2006-10-24 18:30:25 +00:00
christos 5b08cf393d c99 initializer 2006-10-16 00:43:00 +00:00
christos 18243309bd c99 initializers 2006-10-16 00:37:55 +00:00
christos 272937609b sprinkle volatile. 2006-10-16 00:36:19 +00:00
christos 3fccf7e09e c99 initializers 2006-10-16 00:31:47 +00:00
christos 573bd5e5dd add missing inititializer 2006-10-16 00:11:22 +00:00
christos d2bca38017 use c99 initializers 2006-10-16 00:07:32 +00:00
christos 88e26c5a37 sprinkle volatile 2006-10-15 23:57:21 +00:00
christos 640b35e022 c99 initializers 2006-10-15 23:55:30 +00:00
wiz dd94284f1e Add -i to usage. 2006-10-13 20:37:10 +00:00
wiz 9dedcd8f8b Remove trailing whitespace.
Remove a partially duplicated sentence.
2006-10-09 21:31:29 +00:00
elad 93bbf8101f PR/32759: Ulrich Heilmann: Output of cat -s -n is wrong
Applied patch from David A. Holland, thanks!
2006-10-08 21:52:56 +00:00
apb e7fd82468c Make it clear that multiple sort keys may be specified.
Closes PR 34271.
2006-10-07 10:22:21 +00:00
elad cf245f1ee7 PR/22799: Hiramatsu Yoshifumi: Add -i option to /bin/ln
Slightly modified patch applied, thanks!
2006-10-07 10:05:25 +00:00
elad ed23b39f46 PR/34265: dieter roelants: pax truncates archive when appending fails.
Patch applied, thanks!
2006-10-07 09:53:20 +00:00
elad 9b5118f13d PR/28450: David H. Gutteridge: date(1) does not validate its input and
accepts and processes impossible dates

Patch applied, thanks!
2006-10-07 09:34:46 +00:00
christos ab28bede4c Prefix "Syntax Error" with the program name, if the command name is not
available. At least this way we get an idea of what program gives us the
message.
2006-10-04 15:00:38 +00:00
wiz 103401b052 Avoid .No if easily possible. 2006-10-03 02:15:16 +00:00
apb 9ff8e2d57f Add some markup missed in previous. 2006-10-02 20:54:27 +00:00
apb 7c5fcf623a Set the width in the correct data structure. (Fix error in previous.) 2006-10-02 18:43:13 +00:00
apb b9f435a549 Document changes to -o and -O options, and improve markup. 2006-10-02 17:57:01 +00:00
apb d9463bc15b * When all columns are given null customised headers, the blank header
line is not printed at all.  This is specified in P1003.1-2004
  (SUSv3), and is useful.

* Customised headers may contain embedded space, commas and equals
  signs.  To specify multiple customised headers, use multiple -o or -O
  options.  This is specified (for "-o", not for "-O") in P1003.1-2004
  (SUSv3), and is useful.

* When a column is given a null (blank) customised header, it keeps its
  default minimum width.  This is specified in P1003.1-2004 (SUSv3), and
  seems harmless.

* Fix a bug that made it impossible to print the same keyword multiple
  times, with different customised headers each time.  (Previously, the
  last customised header was used for all instances of the keyword.)

* Make the behaviour of "-O" more useful.  The first -O option adds
  the default keywords only if there have not yet been any formatting
  options, and multiple -O options now insert their keywords in adjacent
  positions.  Now {ps -j -O %cpu} is like {ps -j} with one extra column;
  Previously, it would have had all the columns implied by "-j", plus
  all the default columns, plus the extra column specified by "-O".

* Convert from home-grown linked lists to SIMPLEQ lists.

Discussed in tech-userlevel.
2006-10-02 17:54:35 +00:00
hubertf 7eef11b485 Revert previous (==) - not worth the trouble. 2006-09-24 13:24:08 +00:00
elad 8fea60435c PR/34499: mac at S dot culver dot net: ls allocates more memory than needed
Applied patch, thanks!
2006-09-23 19:54:53 +00:00
elad f090cf7468 PR/33396: Christian Biere: Global Warming may be caused by mv(1)
Applied patch, thanks!
2006-09-23 16:54:13 +00:00
wiz 0331d1430a Use macro for HTML output. 2006-09-23 11:24:44 +00:00
wiz dff6308718 Bump date for previous. 2006-09-23 11:22:10 +00:00
elad acd3797c82 PR/16827: Giorgos Keramidas: addition of EXAMPLES section to
basesrc/bin/cat.1
Applied patch, thanks!
2006-09-23 00:01:39 +00:00
elad cfbe6aa48d PR/33635: Anne Bennett: Document 'a' and 'A' flags in ls(1).
strmode(3) already documented these, so use the description from there.
2006-09-22 23:00:32 +00:00
hubertf f9278bfbec Allow '==' as synonym to '=', just like our ksh and bash do.
This also affects the sh(1) builtin test command.
2006-09-22 22:15:24 +00:00
dbj b41feff50f fixes for installing into a case insensitive $DESTDIR
when files may have hard links to a a name that only differs by case
  - change install to unconditionally remove its temporary file
    when installing hard links with -r.  This avoids problems when
    built with posix rename(2) semantics and reinstalling an existing
    hard link.
  - rework hard link targets in bsd.man.mk and bsd.links.mk
    to use makefile constructs instead of shell constructs
  - always reinstall hard links that may have case conflicts, even
    when MKUPDATE=yes, this ensures that they get added to METALOG
  - remove man pages which were hard linked to themselves in libform
  - remove improper hard link command for existing man page in libkrb5
  - fix libl's makefile to include bsd.lib.mk at end
  - remove shell quoting in link target for test's [.1 man page
2006-09-11 22:24:09 +00:00
dsl 1719403bf2 Fix typo, update date.
Fixes PR/34472
2006-09-04 20:30:36 +00:00
christos ccd5bfd356 fix formatting of df -h; from Zafer. 2006-09-04 16:32:57 +00:00
wiz e41d3cdc7d Bump date for previous. 2006-09-03 00:24:05 +00:00
wiz 1763875ada New sentence, new line. Bump date for previous. 2006-09-02 23:28:32 +00:00
christos 10ed3a58a9 factor out the code that does numeric parsing into a function and check for
errors properly.
2006-09-02 20:00:09 +00:00
itohy e442e57e36 Add description on "discard" character.
Sort control characters by the Vxxx numbers in termios.h.
2006-09-02 15:10:22 +00:00
liamjfoy 0590732532 Document new -P behaviour 2006-08-25 11:08:50 +00:00
liamjfoy c9432db8c8 Only remove the file if the file can be successfully
overwritten. Old code would remove the file regardless of
whether the overwrite was successful or not.

New behaviour:

carpy: {12} touch moo ; chmod 444 moo
carpy: {13} ls
moo
carpy: {14} rm -P moo
rm: moo: -P was specified but file could not be overwritten
carpy: {15} ls
moo
carpy: {16}

ok: christos@, joerg@ & tech-userlevel@
2006-08-25 11:00:40 +00:00
dsl c58b829dda Set the 'not a parameter' flag when we skip initial whitespace.
Otherwise:
    ./sh -c 'x=" "; for a in $x; do echo a${a}a; done'
is processed as a single empty parameter (instead of no parameters).
Should fix the breakage I introdiced in rev 1.75 and PR/34256 and PR/34254
2006-08-22 18:11:42 +00:00
christos 06cdcd1106 PR/34255: dieter roelants: Remove mention of -p f. 2006-08-22 17:42:19 +00:00
christos a6fdd24769 - detect buffer overflow.
- if we have a trailing slash, don't add another one.
2006-08-21 23:09:50 +00:00
dsl 413b7762c2 Rework the code changes from revisions 1.69, 1.70 and 1.74 so that the code
behaves correctly.
As far as I can tell, "x$@y" now expands correctly, as does IFS=:; set -$IFS.
Fixes PR/33472 (again) and PR/33956
2006-08-21 21:30:14 +00:00
christos eae5877e02 from zafer: you can have either -k or -h but not both since it does not make
sense.
2006-08-21 19:08:47 +00:00
christos b65b7f50b1 -h and -[mgk] are mutually exclusive. Only use the last specified. [from zafer]
Use one variable instead of 3 flags to hold the scale, so that we don't have
to reset each flag.
2006-08-21 19:05:14 +00:00
christos e6c35f2090 2 fixes from Elad:
1. fix the symlink issue mentioned in:
   http://marc.theaimsgroup.com/?l=openbsd-tech&m=115513754417683&w=2
2. handle socket(2) versioning.
2006-08-21 01:35:11 +00:00
jnemeth a0cb2a839d don't include program name when calling err() 2006-08-17 10:03:53 +00:00
jschauma d59f01f8fb initialize dne variable in the beginning, then move the resetting of
this variable down into the second (ie post-order) pass to make cp
pass all regression tests again.
2006-08-15 23:03:51 +00:00
tron af4d285682 Avoid errors like "cp: /foo/bar/directory" exists if cp(1) is used to
copy multiple directories and the first one doesn't exist in the
target directiry but another one (e.g. the second) does.
2006-08-15 13:06:02 +00:00
tls 1775a62964 Fix sentence fragment that somehow got into the long comment about rm -P. 2006-08-14 20:38:13 +00:00
christos 8c4dec8fa5 don't call get/set progname when we are a shell built-in. 2006-08-04 19:07:55 +00:00
christos c338573fdf use getprogname() instead of argv[0], because some programs that execv, pass
the full path in argv[0] instead of just the basename. In reality, those
programs should be fixed (hello gdb for example).
2006-08-04 14:38:58 +00:00
christos 8a487b533d PR/34055: Kevin Massey: Date uses a fixed 1K buffer for strftime
but does not check when strftime fails because the buffer is too small.
Our implementation of strftime does not NUL terminat the buffer
on failure (it does not have to; the results are undefined), so
garbage gets printed. Use a dynamically allocated buffer instead.
2006-07-23 20:39:10 +00:00
jschauma 471c8a8e68 return functionality backed out yesterday after fixing the bug I had
introduced before.  A regression test will be added to src/regress
shortly.
2006-07-16 16:22:24 +00:00
jschauma d8c803bc48 The last commit introduced a bug. Revert until that's found and fixed. 2006-07-15 20:42:55 +00:00
jschauma 2b5fd7fd97 As suggested on tech-userlevel:
"-R" claims:
 -R	[...] Created directories have the same mode as the corre-
	sponding source directory, unmodified
	by the process' umask.

Make this actually true.

In addition, make '-P' (no symbolic links are followed) apply even if
'-R' is not specified.  This allows users to overwrite symbolic links
with files and/or to copy symbolic links over a file without indirecting
through the link (ie a copy of a link turns the target into a link, not
a copy of the file pointed to by the source).
2006-07-15 02:09:47 +00:00
mrg 334f3f5949 apply a little -O0 with GCC4 and vax... 2006-07-01 05:54:35 +00:00
christos 67a8ed80ce PR/33834: Bucky Katz: Crossbuild on FC5:sort doesn't handle '+' field
specifications
2006-06-27 12:27:27 +00:00
christos a8b3562160 PR/33775: YAMAMOTO Takashi: /bin/sh doesn't accept "(" before case patterns 2006-06-20 15:57:44 +00:00
ginsbach 84b3179a34 Adapt date(1), the netsettime function, to new return value from socket(2)
when the address family is unsupported.
2006-06-14 16:35:16 +00:00
christos 460f8d8a0c PR/33699: Kevin Massey: use strlcpy to prevent stack overflows. 2006-06-11 16:15:20 +00:00
dsl 0e765f005a When expanding "$@" add a \0 byte after the last argument (as well as all
the earlier ones) so that a separator is added before it when it is empty.
This wasn't needed before a recent change that chenged the behaviour of
trailing whitespace IFS characters.
Fixed PR/33472
2006-05-20 13:57:27 +00:00
christos 62faec262e Don't free random memory; thanks gcc-4. 2006-05-14 01:09:03 +00:00
christos a7679aa75e Fix two uninitialized variables with XXX: GCC. 2006-05-14 01:05:42 +00:00
christos c5d3cabfdd Coverity CID 3365: Fix inverted logic! 2006-05-13 21:58:51 +00:00
christos f88f667da4 Coverity CID 3367, 3368: Avoid NULL deref. 2006-05-13 21:54:13 +00:00
christos 4f633ea02a Coverity CID 3368: Fix memory leak. 2006-05-13 21:48:00 +00:00
christos 16464dcda5 Coverity CID 3369: Fix memory leak. 2006-05-13 21:42:45 +00:00
christos 2701e5b9be Coverity CID 3330: Initialize uninitialized variable. 2006-05-13 21:22:32 +00:00
christos 78b76e5792 Coverity CID 3331: Remove impossible test. 2006-05-13 21:18:57 +00:00
christos e80f354dab Coverity CID 3384: Don't close -1. 2006-05-13 19:47:22 +00:00
mrg aadd7d4847 sprinkle some -fno-strict-aliasing and -Wno-pointer-sign with GCC4. 2006-05-11 23:16:28 +00:00
mrg 084c052803 quell GCC 4.1 uninitialised variable warnings.
XXX: we should audit the tree for which old ones are no longer needed
after getting the older compilers out of the tree..
2006-05-10 21:53:14 +00:00
mrg 4d375f236f rename exp2() to csh_exp2(). (bah, we don't even have an exp2()) 2006-05-10 21:14:48 +00:00
simonb 15dc85722d Make the change for bin/31548 to set $PWD on shell startup non-fatal if
the current directory doesn't exist.
2006-05-04 11:16:53 +00:00
christos ec2162bd79 Avoid double free. 2006-04-27 13:25:21 +00:00
christos 6ce96df0b7 Coverity CID 2993: Fix memory leak. 2006-04-24 20:00:31 +00:00
christos 8a8f572953 Coverity CID 2994: Don't leak memory in the perm case. 2006-04-24 19:58:20 +00:00
christos f2ec0dc9a2 Coverity CID 2995: Fix memory leak. 2006-04-24 19:53:08 +00:00
snj a640fe8c43 It's "its." 2006-04-24 19:00:29 +00:00
snj bf5ceaae16 It's "its." 2006-04-24 18:00:53 +00:00
christos da09d1a838 PR/33281: Martin J. Laubach: Prevent core-dump on "echo abc | { }". bash
prints and error and ksh prints nothing. We go the ksh way.
2006-04-18 14:44:05 +00:00
christos c5d25686e0 PR/22995: Sergey Svishchev: If we are cd'ing around and we have directories
with relative paths, convert the directories to absolute paths, so that
restoring timestamps does not fail.
2006-04-16 16:20:21 +00:00
provos 9244f58a4e translate sendmsg so that tools like nslookup will show remote addresses;
i waited for three years and nobody did this; had to do it myself :-(
2006-04-16 05:19:02 +00:00
provos fed8136a4e add new system calls (__lstat30 and __stat30) that should have been added
for argument translation in Systrace
2006-04-15 20:35:24 +00:00
christos 6236eeb27a Don't free str; it is used in pat_add. Noted by: Kouichirou Hiratsuka 2006-04-14 16:57:01 +00:00
wiz 3598f93379 Fix date (no leading zero), fix xref: sticky(7) not (8). 2006-04-08 22:39:39 +00:00
jschauma b338995776 Address PR 30374 as suggested in there:
"Modify the man page to match the behaviour of "ls -q",

(done by yamt@ previously)

...
modify both the behaviour and documentation for "ls -b" and "ls -B" to
make spaces readily apparent.  This could be done by adding VIS_WHITE
to the flags passed to strvis(3) in the safe_print() function in
src/bin/ls/util.c."

'ls -b' now yields foo\sbar (whitespace) foo\tbar (tab) foo\rbar (CR).
'ls -B' now yields foo\040bar foo\011bar foo\015bar.
2006-04-08 22:28:06 +00:00
yamt 3dc055fb76 s/non-graphic/non-printable/ to match with the code. 2006-04-08 12:04:22 +00:00
christos 0346684a3d save the home directory. 2006-04-05 23:10:16 +00:00
christos 868accdb18 Coverity CID 1836: Free Source after return from shell. 2006-04-01 23:39:58 +00:00
christos c28f114217 Coverity CID 1844: Add annotations for aresize. 2006-04-01 23:36:28 +00:00
christos 0ad4767103 Coverity CID 1829: Fix memory leak. 2006-04-01 23:34:43 +00:00
christos c4378122a1 Don't leak memory if RJUST|LJUST is specified. This might fix a whole bunch
of Coverity issues, but we'll wait until the next run :-)
2006-03-29 15:51:00 +00:00
christos dcbe086f64 correct coverity model. 2006-03-26 21:36:13 +00:00
christos 7e2f55514f Coverity CID 1755: Add fts_close() in traverse. 2006-03-22 16:20:34 +00:00
christos 6365ef6a81 Change previous to assert that the index is within bounds only when the
index actually used.
2006-03-22 16:12:19 +00:00
christos 4bd79d53a1 Oops, the previous change was not entirely correct since we were checking
the wrong byte.
2006-03-22 01:45:08 +00:00
christos 80f67fa272 Coverity CID 879: Don't increment bits before checking it for NULL. 2006-03-21 23:50:09 +00:00
christos 3351d69442 Add coverity model annotations 2006-03-21 23:40:49 +00:00
christos 0c6d11b6a4 Coverity CID 2736: Remove 16 bit int compat code. 2006-03-21 16:46:44 +00:00
christos eab2cd7c2b Coverity CID 1827: Plug memory leak. 2006-03-20 20:20:07 +00:00
christos 85e611dd01 Goodbye KerberosIV 2006-03-20 04:03:10 +00:00
christos 59586f9983 Coverity CID 1606: Plug memory leak. 2006-03-19 19:12:23 +00:00
christos a8846ec5ac Coverity CID 2734, 2731: Use after free; resource leak 2006-03-19 19:06:39 +00:00
christos bb7bab2df4 Coverity CID 877: Prevent NULL deref. 2006-03-18 07:24:40 +00:00
christos c8a3069e94 Coverity CID 1484: Static buffer overrun. 2006-03-18 07:23:07 +00:00
christos 3cf8c179a3 Coverity CID 1763: Plug memory leak. 2006-03-18 07:09:08 +00:00
christos e889898c95 Coverity CID 1766: Plug memory leak. 2006-03-18 07:02:16 +00:00
christos f3ffb9c969 Coverity CID 1760: Plug memory leak. 2006-03-18 06:54:46 +00:00
christos 4d7c6251da Coverity CID 1228: protect against calling close with negative value. 2006-03-18 06:29:21 +00:00
christos dcfc467f4d Coverity CID 872: Possible NULL deref. 2006-03-18 06:24:26 +00:00
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