[dpdk-dev] [PATCH 3/5] crypto/dpaa_sec: support ipsec protocol offload

Hemant Agrawal hemant.agrawal at nxp.com
Tue Dec 19 13:59:39 CET 2017


On 12/13/2017 7:26 PM, Akhil Goyal wrote:
> Signed-off-by: Akhil Goyal <akhil.goyal at nxp.com>
> ---
>  doc/guides/cryptodevs/features/dpaa_sec.ini |   1 +
>  drivers/crypto/dpaa_sec/dpaa_sec.c          | 409 ++++++++++++++++++++++++++--
>  drivers/crypto/dpaa_sec/dpaa_sec.h          |  62 ++++-
>  3 files changed, 449 insertions(+), 23 deletions(-)
>
..<snip>
> +	if (ipsec_xform->direction == RTE_SECURITY_IPSEC_SA_DIR_EGRESS) {
> +		memset(&session->encap_pdb, 0, sizeof(struct ipsec_encap_pdb) +
> +				sizeof(session->ip4_hdr));
> +		session->ip4_hdr.ip_v = IPVERSION;
> +		session->ip4_hdr.ip_hl = 5;
> +		session->ip4_hdr.ip_len = rte_cpu_to_be_16(
> +						sizeof(session->ip4_hdr));
> +		session->ip4_hdr.ip_tos = ipsec_xform->tunnel.ipv4.dscp;
> +		session->ip4_hdr.ip_id = 0;
> +		session->ip4_hdr.ip_off = 0;
> +		session->ip4_hdr.ip_ttl = ipsec_xform->tunnel.ipv4.ttl;
> +		session->ip4_hdr.ip_p = (ipsec_xform->proto ==
> +				RTE_SECURITY_IPSEC_SA_PROTO_ESP) ? 0x32 : 0x33;

It will be better if you can use the standard values such as "IPPROTO_ESP"

> +		session->ip4_hdr.ip_sum = 0;
> +		session->ip4_hdr.ip_src = ipsec_xform->tunnel.ipv4.src_ip;
> +		session->ip4_hdr.ip_dst = ipsec_xform->tunnel.ipv4.dst_ip;
> +		session->ip4_hdr.ip_sum = calc_chksum((uint16_t *)
> +						(void *)&session->ip4_hdr,
> +						sizeof(struct ip));

Acked-by: Hemant Agrawal <hemant.agrawal at nxp.com>



More information about the dev mailing list