diff options
author | Neale Ranns <nranns@cisco.com> | 2019-04-11 08:18:34 +0000 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2019-04-14 14:45:18 +0000 |
commit | 2f3451992e6fa45be492abf173272cf513fc2842 (patch) | |
tree | 93305dfd95dcdf25449ac4d4a6441c6c79328efc /src/vnet/crypto | |
parent | e0a04cf5cec49fc6fb70687622ea3a34e3fd0247 (diff) |
IPSEC-MB: Use random & non-repeating IV (VPP-1642)
hard code IV and key lengths based on cipher.
Init IV from random data, use AES instruction to rotate.
Change-Id: I13a6507d12267b823c528660a903787baeba47a0
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit 21ada3bd7e9bc5cca7c2c8399adcbaa044bf8103)
Diffstat (limited to 'src/vnet/crypto')
-rw-r--r-- | src/vnet/crypto/crypto.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/vnet/crypto/crypto.c b/src/vnet/crypto/crypto.c index 58b13638924..dbdb58b16f6 100644 --- a/src/vnet/crypto/crypto.c +++ b/src/vnet/crypto/crypto.c @@ -119,8 +119,11 @@ vnet_crypto_set_handler (char *alg_name, char *engine) if (id == 0) continue; od = vec_elt_at_index (cm->opt_data, id); - od->active_engine_index = p[0]; - cm->ops_handlers[id] = ce->ops_handlers[id]; + if (ce->ops_handlers[id]) + { + od->active_engine_index = p[0]; + cm->ops_handlers[id] = ce->ops_handlers[id]; + } } return 0; |