Read the fixed metadata prefix of the PKWARE Unix extra field 0x000d.
The fixed portion contains atime, mtime, uid, and gid values. Require
the full 12-byte prefix before reading it, and leave the variable-length
data field unsupported for now.
* on which file starts, but we don't handle
* multi-volume Zip files. */
break;
+ case 0x000d:
+ /* PKWARE Unix Extra Field fixed metadata. */
+ if (datasize >= 12) {
+ zip_entry->atime = archive_le32dec(p + offset);
+ zip_entry->mtime =
+ archive_le32dec(p + offset + 4);
+ zip_entry->uid =
+ archive_le16dec(p + offset + 8);
+ zip_entry->gid =
+ archive_le16dec(p + offset + 10);
+ /*
+ * APPNOTE.TXT also defines additional data after
+ * this fixed metadata, depending on file type.
+ */
+ }
+ break;
#ifdef DEBUG
case 0x0017:
{