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
christos
a397ec1f77
warns=3
...
- remove param names from function decls
- sprinkle const
- rename shadowed variables
- XXX: there is a lot of fishy __UNCONST going on.
2005-06-26 19:09:00 +00:00
elad
03d49eb07f
From provos, via OpenBSD:
...
Prevent dereferencing possibly freed pointer.
2005-06-25 21:48:11 +00:00
elad
5cd24996d5
From marius@openbsd: (PR 3140)
...
If a string considered a filename is too long, don't exit but just let the
syscall fail, it might not actually be a filename.
2005-06-25 18:51:03 +00:00
elad
b53ff10682
From rohee@openbsd:
...
Use strlcpy() instead of snprintf() where possible.
2005-06-25 18:47:42 +00:00
elad
ddb0410ecc
From deraadt@openbsd:
...
Wrap bind() to AF_UNIX with umask() to avoid race.
2005-06-25 18:41:30 +00:00
christos
671011e703
Simplify and fix the case where we have both known and unknown flags.
2005-06-25 14:37:33 +00:00
elad
8b57c1a70c
Add translation for mmap()'s prot values.
2005-06-25 12:53:32 +00:00
elad
cc0def8774
Add translation for mprotect()'s prot values.
2005-06-25 12:22:43 +00:00
elad
4d20624823
Improve readability. Order syscalls, add numbers where possible.
2005-06-25 12:17:57 +00:00
christos
250ff65369
Const poisoning.
2005-06-24 23:21:09 +00:00
christos
b61c2197f1
Revert part of the previous commit. We cannot fix the problem by not waiting.
...
The problem is that the subshell code is not doing redirections properly.
2005-06-23 23:05:29 +00:00
christos
306d33d145
Don't wait for a background job in a subshell when we are set to EV_EXIT.
...
While I am here, call forkshell() explicitly FORK_FOO flags instead of
depending in FORK_FG == 0 and FORK_BG == 1.
2005-06-22 23:32:45 +00:00
hira
f999ca1abd
Sort options (description).
2005-06-17 14:40:47 +00:00
hira
a2ed3bbe80
- Add -h to usage.
...
- Use set/getprogname(3).
2005-06-17 14:36:16 +00:00
hira
dfa6df8e5a
- Whitespace nit.
...
- Wrap long line.
2005-06-17 14:27:18 +00:00
he
0a5aea28f2
Initialize ipid in two functions to NULL, to appease -Wuninitialized.
...
Marked with XXXGCC for dreamcast (found while compiling for it).
Reviewed (in slightly different form) by lukem.
2005-06-07 09:00:18 +00:00
he
1d55d88929
Appease -Wuninitialized by initializing val and uval to 0.
...
Marked with XXXGCC for hpcarm (found while building for it).
Reviewed (in a slightly different form) by lukem.
2005-06-07 08:53:13 +00:00
chs
7bbdd188e1
appease gcc -Wuninitialized on hp700.
2005-06-05 19:08:28 +00:00
hubertf
2d4e6a01c0
the case of waitpid() returning an error was already tested, and errno
...
printed for that case. the tests for the return code don't have errno
set, so don't try to print it.
By Liam J. Foy <liamfoy sepulcrum.org>, posted to tech-userlevel@.
2005-06-03 13:55:04 +00:00
lukem
5166671bc3
appease gcc -Wuninitialized
2005-06-01 15:41:19 +00:00
lukem
50cde64b47
Mark temp_path volatile so that it won't get clobbered after longjmp.
...
(Also appeases gcc -Wuninitialized.)
2005-06-01 15:38:32 +00:00
lukem
cfdf050ef3
appease gcc -Wuninitialized
2005-06-01 15:30:33 +00:00
lukem
aab85a0fd4
appease gcc -Wuninitialized
2005-06-01 15:25:51 +00:00
lukem
5760da6393
appease gcc -Wuninitialized
2005-06-01 15:12:18 +00:00
wiz
6599ec1bca
Bump date for -no-recursion.
2005-05-24 00:05:01 +00:00
wiz
24bf3d8ac3
Whitespace and punctuation fixes.
2005-05-24 00:03:52 +00:00
rillig
42627098be
Fixed wrong use of the <ctype.h> functions by adding (unsigned char) casts.
2005-05-23 08:03:25 +00:00
rillig
cb5d6856d5
Fixed another instance of isspace(char).
2005-05-23 08:01:17 +00:00
christos
4e0ae89b44
Don't even declare fdochroot() if we are in tool mode.
2005-05-22 17:41:50 +00:00
dsl
d85801918d
Set (and report) the new time (not the old one).
...
I broke it in rev 1.38, someone has finally noticed....
2005-05-15 18:39:39 +00:00
christos
a1484a9949
be more lenient on the comparison to argv[0] to determine our personality.
2005-05-15 02:04:30 +00:00
christos
398a081644
Allow writing symlinks that point outside our tree, but not traversing
...
them to write other files.
2005-05-14 18:49:51 +00:00
pooka
2cf84fc283
Clarify the description for -s to include a pointer to an explanation
...
on how BLOCKSIZE affects the parameter.
2005-05-11 09:10:49 +00:00
christos
c3b8cf7d21
Only add the function when we initialize. Restore the binding of tab to
...
ed-insert if tabcomplete is cleared.
2005-05-09 11:35:19 +00:00
christos
8dcba5679e
PR/30167: J.T. Conklin: NetBSD tar does not support GNU tar --no-recursion flag
2005-05-07 22:27:33 +00:00
dsl
82537bf8e8
If 'set -o tabcomplete' it set, then bind <tab> to the libedit filename
...
completion function.
Note that the libedit code will probably want fine-tuning!
While editing the man page, add a note that non-whitespace IFS chars are
terminators and can generate null arguments.
2005-05-07 19:52:17 +00:00
provos
d6497b197c
provide translation for fcntl cmd names; requested by Nicolai Johannes
2005-05-07 15:11:02 +00:00
jmc
6ae4f78197
Wrap call to fchroot in CONFIG tests so this doesn't blow up on cross-tools
2005-05-06 16:49:25 +00:00
christos
0a6f2d385f
PR/30132: Juan RP: tar --chroot refuses to extract files.
...
fchroot() changes the effective path, so we need to call updatepath().
2005-05-05 14:54:49 +00:00
christos
33cefcde7e
PR/29005: Jesse Off: nbpax requires sys/mtio.h which doesn't exist on Interix
...
I added an ifdef called HAVE_MTIO_H and fixed the code to use it. It is
always defined now, but you can change this for Interix.
2005-05-01 02:59:28 +00:00
christos
13d863367b
Pax longopts were not empty element terminated.
2005-04-24 03:39:26 +00:00
christos
14f615efd9
If we cannot resolve a path, that probably means that we have not created
...
directories for that path yet. So, do the check for each component recursively
and succeed if none of the components fall outside our current working
directory.
2005-04-24 03:36:54 +00:00
christos
bc5cd54e43
PR/20228: Simon Burge: pax has problems reading a particular cpio archive
...
The problem here is that the archive is too short (< 512 bytes). The
buffer routines, try to read at least 512 bytes, even when we try to determine
what format file we have, which is wrong.
2005-04-24 03:26:03 +00:00
christos
15ea30eb09
PR/18759: FUKAUMI Naoki: pax/tar dot-dot handling broken
...
PR/18840: Frederick Bruckman: Fix for PR/18663 incomplete pax symlink handling
This patch makes ``--insecure'' do something. Now if ``--insecure''
is not set (the default) we do a realpath(3) in all the pathnames
that we are trying to create and if either realpath fails, or the
path is outside our working directory, we print a warning and die.
This maybe too strict and might fail on valid archives that create
symlinks and directories in the wrong order.
2005-04-24 01:45:03 +00:00
christos
06a1f6e7f2
For clarity instead of using -1 and -2 use the negative of the archive type.
2005-04-24 01:24:57 +00:00
christos
71c0f67846
PR/20071: Perry Metzger: --extract handling is broken. This patch fixes
...
Perry's example.
2005-04-24 01:23:21 +00:00
wiz
50175a3a4d
From jmc@openbsd:
...
-c option take names as well as numerical ids. checked w/ sturm@
diff from ray.
2005-04-23 10:56:54 +00:00
rillig
57fc49ddbc
Fixed an off-by-one error with ASCII <-> EBCDIC conversion combined with
...
lcase/ucase. Approved by mrg.
2005-04-20 17:38:59 +00:00
rillig
4f6457e756
Fixed wrong use of the <ctype.h> functions by adding an explicit conversion
...
to unsigned char. Approved by christos.
2005-04-19 20:14:29 +00:00
dsl
a7151c0abc
Add a '-a' option to set the time using adjtime(2) instead of settimeofday(2).
...
Fix usage so that the options which apply to dat/time setting are on the
correct line.
2005-04-18 06:53:35 +00:00
dsl
3acd9704cb
A rather better fix for treating $((x)) as equivalent to $(($x)) provided
...
that $x has a numeric value - which is what posix/sus needs.
2005-03-21 22:37:09 +00:00
dsl
a65ddf9664
Back out previous, amongst other things it breaks $((0x10))
2005-03-21 20:10:29 +00:00
dsl
b747d738fa
Treat $((x)) as equivalent to $(($x)) - posix seems to require this now.
2005-03-20 21:39:11 +00:00
dsl
aecb1ce456
Add 'continue' as body of empty loop.
2005-03-20 21:38:17 +00:00
dsl
328c436518
Check quoting before merging ifs regions.
...
sh -c 'set -- a; x="b c"; set -- "$@"$x'
now correctly gives $1=ab, $2=c
2005-03-19 16:38:27 +00:00
dsl
2078d2c0ca
Don't merge ifs regions with different quoting requirements
2005-03-19 15:02:58 +00:00
dsl
4803d37f2b
Fix the way the 'read' builtin processes IFS. In particular:
...
- IFS whitespace is now processes correctly,
- Trailing non-whitespace IFS characters are added to the last variable
iff a subsequent variable would have been assigned a non-null string.
Now passes the 'read' tests in http://www.research.att.com/~gsf/public/ifs.sh
2005-03-19 14:22:50 +00:00
wiz
1a27add367
Use more macros (Sq/Dq).
2005-03-11 13:16:10 +00:00
ginsbach
0d1bfba8c7
Add mechanism for escaping IPv6 address strings, since they already
...
contain colons. Idea from Solaris rcp(1).
2005-03-11 02:55:23 +00:00
wiz
165812e4cb
Add -4 and -6 to usage.
2005-03-09 17:09:39 +00:00
ginsbach
25e3a7ec6d
- Support -4 and -6. Approved by christos.
2005-03-09 03:11:21 +00:00
dsl
8693718ba1
Fix printing of invalid commandname after certain types of errors on builtins.
...
Fixes bug bin/29410 in head.
All of /bin/sh needs pulling up into 2.0
2005-03-02 20:57:31 +00:00
christos
128abffcbe
The quagga-0.98.2 tar archive is busted. It was created with an old tar
...
program, and then someone appended to it a ustar record. Detect this and
warn, but don't treat it as an error.
2005-02-20 07:35:47 +00:00
xtraeme
d33a7206d5
Kill __P(), use ANSI function declarations.
2005-02-17 16:29:26 +00:00
xtraeme
06bca8b1ce
Kill __P().
2005-02-17 16:07:53 +00:00
xtraeme
0b39b8da10
Kill __P(), use ANSI function declarations.
2005-02-17 15:17:44 +00:00
dsl
f712e70aee
expbackq() was incorrectly backing up a temporary buffer when removing \n
...
from the end of output of commands inside $(...) substitutions.
If the program output is n*128+1 bytes long (ending in a \n) then the code
checks buf[-1] for another \n - looking an uninitialised stack.
On a big-endian system an integer of value 10 will satisfy this (unlikely
on little endian) and can happen depending on the last code path to use
a lot of stack!
This caused the problem with newvers.sh on sparc64 after ', 2005' was
added to the date list.
Fixed PR/28852
2005-02-14 20:46:26 +00:00
christos
4dd264a6c5
allow -t ttyp0 -t p0 -t /dev/ttyp0 -t /dev/pts/0
2005-02-11 18:26:18 +00:00
simonb
3cebd9325e
White space nit- don't put a space before/after increment/decrement
...
operators.
2005-02-11 06:21:21 +00:00
jmc
4dca8bd51e
Fix from PR#29290. Properly terminate the cpio_longopts struct so an unknown
...
option doesn't run off the end and core dump
2005-02-10 17:48:33 +00:00
simonb
dec70f4a29
KNF, use NULL instead of (type *)0.
2005-02-10 06:56:55 +00:00
perry
3fa24d7834
remove obsolete register declarations
2005-02-06 04:43:43 +00:00
matt
f57592cd95
Don't write hardlinked file contents in sv4cpio mode.
2005-02-04 00:38:15 +00:00
christos
cff5b51c44
Allow short command names as long as they are not ambiguous.
2005-02-03 15:15:48 +00:00
christos
796d7ce2f3
Use the length of the command for comparison not the length
...
of the command line argument. Allows "compression" to be used
for "compress" etc.
2005-02-03 00:03:02 +00:00
jmc
94eaa31771
Apply user supplied patterns first before applying actions for -A. This way pax
...
behavior WRT to patterns lines up with the example in the documentation
and how other implementations do it as well since -A is a non-standard
option/behavior. Fixes items noted in PR#23776
2005-01-23 06:19:03 +00:00
dsl
3b8851c887
Check for *ptr == 0, not ptr == NULL twice when validating -s xxxxx in tar mode.
...
Fixes PR bin/29040
Also actually report an error to the tty if NET2_REGEX is defined.
2005-01-21 20:23:44 +00:00
christos
2a32d39ed6
PR/28940: David Laight: /bin/sh doesn't quote the output of trap.
2005-01-11 19:38:57 +00:00
jschauma
5398861167
The '-l' option *always* prints a total, not only if output is to a
...
terminal.
2005-01-09 16:33:32 +00:00
augustss
6258e74613
Use the same width (9) for both the Used and Avail columns.
2004-12-31 09:54:28 +00:00
skrll
c3dc5c50d9
Add the missing suspended state 'U'.
...
Bump date.
2004-12-29 08:48:09 +00:00
provos
d830f0d651
increase the maximum length of allowable system call names
2004-12-01 03:30:07 +00:00
atatat
fde0dde8b2
Make ps understand "-tpts/4" by assuming that ptyfs is mounted on
...
/dev/pts and that the '/' immediately preceding the digits does not
need a 'p' in front of it (ick, kludge_oldps_options()).
2004-11-29 04:44:10 +00:00
mycroft
75a40767d0
Print some future timestamps with HH:MM rather than YYYY, so that we get
...
something reasonable if we're using a file server whose time is slightly
ahead.
2004-11-17 17:00:00 +00:00
christos
3e870b856b
print TTY instead of TT, one question mark instead of two and always the
...
full tty name.
2004-11-16 04:58:14 +00:00
christos
027df12dd8
Pass WARNS=3
2004-10-30 19:29:27 +00:00
dsl
238960af7e
Add (unsigned char) cast to ctype function
2004-10-29 19:51:36 +00:00