diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c index f29ada827a6acfe04afd7e3752724013ac58c27f..386c15369d91ed7e59b109dd1cbe7bdab5e1780a 100644 --- a/net/bridge/br_multicast.c +++ b/net/bridge/br_multicast.c @@ -727,7 +727,7 @@ static int br_multicast_igmp3_report(struct net_bridge *br, group = grec->grec_mca; type = grec->grec_type; - len += grec->grec_nsrcs * 4; + len += ntohs(grec->grec_nsrcs) * 4; if (!pskb_may_pull(skb, len)) return -EINVAL;