1/* 2 * Copyright (c) 2000-2001 Christoph Hellwig. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions, and the following disclaimer, 10 * without modification. 11 * 2. The name of the author may not be used to endorse or promote products 12 * derived from this software without specific prior written permission. 13 * 14 * Alternatively, this software may be distributed under the terms of the 15 * GNU General Public License ("GPL"). 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR 21 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 */ 30#ifndef _VXFS_EXTERN_H_ 31#define _VXFS_EXTERN_H_ 32 33/* 34 * Veritas filesystem driver - external prototypes. 35 * 36 * This file contains prototypes for all vxfs functions used 37 * outside their respective source files. 38 */ 39 40 41struct kmem_cache; 42struct super_block; 43struct vxfs_inode_info; 44struct inode; 45 46 47/* vxfs_bmap.c */ 48extern daddr_t vxfs_bmap1(struct inode *, long); 49 50/* vxfs_fshead.c */ 51extern int vxfs_read_fshead(struct super_block *); 52 53/* vxfs_inode.c */ 54extern struct kmem_cache *vxfs_inode_cachep; 55extern void vxfs_dumpi(struct vxfs_inode_info *, ino_t); 56extern struct inode * vxfs_get_fake_inode(struct super_block *, 57 struct vxfs_inode_info *); 58extern void vxfs_put_fake_inode(struct inode *); 59extern struct vxfs_inode_info * vxfs_blkiget(struct super_block *, u_long, ino_t); 60extern struct vxfs_inode_info * vxfs_stiget(struct super_block *, ino_t); 61extern void vxfs_read_inode(struct inode *); 62extern void vxfs_clear_inode(struct inode *); 63 64/* vxfs_lookup.c */ 65extern const struct inode_operations vxfs_dir_inode_ops; 66extern const struct file_operations vxfs_dir_operations; 67 68/* vxfs_olt.c */ 69extern int vxfs_read_olt(struct super_block *, u_long); 70 71/* vxfs_subr.c */ 72extern struct page * vxfs_get_page(struct address_space *, u_long); 73extern void vxfs_put_page(struct page *); 74extern struct buffer_head * vxfs_bread(struct inode *, int); 75 76#endif /* _VXFS_EXTERN_H_ */ 77