add ssl_FreeZeroDecode() to sniffer.c

This commit is contained in:
Chris Conlon 2016-03-31 13:25:39 -06:00
parent ec9f10d74f
commit 2939c3ace1
3 changed files with 19 additions and 2 deletions

View File

@ -3245,10 +3245,23 @@ int ssl_DecodePacket(const byte* packet, int length, byte** data, char* error)
/* Deallocator for the decoded data buffer. */
/* returns 0 on success, -1 on error */
int ssl_FreeDecodeBuffer(byte** data, char* error)
{
return ssl_FreeZeroDecodeBuffer(data, 0, error);
}
/* Deallocator for the decoded data buffer, zeros out buffer. */
/* returns 0 on success, -1 on error */
int ssl_FreeZeroDecodeBuffer(byte** data, int sz, char* error)
{
(void)error;
if (sz < 0) {
return -1;
}
if (data != NULL) {
ForceZero(*data, (word32)sz);
free(*data);
*data = NULL;
}

View File

@ -314,7 +314,7 @@ int main(int argc, char** argv)
if (ret > 0) {
data[ret] = 0;
printf("SSL App Data(%d:%d):%s\n", packetNumber, ret, data);
ssl_FreeDecodeBuffer(&data, err);
ssl_FreeZeroDecodeBuffer(&data, ret, err);
}
}
else if (saveFile)

View File

@ -62,6 +62,10 @@ SSL_SNIFFER_API int ssl_DecodePacket(const unsigned char* packet, int length,
WOLFSSL_API
SSL_SNIFFER_API int ssl_FreeDecodeBuffer(unsigned char** data, char* error);
WOLFSSL_API
SSL_SNIFFER_API int ssl_FreeZeroDecodeBuffer(unsigned char** data, int sz,
char* error);
WOLFSSL_API
SSL_SNIFFER_API int ssl_Trace(const char* traceFile, char* error);