--- /dev/null
+diff -up openssl-0.9.8j/crypto/asn1/asn_mime.c.bad-mime openssl-0.9.8j/crypto/asn1/asn_mime.c
+--- openssl-0.9.8j/crypto/asn1/asn_mime.c.bad-mime 2008-08-05 17:56:11.000000000 +0200
++++ openssl-0.9.8j/crypto/asn1/asn_mime.c 2009-01-14 22:08:34.000000000 +0100
+@@ -792,6 +792,10 @@ 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;
++
+ return(strcmp((*a)->name, (*b)->name));
+ }
+