wireguard: add async mode for encryption packets 79/35079/2
authorGabriel Oginski <gabrielx.oginski@intel.com>
Wed, 10 Nov 2021 07:59:56 +0000 (07:59 +0000)
committerGabriel Oginski <gabrielx.oginski@intel.com>
Tue, 25 Jan 2022 10:04:23 +0000 (11:04 +0100)
commit65c070f9da9172c0f6b74427983f6c9923a8e9b5
treeac901b4e7fd30bdc82f1036e84c8340677eb0412
parentab2478ceedc1756e56b2c3406b168826ffa17555
wireguard: add async mode for encryption packets

Originally wireguard doesn't support async mode for encryption packets.

This patch add async mode for encryption in wireguard and also adds
support chacha20-poly1305 algorithm in cryptodev for async handler.
In addition it contains new command line to activate async mode for wireguard:
  set wireguard async mode on|off

and also add new command to check active mode for wireguard:
  show wireguard mode

Type: improvement

Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: I141d48b42ee8dbff0112b8542ab5205268089da6
(cherry picked from commit 492d7790ff26c569bee81617c662363652891140)
src/plugins/wireguard/wireguard.api
src/plugins/wireguard/wireguard.c
src/plugins/wireguard/wireguard.h
src/plugins/wireguard/wireguard_api.c
src/plugins/wireguard/wireguard_cli.c
src/plugins/wireguard/wireguard_noise.c
src/plugins/wireguard/wireguard_noise.h
src/plugins/wireguard/wireguard_output_tun.c
src/plugins/wireguard/wireguard_timer.c
src/plugins/wireguard/wireguard_timer.h
src/vnet/crypto/crypto.h