diff options
| author | Alexander Motin <mav@FreeBSD.org> | 2019-03-11 01:45:26 +0000 |
|---|---|---|
| committer | Alexander Motin <mav@FreeBSD.org> | 2019-03-11 01:45:26 +0000 |
| commit | b99157f71ccbc99b13a63eb9f5f159f430e78593 (patch) | |
| tree | 011a2f0c73134b2ab4961e90c0bb257d4d981d21 /sys/net | |
| parent | 766896519158d825934d1aba6b7029bdf201328a (diff) | |
Notes
Diffstat (limited to 'sys/net')
| -rw-r--r-- | sys/net/if_bridge.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 578e0756498b..0f5cffa857f9 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -925,7 +925,7 @@ bridge_set_ifcap(struct bridge_softc *sc, struct bridge_iflist *bif, int set) { struct ifnet *ifp = bif->bif_ifp; struct ifreq ifr; - int error; + int error, mask, stuck; BRIDGE_UNLOCK_ASSERT(sc); @@ -938,10 +938,12 @@ bridge_set_ifcap(struct bridge_softc *sc, struct bridge_iflist *bif, int set) if_printf(sc->sc_ifp, "error setting capabilities on %s: %d\n", ifp->if_xname, error); - if ((ifp->if_capenable & ~set) != 0) + mask = BRIDGE_IFCAPS_MASK | BRIDGE_IFCAPS_STRIP; + stuck = ifp->if_capenable & mask & ~set; + if (stuck != 0) if_printf(sc->sc_ifp, "can't disable some capabilities on %s: 0x%x\n", - ifp->if_xname, ifp->if_capenable & ~set); + ifp->if_xname, stuck); } } |
