plugins: don't require CNI_NETNS for DEL command

This will allow to free up the IPAM allocations when the caller doesn't
have access to the network namespace anymore, e.g. due to a reboot.
This commit is contained in:
Stefan Junker 2016-05-27 10:57:39 +02:00
parent 7f90f9d559
commit 72337159c1
5 changed files with 17 additions and 1 deletions

View File

@ -69,7 +69,7 @@ func PluginMain(cmdAdd, cmdDel func(_ *CmdArgs) error) {
&netns,
reqForCmdEntry{
"ADD": true,
"DEL": true,
"DEL": false,
},
},
{

View File

@ -289,6 +289,10 @@ func cmdDel(args *skel.CmdArgs) error {
return err
}
if args.Netns == "" {
return nil
}
var ipn *net.IPNet
err = ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
var err error

View File

@ -152,6 +152,10 @@ func cmdDel(args *skel.CmdArgs) error {
return err
}
if args.Netns == "" {
return nil
}
return ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
return ip.DelLinkByName(args.IfName)
})

View File

@ -170,6 +170,10 @@ func cmdDel(args *skel.CmdArgs) error {
return err
}
if args.Netns == "" {
return nil
}
return ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
return ip.DelLinkByName(args.IfName)
})

View File

@ -199,6 +199,10 @@ func cmdDel(args *skel.CmdArgs) error {
return err
}
if args.Netns == "" {
return nil
}
var ipn *net.IPNet
err := ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
var err error