Annotation of embedaddon/php/ext/fileinfo/libmagic/tar.h, revision 1.1.1.2
1.1 misho 1: /*
2: * Copyright (c) Ian F. Darwin 1986-1995.
3: * Software written by Ian F. Darwin and others;
4: * maintained 1995-present by Christos Zoulas and others.
1.1.1.2 ! misho 5: *
1.1 misho 6: * Redistribution and use in source and binary forms, with or without
7: * modification, are permitted provided that the following conditions
8: * are met:
9: * 1. Redistributions of source code must retain the above copyright
10: * notice immediately at the beginning of the file, without modification,
11: * this list of conditions, and the following disclaimer.
12: * 2. Redistributions in binary form must reproduce the above copyright
13: * notice, this list of conditions and the following disclaimer in the
14: * documentation and/or other materials provided with the distribution.
1.1.1.2 ! misho 15: *
1.1 misho 16: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19: * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
20: * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26: * SUCH DAMAGE.
27: */
28: /*
29: * Header file for public domain tar (tape archive) program.
30: *
31: * @(#)tar.h 1.20 86/10/29 Public Domain.
32: *
33: * Created 25 August 1985 by John Gilmore, ihnp4!hoptoad!gnu.
34: *
1.1.1.2 ! misho 35: * $File: tar.h,v 1.13 2010/11/30 14:58:53 rrt Exp $ # checkin only
1.1 misho 36: */
37:
38: /*
39: * Header block on tape.
40: *
41: * I'm going to use traditional DP naming conventions here.
42: * A "block" is a big chunk of stuff that we do I/O on.
43: * A "record" is a piece of info that we care about.
44: * Typically many "record"s fit into a "block".
45: */
46: #define RECORDSIZE 512
47: #define NAMSIZ 100
48: #define TUNMLEN 32
49: #define TGNMLEN 32
50:
51: union record {
1.1.1.2 ! misho 52: unsigned char charptr[RECORDSIZE];
1.1 misho 53: struct header {
54: char name[NAMSIZ];
55: char mode[8];
56: char uid[8];
57: char gid[8];
58: char size[12];
59: char mtime[12];
60: char chksum[8];
61: char linkflag;
62: char linkname[NAMSIZ];
63: char magic[8];
64: char uname[TUNMLEN];
65: char gname[TGNMLEN];
66: char devmajor[8];
67: char devminor[8];
68: } header;
69: };
70:
71: /* The magic field is filled with this if uname and gname are valid. */
72: #define TMAGIC "ustar" /* 5 chars and a null */
73: #define GNUTMAGIC "ustar " /* 7 chars and a null */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>