2008-01-21 Robert Millan <rmh@aybabtu.com>

Mostly based on bugfix from Bean.

        * kern/elf.c (grub_elf32_phdr_iterate): Use `NESTED_FUNC_ATTR'
        attribute with hook() parameter.
        (grub_elf32_load): Use `NESTED_FUNC_ATTR' with grub_elf32_load_segment()
        declaration.
        (grub_elf64_phdr_iterate): Use `NESTED_FUNC_ATTR'
        attribute with hook() parameter.
        (grub_elf64_load): Use `NESTED_FUNC_ATTR' with grub_elf64_load_segment()
        declaration.
This commit is contained in:
robertmh 2008-01-20 23:47:54 +00:00
parent 55a581dc06
commit 6c391b218e
2 changed files with 20 additions and 8 deletions

View file

@ -1,3 +1,16 @@
2008-01-21 Robert Millan <rmh@aybabtu.com>
Mostly based on bugfix from Bean.
* kern/elf.c (grub_elf32_phdr_iterate): Use `NESTED_FUNC_ATTR'
attribute with hook() parameter.
(grub_elf32_load): Use `NESTED_FUNC_ATTR' with grub_elf32_load_segment()
declaration.
(grub_elf64_phdr_iterate): Use `NESTED_FUNC_ATTR'
attribute with hook() parameter.
(grub_elf64_load): Use `NESTED_FUNC_ATTR' with grub_elf64_load_segment()
declaration.
2008-01-21 Robert Millan <rmh@aybabtu.com> 2008-01-21 Robert Millan <rmh@aybabtu.com>
* conf/i386-pc.rmk (kernel_img_HEADERS): Add `machine/kernel.h'. * conf/i386-pc.rmk (kernel_img_HEADERS): Add `machine/kernel.h'.

View file

@ -139,7 +139,7 @@ grub_elf32_load_phdrs (grub_elf_t elf)
static grub_err_t static grub_err_t
grub_elf32_phdr_iterate (grub_elf_t elf, grub_elf32_phdr_iterate (grub_elf_t elf,
int (*hook) (grub_elf_t, Elf32_Phdr *, void *), int NESTED_FUNC_ATTR (*hook) (grub_elf_t, Elf32_Phdr *, void *),
void *hook_arg) void *hook_arg)
{ {
Elf32_Phdr *phdrs; Elf32_Phdr *phdrs;
@ -219,9 +219,8 @@ grub_elf32_load (grub_elf_t _elf, grub_elf32_load_hook_t _load_hook,
grub_size_t load_size = 0; grub_size_t load_size = 0;
grub_err_t err; grub_err_t err;
auto int grub_elf32_load_segment (grub_elf_t elf, Elf32_Phdr *phdr, auto int NESTED_FUNC_ATTR grub_elf32_load_segment (grub_elf_t elf, Elf32_Phdr *phdr, void *hook);
void *hook); int NESTED_FUNC_ATTR grub_elf32_load_segment (grub_elf_t elf, Elf32_Phdr *phdr, void *hook)
int grub_elf32_load_segment (grub_elf_t elf, Elf32_Phdr *phdr, void *hook)
{ {
grub_elf32_load_hook_t load_hook = (grub_elf32_load_hook_t) hook; grub_elf32_load_hook_t load_hook = (grub_elf32_load_hook_t) hook;
grub_addr_t load_addr; grub_addr_t load_addr;
@ -318,7 +317,7 @@ grub_elf64_load_phdrs (grub_elf_t elf)
static grub_err_t static grub_err_t
grub_elf64_phdr_iterate (grub_elf_t elf, grub_elf64_phdr_iterate (grub_elf_t elf,
int (*hook) (grub_elf_t, Elf64_Phdr *, void *), int NESTED_FUNC_ATTR (*hook) (grub_elf_t, Elf64_Phdr *, void *),
void *hook_arg) void *hook_arg)
{ {
Elf64_Phdr *phdrs; Elf64_Phdr *phdrs;
@ -398,9 +397,9 @@ grub_elf64_load (grub_elf_t _elf, grub_elf64_load_hook_t _load_hook,
grub_size_t load_size = 0; grub_size_t load_size = 0;
grub_err_t err; grub_err_t err;
auto int grub_elf64_load_segment (grub_elf_t elf, Elf64_Phdr *phdr, auto int NESTED_FUNC_ATTR grub_elf64_load_segment (grub_elf_t elf, Elf64_Phdr *phdr,
void *hook); void *hook);
int grub_elf64_load_segment (grub_elf_t elf, Elf64_Phdr *phdr, void *hook) int NESTED_FUNC_ATTR grub_elf64_load_segment (grub_elf_t elf, Elf64_Phdr *phdr, void *hook)
{ {
grub_elf64_load_hook_t load_hook = (grub_elf64_load_hook_t) hook; grub_elf64_load_hook_t load_hook = (grub_elf64_load_hook_t) hook;
grub_addr_t load_addr; grub_addr_t load_addr;