aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/odp/ipsec/esp_decrypt.c
AgeCommit message (Collapse)AuthorFilesLines
2018-02-22plugins: odp: delete aad field initializationSzymon Sliwa1-2/+0
Due to some bugs in the old odp-dpdk aad field needed to be manually initialized to 0. That is no longer true, what's more odp does not contain this field, thus making it impossible to compile. Due to above mentioned reasons, delete this. Change-Id: I5ec9278d44e49991fad741a43100da4b64823bf3 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-21plugins: odp: Cosmetic changes in the IPsec implementationSzymon Sliwa1-4/+0
1) renamed ipsec_api to enable_odp_ipsec, for consistency 2) added crude ASSERTs to make sure the configuration is sane 3) removed passing ipsec_api as argument, as this is a global flag now 4) reorder code - put ipsec initialization before putting workers in polling mode 5) remove not used recycle vector from esp_encrypt.c/esp_decrypt.c 6) change clib_error_return to clib_error in ipsec.c, as clib_error_return silently passes when 0 is the first argument Change-Id: Id2c6da985e872f12c8409918fb9cc6113b486d10 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-19plugins: odp: rename functions and change trace contentSzymon Sliwa1-14/+17
Change-Id: I1f71fae3af5e36b710c8c978d8b9b74ea802e012 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-19plugins: odp: remove copying the ip header twiceSzymon Sliwa1-28/+6
Change-Id: Ib32d9df19bb9b0db1b3a0d30d991f1a1f11d66c7 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-19plugins: odp: ipsec: Fix multiple issuesSzymon Sliwa1-6/+8
1) added casts on assignment to post_crypto.next_index as the type of the field changed 2) removed checking result when crypto operation is asynchronous as it make no sense 3) fixed bug which could cause issues when some of the operations are done synchronously and some asynchronously Change-Id: I123d70402c0210b11dfc2d0fff2c72aa100ce838 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-19plugins: odp: ipsec: Del GRE as it was not testedSzymon Sliwa1-8/+1
In case of trying to add GRE to the IPsec implementation, be careful as the post_crypto and ipsec fields of the vnet_buffer union overlap, and both are needed for the ODP based ipsec with GRE. Change-Id: If20fa9d78f2879264c02922f21bc204fba1ab616 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-06plugins: odp: Add support for IPv6 IPsecSzymon Sliwa1-47/+48
Change-Id: I229128ccd88c1cf608e20507ca26752b9c0495f5 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-06plugins: odp: Add support for async crypto modeSzymon Sliwa1-10/+96
By default ipsec picks asynchronuous crypto. After the operation it may turn out that the operation was performed synchronously anyways, in such case the packet is send further by the esp_* node because there will be no notification event sent about the crypto completion. To use asynchronous mode put async in the odp section of the startup.conf file, like this: odp { async } Falls back to synchronous mode. Change-Id: I5301df5f1c93a5ccd53a9c0ed2c4cacb9ca5fdd4 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-05plugins: odp: Add tunnel modeSzymon Sliwa1-11/+19
Change-Id: I8be5f8aa63da8fdf4b2043ba9cd048f2269e4e99 Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-05plugins: odp: Remove copying from the esp_{encrypt, decrypt}Szymon Sliwa1-100/+79
Change-Id: I5d71505e221e837c7569963fda674e970e5ee31d Signed-off-by: Szymon Sliwa <szs@semihalf.com>
2018-02-05plugins: odp: Add ODP-IPsec nodeSzymon Sliwa1-0/+472
Based heavily on the src/vnet/ipsec. Reuses the pure software VPP IPsec implementation CLI command. To use enable-odp-crypto needs to be present in the odp section of startup configuration, like this: odp { enable-odp-crypto } Currenlty only IPv4 is supported, and only in transport mode. Authentication headers are not supported, this limitation is inherited from VPP. Supported crypto algorithms are aes-cbc-128 for encryption, and sha-512-256, sha-256-128, sha1-96 for authentication Change-Id: I08c66f96a73d8cb4ef1095f181ddf47506abc39a Signed-off-by: Szymon Sliwa <szs@semihalf.com>