Commit Graph

3196 Commits

Author SHA1 Message Date
christos
ac40619997 PR/50747: David Binderman: check bounds before dereference.
While here add some continues before semicolons.
2016-02-03 05:26:16 +00:00
christos
ded9763f6b PR/50734: David Binderman: check bounds before dereferencing. 2016-02-01 17:34:00 +00:00
wiz
29ce88a214 Whitespace. 2016-01-06 00:22:21 +00:00
christos
30042120ad Document close-on-exec redirection behavior. 2016-01-05 18:16:20 +00:00
christos
0a9b959049 PR/50619: Fix reversed test. 2016-01-04 13:57:15 +00:00
christos
d18385a5a2 Don't leak redirected rescriptors to exec'ed processes. This is what ksh
does, but bash does not. For example:

    $ cat test1
    #!/bin/sh
    exec 6> out
    echo "test" >&6
    sh ./test2
    exec 6>&-
    $ cat test2
    echo "test2" >&6
    $ ./test1
    ./test2: 6: Bad file descriptor

This fixes by side effect the problem of the rc system leaking file descriptors
7 and 8 to all starting daemons:

    $ fstat -p 1359
    USER     CMD          PID   FD MOUNT       INUM MODE         SZ|DV R/W
    root     powerd      1359   wd /              2 drwxr-xr-x     512 r
    root     powerd      1359    0 /          63029 crw-rw-rw-    null rw
    root     powerd      1359    1 /          63029 crw-rw-rw-    null rw
    root     powerd      1359    2 /          63029 crw-rw-rw-    null rw
    root     powerd      1359    3* kqueue pending 0
    root     powerd      1359    4 /          64463 crw-r-----   power r
    root     powerd      1359    7 flags 0x80034<ISTTY,MPSAFE,LOCKSWORK,CLEAN>
    root     powerd      1359    8 flags 0x80034<ISTTY,MPSAFE,LOCKSWORK,CLEAN>
    root     powerd      1359    9* pipe 0xfffffe815d7bfdc0 -> 0x0 w

Note fd=7,8 pointing to the revoked pty from the parent rc process.
2016-01-04 03:00:24 +00:00
christos
b357ba3056 We don't have RLIMIT_SWAP 2015-12-30 22:26:26 +00:00
wiz
c78bed405e Remove trailing whitespace. 2015-12-19 18:48:41 +00:00
wiz
2c25669eb0 Use An in AUTHORS section. 2015-12-19 18:48:33 +00:00
christos
015658bfe0 Add the timestamp option to the pax front end. 2015-12-19 18:45:52 +00:00
christos
9158fb657d PR/50119: Thomas Klausner: Add --timestamp option to tar. 2015-12-19 18:28:54 +00:00
christos
3296beefcd PR/50422: Robert Elz: df -G prints the wrong value for fragsize (+FIX)
For df -G, print the block and fragment size instead of the iosize
and the blocksize. If we need to print the iosize, it should be done
in a different field. Nevertheless printing the blocksize in the fragment
size field is just wrong.
XXX: pullup-6, pullup-7
2015-11-12 17:59:21 +00:00
wiz
349f15a5e8 Use An in AUTHORS section. 2015-11-04 09:24:14 +00:00
pgoyette
4a0bba4840 By my count, [[[[[cc]yy]mm]dd]hh]mm[.ss] has seven fields, not six! 2015-11-03 03:01:35 +00:00
joerg
09dfb13f83 Be explicit about what is negated. 2015-08-28 11:29:48 +00:00
christos
19d6b8392c PR/50179: Timo Buhrmester: sh(1) variable expansion bug 2015-08-27 07:46:47 +00:00
christos
f95d5940cc report the signal that wait was interrupted by, which is not always SIGINT
anymore.
2015-08-22 12:12:47 +00:00
christos
c0195771da Process pending signals while waiting for a job:
$ cat << EOF > hup.sh
    #!/bin/sh
    trap 'echo SIGHUP; exit 1' 1
    sleep 10000 &
    wait
    EOF
    $ chmod +x ./hup.sh
    $ ./hup.sh &
    $ kill -HUP %1
2015-08-22 09:55:23 +00:00
sevan
bf748072f6 Drop the case '?' which is defined after case 'default'.
case 'default' statement introduced in the last commit to cat.c in the CSRG archive.
Obtained from OpenBSD bin/cat/cat.c r1.3.
2015-07-25 16:17:01 +00:00
wiz
dfb9651eda Add serial comma, use upper case for abbreviation, and remove apostrophe for plural. 2015-06-28 16:22:54 +00:00
christos
7da746ab02 remove \n from error messages 2015-06-16 22:31:08 +00:00
joerg
3eb04a3615 Use an explicit body for a "until not EINTR" loop. 2015-06-06 15:22:58 +00:00
christos
ac33f4ea5e Drop privileges when executed set{u,g}id unless -p is specified like other
shells do to avoid system() and popen() abuse.
2015-05-26 21:35:15 +00:00
joerg
66e60a49ac Include printf by default even for SMALL builds. It is used e.g. by
dhcpcd and as such required by most ramdisk images. Allow turning it off
again by TINYPROG.
2015-05-10 20:30:54 +00:00
christos
9c27fd2a44 CID 1225078: check getrlimit return 2015-05-09 13:28:55 +00:00
christos
f49d3ada41 CID 1225088: check return of getrlimit 2015-05-09 13:26:06 +00:00
christos
4b6d6c838f CID 1225077: check getrlimit return 2015-05-09 13:22:37 +00:00
christos
78d721faf9 Simplify by splitting the "simple" mode setting and the "special" ones. 2015-05-01 17:01:08 +00:00
jmcneill
fa0ed62f53 document ulimit -r 2015-04-12 17:05:03 +00:00
wiz
5fe5275d9f Use An in AUTHORS section. 2015-04-11 16:22:07 +00:00
christos
23c362a5b1 Add -J/--xz to specifically decompress xz compressed files. We don't really
need this because -z autodetects the compression format; this is for syntax
compatibility with other tar implementations. From Joachim Henke
2015-04-11 15:41:33 +00:00
wiz
bb4a52d96c New sentence, new line. Fix typos. Bump date for previous. 2015-03-18 13:30:13 +00:00
manu
ea3c6ee530 Add iflag and oflag operands to dd(1)
Like GNU dd(1) similar operands, iflag and oflag allow specifying the
O_* flags given to open(2) for the input and the output file. The values
are comma-sepratated, lower-case, O_ prefix-stripped constants documented
in open(2).

Since iflag and oflag override default values, specifying oflag means
O_CREATE is not set by default and must be specified explicitely.

Some values do not make sense (e.g.: iflag=directory) but are still used
and will raise a warning. For oflag, values rdonly, rdwr and wronly are
filtered out with a warning (dd(1) attempts open(2) with O_RDWR and
then O_WRONLY on failure).

Specifying oflag=trunc along with (seek, oseek or conv=notrunc) is
contradictory and will raise an error.

iflag and oflag are disabled if building with -DMALLPROG
2015-03-18 13:23:49 +00:00
sevan
7c1a019ea3 From OpenBSD r1.49
Fix comment grammar
2015-03-09 23:38:08 +00:00
enami
80c6af722d Fix the name of failed function in warning message. 2015-03-03 00:20:38 +00:00
enami
c1e351a1b2 Don't truncate at microseconds while preserving timestamps.
One of motivation of this change is to make the behavior of test(1)
-nt/ot with preserved copy (like cp -p) closer to the NetBSD 6.
Of course whether full timestamps are kept or not depends also on
underlying file system.

The ifdef added in mv(1) since existing ifdefs was our local change
to compile it on solaris (though I couldn't test it):
http://mail-index.netbsd.org/tech-userlevel/2014/11/28/msg008831.html
2015-03-02 03:17:24 +00:00
joerg
14bd6a1392 Make cast warnings for clang non-fatal. 2015-01-29 20:46:31 +00:00
christos
334f5d77c6 Define an undocumented -F option to only use fork instead of vfork for
debugging purposes.
2015-01-02 19:56:20 +00:00
joerg
0bab8dfecf Use l_wmesg if the string is not empty. Don't bother checking l_name for
nullness.
2014-11-15 01:58:34 +00:00
christos
9e91d16823 simplify and eliminate TOCTOU. 2014-10-23 21:03:25 +00:00
jschauma
8e9bed0cec Remove the confusing reference to 'file sizes' in the short description of
the '-l' flag.  As explained in the Long Format section, the total is of
the blocks used by the files, and only applies to directories.
2014-10-18 01:49:01 +00:00
christos
a25724438f PR/48201: Miwa Susumu: Fix set -C (no clobber) for POSIX; from FreeBSD
Can't use O_EXCL because of device nodes; also truncate.
2014-10-15 14:54:25 +00:00
dholland
33586bcc4e Provide real error messages.
Inspired by PR 49169 from David H. Gutteridge, but a much broader patch :-)
2014-09-01 21:42:21 +00:00
christos
5cad352e4f remove unused assignment 2014-08-29 09:35:19 +00:00
christos
d03f4b6b66 Eat trailing backslash like bash and pdksh (not zsh). CBACK+CEOF = TEOF 2014-08-29 09:26:39 +00:00
christos
7de48e21c0 PR/49125: Havard Eidnes: /bin/sh does not support redirecting to or from FDs > 9
According to:
http://pubs.opengroup.org/onlinepubs/009604599/utilities/xcu_chap02.html#tag_02_07

Redirection support for fds > 9 is optional but allowed.
2014-08-19 12:36:58 +00:00
joerg
694cb36aee Fix RCS ID. 2014-08-08 14:48:55 +00:00
dholland
d54dab14a9 remove .if make(install) 2014-07-05 23:13:41 +00:00
dholland
076d336118 remove .if make(install)
these are seriously bad juju
2014-07-05 23:12:33 +00:00
dholland
dcc711d503 Reorg docs, part 2:
Rename the following reference documents to match their programs:
   shell -> sh
   viref -> vi

and rename the following to match their topic better:
   ipctut -> sockets
   ipc -> sockets-advanced

Also, the old "timed" and "timedop" docs are now ref5/timed and
ref8/timed respectively, as the first of these documented the
protocol.
2014-07-05 19:23:00 +00:00