is_add = 0;
flags = IPSEC_SA_FLAG_NONE;
proto = IPSEC_PROTOCOL_ESP;
+ integ_alg = IPSEC_INTEG_ALG_NONE;
+ crypto_alg = IPSEC_CRYPTO_ALG_NONE;
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
rv = ipsec_sa_del (id);
if (rv)
- clib_error_return (0, "failed");
+ error = clib_error_return (0, "failed");
done:
unformat_free (line_input);
clib_memset (&p, 0, sizeof (p));
p.lport.stop = p.rport.stop = ~0;
- p.laddr.stop.ip4.as_u32 = p.raddr.stop.ip4.as_u32 = (u32) ~ 0;
- p.laddr.stop.ip6.as_u64[0] = p.laddr.stop.ip6.as_u64[1] = (u64) ~ 0;
- p.raddr.stop.ip6.as_u64[0] = p.raddr.stop.ip6.as_u64[1] = (u64) ~ 0;
is_outbound = 0;
if (!unformat_user (input, unformat_line_input, line_input))
}
}
- /* Check if SA is for IPv6/AH which is not supported. Return error if TRUE. */
- if (p.sa_id)
- {
- uword *p1;
- ipsec_main_t *im = &ipsec_main;
- ipsec_sa_t *sa = 0;
- p1 = hash_get (im->sa_index_by_sa_id, p.sa_id);
- if (!p1)
- {
- error =
- clib_error_return (0, "SA with index %u not found", p.sa_id);
- goto done;
- }
- sa = pool_elt_at_index (im->sad, p1[0]);
- if (sa && sa->protocol == IPSEC_PROTOCOL_AH && is_add && p.is_ipv6)
- {
- error = clib_error_return (0, "AH not supported for IPV6: '%U'",
- format_unformat_error, line_input);
- goto done;
- }
- }
-
rv = ipsec_policy_mk_type (is_outbound, p.is_ipv6, p.policy, &p.type);
if (rv)
vlib_cli_command_t * cmd)
{
unformat_input_t _line_input, *line_input = &_line_input;
+ ipsec_key_t ck = { }, ik =
+ {
+ };
clib_error_t *error = NULL;
- ipsec_key_t ck, ik;
u32 id;
if (!unformat_user (input, unformat_line_input, line_input))