* Improved kernel ELF loader (and made it more similar to the one from the boot
loader): it now supports holes between segments, and accepts any segment order. * Renamed elf.c to elf.cpp and fixed warnings. * Renamed elf_image_info::dynamic_ptr and eheader to dynamic_section and elf_header. * Some cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16878 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1,7 +1,10 @@
|
||||
/*
|
||||
** Copyright 2001, Travis Geiselbrecht. All rights reserved.
|
||||
** Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
* Copyright 2002-2006, Haiku Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT license.
|
||||
*
|
||||
* Copyright 2001, Travis Geiselbrecht. All rights reserved.
|
||||
* Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
#ifndef _ELF32_H
|
||||
#define _ELF32_H
|
||||
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
/*
|
||||
** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
|
||||
** Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
* Copyright 2002-2006, Haiku Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT license.
|
||||
*
|
||||
* Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
|
||||
* Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
#ifndef _KERNEL_ELF_PRIV_H
|
||||
#define _KERNEL_ELF_PRIV_H
|
||||
|
||||
@@ -25,10 +28,10 @@ struct elf_image_info {
|
||||
void *vnode;
|
||||
elf_region text_region;
|
||||
elf_region data_region;
|
||||
addr_t dynamic_ptr; // pointer to the dynamic section
|
||||
addr_t dynamic_section; // pointer to the dynamic section
|
||||
struct elf_linked_image *linked_images;
|
||||
|
||||
struct Elf32_Ehdr *eheader;
|
||||
struct Elf32_Ehdr *elf_header;
|
||||
|
||||
// pointer to symbol participation data structures
|
||||
char *needed;
|
||||
|
||||
Reference in New Issue
Block a user