[Bug 103] New: tar cannot handle names that are exactly 100 chars

bugzilla at busybox.net bugzilla at busybox.net
Wed Feb 11 21:10:53 UTC 2009


           Summary: tar cannot handle names that are exactly 100 chars
           Product: Busybox
           Version: 1.13.x
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P5
         Component: Other
        AssignedTo: unassigned at busybox.net
        ReportedBy: fransmeulenbroeks at gmail.com
                CC: busybox-cvs at busybox.net
   Estimated Hours: 1.0

confirmed in 1.13.2:

tar cannot handle filenames that are exactly 100 characters.
It creates an entry of the normal type (so no gnu long extension), and the name
header field is completely filled.
When extracting such a file, the name is copied with strdup, but as there is no
0 byte after the name, the rights are also copied, resulting in a file that
e.g. ends in 000644.

Fix is probably in get_header_tar.c after line 254:
        file_header->name = xstrdup(tar.name);
add a statement like:
    if (strlen(file_header->name) > 100) file_header->name[100] = 0;

but there might be a better solution.

Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the busybox-cvs mailing list