tzh
2024-08-22 c7d0944258c7d0943aa7b2211498fd612971ce27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
 * tar.h
 */
 
#ifndef _TAR_H
#define _TAR_H
 
/* 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. */
#define    TSVTX        01000    /* On directories, restricted deletion flag. */
#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