Re: [3/6] imagehlp: Implement ImageRemoveCertificate
Hi Owen, Owen Rudge wrote:
--- dlls/imagehlp/integrity.c | 73 +++++++++++++++++++++++++++++++++++++-- dlls/imagehlp/tests/integrity.c | 4 +- 2 files changed, 72 insertions(+), 5 deletions(-)
+ cert_data = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, data_size); + + if (!cert_data) + return FALSE; + + ret = SetFilePointer(FileHandle, offset + cert_size_padded, NULL, FILE_BEGIN); + + if (ret == INVALID_SET_FILE_POINTER) + return FALSE; + + /* Read any subsequent certificates */ + r = ReadFile(FileHandle, cert_data, data_size, &count, NULL); + + if ((!r) || (count != data_size)) + return FALSE; + + SetFilePointer(FileHandle, offset, NULL, FILE_BEGIN); + + /* Write them one index back */ + r = WriteFile(FileHandle, cert_data, data_size, &count, NULL); + + if ((!r) || (count != data_size)) + return FALSE; + + HeapFree(GetProcessHeap(), 0, cert_data); You leak cert_data on errors here. Jacek
participants (1)
-
Jacek Caban