diff options
author | Filip Tehlar <ftehlar@cisco.com> | 2020-10-07 23:52:37 +0000 |
---|---|---|
committer | Beno�t Ganne <bganne@cisco.com> | 2020-10-21 13:30:41 +0000 |
commit | ec112e5a9eb708c1ee85faf569fef6fa40178294 (patch) | |
tree | e56ba2f771a7884145c675378ace857c1ec1812d /src/plugins/ikev2/ikev2_payload.c | |
parent | 6960da528443ea40b1cdab323c76f978f7b16a8b (diff) |
ikev2: fix setting responder/initiator addresses
Type: fix
Change-Id: Ic406aa914d92e802a5fb0f27c2ffa1b98db012b0
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Diffstat (limited to 'src/plugins/ikev2/ikev2_payload.c')
-rw-r--r-- | src/plugins/ikev2/ikev2_payload.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/plugins/ikev2/ikev2_payload.c b/src/plugins/ikev2/ikev2_payload.c index c03054aa9cd..294864d8c43 100644 --- a/src/plugins/ikev2/ikev2_payload.c +++ b/src/plugins/ikev2/ikev2_payload.c @@ -588,6 +588,30 @@ ikev2_parse_delete_payload (ike_payload_header_t * ikep, u32 rlen) return r; } +u8 * +ikev2_find_ike_notify_payload (ike_header_t * ike, u32 msg_type) +{ + int p = 0; + ike_notify_payload_header_t *n; + ike_payload_header_t *ikep; + u32 payload = ike->nextpayload; + + while (payload != IKEV2_PAYLOAD_NONE) + { + ikep = (ike_payload_header_t *) & ike->payload[p]; + if (payload == IKEV2_PAYLOAD_NOTIFY) + { + n = (ike_notify_payload_header_t *)ikep; + if (n->msg_type == clib_net_to_host_u16 (msg_type)) + return n->payload; + } + u16 plen = clib_net_to_host_u16 (ikep->length); + payload = ikep->nextpayload; + p += plen; + } + return 0; +} + /* * fd.io coding-style-patch-verification: ON * |