TacOS
0.2
|
Bibliothèque destinée à manipuler les fichiers exécutables ELF. Plus de détails...
#include <elf.h>
#include <kmalloc.h>
#include <kunistd.h>
#include <fd_types.h>
#include <klibc/string.h>
Fonctions | |
int | load_program_header (Elf32_Phdr *program_header, Elf32_Ehdr *elf_header, int index, int fd) |
charge un program header depuis un fichier elf Charge le program header n°index depuis le fichier Plus de détails... | |
unsigned long int | elf_size (int fd) |
Calcul la taille que prendra l'exécutable dans la mémoire La fonction évalue l'adresse de départ en mémoire, et l'adresse de fin, et retourne la différence (il n'est pas suffisant d'additionner les tailles des différentes sections) Plus de détails... | |
int | load_elf (int fd, void *dest) |
charge un fichier elf Charge les données utiles de l'exécutable en mémoire, de façon à ce que ce soit pret à exécuter Plus de détails... | |
Elf32_File * | load_elf_file (int fd) |
charge un fichier elf dans la structure Elf32_File Plus de détails... | |
Elf32_Sym * | find_symbol (Elf32_File *file, const char *symbol) |
Trouve un symbole dans un fichier. Plus de détails... | |
Copyright (C) 2010-2014 TacOS developers.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details at http://www.gnu.org/copyleft/gpl.html
You should have received a copy of the GNU General Public License along with this program; if not, see http://www.gnu.org/licenses.
unsigned long int elf_size | ( | int | fd | ) |
fd | descripteur du fichier elf |
Elf32_Sym* find_symbol | ( | Elf32_File * | file, |
const char * | symbol | ||
) |
file | Fichier dans lequel on recherche le symbole |
symbol | Symbole cherché |
int load_elf | ( | int | fd, |
void * | dest | ||
) |
fd | descripteur du fichier à charger |
dest | adresse à laquelle il faut charger l'exécutable |
Elf32_File* load_elf_file | ( | int | fd | ) |
fd | File descriptor du fichier à charger. |
int load_program_header | ( | Elf32_Phdr * | program_header, |
Elf32_Ehdr * | elf_header, | ||
int | index, | ||
int | fd | ||
) |
program_header | adresse où l'on veut charger le header |
elf_header | header principal du fichier |
index | numero du program header à charger |
fd | descripteur du fichier à charger |