home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / unix / arcunx11 / arc.sh1 / arcs.h < prev    next >
Encoding:
C/C++ Source or Header  |  1987-04-01  |  1.9 KB  |  51 lines

  1. /*
  2.  *    arcs.h    1.1
  3.  *
  4.  *    Author: Thom Henderson
  5.  *    Original System V port: Mike Stump
  6.  *    Enhancements, Bug fixes, and cleanup: Chris Seaman
  7.  *    Date: Fri Mar 20 09:57:02 1987
  8.  *    Last Mod.    3/21/87
  9.  *
  10.  */
  11.  
  12. /*
  13.  * ARC - Archive utility - Archive file header format
  14.  * 
  15.  * Version 2.12, created on 12/17/85 at 14:40:26
  16.  * 
  17.  * (C) COPYRIGHT 1985 by System Enhancement Associates; ALL RIGHTS RESERVED
  18.  * 
  19.  *     Description:
  20.  *          This file defines the format of an archive file header, excluding
  21.  *          the archive marker and the header version number.
  22.  * 
  23.  *          Each entry in an archive begins with a one byte archive marker,
  24.  *          which is set to 26.  The marker is followed by a one byte
  25.  *          header type code, from zero to 7.
  26.  * 
  27.  *          If the header type code is zero, then it is an end marker, and
  28.  *          no more data should be read from the archive.
  29.  * 
  30.  *          If the header type code is in the range 2 to 7, then it is
  31.  *          followed by a standard archive header, which is defined below.
  32.  * 
  33.  *          If the header type code is one, then it is followed by an older
  34.  *          format archive header.  The older format header does not contain
  35.  *          the true length.  A header should be read for a length of
  36.  *          sizeof(struct heads)-sizeof(long).  Then set length equal to size
  37.  *          and change the header version to 2.
  38.  * 
  39.  *     Programming note:
  40.  *          The crc value given in the header is based on the unpacked data.
  41.  */
  42.  
  43. struct heads {                         /* archive entry header format */
  44.     char name[FNLEN1];                 /* file name */
  45.     long size;                         /* size of file, in bytes */
  46.     unsigned INT date;                 /* creation date */
  47.     unsigned INT time;                 /* creation time */
  48.     INT crc;                           /* cyclic redundancy check */
  49.     long length;                       /* true file length */
  50. };
  51.