| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
their software.
Approved by: pjd
Obtained from: NetBSD
|
|
|
|
|
|
|
| |
to the list of signals that has symbolic name. It was impossible to
send rt signals with kill(1) due to the check.
MFC after: 1 week
|
|
|
|
|
|
|
|
| |
The prompt string was truncated after \W when the working directory was "/".
PR: bin/89410
Submitted by: Dr Balwinder Singh Dheeman
MFC after: 1 week
|
|
|
|
|
| |
Checked by: make universe
Approved by: ed (co-mentor)
|
|
|
|
| |
- Add regression test to test -q option.
|
|
|
|
|
|
|
|
| |
allows the -M option to be used without specifying -N.
PR: bin/138146
Approved by: rrs (mentor)
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
| |
Otherwise the -i option will show the inode number of the referenced file
for symbolic links given on the command line. Similarly, the file color
was printed according to the link target in colorized output.
PR: bin/102394
Reviewed by: jilles
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
| |
All the elements of these structs are char anyway, so it won't hurt
performance.
Bump warns back up to the default.
# we likely should have CTASSERTS to make sure they are the right size.
# but with libarchive based tar maybe we shouldn't bother.
|
|
|
|
|
| |
These may be NFS mounted, and we should not touch them unless we are going
to do something useful with the information.
|
|
|
|
| |
as well.
|
|
|
|
|
|
|
|
|
|
| |
- Allow -h option to work if the listing contains at least one device
file.
- Align major and minor device numbers correctly to the size field.
PR: bin/125678
Approved by: trasz (mentor)
MFC after: 1 month
|
|
|
|
|
|
|
|
|
|
| |
provides an empty fts_name and reporting the full path is more
appropriate especially with the -R option.
PR: bin/107515
Submitted by: bde
Approved by: trasz (mentor)
MFC after: 1 week
|
|
|
|
| |
I removed utmp and its manpage, but not other manpages referring to it.
|
|
|
|
| |
Submitted by: Marius Nünnerich <marius@nuenneri.ch>
|
|
|
|
|
|
|
|
|
|
|
|
| |
feature parity with du(1) and similar: When set, cp(1) will not traverse
mount points.
Initial patch by: Graham J Lee leeg teaching.physics.ox.ac.uk
PR: bin/88056
Initial patch by: Graham J Lee leeg teaching.physics.ox.ac.uk
Approved by: ed (mentor)
MFC after: 1 month
|
|
|
|
|
| |
date: use libc utmpx routines instead of the ones provided by libulog.
pax: don't depend on <utmp.h>
|
|
|
|
|
|
|
|
|
| |
csh allows you to monitor the utmp(x) file to monitor certain user
logins. Unfortunately it needs to directly stat() this file. I don't
want to break this module , but eventually it shouldn't do that. The
idea of the getutxent(3) API is to hide file access.
Approved by: mp
|
|
|
|
|
|
| |
functionality. Per the regression tests (pgrep-t.t & pkill-t.t), "-t"
should accept "v1", which means a plain number should be accepted for
UNIX98-style PTY's.
|
|
|
|
|
| |
"-t" should accept "v1", which means a plain number should be accepted for
UNIX98-style PTY's.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- correctly handle error output in $(builtin 2>&1), clarify out1/out2 vs
output/errout in the code
- treat all builtins as regular builtins so errors do not abort the shell
and variable assignments do not persist
- respect the caller's INTOFF
Some bugs still exist:
- expansion errors may still abort the shell
- some side effects of expansions and builtins persist
|
|
|
|
| |
MFC after: 1 week
|
|
|
|
| |
MFC after: 1 week
|
|
|
|
|
| |
Example:
PATH=/var/empty; PATH=/bin type ls
|
| |
|
|
|
|
|
|
| |
This will be important when things like 'command eval f' will be possible.
Currently, the funcnest = 0 assignment in RESET (called when returning to
the top level after an error in interactive mode) is really sufficient.
|
| |
|
|
|
|
| |
This agrees with C, POSIX and other shells.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix some wrong usages.
Note: this does not affect generated binaries as this argument is not used.
PR: 137213
Submitted by: Eygene Ryabinkin (initial version)
MFC after: 1 month
|
| |
|
|
|
|
|
|
|
| |
- const
- initializations to silence -Wuninitialized (it was safe anyway)
- remove nested extern declarations
- rename "index" locals to "idx"
|
| |
|
| |
|
|
|
|
| |
such as "setfacl -m ''".
|
|
|
|
|
|
|
| |
Reset the exception handler in the child to main's.
This avoids inappropriate double cleanups or shell duplication when the
exception is caught, such as 'fc' and future 'command eval' and 'command .'.
|
|
|
|
|
|
|
|
|
|
| |
That is, do not do tilde expansion if any of the CTL* bytes (\201-\210), not
only CTLESC and CTLQUOTEMARK, are encountered. Such an expansion would look
up a user name with sh's internal representation.
The parser does not currently distinguish between backslashed and
unbackslashed \201-\210, so tilde expansion of user names with these bytes
in them is not so easy to fix.
|
| |
|
|
|
|
|
| |
Most of this is adding const keywords, but setvar() in var.c had to be
changed somewhat more.
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is already done by evalcommand(), unless special-ness has been removed,
in which case variable assignments should not persist. (These are currently
always special builtins, but this will change later: command builtin,
command substitution.)
This also fixes a memory leak when calling . with variable assignments.
Example:
valgrind --leak-check=full sh -c 'x=1 . /dev/null; x=2'
|
|
|
|
|
|
| |
PR: bin/141835
Submitted by: Henning Petersen <henning.petersen t-online.de>
MFC after: 2 weeks
|
|
|
|
|
| |
utmpx also has OLD_TIME/NEW_TIME messages, which seem to be intended for
the same purpose as how we call logwtmp() here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Redirecting fds that were not open before kept two copies of the
redirected file.
sh -c '{ :; } 7>/dev/null; fstat -p $$; true'
(both fd 7 and 10 remained open)
- File descriptors used to restore things after redirection were not
set close-on-exec, instead they were explicitly closed before executing
a program normally and before executing a shell procedure. The latter
must remain but the former is replaced by close-on-exec.
sh -c 'exec 7</; { exec fstat -p $$; } 7>/dev/null; true'
(fd 10 remained open)
The examples above are simpler than the testsuite because I do not want to
use fstat or procstat in the testsuite.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* exception handlers are now run with interrupts disabled, which avoids
many race conditions
* fix some cases where SIGINT only aborts one command and continues the
script, in particular if a SIGINT causes an EINTR error which trumped the
interrupt.
Example:
sh -c 'echo < /some/fifo; echo This should not be printed'
The fifo should not have writers. When pressing ctrl+c to abort the open,
the shell used to continue with the next command.
Example:
sh -c '/bin/echo < /some/fifo; echo This should not be printed'
Similar. Note, however, that this particular case did not and does not work
in interactive mode with job control enabled.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids weirdness when 'fc -e vi' or the like is done and there is a
syntax error in the file. Formerly an interactive shell tried to execute
stuff after the syntax error and exited.
This should also avoid similar issues with 'command eval' and 'command .'
when 'command' is implemented properly as in NetBSD sh.
Special builtins did not have this problem since errors in them cause the
shell to exit or to reset various state such as the current command input
file.
|
|
|
|
|
| |
POSIX explicitly prescribes this.
Continue processing any other signals and return status 1.
|
|
|
|
|
|
|
| |
continues to be limited by PATH_MAX (1024).
Obtained from: NetBSD
PR: 104456
|
|
|
|
|
|
|
|
|
| |
* increase buffer size from 100 to 256 bytes
* remove implied flush from out2str(), in particular this avoids unnecessary
flushing in the middle of a -x tracing line
* rename dprintf() to out2fmt_flush(), make it flush out2 and use this
function in various places where flushing is desired after an error
message
|
|
|
|
|
|
|
|
|
|
|
| |
This is similar to the Solaris utility of the same name.
Some use cases:
* rc.subr's wait_for_pids
* interactive use, e.g. to shut down the computer when some task is done
even if the task is already running
Discussed on: hackers@
|