diff options
| author | tb <> | 2019-05-12 15:52:46 +0000 |
|---|---|---|
| committer | tb <> | 2019-05-12 15:52:46 +0000 |
| commit | c355d03d2e34e4c37bb1eff05e29877d237b7685 (patch) | |
| tree | 80238c8dd112423ba67d51157600dabe1033e14f | |
| parent | ad05e338cf6490eab27bddce9a488c0af13ad7e3 (diff) | |
| download | openbsd-c355d03d2e34e4c37bb1eff05e29877d237b7685.tar.gz openbsd-c355d03d2e34e4c37bb1eff05e29877d237b7685.tar.bz2 openbsd-c355d03d2e34e4c37bb1eff05e29877d237b7685.zip | |
Revert the other hunk of r1.36 as well: in the case of CCM, ccm.key is
assigned from aesni_ccm_init_key() via CRYPTO_ccm128_init(), so it needs
to be copied over...
Pointed out by Guido Vranken.
ok jsing
| -rw-r--r-- | src/lib/libcrypto/evp/e_aes.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/lib/libcrypto/evp/e_aes.c b/src/lib/libcrypto/evp/e_aes.c index a1e94c8ff6..8fddeaaa40 100644 --- a/src/lib/libcrypto/evp/e_aes.c +++ b/src/lib/libcrypto/evp/e_aes.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: e_aes.c,v 1.38 2019/05/10 18:41:17 tb Exp $ */ | 1 | /* $OpenBSD: e_aes.c,v 1.39 2019/05/12 15:52:46 tb Exp $ */ |
| 2 | /* ==================================================================== | 2 | /* ==================================================================== |
| 3 | * Copyright (c) 2001-2011 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 2001-2011 The OpenSSL Project. All rights reserved. |
| 4 | * | 4 | * |
| @@ -1243,7 +1243,17 @@ aes_ccm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) | |||
| 1243 | return 1; | 1243 | return 1; |
| 1244 | 1244 | ||
| 1245 | case EVP_CTRL_COPY: | 1245 | case EVP_CTRL_COPY: |
| 1246 | { | ||
| 1247 | EVP_CIPHER_CTX *out = ptr; | ||
| 1248 | EVP_AES_CCM_CTX *cctx_out = out->cipher_data; | ||
| 1249 | |||
| 1250 | if (cctx->ccm.key) { | ||
| 1251 | if (cctx->ccm.key != &cctx->ks) | ||
| 1252 | return 0; | ||
| 1253 | cctx_out->ccm.key = &cctx_out->ks; | ||
| 1254 | } | ||
| 1246 | return 1; | 1255 | return 1; |
| 1256 | } | ||
| 1247 | 1257 | ||
| 1248 | default: | 1258 | default: |
| 1249 | return -1; | 1259 | return -1; |
