Mercurial > repos > dawe > srf2fastq
diff srf2fastq/io_lib-1.12.2/io_lib/tar_format.h @ 0:d901c9f41a6a default tip
Migrated tool version 1.0.1 from old tool shed archive to new tool shed repository
author | dawe |
---|---|
date | Tue, 07 Jun 2011 17:48:05 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/srf2fastq/io_lib-1.12.2/io_lib/tar_format.h Tue Jun 07 17:48:05 2011 -0400 @@ -0,0 +1,56 @@ +#ifndef _TAR_FORMAT_H +#define _TAR_FORMAT_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Our own tar block defines - we cannot rely on UNIX to provide these for us + * as the sun tar.h is minimal and Alliant's does not even exist. + */ +#define TBLOCK 512 +#define NAMSIZ 100 + +/* Values used in typeflag field. */ +#define REGTYPE '0' /* Regular File */ +#define AREGTYPE '\0' /* Regular File */ +#define LNKTYPE '1' /* Hard Link */ +#define SYMTYPE '2' /* Symbolic Link */ +#define CHRTYPE '3' /* Character Special File */ +#define BLKTYPE '4' /* Block Special File */ +#define DIRTYPE '5' /* Directory */ +#define FIFOTYPE '6' /* FIFO */ +#define CONTTYPE '7' /* Reserved */ + +/* + * There will usually be more data than this in a tar header - but we don't + * need to concern ourselves with it. + */ +typedef union hblock { + char data[TBLOCK]; + struct header { + char name[NAMSIZ]; + char mode[8]; + char uid[8]; + char gid[8]; + char size[12]; + char mtime[12]; + char chksum[8]; + char typeflag; + char linkname[NAMSIZ]; + char magic[6]; + char version[2]; + char uname[32]; + char gname[32]; + char devmajor[8]; + char devminor[8]; + char prefix[155]; + } header; +} tar_block; + +#ifdef __cplusplus +} +#endif + +#endif