dd: add count_bytes, skip_bytes and seek_bytes flags
authorJérémy Compostella <jeremy.compostella@gmail.com>
Sat, 4 Feb 2012 14:25:54 +0000 (15:25 +0100)
committerPádraig Brady <P@draigBrady.com>
Sun, 12 Feb 2012 17:34:28 +0000 (17:34 +0000)
commit140eca15c4a3d3213629a048cc307fde0d094738
tree941ed670b65b4b85d4a629a7d43da3c1acca1363
parentda2b32e7af52f41501ded604dd84c1078583a8d0
dd: add count_bytes, skip_bytes and seek_bytes flags

dd now accepts the count_bytes and skip_bytes input flag and the
seek_bytes output flag, to more easily allow processing portions of a
file.

* src/dd.c (scanargs): Compute skip_records and skip_bytes when
'skip_bytes' iflag is used. Compute max_records and max_bytes when
'count_bytes' iflag is used. Compute seek_records and seek_bytes
when 'seek_bytes' oflag is used.
(skip_via_lseek): Use new 'bytes' parameter and handle potential
'records' equals to zero. Update the bytes parameter when called with
'fdesc' equal to STDOUT_FILENO. Update the header comments.
(dd_copy): Skip accordingly to skip_records AND skip_bytes. Count
accordingly to max_records AND max_bytes. Seek on output accordingly
to seek_records AND seek_bytes.
* NEWS (New features): Mention it.
* doc/coreutils.texi (dd invocation): Detail new flags and behaviors.
* tests/dd/bytes: New file. Tests for these new flags.
* tests/Makefile.am (TESTS): Add it.
NEWS
doc/coreutils.texi
src/dd.c
tests/Makefile.am
tests/dd/bytes [new file with mode: 0755]