Annotation of researchv10no/cmd/odist/pax/include/tar.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Standard Archive Format
                      3:  * USTAR - Uniform Standard Tape ARchive
                      4:  */
                      5: 
                      6: #ifndef TBLOCK
                      7: 
                      8: #define TBLOCK         512
                      9: #define NAMSIZ         100
                     10: #define PFXSIZ         155
                     11: 
                     12: #define TMODLEN                8
                     13: #define TUIDLEN                8
                     14: #define TGIDLEN                8
                     15: #define TSIZLEN                12
                     16: #define TMTMLEN                12
                     17: #define TCKSLEN                8
                     18: 
                     19: #define TMAGIC         "ustar"         /* ustar and a null             */
                     20: #define TMAGLEN                6
                     21: #define TVERSION       "00"            /* 00 and no null               */
                     22: #define TVERSLEN       2
                     23: #define TUNMLEN                32
                     24: #define TGNMLEN                32
                     25: #define TDEVLEN                8
                     26: 
                     27: /*
                     28:  * values used in typeflag field
                     29:  */
                     30: 
                     31: #define REGTYPE                '0'             /* regular file                 */
                     32: #define AREGTYPE       0               /* alternate REGTYPE            */
                     33: #define LNKTYPE                '1'             /* hard link                    */
                     34: #define SYMTYPE                '2'             /* soft link                    */
                     35: #define CHRTYPE                '3'             /* character special            */
                     36: #define BLKTYPE                '4'             /* block special                */
                     37: #define DIRTYPE                '5'             /* directory                    */
                     38: #define FIFOTYPE       '6'             /* FIFO special                 */
                     39: #define CONTYPE                '7'             /* reserved                     */
                     40: #define SOKTYPE                '8'             /* socket -- reserved           */
                     41: #define VERTYPE                'V'             /* version -- reserved          */
                     42: 
                     43: /*
                     44:  * bits used in mode field
                     45:  */
                     46: 
                     47: #define TSUID          04000           /* set uid on exec              */
                     48: #define TSGID          02000           /* set gid on exec              */
                     49: #define TSVTX          01000           /* sticky bit -- reserved       */
                     50: 
                     51: /*
                     52:  * file permissions
                     53:  */
                     54: 
                     55: #define TUREAD         00400           /* read by owner                */
                     56: #define TUWRITE                00200           /* write by owner               */
                     57: #define TUEXEC         00100           /* execute by owner             */
                     58: #define TGREAD         00040           /* read by group                */
                     59: #define TGWRITE                00020           /* execute by group             */
                     60: #define TGEXEC         00010           /* write by group               */
                     61: #define TOREAD         00004           /* read by other                */
                     62: #define TOWRITE                00002           /* write by other               */
                     63: #define TOEXEC         00001           /* execute by other             */
                     64: 
                     65: struct header
                     66: {
                     67:        char            name[NAMSIZ];
                     68:        char            mode[TMODLEN];
                     69:        char            uid[TUIDLEN];
                     70:        char            gid[TGIDLEN];
                     71:        char            size[TSIZLEN];
                     72:        char            mtime[TMTMLEN];
                     73:        char            chksum[TCKSLEN];
                     74:        char            typeflag;
                     75:        char            linkname[NAMSIZ];
                     76:        char            magic[TMAGLEN];
                     77:        char            version[TVERSLEN];
                     78:        char            uname[TUNMLEN];
                     79:        char            gname[TGNMLEN];
                     80:        char            devmajor[TDEVLEN];
                     81:        char            devminor[TDEVLEN];
                     82:        char            prefix[PFXSIZ];
                     83: };
                     84: 
                     85: union hblock
                     86: {
                     87:        char            dummy[TBLOCK];
                     88:        struct header   dbuf;
                     89: };
                     90: 
                     91: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.