diff options
author | Matt Caswell <matt@openssl.org> | 2014-12-07 23:53:22 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2014-12-08 10:29:03 +0000 |
commit | 3feb63054a981528e77a4a8f58a822c8dff4f4c5 (patch) | |
tree | d74b62347b5bac22531d2c4d64f6cb53277e0f82 /crypto/modes | |
parent | e4bbee963348414a8f5e75dc7d23c3e30c72a860 (diff) | |
download | openssl-3feb63054a981528e77a4a8f58a822c8dff4f4c5.tar.gz |
Added OPENSSL_NO_OCB guards
Reviewed-by: Tim Hudson <tjh@openssl.org>
Diffstat (limited to 'crypto/modes')
-rw-r--r-- | crypto/modes/modes.h | 2 | ||||
-rw-r--r-- | crypto/modes/modes_lcl.h | 7 | ||||
-rw-r--r-- | crypto/modes/ocb128.c | 4 |
3 files changed, 11 insertions, 2 deletions
diff --git a/crypto/modes/modes.h b/crypto/modes/modes.h index e1ebd45a36..3fb1b4b58b 100644 --- a/crypto/modes/modes.h +++ b/crypto/modes/modes.h @@ -152,6 +152,7 @@ size_t CRYPTO_128_unwrap_pad(void *key, const unsigned char *icv, unsigned char *out, const unsigned char *in, size_t inlen, block128_f block); +#ifndef OPENSSL_NO_OCB typedef struct ocb128_context OCB128_CONTEXT; OCB128_CONTEXT *CRYPTO_ocb128_new(void *keyenc, void *keydec, block128_f encrypt, block128_f decrypt); @@ -172,6 +173,7 @@ int CRYPTO_ocb128_finish(OCB128_CONTEXT *ctx,const unsigned char *tag, size_t len); int CRYPTO_ocb128_tag(OCB128_CONTEXT *ctx, unsigned char *tag, size_t len); void CRYPTO_ocb128_cleanup(OCB128_CONTEXT *ctx); +#endif /* OPENSSL_NO_ECB */ #ifdef __cplusplus } diff --git a/crypto/modes/modes_lcl.h b/crypto/modes/modes_lcl.h index 181382510d..1d8315554d 100644 --- a/crypto/modes/modes_lcl.h +++ b/crypto/modes/modes_lcl.h @@ -136,20 +136,22 @@ struct ccm128_context { void *key; }; +#ifndef OPENSSL_NO_OCB + #ifdef STRICT_ALIGNMENT typedef struct { unsigned char a[16]; } OCB_BLOCK; # define ocb_block16_xor(in1,in2,out) \ ocb_block_xor((in1)->a,(in2)->a,16,(out)->a) -#else +#else /* STRICT_ALIGNMENT */ typedef struct { u64 a; u64 b; } OCB_BLOCK; # define ocb_block16_xor(in1,in2,out) \ (out)->a=(in1)->a^(in2)->a; (out)->b=(in1)->b^(in2)->b; -#endif +#endif /* STRICT_ALIGNMENT */ struct ocb128_context { /* Need both encrypt and decrypt key schedules for decryption */ @@ -175,3 +177,4 @@ struct ocb128_context { OCB_BLOCK checksum; }; +#endif /* OPENSSL_NO_OCB */ diff --git a/crypto/modes/ocb128.c b/crypto/modes/ocb128.c index eca12d7152..ef8b2f4b66 100644 --- a/crypto/modes/ocb128.c +++ b/crypto/modes/ocb128.c @@ -51,6 +51,8 @@ #include <openssl/crypto.h> #include "modes_lcl.h" +#ifndef OPENSSL_NO_OCB + union ublock { unsigned char *chrblk; OCB_BLOCK *ocbblk; @@ -585,3 +587,5 @@ void CRYPTO_ocb128_cleanup(OCB128_CONTEXT * ctx) OPENSSL_cleanse(ctx, sizeof(*ctx)); } } + +#endif /* OPENSSL_NO_OCB */ |