Commit a5557a1b by pdw

Treat multicast packets as incoming, rather than incoming (IPv4) or not at all

(IPv6). Patch by Andreas Schwab <schwab@linux-m68k.org>
parent a9663192
...@@ -305,6 +305,14 @@ static void handle_ip_packet(struct ip* iptr, int hw_dir) ...@@ -305,6 +305,14 @@ static void handle_ip_packet(struct ip* iptr, int hw_dir)
assign_addr_pair(&ap, iptr, 1); assign_addr_pair(&ap, iptr, 1);
direction = 0; direction = 0;
} }
else if (IP_V(iptr) == 4 && IN_MULTICAST(iptr->ip_dst.s_addr)) {
assign_addr_pair(&ap, iptr, 1);
direction = 0;
}
else if (IP_V(iptr) == 6 && IN6_IS_ADDR_MULTICAST(&ip6tr->ip6_dst)) {
assign_addr_pair(&ap, iptr, 1);
direction = 0;
}
/* /*
* Cannot determine direction from hardware or IP levels. Therefore * Cannot determine direction from hardware or IP levels. Therefore
* assume that it was a packet between two other machines, assign * assume that it was a packet between two other machines, assign
...@@ -323,6 +331,8 @@ static void handle_ip_packet(struct ip* iptr, int hw_dir) ...@@ -323,6 +331,8 @@ static void handle_ip_packet(struct ip* iptr, int hw_dir)
direction = 0; direction = 0;
} }
/* Drop other uncertain packages. */ /* Drop other uncertain packages. */
else
return;
} }
if(IP_V(iptr) == 4 && options.netfilter != 0) { if(IP_V(iptr) == 4 && options.netfilter != 0) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment