This commit is contained in:
kamran 2012-11-05 22:31:41 +00:00
parent 13f1c4f0e0
commit d8cf97b759
2 changed files with 24 additions and 32 deletions

View File

@ -214,12 +214,12 @@ public class TarEntry {
outbuf[offset++] = header.linkFlag;
offset = TarHeader.getNameBytes(header.linkName, outbuf, offset, TarHeader.NAMELEN);
offset = TarHeader.getNameBytes(header.magic, outbuf, offset, TarHeader.MAGICLEN);
offset = TarHeader.getNameBytes(header.userName, outbuf, offset, TarHeader.UNAMELEN);
offset = TarHeader.getNameBytes(header.groupName, outbuf, offset, TarHeader.GNAMELEN);
offset = Octal.getOctalBytes(header.devMajor, outbuf, offset, TarHeader.DEVLEN);
offset = Octal.getOctalBytes(header.devMinor, outbuf, offset, TarHeader.DEVLEN);
offset = TarHeader.getNameBytes(header.namePrefix, outbuf, offset, TarHeader.FILENAME_PREFIX);
offset = TarHeader.getNameBytes(header.magic, outbuf, offset, TarHeader.USTAR_MAGICLEN);
offset = TarHeader.getNameBytes(header.userName, outbuf, offset, TarHeader.USTAR_USER_NAMELEN);
offset = TarHeader.getNameBytes(header.groupName, outbuf, offset, TarHeader.USTAR_GROUP_NAMELEN);
offset = Octal.getOctalBytes(header.devMajor, outbuf, offset, TarHeader.USTAR_DEVLEN);
offset = Octal.getOctalBytes(header.devMinor, outbuf, offset, TarHeader.USTAR_DEVLEN);
offset = TarHeader.getNameBytes(header.namePrefix, outbuf, offset, TarHeader.USTAR_FILENAME_PREFIX);
for (; offset < outbuf.length;)
outbuf[offset++] = 0;
@ -264,21 +264,21 @@ public class TarEntry {
header.linkName = TarHeader.parseName(bh, offset, TarHeader.NAMELEN);
offset += TarHeader.NAMELEN;
header.magic = TarHeader.parseName(bh, offset, TarHeader.MAGICLEN);
offset += TarHeader.MAGICLEN;
header.magic = TarHeader.parseName(bh, offset, TarHeader.USTAR_MAGICLEN);
offset += TarHeader.USTAR_MAGICLEN;
header.userName = TarHeader.parseName(bh, offset, TarHeader.UNAMELEN);
offset += TarHeader.UNAMELEN;
header.userName = TarHeader.parseName(bh, offset, TarHeader.USTAR_USER_NAMELEN);
offset += TarHeader.USTAR_USER_NAMELEN;
header.groupName = TarHeader.parseName(bh, offset, TarHeader.GNAMELEN);
offset += TarHeader.GNAMELEN;
header.groupName = TarHeader.parseName(bh, offset, TarHeader.USTAR_GROUP_NAMELEN);
offset += TarHeader.USTAR_GROUP_NAMELEN;
header.devMajor = (int) Octal.parseOctal(bh, offset, TarHeader.DEVLEN);
offset += TarHeader.DEVLEN;
header.devMajor = (int) Octal.parseOctal(bh, offset, TarHeader.USTAR_DEVLEN);
offset += TarHeader.USTAR_DEVLEN;
header.devMinor = (int) Octal.parseOctal(bh, offset, TarHeader.DEVLEN);
offset += TarHeader.DEVLEN;
header.devMinor = (int) Octal.parseOctal(bh, offset, TarHeader.USTAR_DEVLEN);
offset += TarHeader.USTAR_DEVLEN;
header.namePrefix = TarHeader.parseName(bh, offset, TarHeader.FILENAME_PREFIX);
header.namePrefix = TarHeader.parseName(bh, offset, TarHeader.USTAR_FILENAME_PREFIX);
}
}

View File

@ -97,21 +97,13 @@ public class TarHeader {
* Ustar header
*/
public static final int MAGICLEN = 8;
/**
* The magic tag representing a POSIX tar archive.
*/
public static final String TMAGIC = "ustar";
public static final String USTAR_MAGIC = "ustar"; // POSIX
/**
* The magic tag representing a GNU tar archive.
*/
public static final String GNU_TMAGIC = "ustar ";
public static final int UNAMELEN = 32;
public static final int GNAMELEN = 32;
public static final int DEVLEN = 8;
public static final int FILENAME_PREFIX = 155;
public static final int USTAR_MAGICLEN = 8;
public static final int USTAR_USER_NAMELEN = 32;
public static final int USTAR_GROUP_NAMELEN = 32;
public static final int USTAR_DEVLEN = 8;
public static final int USTAR_FILENAME_PREFIX = 155;
// Header values
public StringBuffer name;
@ -131,7 +123,7 @@ public class TarHeader {
public StringBuffer namePrefix;
public TarHeader() {
this.magic = new StringBuffer(TarHeader.TMAGIC);
this.magic = new StringBuffer(TarHeader.USTAR_MAGIC);
this.name = new StringBuffer();
this.linkName = new StringBuffer();