Verify modules on build-time rather than failing in runtime.

This commit is contained in:
Vladimir Serbinenko 2015-12-31 13:09:15 +01:00
parent 5919626c90
commit a7cf8b1e23
7 changed files with 468 additions and 3 deletions

View file

@ -0,0 +1,19 @@
#include <stdint.h>
#include <stdlib.h>
#include <grub/types.h>
#define GRUB_MODULE_VERIFY_SUPPORTS_REL 1
#define GRUB_MODULE_VERIFY_SUPPORTS_RELA 2
struct grub_module_verifier_arch {
const char *name;
int voidp_sizeof;
int bigendian;
int machine;
int flags;
const int *supported_relocations;
};
void grub_module_verify64(void *module_img, size_t module_size, const struct grub_module_verifier_arch *arch);
void grub_module_verify32(void *module_img, size_t module_size, const struct grub_module_verifier_arch *arch);