Loading CHANGES +4 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,10 @@ Changes between 0.9.6 and 0.9.6a [xx XXX 2000] *) Fix to uni2asc() to cope with zero length Unicode strings. These are present in some PKCS#12 files. [Steve Henson] *) Increase s2->wbuf allocation by one byte in ssl2_new (ssl/s2_lib.c). Otherwise do_ssl_write (ssl/s2_pkt.c) will write beyond buffer limits when writing a 32767 byte record. Loading crypto/pkcs12/p12_utl.c +1 −1 Original line number Diff line number Diff line Loading @@ -83,7 +83,7 @@ char *uni2asc (unsigned char *uni, int unilen) char *asctmp; asclen = unilen / 2; /* If no terminating zero allow for one */ if (uni[unilen - 1]) asclen++; if (!unilen || uni[unilen - 1]) asclen++; uni++; if (!(asctmp = OPENSSL_malloc (asclen))) return NULL; for (i = 0; i < unilen; i+=2) asctmp[i>>1] = uni[i]; Loading Loading
CHANGES +4 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,10 @@ Changes between 0.9.6 and 0.9.6a [xx XXX 2000] *) Fix to uni2asc() to cope with zero length Unicode strings. These are present in some PKCS#12 files. [Steve Henson] *) Increase s2->wbuf allocation by one byte in ssl2_new (ssl/s2_lib.c). Otherwise do_ssl_write (ssl/s2_pkt.c) will write beyond buffer limits when writing a 32767 byte record. Loading
crypto/pkcs12/p12_utl.c +1 −1 Original line number Diff line number Diff line Loading @@ -83,7 +83,7 @@ char *uni2asc (unsigned char *uni, int unilen) char *asctmp; asclen = unilen / 2; /* If no terminating zero allow for one */ if (uni[unilen - 1]) asclen++; if (!unilen || uni[unilen - 1]) asclen++; uni++; if (!(asctmp = OPENSSL_malloc (asclen))) return NULL; for (i = 0; i < unilen; i+=2) asctmp[i>>1] = uni[i]; Loading