Utiliser fonction assembleur avec LD_PRELOAD
Bonjour, je me suis aujourd'hui penché sur LD_PRELOAD pour charger une fonction personalisée avant le chargement de celle du système, cela fonctionne parfaitement en C, mais je souhaiterais faire ca en ASM, voici le programme en C:
Code:
1 2 3 4 5 6 7 8 9
|
#include <string.h>
#include <stdio.h>
int main(){
char chaine[] = "Hello World";
int i = strlen(chaine);
printf("%d",i);
return 0;
} |
Le but étant de remplacer la fonction strlen, et voici le code assembleur !
Code:
1 2 3 4 5 6 7 8
|
section .text
externes:
global strlen
strlen:
mov eax,1
ret |
Oui je sais, ce code n'est pas l'équivalent de la fonction strlen, et cette fonction est censée retourner 1 si je ne me trompe pas.
Mais après je ne sais pas comment faire, comment compiler ce code comme une librairie pour pouvoir le faire passer en LD_PRELOAD ?
Merci