home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume1 / 8707 / 66 / arcs.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-07-13  |  1.9 KB  |  57 lines

  1. /*
  2.  * $Header: arcs.h,v 1.2 86/07/15 07:54:02 turner Exp $
  3.  */
  4.  
  5. /*
  6.  * $Log:    arcs.h,v $
  7.  * Revision 1.2  86/07/15  07:54:02  turner
  8.  * 
  9.  * Revision 1.1  86/06/26  15:01:27  turner
  10.  * initial version
  11.  * 
  12.  */
  13.  
  14. /*  ARC - Archive utility - Archive file header format
  15.  
  16.     Version 2.12, created on 12/17/85 at 14:40:26
  17.  
  18. (C) COPYRIGHT 1985 by System Enhancement Associates; ALL RIGHTS RESERVED
  19.  
  20.     By:  Thom Henderson
  21.  
  22.     Description:
  23.          This file defines the format of an archive file header, excluding
  24.          the archive marker and the header version number.
  25.  
  26.          Each entry in an archive begins with a one byte archive marker,
  27.          which is set to 26.  The marker is followed by a one byte
  28.          header type code, from zero to 7.
  29.  
  30.          If the header type code is zero, then it is an end marker, and
  31.          no more data should be read from the archive.
  32.  
  33.          If the header type code is in the range 2 to 7, then it is
  34.          followed by a standard archive header, which is defined below.
  35.  
  36.          If the header type code is one, then it is followed by an older
  37.          format archive header.  The older format header does not contain
  38.          the true length.  A header should be read for a length of
  39.          sizeof(struct heads)-sizeof(long).  Then set length equal to size
  40.          and change the header version to 2.
  41.  
  42.     Programming note:
  43.          The crc value given in the header is based on the unpacked data.
  44.  
  45.     Language:
  46.          Computer Innovations Optimizing C86
  47. */
  48.  
  49. struct heads                           /* archive entry header format */
  50. {   char name[FNLEN];                 /* file name */
  51.     long size;                         /* size of file, in bytes */
  52.     unsigned INT date;                 /* creation date */
  53.     unsigned INT time;                 /* creation time */
  54.  INT crc;                           /* cyclic redundancy check */
  55.     long length;                       /* true file length */
  56. }   ;
  57.