diff options
-rw-r--r-- | net/ipv4/igmp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c index 7c2ef59e3f7d..ec03c2fda6ce 100644 --- a/net/ipv4/igmp.c +++ b/net/ipv4/igmp.c | |||
@@ -344,8 +344,8 @@ static struct sk_buff *igmpv3_newpack(struct net_device *dev, int size) | |||
344 | pip->tos = 0xc0; | 344 | pip->tos = 0xc0; |
345 | pip->frag_off = htons(IP_DF); | 345 | pip->frag_off = htons(IP_DF); |
346 | pip->ttl = 1; | 346 | pip->ttl = 1; |
347 | pip->daddr = rt->rt_dst; | 347 | pip->daddr = fl4.daddr; |
348 | pip->saddr = rt->rt_src; | 348 | pip->saddr = fl4.saddr; |
349 | pip->protocol = IPPROTO_IGMP; | 349 | pip->protocol = IPPROTO_IGMP; |
350 | pip->tot_len = 0; /* filled in later */ | 350 | pip->tot_len = 0; /* filled in later */ |
351 | ip_select_ident(pip, &rt->dst, NULL); | 351 | ip_select_ident(pip, &rt->dst, NULL); |
@@ -687,7 +687,7 @@ static int igmp_send_report(struct in_device *in_dev, struct ip_mc_list *pmc, | |||
687 | iph->frag_off = htons(IP_DF); | 687 | iph->frag_off = htons(IP_DF); |
688 | iph->ttl = 1; | 688 | iph->ttl = 1; |
689 | iph->daddr = dst; | 689 | iph->daddr = dst; |
690 | iph->saddr = rt->rt_src; | 690 | iph->saddr = fl4.saddr; |
691 | iph->protocol = IPPROTO_IGMP; | 691 | iph->protocol = IPPROTO_IGMP; |
692 | ip_select_ident(iph, &rt->dst, NULL); | 692 | ip_select_ident(iph, &rt->dst, NULL); |
693 | ((u8*)&iph[1])[0] = IPOPT_RA; | 693 | ((u8*)&iph[1])[0] = IPOPT_RA; |