72 lines
1.3 KiB
C
72 lines
1.3 KiB
C
|
/* The <tar.h> header is used with the tape archiver, tar. */
|
||
|
|
||
|
#ifndef _TAR_H
|
||
|
#define _TAR_H
|
||
|
|
||
|
#define TBLOCK 512
|
||
|
#define NAMSIZ 100
|
||
|
#define PFXSIZ 155
|
||
|
|
||
|
#define TMODLEN 8
|
||
|
#define TUIDLEN 8
|
||
|
#define TGIDLEN 8
|
||
|
#define TSIZLEN 12
|
||
|
#define TMTMLEN 12
|
||
|
#define TCKSLEN 8
|
||
|
|
||
|
#define TMAGIC "ustar"
|
||
|
#define TMAGLEN 6
|
||
|
#define TVERSION "00"
|
||
|
#define TVERSLEN 2
|
||
|
#define TUNMLEN 32
|
||
|
#define TGNMLEN 32
|
||
|
#define TDEVLEN 8
|
||
|
|
||
|
#define REGTYPE '0'
|
||
|
#define AREGTYPE '\0'
|
||
|
#define LNKTYPE '1'
|
||
|
#define SYMTYPE '2'
|
||
|
#define CHRTYPE '3'
|
||
|
#define BLKTYPE '4'
|
||
|
#define DIRTYPE '5'
|
||
|
#define FIFOTYPE '6'
|
||
|
#define CONTTYPE '7'
|
||
|
|
||
|
#define TSUID 04000
|
||
|
#define TSGID 02000
|
||
|
#define TSVTX 01000
|
||
|
|
||
|
#define TUREAD 00400
|
||
|
#define TUWRITE 00200
|
||
|
#define TUEXEC 00100
|
||
|
#define TGREAD 00040
|
||
|
#define TGWRITE 00020
|
||
|
#define TGEXEC 00010
|
||
|
#define TOREAD 00004
|
||
|
#define TOWRITE 00002
|
||
|
#define TOEXEC 00001
|
||
|
|
||
|
union hblock {
|
||
|
char dummy[TBLOCK];
|
||
|
struct header {
|
||
|
char name[NAMSIZ];
|
||
|
char mode[TMODLEN];
|
||
|
char uid[TUIDLEN];
|
||
|
char gid[TGIDLEN];
|
||
|
char size[TSIZLEN];
|
||
|
char mtime[TMTMLEN];
|
||
|
char chksum[TCKSLEN];
|
||
|
char typeflag;
|
||
|
char linkname[NAMSIZ];
|
||
|
char magic[TMAGLEN];
|
||
|
char version[TVERSLEN];
|
||
|
char uname[TUNMLEN];
|
||
|
char gname[TGNMLEN];
|
||
|
char devmajor[TDEVLEN];
|
||
|
char devminor[TDEVLEN];
|
||
|
char prefix[PFXSIZ];
|
||
|
} dbuf;
|
||
|
};
|
||
|
|
||
|
#endif /* _TAR_H */
|