diff options
Diffstat (limited to 'usr/src/lib/libipadm')
| -rw-r--r-- | usr/src/lib/libipadm/common/ipadm_addr.c | 3 | ||||
| -rw-r--r-- | usr/src/lib/libipadm/common/ipadm_if.c | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/usr/src/lib/libipadm/common/ipadm_addr.c b/usr/src/lib/libipadm/common/ipadm_addr.c index a62bcb165b..31f6f9cfc5 100644 --- a/usr/src/lib/libipadm/common/ipadm_addr.c +++ b/usr/src/lib/libipadm/common/ipadm_addr.c @@ -375,6 +375,9 @@ retry: for (ifap = ifa; ifap != NULL; ifap = ifap->ifa_next) { struct sockaddr_storage data; + if (ifap->ifa_addr->sa_family == AF_LINK) + continue; + (void) strlcpy(cifname, ifap->ifa_name, sizeof (cifname)); lnum = 0; if ((sep = strrchr(cifname, ':')) != NULL) { diff --git a/usr/src/lib/libipadm/common/ipadm_if.c b/usr/src/lib/libipadm/common/ipadm_if.c index 41f22e4eeb..c58eb6248e 100644 --- a/usr/src/lib/libipadm/common/ipadm_if.c +++ b/usr/src/lib/libipadm/common/ipadm_if.c @@ -276,6 +276,8 @@ retry: * to find the interface state. */ for (ifap = ifa; ifap != NULL; ifap = ifap->ifa_next) { + if (ifap->ifa_addr->sa_family == AF_LINK) + continue; if (strcmp(ifap->ifa_name, aifp->ifi_name) == 0) break; } |
