Commit Graph

618 Commits

Author SHA1 Message Date
scottr c23158c00e - Open device with O_WRONLY only if the command actually writes to the
device, otherwise O_RDONLY.  Thanks to Hitoshi Osada for noticing this.
  Closes PRs 2202 and 2249.
- Style police.
1996-03-28 07:10:05 +00:00
mrg 7f64ea0365 impliment -z (gzip) in pax and tar, and -Z (compress) in tar. 1996-03-26 23:54:13 +00:00
jtc 5f1b7809e2 fix damage caused by sccs (long ago) 1996-03-21 01:36:28 +00:00
phil 3e4d50990e a a => a (close pr 2204). 1996-03-12 04:32:37 +00:00
pk 0b9acf16f8 Return zero status if `else' clause is empty. 1996-03-06 14:49:29 +00:00
scottr 3a2ca195af Picked up a little lint in the dryer. 1996-03-06 06:34:20 +00:00
scottr 64e4898415 Since we're setuid, let's be paranoid. 1996-03-06 06:22:04 +00:00
scottr 291f29d7f4 Forgot this bit, somehow. 1996-03-06 04:52:37 +00:00
christos b09ffc42b1 - parser.c: Fix prompting in old style backquote expansion. Fixes PR/2139
and many user complaints why the shell hangs in echo "`"
- eval.c:   Fix exitstatus invalid resetting in `if' statements were:
		if (exit 3); then
			echo foo $?
		else
			echo bar $?
		fi
	    printed 'bar 0' instead of bar 3
1996-03-05 21:03:52 +00:00
scottr 41c2cff5ab Add remote tape capabilities. 1996-03-05 20:39:32 +00:00
jtc 16f5230c39 Changed so that cd builtin doesn't do wierd stuff when cd'ing through
symlinks.  From Chris Demetriou <cgd@NetBSD.ORG>.  Fixes PR #1776.

Changed so that INTOFF/INTON are paired in getpwd().  From Matthias
Pfaller <leo@marco.de>.  Fixes PR #2130.
1996-03-01 01:58:58 +00:00
jtc 6ea95846cb add const qualifier to args and clist tables 1996-03-01 01:18:58 +00:00
jtc dba6c61918 Re-do change to use const qualifer with conversion tables.
Fixed bug where pre-computed upper/lower case conversion tables were
used.  This won't work if user selected a different locale.
1996-02-20 19:29:01 +00:00
cgd 6e72825941 Previous change (Use const qualifier with conversion tables) is broken.
(1) It won't compile, and (2) there's code in dd.c which actually
does modify (some, all, used?) conversion tables, so they can't _all_ be
const (if any can).
1996-02-20 18:54:01 +00:00
jtc a162c334b1 Use const qualifier with conversion tables 1996-02-19 23:12:55 +00:00
mycroft b5b9e1d0fa Fix problems with the way init.o is built:
* Prevent gratuitous rebuilds when nothing has changed.
* Make sure it's rebuilt if a .h file is updated.
From Mike Long, PR 1454.
1996-02-18 12:29:18 +00:00
jtc 645e4d83ee Changed so that COLUMNS environment variable will override the value
obtained via the TIOCGWINSIZ ioctl.  This is required by POSIX.2, see
section 4.39.5.3.
1996-02-14 05:58:53 +00:00
christos d3aec2060d Fix PR/2070: Ksh style variable modifiers were broken in /bin/sh, from
enami tsugutomo
1996-02-12 15:11:41 +00:00
christos a8a54fa636 fix bug where
child% suspend
parent% bg
parent% fg
Fg would not work anymore, it would say Suspended (tty input).
1996-02-09 02:28:29 +00:00
jtc 429c5e2f3b Rename struct timespec fields to conform to POSIX.1b 1996-02-01 00:02:24 +00:00
pk 3c7b56e9b2 Note compatibility `-h' op. (from Rob Windsor; PR#1740) 1996-01-05 12:39:30 +00:00
jtc 9a3ca97f12 ENVIRONMENTAL -> ENVIRONMENT 1995-12-05 02:41:35 +00:00
jtc 3ae562ed82 merge in changes from 1.1 release branch 1995-11-28 05:12:44 +00:00
christos ff008dabf6 Fix PR/1760, where 'cd -' before any other command could cause a reference
to an uninitialized pointer. Use getcwd() to get the current working directory,
instead of forking /bin/pwd [per Scott's suggestion]
1995-11-19 23:27:37 +00:00
jtc 41e21e1634 LIBMATH -> LIBM (PR# 1688) 1995-10-26 00:48:59 +00:00
christos c22dddc4e0 Parallel make fixes. 1995-10-22 00:15:02 +00:00
christos 893ade3fac - fix PR1620, -DNO_HISTORY did not work.
- restore parsing state after parsing old style command substitution.
  The ';' in '`echo z;`' broke the following:
	for i in 1; do
		cat > /dev/tty << __EOF__
		`echo z;`
		__EOF__
	done

cVS: Enter Log.  Lines beginning with `CVS: ' are removed automatically
1995-10-19 04:14:37 +00:00
gwr f8791fb073 Add -DNO_CONV to make this smaller in my ramdisk. 1995-10-08 23:01:22 +00:00
christos 92380da725 fixed previous booboo that broke command line editing input. 1995-10-06 21:38:18 +00:00
cgd db6548cd7b correct the sizes specified for various variables. 1995-09-29 21:58:59 +00:00
cgd 9b497abb6f add code to convert from INT32 and UINT32 to native types. 1995-09-29 21:58:12 +00:00
cgd ca9f3b6e66 add INT32 and UINT32 variable type specifiers. some of the variables
that are printed are of fixed size.
1995-09-29 21:57:03 +00:00
tls 546f6b1705 Sync with 4.4BSD-Lite2 1995-09-28 07:18:20 +00:00
cgd fe622df251 kill an extr space in a (literally-printed) example 1995-09-27 05:38:55 +00:00
jtc 0ab192c94c Update lseek() constants:
L_SET	-> SEEK_SET
	L_INCR	-> SEEK_CUR
	L_XTND	-> SEEK_END
1995-09-27 00:38:38 +00:00
christos c1b02d9bff - Fix -v flag, so that it works properly when the shell reads from scripts.
- Bad style to fix my own PR, but I'd like to commit the parallel make
  changes soon, and this is a necessary prerequisite.
1995-09-26 13:25:19 +00:00
jtc 422216beb9 Uncomment text that describes that a vertical bar is printed after each
pathname that is a FIFO when the -F option is used.
1995-09-26 05:04:45 +00:00
jtc d4fe82df8d Handle %q format directive; from Mike Long (PR #1454). 1995-09-14 16:19:06 +00:00
christos f9382bca1a Fix return builtin to work like it does in ksh:
When not in a function, it skips the rest of the current input file.
Instances of `return' outside function definitions were previously ignored.
What does joe posix have to say about this?
[fixes PR/1444]
1995-09-11 17:05:41 +00:00
jtc c2f3dc5291 Sync with 4.4lite2 1995-09-07 06:57:11 +00:00
jtc d943cdadce Sync with 4.4lite2 1995-09-07 06:42:58 +00:00
jtc f859c958ca Sync with 4.4lite2 1995-09-07 06:28:39 +00:00
jtc 5fc5415e25 Sync with 4.4lite2 1995-09-07 06:12:53 +00:00
pk 6c1353c677 Sync exit codes with man page (from Scott Burns). 1995-08-27 18:31:20 +00:00
jtc a13d94f0b7 Change default magtape from /dev/rmt12 to /dev/rst0; PR #1399 1995-08-22 19:36:00 +00:00
pk e42c9afe2e .DV => .Dv (from Mark Weaver, PR#1370). 1995-08-18 10:32:03 +00:00
cgd 81a152541e Kenneth Stailey pointed out that his previous fix was incorrect. RE and SL
should be bounded at 127, not 99.
1995-08-15 14:00:59 +00:00
cgd 731f8de0fa as suggested in PR 1347, by Kenneth Stailey, make "RE" and "SL" fields
show up as two digits, max, displaying "99" if > 99.  allow any field with
an unsigned value to be specified as printing that way (though right now
it's only used for RE and SL, which are both unsigned longs).  This fix
is substantially different than that suggested in the PR.
1995-08-14 05:00:03 +00:00
jtc 40b67f2121 lose unused variable; PR #1297 1995-08-11 00:38:15 +00:00
jtc bdf0a24b3d Don't remove the destination file if there is a write error. This is
very bad if it is actually a device or fifo.  POSIX.2 requires that a
diagnostic message be written, the file descriptor be closed, and for
cp to continue on with the rest of the files.
1995-08-02 07:17:02 +00:00
jtc 23e6aab105 Use "utility" instead of "command". Modern definitions of these terms
are distinct (See POSIX.2 glossary).

A utility is a executable, script or shell builtin; while a command
can be any of those things plus lists, pipelines, compound commands
(if, for, while) and shell function definitions.
1995-07-25 19:36:36 +00:00
jtc 1c13dcfdd8 s/HISTORY/STANDARDS/; noted by Masanobu Saitoh in PR#1269 1995-07-25 18:34:15 +00:00
christos 782cb68126 Fix bin/1240, from Dennis Ferguson. the exit builtin with no arguments
should return the exitcode of the previous command but it always returned 0.
1995-07-20 15:04:16 +00:00
pk edae5ead03 Relocate pointers after re-allocation of the job table. 1995-07-04 16:26:45 +00:00
mycroft 33b2edf3a9 Style and format police. 1995-06-25 21:59:21 +00:00
mycroft 26fcf513d2 Don't complain if a directory already exists. From Greg Hudson, but
slightly edited.
1995-06-25 21:44:34 +00:00
cgd 3d113b326b don't assume f_fstypename is larger than MFSNAMELEN or is nul-terminated 1995-06-18 10:58:06 +00:00
jtc 88fc62fe16 Changed type of rlimit values from quad_t to rlim_t. Cast rlim_t's to
quad_t's and use "%qd" in printf.
Eliminated unneccessary conditional.
1995-06-12 19:44:16 +00:00
mycroft 332b7d5213 Add a DPADD. 1995-06-10 20:19:40 +00:00
christos a45947b2a4 Changed so that 'PATH=newpath command' works, instead of looking at the
old path. Synced input.c with vangogh.
1995-06-09 01:53:44 +00:00
cgd 8936958f57 typeof(timeval.ts_sec) != time_t 1995-06-07 16:29:30 +00:00
cgd dcb82cbdbc needs string.h 1995-06-07 16:28:03 +00:00
christos 9d255ec409 Ignore result of sigaction when setting traps. Traps will succeed even
on SIGKILL or SIGSTOP. This is what other bourne shells do. (suggested
by mycroft)
1995-06-07 04:16:57 +00:00
christos b842cc2784 Avoid trapping SIGKILL. Pretend that we did, so that we will not keep
failing trying to trap it later. This is what the other bourne shells do.
1995-06-05 14:24:33 +00:00
mycroft c7ad9c47f1 Fill in sin_len. 1995-06-03 22:24:45 +00:00
ragge 2c26a4db6f Removed some (unworking) #ifdef vax. 1995-06-01 16:25:04 +00:00
christos 58e18fc330 Fixed bug where
$ cat foo
echo $FOO

$ FOO=1 . ./foo
$ echo $FOO

Did not echo 1 at all. Now variable assignments before sourced scripts
are honored during and after the execution of the script.
1995-05-28 18:09:48 +00:00
mycroft d91f14cba8 If there is another field after the command, fill in the command field with
blanks.
1995-05-25 04:13:17 +00:00
mycroft 02513843ae Simplify this just a little. 1995-05-25 03:14:37 +00:00
christos ec16f0d3d8 Fixed bug where 'which /bin/csh' reports .//bin/csh, by copying the
current tcsh code.
1995-05-23 19:47:16 +00:00
mycroft 8465d5c10c Split out some helper functions again. 1995-05-21 13:38:25 +00:00
christos 4fb6f609aa Changed so that syntax errors (EXERROR) set the exit status to 2,
and commands that are not found set the exit status to 1 like all
other bourne shells.
[It used to be 0 and 2 respectively]
1995-05-19 15:08:55 +00:00
mycroft 3541700d61 Create and strvis(3) the argument and environment lists only as needed.
Do not keep extra copies around.
1995-05-18 20:33:20 +00:00
mycroft 3cd42e791d Do the right thing for an empty environment. 1995-05-18 15:35:59 +00:00
mycroft 3a23f31a10 Avoid an extra (gratuitous) pass through strvis(3). 1995-05-18 15:27:31 +00:00
mycroft d70850c69c Gather the argument and environment lists when we actually want to print them. 1995-05-18 14:37:03 +00:00
christos 56a08eccca Fixed bug where ${#} was interpreted incorrectly as ${#var} and thus
misparsed. Keith Bostic reported it.
1995-05-17 00:05:25 +00:00
cgd b5f33fc18e re-add an #endif that was (apprently) clobbered. 1995-05-15 03:29:54 +00:00
christos fbac2e9de2 Fixed new bug the previous fix introduced:
false
    foo=bar
    echo $?

would print 1
Also fixed the long standing bug:

    false
    echo `echo $?`

would print 0
The exitstatus needs rethinking and rewriting. The trial and error method
is not very efficient
1995-05-15 02:47:38 +00:00
christos 2e1970487e Fixed bug caused by previous x=`false` not preserving the exit status fix.
The if statement exit status broke...
1995-05-14 04:19:18 +00:00
christos 07bae7eddd Merge in my changes from vangogh, and fix the x=`false`; echo $? == 0
bug.
1995-05-11 21:28:33 +00:00
cgd fe9be699b4 add a 'holdcnt' keyword and document it. 1995-05-08 23:11:31 +00:00
cgd 630b3b093b add the ability to understand and print INT and UINT-sized variables. 1995-05-08 22:39:24 +00:00
pk e9b36a55e7 Sync process flags with sys/proc.h 1995-05-07 12:51:25 +00:00
mycroft 556d212c3d Use POSIX signal semantics. Change p_pid and p_jobid to pid_t's. 1995-04-29 23:21:28 +00:00
jtc 528957a005 Winning Strategies has placed this code into the Public Domain 1995-04-28 23:19:22 +00:00
cgd d7290b7687 clean up RCS Ids slightly, etc. 1995-04-23 10:07:18 +00:00
christos dae6c6b963 Added missing resource limits and recognize "unlimited" as RLIM_INFINITY 1995-04-11 03:17:45 +00:00
mycroft 50130476f4 Fix typo in S_FIFO case when copying recursively. 1995-04-02 01:45:25 +00:00
christos df504509f1 1. Don't core dump on 'fc -l' (From Gerard J van der Grinten)
2. PATH=xxx ls, does the PATH assignment first and then tries to find ls in xxx
3. VAR=xxx exec ls, does the variable assignment.
1995-03-31 21:58:09 +00:00
christos 6ee2193d9a Reverted to set - turning off -x and -v. Charles corrected me... It is part
of POSIX.
1995-03-26 17:25:10 +00:00
christos ad1f891148 set -
does not anymore clear the -x and -v flags. This was incompatible with
all other bourne shell implementations.
1995-03-25 23:45:24 +00:00
mycroft ca80d8a15f Rearrange Kerberos stuff. 1995-03-23 08:46:35 +00:00
mycroft 6bfd77e432 Fix typo in previous. 1995-03-23 00:01:03 +00:00
mycroft 7b38403c89 Use POSIX signals. 1995-03-21 18:35:32 +00:00
mycroft 3e417cced4 Use sigprocmask(), not sigsetmask(). 1995-03-21 15:40:16 +00:00
mycroft c39128a12d Remove dead externs. 1995-03-21 14:51:58 +00:00
mycroft ffe9a4ccf0 Update to use timer{add,sub}(). 1995-03-21 13:55:23 +00:00
cgd 49f0ad8601 convert to new RCS id conventions. 1995-03-21 09:01:59 +00:00
cgd 6ff461a4e8 actually do the import. rcp appears to have been previously imported
but not merged(?!?!?).
1995-03-21 08:18:58 +00:00
cgd e150dc2818 clean up slightly; id tags, alphabetization, prototypes, etc. 1995-03-21 07:28:51 +00:00
cgd 930fffb85d clean up id tags 1995-03-21 07:08:15 +00:00
cgd a86f3aeda3 clean up Id's, and such. reorganize man page slight to match lite's org. 1995-03-21 07:03:50 +00:00
cgd df247e9b94 merge with lite 1995-03-21 06:57:43 +00:00
cgd 7248fa283f clean up id tags, etc. 1995-03-21 02:08:51 +00:00
jtc da08b16c49 Changed to accept ``kill -0 pid'' (PR #842). 1995-03-17 05:48:48 +00:00
jtc 6c6b9acef0 Revert to code before it was merged with 4.4lite.
Updated to conform to new NetBSD RCS ID conventions.
1995-03-01 07:52:23 +00:00
mycroft 4c34be6b52 Clean up deleted files. 1995-03-01 00:00:00 +00:00
christos 5c42185b5c Oops... typo in the IFS previous fix. 1995-02-28 23:27:24 +00:00
christos 6ab1954578 Changed so that backquote expansion eats all trailing newlines, not just
the last one.
Reported by guido@gvr.win.tue.nl (Guido van Rooij).
Repeat By:

	echo "`cat file-with-many-newlines`"
1995-02-28 23:09:43 +00:00
christos 3936aab031 Changed IFS string-splitting so that it breaks spaces even when IFS does not
begin with a space, but contains one. Fixes PR bin/809.

        #!/bin/sh
        list="a  b c "
        echo "With ordinary IFS"
        for i in $list;do
            echo $i
        done
        IFS=":${IFS}"
        echo "With changed IFS"
        for i in $list;do
            echo $i
        done

Note that before the fix ":${IFS}" behaved differently than "${IFS}:".
1995-02-28 22:46:12 +00:00
mycroft 705a6ebacb Use S_IS*(). 1995-01-30 19:39:36 +00:00
mycroft f5ad44b6ac Use S_IS*(). 1995-01-30 19:30:13 +00:00
mycroft cfbbe9b764 Document the `-t' option as in umount(8). 1995-01-30 18:14:55 +00:00
mycroft c3b978fa44 Various:
* Redo `-t' handling like mount(8) and umount(8).
* Don't force a stat of every fs unless we need it.
* When using an explicit list, stat everything before printing anything, and
minimize the column width.
1995-01-30 18:10:51 +00:00
mycroft 89fb48a178 Fix core dump reported by Wolfram Schneider. 1995-01-26 06:01:36 +00:00
hpeyerl b4c2155aa1 ECBDIC->EBCDIC 1995-01-23 18:21:48 +00:00
christos ad8d5369f5 I added the documented in the manual but not implemented variable expansions:
${#WORD}
    ${WORD%PAT}
    ${WORD%%PAT}
    ${WORD#PAT}
    ${WORD##PAT}
1995-01-23 06:33:03 +00:00
mycroft 4d643bf207 Remove `.' from default PATH. 1995-01-20 18:21:16 +00:00
mycroft c4459d08d9 Clean up deleted files. 1995-01-15 10:15:19 +00:00
mycroft 2425ddde47 Remove the gratuitous `security' warnings. 1995-01-15 09:47:36 +00:00
mycroft 4bcd14e0b4 Remove the gratuitous `security' warning. 1995-01-15 09:29:16 +00:00
mycroft 9154deaefa Stay on the correct line at the end of a substitute command. From Andrew Moore. 1995-01-15 06:18:29 +00:00
mycroft 71dcdbe0d4 Change directory permissions in pre-order. 1995-01-15 05:50:26 +00:00
mycroft 720e729421 Add `-t' option from Matthew Green, hacked a bit by me. 1995-01-13 23:23:41 +00:00
jtc cc9fe5ba6d Describe the : shell builtin.
Fixes PR #712.
1995-01-12 23:35:56 +00:00
mycroft ddc6e993fc Better fix for the previous. 1995-01-08 07:01:36 +00:00
mycroft 3f1b5c3296 Fix oversight in previous change, when argument list is sort of empty. 1995-01-08 06:42:42 +00:00
mycroft e848bd4fb5 Fix that last bug in a less expensive way. 1994-12-31 23:56:54 +00:00
cgd 809218efc4 take two: make grabstackstr() work correctly, in the face of strange filling. 1994-12-31 01:56:16 +00:00
mycroft 1c21834ccb Remove previous misguided change. 1994-12-30 06:33:59 +00:00
mycroft 0155aa3b5e Mostly sync with CSRG. 1994-12-28 01:37:49 +00:00
mycroft d966913f57 Sync with CSRG. 1994-12-27 23:14:46 +00:00
cgd 58f1733118 be more careful with casts. 1994-12-23 13:24:39 +00:00
cgd 42f0dae5e3 pull prototypes into scope for string functions. 1994-12-23 13:24:10 +00:00
cgd 17ed2a67b2 pull some prototypes into scope. 1994-12-23 13:22:13 +00:00
cgd e9aebcc9d8 don't play fast and loose with memory block allcation. try to allocate
in more-round sizes, but realize that not everybody will fill them up
exactly.
1994-12-23 13:21:01 +00:00
cgd db1ae625b5 eliminate two wrong-sized variables which were unused. 1994-12-23 13:20:10 +00:00
cgd 6abb26e555 be careful with addresses. 1994-12-23 13:19:41 +00:00
cgd f04c743d2d be careful with pointer types. 1994-12-23 13:18:20 +00:00
cgd b32916a5d5 new way of specifying man pages. 1994-12-22 09:23:05 +00:00
cgd 7e7441ee3e add USD.doc to subdir list on install 1994-12-18 11:42:39 +00:00
cgd 73cf954189 adjust; from jimj. 1994-12-06 19:13:02 +00:00
cgd 4ce0d34a31 clean up further. more patches from Jim Jegers 1994-12-05 19:07:32 +00:00
cgd 5dad143982 from James Jegers <jimj@miller.cs.uwm.edu>: quiet -Wall, and squelch
some of the worst style errors.
1994-12-04 07:11:37 +00:00
mycroft a99fc6c377 Format police. 1994-11-25 08:05:55 +00:00
deraadt a583ccb069 print %MEM correctly 1994-11-25 07:01:11 +00:00
jtc 6cd3ad1d11 ulimit builtin (PR #388)
This public domain code, originally by Doug Gwyn, Doug Kingston, Eric
Gisin, and Michael Rendell was ripped from pdksh 5.0.8 and hacked for
use with ash.
1994-11-04 17:13:27 +00:00
cgd 6d9009aacb bugs don't get any dumber than this. 1994-11-04 09:59:07 +00:00
deraadt 8f25fc60d3 kill UPAGES 1994-11-03 04:33:17 +00:00