2017-04-11 21:13:36 +00:00
|
|
|
/*
|
|
|
|
* tar.h
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _TAR_H
|
|
|
|
#define _TAR_H
|
|
|
|
|
2017-10-07 00:16:47 +00:00
|
|
|
#include <sys/features.h>
|
|
|
|
|
2017-04-11 21:13:36 +00:00
|
|
|
/* General definitions */
|
|
|
|
#define TMAGIC "ustar" /* ustar plus null byte. */
|
|
|
|
#define TMAGLEN 6 /* Length of the above. */
|
|
|
|
#define TVERSION "00" /* 00 without a null byte. */
|
|
|
|
#define TVERSLEN 2 /* Length of the above. */
|
|
|
|
|
|
|
|
/* Typeflag field definitions */
|
|
|
|
#define REGTYPE '0' /* Regular file. */
|
|
|
|
#define AREGTYPE '\0' /* Regular file. */
|
|
|
|
#define LNKTYPE '1' /* Link. */
|
|
|
|
#define SYMTYPE '2' /* Symbolic link. */
|
|
|
|
#define CHRTYPE '3' /* Character special. */
|
|
|
|
#define BLKTYPE '4' /* Block special. */
|
|
|
|
#define DIRTYPE '5' /* Directory. */
|
|
|
|
#define FIFOTYPE '6' /* FIFO special. */
|
|
|
|
#define CONTTYPE '7' /* Reserved. */
|
|
|
|
|
|
|
|
/* Mode field bit definitions (octal) */
|
|
|
|
#define TSUID 04000 /* Set UID on execution. */
|
|
|
|
#define TSGID 02000 /* Set GID on execution. */
|
2017-10-07 00:16:47 +00:00
|
|
|
#if __XSI_VISIBLE || __POSIX_VISIBLE < 200112
|
2017-04-11 21:13:36 +00:00
|
|
|
#define TSVTX 01000 /* On directories, restricted deletion flag. */
|
2017-10-07 00:16:47 +00:00
|
|
|
#endif
|
2017-04-11 21:13:36 +00:00
|
|
|
#define TUREAD 00400 /* Read by owner. */
|
|
|
|
#define TUWRITE 00200 /* Write by owner. */
|
|
|
|
#define TUEXEC 00100 /* Execute/search by owner. */
|
|
|
|
#define TGREAD 00040 /* Read by group. */
|
|
|
|
#define TGWRITE 00020 /* Write by group. */
|
|
|
|
#define TGEXEC 00010 /* Execute/search by group. */
|
|
|
|
#define TOREAD 00004 /* Read by other. */
|
|
|
|
#define TOWRITE 00002 /* Write by other. */
|
|
|
|
#define TOEXEC 00001 /* Execute/search by other. */
|
|
|
|
|
|
|
|
#endif
|