Merge pull request #442 from ofiliz/loopback-fix

loopback: Fix ipv6 address checks
This commit is contained in:
Piotr Skamruk 2020-01-27 09:38:52 +01:00 committed by GitHub
commit 832f2699c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -68,6 +68,7 @@ func cmdAdd(args *skel.CmdArgs) error {
if err != nil { if err != nil {
return err // not tested return err // not tested
} }
v4Addrs, err := netlink.AddrList(link, netlink.FAMILY_V4) v4Addrs, err := netlink.AddrList(link, netlink.FAMILY_V4)
if err != nil { if err != nil {
return err // not tested return err // not tested
@ -89,7 +90,7 @@ func cmdAdd(args *skel.CmdArgs) error {
if len(v6Addrs) != 0 { if len(v6Addrs) != 0 {
v6Addr = v6Addrs[0].IPNet v6Addr = v6Addrs[0].IPNet
// sanity check that this is a loopback address // sanity check that this is a loopback address
for _, addr := range v4Addrs { for _, addr := range v6Addrs {
if !addr.IP.IsLoopback() { if !addr.IP.IsLoopback() {
return fmt.Errorf("loopback interface found with non-loopback address %q", addr.IP) return fmt.Errorf("loopback interface found with non-loopback address %q", addr.IP)
} }