From a340fe1ac6a31d4e60affa7209ade48189b18eb4 Mon Sep 17 00:00:00 2001 From: jan_cavojsky Date: Wed, 8 Jul 2020 09:24:12 +0200 Subject: ikev2: add SA dump API Type: feature Ticket: VPP-1897 Change-Id: I0245aceeb344efd29b1f9217c35889a8bbe1f744 Signed-off-by: jan_cavojsky Signed-off-by: Filip Tehlar --- src/plugins/ikev2/ikev2_types.api | 67 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) (limited to 'src/plugins/ikev2/ikev2_types.api') diff --git a/src/plugins/ikev2/ikev2_types.api b/src/plugins/ikev2/ikev2_types.api index bee48f8cef0..58297c05e9c 100644 --- a/src/plugins/ikev2/ikev2_types.api +++ b/src/plugins/ikev2/ikev2_types.api @@ -1,6 +1,6 @@ /* Hey Emacs use -*- mode: C -*- */ /* - * Copyright (c) 2015-2016 Cisco and/or its affiliates. + * Copyright (c) 2015-2020 Cisco and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: @@ -27,6 +27,9 @@ typedef ikev2_id typedef ikev2_ts { + u32 sa_index; + u32 child_sa_index; + bool is_local; u8 protocol_id; u16 start_port; @@ -83,3 +86,65 @@ typedef ikev2_profile bool udp_encap; vl_api_ikev2_auth_t auth; }; + +typedef ikev2_sa_transform +{ + u8 transform_type; + u16 transform_id; + u16 key_len; + u16 key_trunc; + u16 block_size; + u8 dh_group; +}; + +typedef ikev2_keys +{ + u8 sk_d[64]; + u8 sk_d_len; + u8 sk_ai[64]; + u8 sk_ai_len; + u8 sk_ar[64]; + u8 sk_ar_len; + u8 sk_ei[64]; + u8 sk_ei_len; + u8 sk_er[64]; + u8 sk_er_len; + u8 sk_pi[64]; + u8 sk_pi_len; + u8 sk_pr[64]; + u8 sk_pr_len; +}; + +typedef ikev2_child_sa +{ + u32 sa_index; + u32 child_sa_index; + u32 i_spi; + u32 r_spi; + vl_api_ikev2_keys_t keys; + vl_api_ikev2_sa_transform_t encryption; + vl_api_ikev2_sa_transform_t integrity; + vl_api_ikev2_sa_transform_t esn; +}; + +typedef ikev2_sa +{ + u32 sa_index; + u32 profile_index; + + u64 ispi; + u64 rspi; + vl_api_ip4_address_t iaddr; + vl_api_ip4_address_t raddr; + + vl_api_ikev2_keys_t keys; + + /* ID */ + vl_api_ikev2_id_t i_id; + vl_api_ikev2_id_t r_id; + + vl_api_ikev2_sa_transform_t encryption; + vl_api_ikev2_sa_transform_t integrity; + vl_api_ikev2_sa_transform_t prf; + vl_api_ikev2_sa_transform_t dh; +}; -- cgit 1.2.3-korg