From 2955d63c953cc8709ef3412b3f914d450e25208c Mon Sep 17 00:00:00 2001 From: Lantao Liu Date: Wed, 10 Oct 2018 10:49:06 -0700 Subject: [PATCH] Handle empty netns in DEL for `loopback` and `host-device`. Signed-off-by: Lantao Liu --- plugins/main/host-device/host-device.go | 3 +++ plugins/main/loopback/loopback.go | 3 +++ 2 files changed, 6 insertions(+) diff --git a/plugins/main/host-device/host-device.go b/plugins/main/host-device/host-device.go index 7884b0ed..06e3b9e5 100644 --- a/plugins/main/host-device/host-device.go +++ b/plugins/main/host-device/host-device.go @@ -85,6 +85,9 @@ func cmdDel(args *skel.CmdArgs) error { if err != nil { return err } + if args.Netns == "" { + return nil + } containerNs, err := ns.GetNS(args.Netns) if err != nil { return fmt.Errorf("failed to open netns %q: %v", args.Netns, err) diff --git a/plugins/main/loopback/loopback.go b/plugins/main/loopback/loopback.go index 7fb88149..454c905f 100644 --- a/plugins/main/loopback/loopback.go +++ b/plugins/main/loopback/loopback.go @@ -48,6 +48,9 @@ func cmdAdd(args *skel.CmdArgs) error { } func cmdDel(args *skel.CmdArgs) error { + if args.Netns == "" { + return nil + } args.IfName = "lo" // ignore config, this only works for loopback err := ns.WithNetNSPath(args.Netns, func(ns.NetNS) error { link, err := netlink.LinkByName(args.IfName)