
#naukaprogramowania #linux #gdb #programowanie
Ten kod uruchaminay przy pomocy ./program z basha pozwala wprowadzić cała linię tekstu
jeśli jednak uruchomie go z gdb kod ten jest w stanie pobrać tylko jeden znak
dlaczego tak się dzieje? I jak zrobić by można było z gdb pobrać cała linie ?
read:
mov eax,3 ; 3 to read
mov ebx,0 ; 0 to stdin
mov ecx,input ; place to store input
mov edx,60 ; input size
int 0x80 ;and readTen kod uruchaminay przy pomocy ./program z basha pozwala wprowadzić cała linię tekstu
jeśli jednak uruchomie go z gdb kod ten jest w stanie pobrać tylko jeden znak
dlaczego tak się dzieje? I jak zrobić by można było z gdb pobrać cała linie ?
- Najlepsze
- Wszystkie komentarze
znowu_musze_wymyslac
0
@wytrzzeszcz: hm. a gdzie stawiasz breakpoint? Może coś ci nadpisuje edx, bo edx w przeciwieństwie do ebx jest volatile

wytrzzeszcz Autor
0
@znowu_musze_wymyslac: na read: i wykonuje nexti
znowu_musze_wymyslac
0
a daj na koniec tego kodu int 3, wywal breakpoint i zobacz co się stanie






