K
Size: a a a
AM
format ELF64 executable 3можно ввести строку любой длины до нажатия Enter. После этого buf_size элементов "поглощается" программой, остальное продолжает висеть во входном буфере. Enter тоже передается, если помещается в буфер.
entry start
segment readable executable
start:
; Читать из консоли
mov eax, 3 ; Читать
mov ebx, 1 ; Консоль
mov ecx, buf ; Буфер
mov edx, buf_size ; Максимальный размер
int 0x80
mov [real_size], eax ; Реальный размер
; Писать в консоль
mov eax, 4 ; Писать
mov ebx, 1 ; Консоль
mov ecx, buf ; Буфер
mov edx, [real_size] ; Реальный размер
int 0x80
mov eax,1
xor ebx,ebx
int 0x80
segment readable writeable
buf_size = 10
real_size dd ?
buf db buf_size dup (?)
$ ./test_4
abcdefghigklmnop
$ klmnop
bash: klmnop: команда не найдена
A
AM
AM
楽
NW
NW
NW
楽
NW
AM
D