Add a compatibility EVP_CIPH_OCB_MODE value.

Node references it these days. Also replace the no-op modes with negative
numbers rather than zero. Stream ciphers like RC4 report a "mode" of zero, so
code comparing the mode to a dummy value will get confused.

(I came across https://github.com/nodejs/node/pull/23635, though we'd have run
into it sooner or later anyway. Better to just define the value and avoid ifdef
proliferation.)

Change-Id: I223f25663e138480ad83f35aa16f5218f1425563
Reviewed-on: https://boringssl-review.googlesource.com/c/32464
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: Adam Langley <agl@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
This commit is contained in:
David Benjamin 2018-10-14 11:01:40 -05:00 committed by CQ bot account: commit-bot@chromium.org
parent 0e150027f9
commit 4b968339e3

View File

@ -424,8 +424,9 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cfb128(void);
// The following flags do nothing and are included only to make it easier to // The following flags do nothing and are included only to make it easier to
// compile code with BoringSSL. // compile code with BoringSSL.
#define EVP_CIPH_CCM_MODE 0 #define EVP_CIPH_CCM_MODE (-1)
#define EVP_CIPH_WRAP_MODE 0 #define EVP_CIPH_OCB_MODE (-2)
#define EVP_CIPH_WRAP_MODE (-3)
#define EVP_CIPHER_CTX_FLAG_WRAP_ALLOW 0 #define EVP_CIPHER_CTX_FLAG_WRAP_ALLOW 0
// EVP_CIPHER_CTX_set_flags does nothing. // EVP_CIPHER_CTX_set_flags does nothing.