Internally, the NASL interpretor uses two C values to return nothing
in NASL: NULL (= (void*)0) when there is an error, and FAKE_CELL (=
(void*) 1) when everything is OK.
The behaviour of the interpretor changes if it is compiled with
STOP_AT_FIRST_ERROR but this was never used, and will probably never
be.
I suggest that FAKE_CELL is removed, as it is useless and error prone
(you have to test c == NULL || c == FAKE_CELL before derefencing the
pointer, otherwise SEGV is the punishment).
Has the defense anything to say to save the life of this constant?
in NASL: NULL (= (void*)0) when there is an error, and FAKE_CELL (=
(void*) 1) when everything is OK.
The behaviour of the interpretor changes if it is compiled with
STOP_AT_FIRST_ERROR but this was never used, and will probably never
be.
I suggest that FAKE_CELL is removed, as it is useless and error prone
(you have to test c == NULL || c == FAKE_CELL before derefencing the
pointer, otherwise SEGV is the punishment).
Has the defense anything to say to save the life of this constant?