1#ifndef __GRUB_MENU_H
2#define __GRUB_MENU_H
3
4#include <stdint.h>
5
6struct menu_module {
7    char *path;
8    char *args;
9};
10
11struct menu_mmap_entry {
12    char *name;
13    uint64_t base;
14    uint64_t length;
15    uint32_t type;
16};
17
18struct menu_lst {
19    char *title;
20
21    uint32_t timeout;
22
23    struct menu_module kernel;
24
25    uint32_t nmodules;
26    struct menu_module *modules;
27
28    uint32_t mmap_len;
29    struct menu_mmap_entry *mmap;
30
31    char *image;
32};
33
34struct menu_lst *read_menu_lst(const char *path);
35
36#endif /* __GRUB_MENU_H */
37