summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system-linux.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/system-linux.c b/system-linux.c
index 6e5ca28..f63aeb2 100644
--- a/system-linux.c
+++ b/system-linux.c
@@ -2883,7 +2883,7 @@ static int system_add_xfrm_tunnel(const char *name, const char *kind,
struct blob_attr *cur;
int ret = 0;
- nlm = nlmsg_alloc_simple(RTM_NEWLINK, NLM_F_REQUEST | NLM_F_ACK | NLM_F_CREATE | NLM_F_EXCL);
+ nlm = nlmsg_alloc_simple(RTM_NEWLINK, NLM_F_REQUEST | NLM_F_REPLACE | NLM_F_CREATE);
if (!nlm)
return -1;
@@ -3216,7 +3216,8 @@ static int __system_del_ip_tunnel(const char *name, struct blob_attr **tb)
if (!strcmp(str, "greip") || !strcmp(str, "gretapip") ||
!strcmp(str, "greip6") || !strcmp(str, "gretapip6") ||
!strcmp(str, "vtiip") || !strcmp(str, "vtiip6") ||
- !strcmp(str, "vxlan") || !strcmp(str, "vxlan6"))
+ !strcmp(str, "vxlan") || !strcmp(str, "vxlan6") ||
+ !strcmp(str, "xfrm"))
return system_link_del(name);
else
return tunnel_ioctl(name, SIOCDELTUNNEL, NULL);