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:
parent
55a581dc06
commit
6c391b218e
2 changed files with 20 additions and 8 deletions
13
ChangeLog
13
ChangeLog
|
@ -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'.
|
||||||
|
|
13
kern/elf.c
13
kern/elf.c
|
@ -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;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue