Blob Blame History Raw
diff -up openssl-fips-0.9.8e/crypto/pkcs7/pk7_mime.c.bad-mime2 openssl-fips-0.9.8e/crypto/pkcs7/pk7_mime.c
--- openssl-fips-0.9.8e/crypto/pkcs7/pk7_mime.c.bad-mime2	2012-03-19 17:42:34.000000000 +0100
+++ openssl-fips-0.9.8e/crypto/pkcs7/pk7_mime.c	2012-03-19 18:07:00.357352534 +0100
@@ -689,9 +689,8 @@ static int mime_hdr_addparam(MIME_HEADER
 static int mime_hdr_cmp(const MIME_HEADER * const *a,
 			const MIME_HEADER * const *b)
 {
-	if ((*a)->name == NULL || (*b)->name == NULL)
-		return (*a)->name - (*b)->name < 0 ? -1 :
-			(*a)->name - (*b)->name > 0 ? 1 : 0;
+	if (!(*a)->name || !(*b)->name)
+		return !!(*a)->name - !!(*b)->name;
 
 	return(strcmp((*a)->name, (*b)->name));
 }
@@ -699,6 +698,8 @@ static int mime_hdr_cmp(const MIME_HEADE
 static int mime_param_cmp(const MIME_PARAM * const *a,
 			const MIME_PARAM * const *b)
 {
+	if (!(*a)->param_name || !(*b)->param_name)
+		return !!(*a)->param_name - !!(*b)->param_name;
 	return(strcmp((*a)->param_name, (*b)->param_name));
 }