[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13391: dd silently ignores lseek error
From: |
Erik Auerswald |
Subject: |
bug#13391: dd silently ignores lseek error |
Date: |
Wed, 9 Jan 2013 08:23:51 +0100 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
Hi,
On Wed, Jan 09, 2013 at 01:14:22AM +0000, Pádraig Brady wrote:
> On 01/08/2013 08:55 PM, Paul Eggert wrote:
>> On 01/08/13 10:11, Neil Klopfenstein wrote:
>>> Note that it begins reading at the _beginning of the ar file_ -- the 'skip'
>>> argument has failed silently.
>>
>> But the 'skip' hasn't failed. It's merely being implemented via 'read'
>> rather than via 'lseek'. The records are being skipped correctly.
>>
>> It might be useful to give dd a new option, which causes it
>> to insist on lseeking rather than reading in cases like these,
>> and to report an error if the lseek fails.
>
> I had a look around for a tool to verify
> that a file/device supports the seek operation
> and couldn't find one.
> So this seems like useful functionality.
> Worth applying the attached?
> [...]
>
> * src/dd.c: Add the new O_SEEKABLE flag.
> (main): Verify leek() works if O_SEEKABLE is set.
^^^^^^lseek()
> [...]
> /* else file_size && offset > OFF_T_MAX or file ! seekable */
>
> +
Stray new newline?
> do
> [...]
Besides these nitpicks the patch looks good to me.
HTH,
Erik