tar.ijs works correctly with files created by linux tar.  Files
created from 7z give different format for count and checksum fields,
may be it interprets RFC in a different way. I also tested that
linux tar accetp tar files created from 7z.  To fix this, please try
replace the 2 lines in both tarf and tarx to

  count=. 8#._48+a.i. ' '-.~ ({.~ i.&null) 12{.124}.d
  assert. (chksum{d) =&((0&".)@:({.~ i.&null)) (getchk d)
 
Пнд, 04 Июн 2012, Robert Cyr писал(а):
> File archiving, compressing etc. are fascinating fields, and as
> Wikipedia indicates, the checksum for the header  block should
> normally be at offset 148, size 8 .  It is "    6247" in my
> 'HlpDict.tar' file before transfer to my iPad using iTunes.
> 
> In 'tart':
> The checksum is "      6247" (4 leading blanks), and chksum{d
> correctly reads it.
> But  getchk d returns        "006247  " (2 trailing blanks)
> 
> The problem shows up in line 11 of 'tart'
> 
> 
> Sent from my iPad
> 
> On 2012-06-04, at 09:36, Eric Iverson <eric.b.iver...@gmail.com> wrote:
> 
> > That blows my theory of a problem in J tar create. Probably a difference
> > between my interpretation of the tar file spec and 7-zip. Although not the
> > same, not that J tar exctract works on the addons tar of the dictionary.
> >
> > Perhaps you already ave, but it would be helpful if you could document
> > exactly what bytes the 7-zip has for its checksum and what bytes J tar x
> > things it should have.
> >
> > On Mon, Jun 4, 2012 at 9:28 AM, Robert Cyr <robert....@gmail.com> wrote:
> >
> >> The file was created with 7-Zip on a 64-bit vista pc.
> >>
> >> Sent from my iPad
> >>
> >> On 2012-06-04, at 08:56, Eric Iverson <eric.b.iver...@gmail.com> wrote:
> >>
> >>> I haven't had a chance to look at this, but if there is a big I expect it
> >>> is in tar create. Most of the testing was done with tar 'x' (that is,
> >>> extract). Quite a few addons, with quite a range of files and folder
> >>> structures extract successfully.
> >>>
> >>> Can you confirm that the problem you found was with a file that the J tar
> >>> created, rather than a file created by standard unix tar.
> >>>
> >>> If the bug is in J tar create checksum then it is probably easy to figure
> >>> out the fix.
> >>>
> >>> On Sun, Jun 3, 2012 at 3:00 PM, Robert Cyr <robert....@gmail.com> wrote:
> >>>
> >>>> tar defines a var named checksum and uses a function named getchk.
> >>>>
> >>>> The 4 (out of 8) leading chars of checksum{d are '0', whereas the 4
> >>>> leading chars of getchk d are '  '.  The other 4 are ok.
> >>>>
> >>>> This leads to an assertion failure.
> >>>>
> >>>> Sent from my iPad
> >>>> ----------------------------------------------------------------------
> >>>> For information about J forums see http://www.jsoftware.com/forums.htm
> >>>>
> >>> ----------------------------------------------------------------------
> >>> For information about J forums see http://www.jsoftware.com/forums.htm
> >> ----------------------------------------------------------------------
> >> For information about J forums see http://www.jsoftware.com/forums.htm
> >>
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

-- 
regards,
====================================================
GPG key 1024D/4434BAB3 2008-08-24
gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to