//go:build windows package hcsshim import ( "errors" "github.com/Microsoft/hcsshim/internal/hns" ) // HNSNnvManagementMacAddress represents management mac address // which needs to be excluded from VF reassignment type HNSNnvManagementMacAddress = hns.HNSNnvManagementMacAddress // HNSNnvManagementMacList represents a list of management // mac addresses for exclusion from VF reassignment type HNSNnvManagementMacList = hns.HNSNnvManagementMacList var ( ErrorEmptyMacAddressList = errors.New("management mac_address list is empty") ) // SetNnvManagementMacAddresses sets a list of // management mac addresses in hns for exclusion from VF reassignment. func SetNnvManagementMacAddresses(managementMacAddresses []string) (*HNSNnvManagementMacList, error) { if len(managementMacAddresses) == 0 { return nil, ErrorEmptyMacAddressList } nnvManagementMacList := &HNSNnvManagementMacList{} for _, mac := range managementMacAddresses { nnvManagementMacList.MacAddressList = append(nnvManagementMacList.MacAddressList, HNSNnvManagementMacAddress{MacAddress: mac}) } return nnvManagementMacList.Set() } // GetNnvManagementMacAddresses retrieves a list of // management mac addresses in hns for exclusion from VF reassignment. func GetNnvManagementMacAddresses() (*HNSNnvManagementMacList, error) { return hns.GetNnvManagementMacAddressList() } // DeleteNnvManagementMacAddresses delete list of // management mac addresses in hns which are excluded from VF reassignment. func DeleteNnvManagementMacAddresses() (*HNSNnvManagementMacList, error) { return hns.DeleteNnvManagementMacAddressList() }