Cześć,
kojarzy ktoś czy można jakoś podmienić funkcje w gdb?
cos w stylu
(gdb) print exit
$5 = {<text variable, no debug info>} 0xf6b777a0 <exit>
(gdb) whatis exit
type = <text variable, no debug info>
(gdb) print sleep
$6 = {<text variable, no debug info>} 0xf76daa4b <sleep>
(gdb) set *0xf6b777a0=0xf76daa4b
EDIT:
przykładowy kod
void foo() {
std::cout << "hello" << std::endl;
sleep(1);
exit(1);
std::cout << "hello" << std::endl;
return;
}
chciałbym jakoś pozbyć się tego exit
by funkcja wypisała hello\nworld
i pomyślałem,
że jak przypisze adresowi funcji exit
inną funckcję (np. sleep
) to pozbędę się exit
'a.
ale set *0xf6b777a0=0xf76daa4b
nie zadziałał ;/