func freeNetworkResources(stateDriver core.StateDriver, nwMasterCfg *NwConfig, nwCfg *drivers.OvsCfgNetworkState, gCfg *gstate.Cfg) (err error) { tempRm, err := resources.GetStateResourceManager() if err != nil { return err } rm := core.ResourceManager(tempRm) if nwCfg.PktTagType == "vlan" { err = gCfg.FreeVLAN(rm, uint(nwCfg.PktTag)) if err != nil { return err } } else if nwCfg.PktTagType == "vxlan" { log.Infof("freeing vlan %d vxlan %d", nwCfg.PktTag, nwCfg.ExtPktTag) err = gCfg.FreeVXLAN(rm, uint(nwCfg.ExtPktTag), uint(nwCfg.PktTag)) if err != nil { return err } } if nwMasterCfg.SubnetIP == "" { log.Infof("freeing subnet %s/%s", nwCfg.SubnetIP, nwCfg.SubnetLen) err = gCfg.FreeSubnet(rm, nwCfg.SubnetIP) if err != nil { return err } } return err }
func freeNetworkResources(stateDriver core.StateDriver, nwCfg *mastercfg.CfgNetworkState, gCfg *gstate.Cfg) (err error) { tempRm, err := resources.GetStateResourceManager() if err != nil { return err } rm := core.ResourceManager(tempRm) if nwCfg.PktTagType == "vlan" { err = gCfg.FreeVLAN(rm, uint(nwCfg.PktTag)) if err != nil { return err } } else if nwCfg.PktTagType == "vxlan" { log.Infof("freeing vlan %d vxlan %d", nwCfg.PktTag, nwCfg.ExtPktTag) err = gCfg.FreeVXLAN(rm, uint(nwCfg.ExtPktTag), uint(nwCfg.PktTag)) if err != nil { return err } } if nwCfg.SubnetIsAllocated { log.Infof("freeing subnet %s/%d", nwCfg.SubnetIP, nwCfg.SubnetLen) err = gCfg.FreeSubnet(rm, nwCfg.SubnetIP) if err != nil { return err } } if err := gCfg.UnassignNetwork(nwCfg.ID); err != nil { return err } return err }