diff options
author | csjp <csjp@FreeBSD.org> | 2005-10-23 01:44:08 +0000 |
---|---|---|
committer | csjp <csjp@FreeBSD.org> | 2005-10-23 01:44:08 +0000 |
commit | c402c6ca482b825a4089555509aa85dc89e00109 (patch) | |
tree | 8b136e903dd55624c6cdfa3483de74076adf1826 /sys/net/if_mib.c | |
parent | 218e59f033d635bd6c8d42995ede1f37eb3c2390 (diff) | |
download | FreeBSD-src-c402c6ca482b825a4089555509aa85dc89e00109.zip FreeBSD-src-c402c6ca482b825a4089555509aa85dc89e00109.tar.gz |
Before we export network interface data through the ifmibdata structure,
OR the flags bits with the driver managed status flags. This fixes an
issue where RUNNING flags would not be reported to processes, which
conflicts with the flags information provided by ifconfig(8).
Diffstat (limited to 'sys/net/if_mib.c')
-rw-r--r-- | sys/net/if_mib.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/net/if_mib.c b/sys/net/if_mib.c index 0c11454..d809354 100644 --- a/sys/net/if_mib.c +++ b/sys/net/if_mib.c @@ -95,9 +95,9 @@ sysctl_ifdata(SYSCTL_HANDLER_ARGS) /* XXX bad syntax! */ #define COPY(fld) ifmd.ifmd_##fld = ifp->if_##fld COPY(pcount); - COPY(flags); COPY(data); #undef COPY + ifmd.ifmd_flags = ifp->if_flags | ifp->if_drv_flags; ifmd.ifmd_snd_len = ifp->if_snd.ifq_len; ifmd.ifmd_snd_maxlen = ifp->if_snd.ifq_maxlen; ifmd.ifmd_snd_drops = ifp->if_snd.ifq_drops; |