X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=fs%2Finternal.h;h=e96a1667d749d5efa59b659fea5d1f0057ffb973;hb=3daeb42c13567e1505f233f6a699cc0e23c8ab5a;hp=f07147d63255b5a46789c4894b55774c51c96af9;hpb=9361401eb7619c033e2394e4f9f6d410d6719ac7;p=safe%2Fjmp%2Flinux-2.6 diff --git a/fs/internal.h b/fs/internal.h index f07147d..e96a166 100644 --- a/fs/internal.h +++ b/fs/internal.h @@ -9,7 +9,9 @@ * 2 of the License, or (at your option) any later version. */ -#include +struct super_block; +struct linux_binprm; +struct path; /* * block_dev.c @@ -18,11 +20,27 @@ extern struct super_block *blockdev_superblock; extern void __init bdev_cache_init(void); -#define sb_is_blkdev_sb(sb) ((sb) == blockdev_superblock) +static inline int sb_is_blkdev_sb(struct super_block *sb) +{ + return sb == blockdev_superblock; +} + +extern int __sync_blockdev(struct block_device *bdev, int wait); + #else -static inline void bdev_cache_init(void) {} +static inline void bdev_cache_init(void) +{ +} + +static inline int sb_is_blkdev_sb(struct super_block *sb) +{ + return 0; +} -#define sb_is_blkdev_sb(sb) 0 +static inline int __sync_blockdev(struct block_device *bdev, int wait) +{ + return 0; +} #endif /* @@ -31,14 +49,46 @@ static inline void bdev_cache_init(void) {} extern void __init chrdev_init(void); /* - * compat_ioctl.c + * exec.c */ -#ifdef CONFIG_COMPAT -extern struct ioctl_trans ioctl_start[]; -extern int ioctl_table_size; -#endif +extern int check_unsafe_exec(struct linux_binprm *); /* * namespace.c */ extern int copy_mount_options(const void __user *, unsigned long *); +extern int copy_mount_string(const void __user *, char **); + +extern void free_vfsmnt(struct vfsmount *); +extern struct vfsmount *alloc_vfsmnt(const char *); +extern struct vfsmount *__lookup_mnt(struct vfsmount *, struct dentry *, int); +extern void mnt_set_mountpoint(struct vfsmount *, struct dentry *, + struct vfsmount *); +extern void release_mounts(struct list_head *); +extern void umount_tree(struct vfsmount *, int, struct list_head *); +extern struct vfsmount *copy_tree(struct vfsmount *, struct dentry *, int); + +extern void __init mnt_init(void); + +/* + * fs_struct.c + */ +extern void chroot_fs_refs(struct path *, struct path *); + +/* + * file_table.c + */ +extern void mark_files_ro(struct super_block *); +extern struct file *get_empty_filp(void); + +/* + * super.c + */ +extern int do_remount_sb(struct super_block *, int, void *, int); + +/* + * open.c + */ +struct nameidata; +extern struct file *nameidata_to_filp(struct nameidata *); +extern void release_open_intent(struct nameidata *);