Therefore, in src/engine/interpreter/hostcall.c, there is a statement which access isa_logo as a string:
printf(ASNI_FMT("If it is the first case, see\n%s\nfor more details.\n\n"
"If it is the second case, remember:\n"
"* The machine is always right!\n"
"* Every line of untested code is always wrong!\n\n", ASNI_FG_RED), isa_logo);
In the absence of '\0' at the end of isa_logo, memory access is not assured to be within legal bound. Hence, the program is under the risk of global heap overflow issue.
In
src/isa/$ISA/logo.c
,isa_logo
doesn't have a termination character to indicate the end of a string.Therefore, in
src/engine/interpreter/hostcall.c
, there is a statement which accessisa_logo
as a string:In the absence of '\0' at the end of
isa_logo
, memory access is not assured to be within legal bound. Hence, the program is under the risk ofglobal heap overflow
issue.