|
|
1.1 root 1: /*
2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
3: *
4: * @APPLE_LICENSE_HEADER_START@
5: *
6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights
7: * Reserved. This file contains Original Code and/or Modifications of
8: * Original Code as defined in and that are subject to the Apple Public
9: * Source License Version 1.1 (the "License"). You may not use this file
10: * except in compliance with the License. Please obtain a copy of the
11: * License at http://www.apple.com/publicsource and read it before using
12: * this file.
13: *
14: * The Original Code and all software distributed under the License are
15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
18: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
19: * License for the specific language governing rights and limitations
20: * under the License.
21: *
22: * @APPLE_LICENSE_HEADER_END@
23: */
24:
25: /* $NetBSD: iso_rrip.h,v 1.3 1994/06/29 06:32:02 cgd Exp $ */
26:
27: /*-
28: * Copyright (c) 1993, 1994
29: * The Regents of the University of California. All rights reserved.
30: *
31: * This code is derived from software contributed to Berkeley
32: * by Pace Willisson ([email protected]). The Rock Ridge Extension
33: * Support code is derived from software contributed to Berkeley
34: * by Atsushi Murai ([email protected]).
35: *
36: * Redistribution and use in source and binary forms, with or without
37: * modification, are permitted provided that the following conditions
38: * are met:
39: * 1. Redistributions of source code must retain the above copyright
40: * notice, this list of conditions and the following disclaimer.
41: * 2. Redistributions in binary form must reproduce the above copyright
42: * notice, this list of conditions and the following disclaimer in the
43: * documentation and/or other materials provided with the distribution.
44: * 3. All advertising materials mentioning features or use of this software
45: * must display the following acknowledgement:
46: * This product includes software developed by the University of
47: * California, Berkeley and its contributors.
48: * 4. Neither the name of the University nor the names of its contributors
49: * may be used to endorse or promote products derived from this software
50: * without specific prior written permission.
51: *
52: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
53: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
54: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
55: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
56: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
57: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
58: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
59: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
60: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
61: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
62: * SUCH DAMAGE.
63: *
64: * @(#)iso_rrip.h 8.2 (Berkeley) 1/23/94
65: */
66:
67:
68: /*
69: * Analyze function flag (similar to RR field bits)
70: */
71: #define ISO_SUSP_ATTR 0x0001
72: #define ISO_SUSP_DEVICE 0x0002
73: #define ISO_SUSP_SLINK 0x0004
74: #define ISO_SUSP_ALTNAME 0x0008
75: #define ISO_SUSP_CLINK 0x0010
76: #define ISO_SUSP_PLINK 0x0020
77: #define ISO_SUSP_RELDIR 0x0040
78: #define ISO_SUSP_TSTAMP 0x0080
79: #define ISO_SUSP_IDFLAG 0x0100
80: #define ISO_SUSP_EXTREF 0x0200
81: #define ISO_SUSP_CONT 0x0400
82: #define ISO_SUSP_OFFSET 0x0800
83: #define ISO_SUSP_STOP 0x1000
84: #define ISO_SUSP_UNKNOWN 0x8000
85:
86: typedef struct {
87: struct iso_node *inop;
88: int fields; /* interesting fields in this analysis */
89: daddr_t iso_ce_blk; /* block of continuation area */
90: off_t iso_ce_off; /* offset of continuation area */
91: int iso_ce_len; /* length of continuation area */
92: struct iso_mnt *imp; /* mount structure */
93: ino_t *inump; /* inode number pointer */
94: char *outbuf; /* name/symbolic link output area */
95: u_short *outlen; /* length of above */
96: u_short maxlen; /* maximum length of above */
97: int cont; /* continuation of above */
98: } ISO_RRIP_ANALYZE;
99:
100: int cd9660_rrip_analyze __P((struct iso_directory_record *isodir,
101: struct iso_node *inop, struct iso_mnt *imp));
102: int cd9660_rrip_getname __P((struct iso_directory_record *isodir,
103: char *outbuf, u_short *outlen,
104: ino_t *inump, struct iso_mnt *imp));
105: int cd9660_rrip_getsymname __P((struct iso_directory_record *isodir,
106: char *outbuf, u_short *outlen,
107: struct iso_mnt *imp));
108: int cd9660_rrip_offset __P((struct iso_directory_record *isodir,
109: struct iso_mnt *imp));
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.