I omitted those lines; sorry about that. As you observe, the actual
output is:

# tar tvf gtar13c.tar
?rwxr-xr-x rtm/wheel         0 2024-02-29 14:32 ./ unknown file type â
?rw-r--r-- rtm/wheel 536870904 2023-02-11 17:28 ./a unknown file type â
tar: rmtlseek not stopped at a record boundary
tar: Error is not recoverable: exiting now

Robert

> Date: Sun, 3 Mar 2024 13:38:45 -0800
> Subject: Re: ***UNCHECKED*** delete.c flush_file() adds file size to
>  current_blocks w/o sanity check
> To: Robert Morris <r...@csail.mit.edu>
> From: Paul Eggert <egg...@cs.ucla.edu>
> Organization: UCLA Computer Science Department
> Cc: GNU Tar bug reports <bug-tar@gnu.org>
> 
> Thanks for the bug report and test case. I'm puzzled about the
> symptoms reported, as my copy of GNU tar 1.35, when built on Ubuntu
> 23.10 x86-64, outputs this confusing diagnostic:
> 
>   tar: rmtlseek not stopped at a record boundary
>   tar: Error is not recoverable: exiting now
> 
> when I run 'tar tvf gtar13c.tar', whereas your copy apparently does
> not. However, your test case with 'tar --delete' indeed has a
> segmentation violation.
> 
> I installed the attached three patches into the master repository
> <https://savannah.gnu.org/git/?group=tar>. The first fixes the
> confusing diagnostic. The second fixes an unchecked integer overflow
> nearby. And the third should fix the bug you reported.
> 
> Thanks again.

Reply via email to