Ignore:
Timestamp:
Aug 7, 2014, 8:25:37 PM (11 years ago)
Author:
dmik
Message:

openssl: Merge version 1.0.0n from vendor to trunk.

Location:
openssl/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • openssl/trunk

  • TabularUnified openssl/trunk/crypto/pkcs7/pk7_smime.c

    r150 r808  
    9090                }
    9191
    92         if(!(flags & PKCS7_NOCERTS))
    93                 {
    94                 for(i = 0; i < sk_X509_num(certs); i++)
    95                         {
    96                         if (!PKCS7_add_certificate(p7, sk_X509_value(certs, i)))
    97                                 goto err;
    98                         }
     92        for(i = 0; i < sk_X509_num(certs); i++)
     93                {
     94                if (!PKCS7_add_certificate(p7, sk_X509_value(certs, i)))
     95                        goto err;
    9996                }
    10097
     
    574571                }
    575572                ret = SMIME_text(bread, data);
     573                if (ret > 0 && BIO_method_type(tmpmem) == BIO_TYPE_CIPHER)
     574                        {
     575                        if (!BIO_get_cipher_status(tmpmem))
     576                                ret = 0;
     577                        }
    576578                BIO_free_all(bread);
    577579                return ret;
     
    579581                for(;;) {
    580582                        i = BIO_read(tmpmem, buf, sizeof(buf));
    581                         if(i <= 0) break;
    582                         BIO_write(data, buf, i);
     583                        if(i <= 0)
     584                                {
     585                                ret = 1;
     586                                if (BIO_method_type(tmpmem) == BIO_TYPE_CIPHER)
     587                                        {
     588                                        if (!BIO_get_cipher_status(tmpmem))
     589                                                ret = 0;
     590                                        }
     591                                       
     592                                break;
     593                                }
     594                        if (BIO_write(data, buf, i) != i)
     595                                {
     596                                ret = 0;
     597                                break;
     598                                }
    583599                }
    584600                BIO_free_all(tmpmem);
    585                 return 1;
     601                return ret;
    586602        }
    587603}
Note: See TracChangeset for help on using the changeset viewer.