diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-09-12 23:58:50 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-12 23:58:50 +0200 |
commit | b43a36d7a3974a27eab7c73e5e0dd1a107bac95d (patch) | |
tree | 49eaf9b3ce6df3ad2e04ae783328434acb462e92 /pkg/network/files.go | |
parent | 20772182e6a9f82403a668d228dfd81c8df06821 (diff) | |
parent | b94ea07265045f447572c264ef62e7960f484b58 (diff) | |
download | podman-b43a36d7a3974a27eab7c73e5e0dd1a107bac95d.tar.gz podman-b43a36d7a3974a27eab7c73e5e0dd1a107bac95d.tar.bz2 podman-b43a36d7a3974a27eab7c73e5e0dd1a107bac95d.zip |
Merge pull request #3978 from baude/networkremove
enhance podman network rm
Diffstat (limited to 'pkg/network/files.go')
-rw-r--r-- | pkg/network/files.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/pkg/network/files.go b/pkg/network/files.go index 80fde5e17..d55ec2dfd 100644 --- a/pkg/network/files.go +++ b/pkg/network/files.go @@ -86,6 +86,7 @@ func GetNetworksFromFilesystem() ([]*allocator.Net, error) { return nil, err } cniNetworks = append(cniNetworks, &ipamConf) + break } } } @@ -105,3 +106,26 @@ func GetNetworkNamesFromFileSystem() ([]string, error) { } return networkNames, nil } + +// GetInterfaceNameFromConfig returns the interface name for the bridge plugin +func GetInterfaceNameFromConfig(path string) (string, error) { + var name string + conf, err := libcni.ConfListFromFile(path) + if err != nil { + return "", err + } + for _, cniplugin := range conf.Plugins { + if cniplugin.Network.Type == "bridge" { + plugin := make(map[string]interface{}) + if err := json.Unmarshal(cniplugin.Bytes, &plugin); err != nil { + return "", err + } + name = plugin["bridge"].(string) + break + } + } + if len(name) == 0 { + return "", errors.New("unable to find interface name for network") + } + return name, nil +} |