freebsd-ports/security/mhash/files/patch-src-hmac_test.c
Peter Pentchev d9983ccbfa Update to mhash-0.9.9, fixing several style issues, lots of memory
leaks, and two serious (even if not easily triggered) bugs.
2008-01-16 15:46:05 +00:00

101 lines
2.8 KiB
C

diff -urN -x .svn ../../branches/vendor/mhash/src/hmac_test.c ./src/hmac_test.c
--- ../../branches/vendor/mhash/src/hmac_test.c 2008-01-16 14:34:18.000000000 +0200
+++ ./src/hmac_test.c 2008-01-16 15:33:23.000000000 +0200
@@ -45,10 +45,23 @@
passlen=sizeof(KEY1) - 1;
password = mutils_malloc(passlen + 1);
+ if (password == NULL)
+ {
+ fprintf(stderr, "HMAC-Test: Failed\n");
+ fprintf(stderr, "Cannot allocate memory.\n");
+ return(MUTILS_SYSTEM_RESOURCE_ERROR);
+ }
mutils_memcpy(password, (mutils_word8 *) KEY1, passlen);
datalen = mutils_strlen((mutils_word8 *) DATA1);
data = mutils_malloc(datalen+1);
+ if (data == NULL)
+ {
+ fprintf(stderr, "HMAC-Test: Failed\n");
+ fprintf(stderr, "Cannot allocate memory.\n");
+ mutils_free(password);
+ return(MUTILS_SYSTEM_RESOURCE_ERROR);
+ }
mutils_strcpy(data, (mutils_word8 *) DATA1);
td = mhash_hmac_init(MHASH_MD5, password, passlen,
@@ -58,6 +71,14 @@
mac = mhash_hmac_end(td);
tmp = mutils_asciify(mac, mhash_get_block_size(MHASH_MD5));
+ if (tmp == NULL)
+ {
+ fprintf(stderr, "HMAC-Test: Failed\n");
+ fprintf(stderr, "Cannot allocate memory.\n");
+ mutils_free(password);
+ mutils_free(data);
+ return(MUTILS_SYSTEM_RESOURCE_ERROR);
+ }
result = mutils_strcmp((mutils_word8 *) DIGEST1, tmp);
@@ -69,6 +90,7 @@
fprintf(stderr, "Digest size: %d\n", mhash_get_block_size(MHASH_MD5));
fprintf(stderr, "Expecting: 0x%s\n", DIGEST1);
fprintf(stderr, "Got: 0x%s\n", tmp);
+ mutils_free(tmp);
return(MUTILS_INVALID_RESULT);
}
@@ -76,14 +98,25 @@
/* Test No 2 */
- mutils_memset(tmp, 0, sizeof(tmp));
-
passlen=sizeof(KEY2) - 1;
password = (mutils_word8 *) mutils_malloc(passlen+1);
+ if (password == NULL)
+ {
+ fprintf(stderr, "HMAC-Test: Failed\n");
+ fprintf(stderr, "Cannot allocate memory.\n");
+ return(MUTILS_SYSTEM_RESOURCE_ERROR);
+ }
mutils_memcpy(password, KEY2, passlen);
datalen = mutils_strlen((mutils_word8 *) DATA2);
data = (mutils_word8 *) mutils_malloc(datalen+1);
+ if (data == NULL)
+ {
+ fprintf(stderr, "HMAC-Test: Failed\n");
+ fprintf(stderr, "Cannot allocate memory.\n");
+ mutils_free(password);
+ return(MUTILS_SYSTEM_RESOURCE_ERROR);
+ }
mutils_strcpy(data, (mutils_word8 *) DATA2);
td = mhash_hmac_init(MHASH_MD5, password, passlen,
@@ -93,6 +126,14 @@
mac = mhash_hmac_end(td);
tmp = mutils_asciify(mac, mhash_get_block_size(MHASH_MD5));
+ if (tmp == NULL)
+ {
+ fprintf(stderr, "HMAC-Test: Failed\n");
+ fprintf(stderr, "Cannot allocate memory.\n");
+ mutils_free(password);
+ mutils_free(data);
+ return(MUTILS_SYSTEM_RESOURCE_ERROR);
+ }
result = mutils_strcmp((mutils_word8 *) DIGEST2, tmp);
@@ -103,6 +144,7 @@
{
fprintf(stderr, "HMAC-Test: Failed\n");
fprintf(stderr, "Expecting: 0x%s\nGot: 0x%s\n", DIGEST2, tmp);
+ mutils_free(tmp);
return(MUTILS_INVALID_RESULT);
}