In 0.9.8f, pkcs7_output_data just copies the input data to the output
bio without examining it if the PKCS7_STREAM flag is not set:

    if (!(flags & PKCS7_STREAM))
        {
        SMIME_crlf_copy(data, out, flags);
        return 1;
        }

    /* Partial sign operation */

    /* Initialize sign operation */
    p7bio = PKCS7_dataInit(p7, out);
    ...

Sometime between then and 0.9.8x, that was changed to check for the
SMIME_DETACHED aka PKCS7_DETACHED flag instead:

    if (!(flags & SMIME_DETACHED))
        {
        SMIME_crlf_copy(data, out, flags);
        return 1;
        }

    /* Let PKCS7 code prepend any needed BIOs */

    p7bio = PKCS7_dataInit(p7, out);
    ...

Was that intentional?

Brian
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to