1 #ifndef _INCLUDE_GRUBFS_H_
2 #define _INCLUDE_GRUBFS_H_
3 extern unsigned long long grub_hack_lastoff;
4 
5 #include <r_io.h>
6 #include <grub/file.h>
7 #include <grub/disk.h>
8 #include <grub/partition.h>
9 
10 typedef struct grubfs {
11 	struct grub_file *file;
12 } GrubFS;
13 
14 GrubFS *grubfs_new (struct grub_fs *myfs, void *data);
15 void grubfs_free (GrubFS *gf);
16 void grubfs_bind_io (RIOBind *iob, ut64 _delta);
17 grub_disk_t grubfs_disk (void *data);
18 void grubfs_disk_free (struct grub_disk *gd);
19 
20 extern struct grub_fs grub_ext2_fs;
21 extern struct grub_fs grub_fat_fs;
22 extern struct grub_fs grub_ntfs_fs;
23 extern struct grub_fs grub_ntfscomp_fs;
24 extern struct grub_fs grub_reiserfs_fs;
25 extern struct grub_fs grub_hfs_fs;
26 extern struct grub_fs grub_hfsplus_fs;
27 extern struct grub_fs grub_ufs_fs;
28 extern struct grub_fs grub_ufs2_fs;
29 extern struct grub_fs grub_udf_fs;
30 extern struct grub_fs grub_iso9660_fs;
31 extern struct grub_fs grub_jfs_fs;
32 extern struct grub_fs grub_sfs_fs;
33 extern struct grub_fs grub_btrfs_fs;
34 extern struct grub_fs grub_xfs_fs;
35 extern struct grub_fs grub_tar_fs;
36 extern struct grub_fs grub_cpio_fs;
37 extern struct grub_fs grub_udf_fs;
38 extern struct grub_fs grub_minix_fs;
39 extern struct grub_fs grub_fb_fs;
40 
41 extern struct grub_partition_map grub_msdos_partition_map;
42 extern struct grub_partition_map grub_apple_partition_map;
43 extern struct grub_partition_map grub_sun_partition_map;
44 extern struct grub_partition_map grub_sun_pc_partition_map;
45 extern struct grub_partition_map grub_bsdlabel_partition_map;
46 extern struct grub_partition_map grub_netbsdlabel_partition_map;
47 extern struct grub_partition_map grub_openbsdlabel_partition_map;
48 extern struct grub_partition_map grub_amiga_partition_map;
49 extern struct grub_partition_map grub_acorn_partition_map;
50 extern struct grub_partition_map grub_gpt_partition_map;
51 
52 #endif
53