|
@@ -2091,7 +2091,8 @@ struct rtable *__ip_route_output_key(struct net *net, struct flowi4 *fl4)
|
|
|
goto out;
|
|
goto out;
|
|
|
}
|
|
}
|
|
|
if (ipv4_is_local_multicast(fl4->daddr) ||
|
|
if (ipv4_is_local_multicast(fl4->daddr) ||
|
|
|
- ipv4_is_lbcast(fl4->daddr)) {
|
|
|
|
|
|
|
+ ipv4_is_lbcast(fl4->daddr) ||
|
|
|
|
|
+ fl4->flowi4_proto == IPPROTO_IGMP) {
|
|
|
if (!fl4->saddr)
|
|
if (!fl4->saddr)
|
|
|
fl4->saddr = inet_select_addr(dev_out, 0,
|
|
fl4->saddr = inet_select_addr(dev_out, 0,
|
|
|
RT_SCOPE_LINK);
|
|
RT_SCOPE_LINK);
|