- Fix small syntax error in reset16.lds
- small bug fixes to the elf bootloader - factor the elf bootloader into focused smal subroutines that are easier to comprehend and maintain - Implement support for PT_NOTE headers and parsing ELF notes if we need special functionality An ELF Image should never need an ELF loader to interpret an ELF to work correctly, making interpretation of all ELF notes optional. - Implement support for notes giving PROGRAM_NAME, PROGRAM_VERSION, and PROGRAM_CHECKSUM
This commit is contained in:
parent
811a430c87
commit
bf85f95212
7 changed files with 450 additions and 184 deletions
|
|
@ -393,10 +393,12 @@ extern int elf_check_arch(Elf_ehdr *ehdr);
|
|||
extern void jmp_to_elf_entry(void *entry, unsigned long buffer);
|
||||
struct stream;
|
||||
struct lb_memory;
|
||||
extern int elfload(struct stream *stream, struct lb_memory *mem,
|
||||
unsigned char *header, unsigned long header_size);
|
||||
extern int elfboot(struct stream *stream, struct lb_memory *mem);
|
||||
|
||||
#define FIRMWARE_TYPE "LinuxBIOS"
|
||||
#define BOOTLOADER "elfboot"
|
||||
#define BOOTLOADER_VERSION "1.1"
|
||||
#define BOOTLOADER_VERSION "1.2"
|
||||
|
||||
#endif /* elf.h */
|
||||
|
|
|
|||
|
|
@ -2,5 +2,6 @@
|
|||
#define IP_CHECKSUM_H
|
||||
|
||||
unsigned long compute_ip_checksum(void *addr, unsigned long length);
|
||||
unsigned long add_ip_checksums(unsigned long offset, unsigned long sum, unsigned long new);
|
||||
|
||||
#endif /* IP_CHECKSUM_H */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue