I do not have a Delphi compiler available right now, but I do not think there is a need for SecureZeroMemory
.
I do remember that in Delphi, the Win32 API functions/macros CopyMemory
and MoveMemory
are identical (they are both implemented just as the pointer "versions" of the Move
RTL function). Hence, the remark at the MSDN CopyMemory
reference page saying that you must use MoveMemory
rather than CopyMemory
is the blocks overlap, is irrelevant. Delphi's Move
always makes the right thing.
I think the same thing applies to ZeroMemory
and SecureZeroMemory
. The first is implemented as FillChar
with #0, and if there would be a SecureZeroMemory
function for Deplhi, I think it would also just be a FillChar
with #0. (If FillChar
would be ignored at some times, it really should be documented in the Delphi reference, but it isn't.)
Please correct me if I am wrong!