From: nichols@spot.pet.upmc.edu (Thomas Nichols)
Subject: gnu tar bug report
Organization: GNUs Not Usenet
Distribution: gnu
Date: Mon, 14 Dec 1992 23:49:50 GMT

Realizing that Gnu support staff is probably a limited bunch of people, I understand that a fix may be a long time in the coming (if it is a gnu tar problem).  But I would kindly ask that as soon as this message is read/processed/digested that someone mail me an indication of roughly how long until (or if) this problem is fixed.  Any prompt communication will be greatly appreciated.  That being said, here's the deal:

When gnu tar creates an archive with long names and mangles them into MaNgLeD_NaMeS, I get a core dump when I try to extract files from the said archive.  I stumbled on to this accidently, solved the problem by erasing the deep directory structure, then realized that a bug report was little help with out a real example.  
So I created obscenely long direcory names to see if I could recreate the problem, and I did.  I am working on a SPARCstation IPC with a 8mm excabyte tape drive and have had no problem with archives that did not have mangleable names (> 100 char).  Here is how I cause a crash:

# gnutar cv home/spot/Mac
home/spot/Mac/
home/spot/Mac/Blah-de-blah-blah-blah/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/ADSP.p
.
.
.
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%Balloons.p
gnutar: home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/CommResources.p: is too long: mangling to @@MaNgLeD.0
@@MaNgLeD.0
gnutar: home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%CommResources.p: is too long: mangling to @@MaNgLeD.1
@@MaNgLeD.1
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/Connections.p
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%Connections.p
gnutar: home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/ConnectionTools.p: is too long: mangling to @@MaNgLeD.2
@@MaNgLeD.2
gnutar: home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%ConnectionTools.p: is too long: mangling to @@MaNgLeD.3
@@MaNgLeD.3
.
.
and so on until the very end...
.
.
gnutar: home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/MacApp 2.0 for THINK Pascal 4.0/Special Failure Handlers/: is too long: mangling to @@MaNgLeD.168
@@MaNgLeD.168
././@MaNgLeD_NaMeS


Then I 'mt rew'-ed the archive (I have the TAPE env variable set correctly) and listed the archive with no problem:

# mt rew;gnutar +list
home/spot/Mac/
home/spot/Mac/Blah-de-blah-blah-blah/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/ADSP.p
.
.
.
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/Balloons.p
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%Balloons.p
@@MaNgLeD.0
@@MaNgLeD.1
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/Connections.p
home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%Connections.p
@@MaNgLeD.2
@@MaNgLeD.3
.
.
and so on...
.
.
@@MaNgLeD.168
././@MaNgLeD_NaMeS


Then I try to extract just the Interfaces directory...

# gnutar xv '/home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage'
././@MaNgLeD_NaMeS
gnutar: Can't rename @@MaNgLeD.0 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/CommResources.p : No such file or directory
gnutar: Can't rename @@MaNgLeD.1 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%CommResources.p : No such file or directory
gnutar: Can't rename @@MaNgLeD.2 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/ConnectionTools.p : No such file or directory
gnutar: Can't rename @@MaNgLeD.3 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/Interfaces/%ConnectionTools.p : No such file or directory
.
.
and so on until...
.
.
gnutar: Can't rename @@MaNgLeD.166 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/MacApp 2.0 for THINK Pascal 4.0/MacApp.Script : No such file or directory
gnutar: Can't rename @@MaNgLeD.167 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/MacApp 2.0 for THINK Pascal 4.0/%MacApp.Script : No such file or directory
gnutar: Can't rename @@MaNgLeD.168 to home/spot/Mac/Blah-de-blah-blah-blah/Blah-de-blah-blah-blah^2/Tempstorage/MacApp 2.0 for THINK Pascal 4.0/Special Failure Handlers : No such file or directory
gnutar: Unknown demangling command sh
Segmentation fault (core dumped)


And thats the problem.  No files get extracted...   
Hmm....  Other info you might find useful:  I was superuser (root) at the time; our default blocking is 124 and I have checked that 'tar xv -b 124 {...}' also crashes.  I am using a SPARCstation IPC with a 8mm excabyte tape drive. I'm using SunOS 4.1.2 with OPENwindows version 1.0.  
Oh, and its "GNU tar version 1.10"


That's about all I can think of that is relevant.  Please let me know if there is any information that I can give you to help squash this bug.  Thanks for you time and consideration...

-Tom Nichols

nichols@spot.pet.upmc.edu
tn0o+@andrew.cmu.edu
(412) 647-0736

Date: Sat, 19 Dec 92 21:46:40 EST
From: Francois Pinard <pinard@iro.umontreal.ca>
To: info-gnu@prep.ai.mit.edu
Subject: GNU m4 beta release 1.0.3
Distribution: world
Approved: info-gnu@prep.ai.mit.edu