diff options
author | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2008-04-04 17:48:50 -0700 |
---|---|---|
committer | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2008-04-04 17:48:50 -0700 |
commit | ca566018882bbec4fbc26ba6921062db18bfcf40 (patch) | |
tree | 052660595c063ca7795b92b5151adbb526bd8625 | |
parent | 1f52d5148d3191f970f7af8ed0704b5e0c7ac06b (diff) | |
download | quagga-ca566018882bbec4fbc26ba6921062db18bfcf40.tar.bz2 quagga-ca566018882bbec4fbc26ba6921062db18bfcf40.tar.xz |
interface running status fix
The IFF_RUNNING flag is indeterminate if interface is not IFF_UP.
Basically the carrier state is driver dependent and wrong when
the interface is admin down.
-rw-r--r-- | watchlink/netlink_event.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/watchlink/netlink_event.cc b/watchlink/netlink_event.cc index 1ab1a6ab..7bda70bb 100644 --- a/watchlink/netlink_event.cc +++ b/watchlink/netlink_event.cc @@ -156,7 +156,7 @@ NetlinkEventManager::parse_msg(const struct nlmsghdr *nlHdr) //link state flag enabled = ifInfo->ifi_flags & IFF_UP; - running = ifInfo->ifi_flags & IFF_RUNNING; + running = enabled && (ifInfo->ifi_flags & IFF_RUNNING); index = ifInfo->ifi_index; struct rtattr* rtAttr = (struct rtattr *)IFLA_RTA(ifInfo); |