История изменений
Исправление hateyoufeel, (текущая версия) :
Как это возможно, если функция пишет только в переданный буффер, и при этом не выходит за указанный размер?
Нет. При указании «%n» в форматной строке данные будут записаны по указателю в соответствующем аргументе.
Это одна из причин, почему никогда нельзя куски форматной строки брать из пользовательского ввода, тащемта. Можно словить remote code execution.
Ну и плюс тут есть ещё такой нюанс что va_arg. Про это морковка тебе объяснит, мне лень печатать, я и так в двух тредах параллельно тут.
Исправление hateyoufeel, :
Как это возможно, если функция пишет только в переданный буффер, и при этом не выходит за указанный размер?
Нет. При указании «%n» в форматной строке данные будут записаны по указателю в соответствующем аргументе.
Это одна из причин, почему никогда нельзя куски форматной строки брать из пользовательского ввода, тащемта. Можно словить remote code execution.
Ну и плюс тут есть ещё такой что va_arg. Про это морковка тебе объяснит, мне лень печатать, я и так в двух тредах параллельно тут.
Исходная версия hateyoufeel, :
Как это возможно, если функция пишет только в переданный буффер, и при этом не выходит за указанный размер?
Нет. При указании «%n» в форматной строке данные будут записаны по указателю в соответствующем аргументе.
Это одна из причин, почему никогда нельзя куски форматной строки брать из пользовательского ввода, тащемта. Можно словить remote code execution.