Commit ebf7bd7f authored by Matt Caswell's avatar Matt Caswell
Browse files

Fix dasync engine



The aes128_cbc_hmac_sha1 cipher in the dasync engine is broken. Probably
by commit e38c2e85 which removed use of the "enc" variable...but not
completely.

Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
Reviewed-by: default avatarMatthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/8291)

(cherry picked from commit 695dd3a3)
parent 143ee7b6
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -138,7 +138,6 @@ struct dasync_pipeline_ctx {
    unsigned char **inbufs;
    unsigned char **outbufs;
    size_t *lens;
    int enc;
    unsigned char tlsaad[SSL_MAX_PIPELINES][EVP_AEAD_TLS1_AAD_LEN];
    unsigned int aadctr;
};
@@ -603,7 +602,7 @@ static int dasync_cipher_ctrl_helper(EVP_CIPHER_CTX *ctx, int type, int arg,

            len = p[arg - 2] << 8 | p[arg - 1];

            if (pipe_ctx->enc) {
            if (EVP_CIPHER_CTX_encrypting(ctx)) {
                if ((p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) {
                    if (len < AES_BLOCK_SIZE)
                        return 0;