893fbab031
This patch fixes crypto operation data parameters setting
in l2fwd-crypto application, making decryption in chain
with auth verification work.
How to reproduce the issue:
1. Run l2fwd_crypto with command:
-c 0x3 -n 4 --vdev "crypto_aesni_mb" \
--vdev "crypto_aesni_mb" \
-- -p 0x3 --chain CIPHER_HASH \
--cipher_op ENCRYPT --cipher_algo AES_CBC \
--cipher_key 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f \
--iv 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:ff \
--auth_op GENERATE --auth_algo SHA1_HMAC \
--auth_key
11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:
11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:
11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11
2. Send packet with payload and capture forwarded packet.
Payload in forwarded packet is encrypted, what is good.
3. Run l2fwd_crypto with command:
-c 0x3 -n 4 --vdev "crypto_aesni_mb" \
--vdev "crypto_aesni_mb" \
-- -p 0x3 --chain HASH_CIPHER \
--cipher_op DECRYPT --cipher_algo AES_CBC \
--cipher_key 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f \
--iv 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:ff \
--auth_op VERIFY --auth_algo SHA1_HMAC \
--auth_key
11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:
11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:
11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11
4. Send earlier captured packet and capture forwarded packet.
Payload in newly captured packet is not decrypted, what is wrong.
Fixes:
|
||
---|---|---|
.. | ||
bond | ||
cmdline | ||
distributor | ||
dpdk_qat | ||
ethtool | ||
exception_path | ||
helloworld | ||
ip_fragmentation | ||
ip_pipeline | ||
ip_reassembly | ||
ipsec-secgw | ||
ipv4_multicast | ||
kni | ||
l2fwd | ||
l2fwd-cat | ||
l2fwd-crypto | ||
l2fwd-jobstats | ||
l2fwd-keepalive | ||
l3fwd | ||
l3fwd-acl | ||
l3fwd-power | ||
l3fwd-vf | ||
link_status_interrupt | ||
load_balancer | ||
multi_process | ||
netmap_compat | ||
packet_ordering | ||
performance-thread | ||
ptpclient | ||
qos_meter | ||
qos_sched | ||
quota_watermark | ||
rxtx_callbacks | ||
skeleton | ||
tep_termination | ||
timer | ||
vhost | ||
vhost_xen | ||
vm_power_manager | ||
vmdq | ||
vmdq_dcb | ||
Makefile |