christos
ccce082dd2
Fix miscellaneous getopts problems:
...
- the 3 argument version of getopts would not reset properly
- OPTARG did not get cleared after a non argument option was found
- OPTIND was not set properly after a non argument option.
1996-11-06 01:17:10 +00:00
christos
846dce0ee3
Fix problems that gcc -Wall found (from Todd Miller, OpenBSD)
1996-11-02 18:26:03 +00:00
christos
a4ad4c0efc
A correction to the previous patch from Todd Miller.
1996-11-02 18:07:08 +00:00
christos
27e15e5bbc
echo ${1:-empty} did not do the substitution; from Todd Miller (OpenBSD)
1996-11-02 17:47:41 +00:00
christos
8af8970502
Quote all imported environment variables, so that we don't core dump with
...
set term='unknown*'
./csh
or we don't have security problems with:
set path=('`/bin/rm -fr *`' /usr/local)
./csh
Reported by Donn Seeley...
1996-10-31 23:50:53 +00:00
cgd
8ba64baaaf
add builtins.h to the list of (built) headers depended on by ${OBJS}, so
...
make from 'cleandir' works.
1996-10-22 13:22:19 +00:00
abrown
e613224229
Remove leftover printf("here") from last change.
1996-10-19 02:38:36 +00:00
christos
bc73cf950a
PR/2808: Remove trailing whitespace (from FreeBSD)
1996-10-16 15:45:03 +00:00
christos
afb80e9b13
PR/2808: Add a definition for warnx() (from FreeBSD; currently unused)
1996-10-16 15:28:10 +00:00
christos
2b0a187f34
PR/2808: Use .Nm macro properly. (from FreeBSD)
1996-10-16 15:27:03 +00:00
christos
1a523dd56b
PR/2808: - Don't use p++ in macros.
...
- Hash using unsigned numbers.
(from FreeBSD)
1996-10-16 15:24:31 +00:00
christos
68b1dcea6d
PR/2808: Don't define DEBUG and #ifdef out functions not needed when DEBUG
...
is not defined (from FreeBSD).
1996-10-16 15:21:49 +00:00
christos
3b66e0cada
PR/2808: Add HISTORY section and documentation of getopts. (from FreeBSD)
1996-10-16 15:20:01 +00:00
christos
da8c1311a3
PR/2808: fix redirection to the same file descriptor
...
better error messages for failed pipes
(from FreeBSD)
1996-10-16 15:16:04 +00:00
christos
d8c242f0ae
PR/2808: - detect eof inside backquotes
...
- handle && and || shortcircuits properly
- tokens.def -> tokens.h
(from FreeBSD)
1996-10-16 14:53:23 +00:00
christos
10a76271de
No need to have 2 declarations for the same constant string, one for K&R and
...
one for STDC...
1996-10-16 14:51:24 +00:00
christos
fd8c99438e
PR/2808: POSIX 1003.2: first arg after -c cmd is $0, remainder $1...
...
(from FreeBSD)
1996-10-16 14:49:56 +00:00
christos
14185e5152
PR/2808: Kill use of error2() (from FreeBSD)
1996-10-16 14:49:03 +00:00
christos
71ab1d0aed
PR/2808: tokens.def -> tokens.h
1996-10-16 14:47:49 +00:00
christos
03ba3cf0d6
PR/2808: Use the <ctype.h> functions instead of our homegrown tables to
...
determine if a character is alpha or alphanumeric, so that NLS
works... now if only our NLS really worked... (from FreeBSD).
1996-10-16 14:46:35 +00:00
christos
f6c00506fc
PR/2808: Remove extraneous newline from error message (from FreeBSD)
1996-10-16 14:44:28 +00:00
christos
00a9e38ee8
PR/2808: #undef things that we #define to avoid duplicate definitions.
...
(from FreeBSD)
1996-10-16 14:43:37 +00:00
christos
a20d79429a
PR/2808: Don't include <sgtty.h> unless OLD_TTY_DRIVER is defined.
...
Remove extraneous newline from error messages.
1996-10-16 14:42:20 +00:00
christos
435812e77d
PR/2808: Remove extraneous newlines from error routines (from FreeBSD)
1996-10-16 14:40:32 +00:00
christos
4b99c4d748
PR/2808: Fix parsing of $n where n > 9 (from FreeBSD)
1996-10-16 14:38:58 +00:00
christos
2a9c11dd53
PR/287: Shell does not exit with 126/127 when permission denied/
...
command not found. Add extra exception type and generalize
error handling routines to take that exception type. Use
a global variable exerrno to keep the last exec error.
1996-10-16 14:35:42 +00:00
christos
886c875a97
PR/287: Exit with 127/126 when command is not found/permission denied.
...
PR/2808: don't bomb out on "set -e; false && true"
1996-10-16 14:31:57 +00:00
christos
dd6abbc5c3
PR/2808: Handle cd "". This is for systems where "" != "."
1996-10-16 14:29:42 +00:00
christos
aded8d4c14
PR/2808: tokens.def -> tokens.h
1996-10-16 14:24:56 +00:00
christos
3ec8ea2b0e
PR/2808: Depend and clean fixes from FreeBSD
1996-10-16 14:23:51 +00:00
jtc
56381415bc
Removed missing.c beacuse NetBSD is not missing any of the functions
...
that it provides.
1996-10-10 14:17:02 +00:00
jtc
87313b5b47
options.h is no longer used
1996-10-10 14:10:39 +00:00
jtc
6f57e37d56
sync with 5.2.11 (now define POSIXLY_CORRECT)
1996-10-09 15:31:59 +00:00
jtc
0de5aac478
import pdksh 5.2.11
1996-10-09 15:29:01 +00:00
jtc
dc22bec48e
autoconf biffed a test --- our stat macros do work
1996-10-09 15:16:44 +00:00
jtc
5a4124868a
import pdksh 5.2.9
1996-10-09 15:12:31 +00:00
ws
fddfc1d33f
Fix p_nice vs. NZERO code.
...
Remove some unnecessary casts.
Remove an unused time format field.
1996-10-02 18:07:20 +00:00
christos
0c75083000
- Use ../usr.bin/printf/printf.c
...
- Fix built-in which to set the status code correctly.
1996-09-30 20:03:52 +00:00
thorpej
83e59fbba8
Fix SEGV when kludging old-style options.
...
From Greg Stark <gsstark@mit.edu>, PR #2550 .
1996-09-27 02:59:53 +00:00
jtc
e1b2664cf1
import pdksh 5.2.8
1996-09-21 23:35:13 +00:00
thorpej
47f181309b
If getcwd() fails, dang it, I want to know _why_.
1996-09-18 22:47:48 +00:00
mycroft
c65b90450d
ioctl(TIOC[GS]PGRP) -> tc[gs]etpgrp()
1996-09-17 14:44:05 +00:00
christos
4d9c694460
Apply PR#2721 from VaX#n8: make man page more lucid in places.
1996-09-02 21:28:21 +00:00
christos
29cad877cd
Don't infinite loop with:
...
unset var
echo ${var:=}
1996-09-02 21:25:52 +00:00
explorer
b59a6a8b5f
return 0.0 cpu usage for zombies. closes pr bin/2693. Perhaps this should
...
be fixed in exit, so p->p_pctcpu is cleared when the process exits.
1996-08-15 01:41:23 +00:00
explorer
464f1bd5ff
Fix mkdir -p to not ignore terminal directory mode specified.
...
Closes pr bin/2686.
1996-08-12 22:44:53 +00:00
jtc
813b4a4fbb
converted to use -lrmt
1996-08-09 04:28:40 +00:00
jtc
33849ebec9
Add the asf command for absolute tape positioning.
...
Some cleanup of the remote tape interface, but a lot more is needed.
Ideally, we'd have a "rmt" library which provides a remote tape API
including open, read, write, close, and ioctl. This is useful not
only for mt, but also for programs like tar, cpio, pax, backup and
restore.
1996-08-08 09:16:06 +00:00
mrg
0b88073324
this program does not need to be setuid root.
1996-08-06 07:21:40 +00:00
explorer
e0b43395ad
include <pwd.h> for one function (user_from_uid) and correct one
...
%*d -> %*ld in a format string. (yes, trying to find the problem with
ps wwwwwwwww1 and core dump, and might as well clean up while here)
1996-07-13 06:58:33 +00:00
mycroft
00e5d89a69
Sort FTS_NS entries by name, just so the order is well-defined.
1996-07-09 09:16:29 +00:00
mycroft
524eb9810f
Stylistic change of no consequence.
1996-07-08 10:32:01 +00:00
mycroft
0dc5640b54
Compare nanosecond field in timestamps.
...
Always do name comparison if other sort field is equal.
1996-07-08 10:22:13 +00:00
mycroft
c603307d33
Partition FTS_NS entries from others, to avoid confusing qsort().
...
Don't bother to order the FTS_NS entries amongst themselves.
1996-07-08 10:20:16 +00:00
jtc
a29e2412d6
Fix formatting of description of @ command; From PR #2577
1996-06-30 23:16:32 +00:00
christos
beb57fb35d
- Add function callback capability when variables are set.
...
- Add setvarsafe that returns an error instead of longjmp() to the
error code.
1996-06-25 16:49:05 +00:00
christos
cc31700a92
- Add getoptsreset to be used as a callback function when OPTIND is set.
...
This is used to implement the POSIX behavior when OPTIND=1
- Call setvarsafe instead of setvar. If one ran
"getopts optstr badvariable"
where badvariable contained an illegal variable name, there was no way
to recover, since setvar() would longjmp on the error.
1996-06-25 16:47:43 +00:00
christos
02b3c16118
change sethistsize() to take the history size as an argument so it can
...
be used directly by the new variable callback functions.
1996-06-25 16:43:33 +00:00
christos
9a738ef22d
const poisoning.
1996-06-25 16:40:38 +00:00
christos
70ad20e9f1
Include header files to get function prototypes; don't use home grown ones.
1996-06-25 16:40:06 +00:00
christos
0bc88b2434
getopts fixes:
...
1. OPTIND value was not computed correctly when the argument was part of the
option string (i.e. for "l:" "-l 1" was working "-l1" was not). (PR/2505).
2. OPTARG was not being unset in case of errors [in the non POSIX error case].
3. optvar could be set to random values.
4. Option string starting with a : was not treated specially as POSIX
specifies (if the option string starts with a :, then there is no
error printed when there are missing option arguments or illegal options,
and OPTARG and optvar are being set specially).
5. Implemented getopts "opts" optvar [arg]. The optional argument case
was not implemented.
To do:
- what does Posix say about resetting the getopts state? Bash does it
by setting OPTIND=0; is that correct? Should we be doing the same thing?
- should we be using getopt(3) for everything internal to the shell? Is that
feasible because we might need to handle multiple invocations at once.
1996-06-04 21:00:09 +00:00
cgd
ad8b41fa2a
don't spew an error message if setlocale(LC_ALL, ""); fails. This is for
...
consistency with other programs, and because currently it can never
actually succeeed if LANG is set to something other than "C". Sent
in by me in PR 2486, approved by jtc).
1996-06-04 20:41:15 +00:00
christos
66824391d1
Fix PR/2504: return with no args returns 0 instead of the return value of
...
the previous command in functions
1996-06-03 12:21:17 +00:00
cgd
7514e04296
in findvar(), return after warning about unknown keyword so we don't
...
deref. a null pointer.
1996-05-30 21:16:32 +00:00
mrg
2aa93b359f
"SCSI tape" -> "SCSI", from is
1996-05-26 04:00:49 +00:00
mrg
5bdb157a47
add blocksize/density commands. other part of #921 (Olaf Seibert <rhialto@polder.ubc.kun.nl>)
1996-05-21 10:23:54 +00:00
mrg
d63f735104
add type 7 (scsi tape). part of pr#921 (Olaf Seibert <rhialto@polder.ubc.kun.nl>)
1996-05-21 10:09:10 +00:00
cgd
edc0ef345c
Fix growstackblock() 'newlen' calculations:
...
(1) it needs to be ALIGNed for both halves of the 'if,' and
(2) if you're going to claim that you now have ALIGN(newlen)
bytes left, you should have actually allocated
ALIGN(newlen), rather than just 'newlen' bytes.
1996-05-20 14:49:32 +00:00
jtc
26db98be19
Fixed typo in comment
1996-05-17 01:07:47 +00:00
christos
55a41e8abb
Close PR/2384 backquoted backslash-newline was not eaten.
1996-05-09 19:40:08 +00:00
jtc
4f6f2f00e0
Use const qualifier as appropriate
1996-05-07 18:20:05 +00:00
mycroft
f3a6e4ecb9
Remove comment regarding 4.4 symlink behaviour.
1996-04-25 15:44:56 +00:00
thorpej
22e88f769b
Oops, forgot to add "chio" to the subdirs list.
1996-04-23 17:26:32 +00:00
thorpej
b4ffe0bfe2
Utility to control media changers from the command line; corresponds
...
to new SCSI changer driver.
1996-04-03 00:34:38 +00:00
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