On Fri, 2014-08-22 at 10:54 -0700, David Miller wrote:

> >>    if (res.type == RTN_BROADCAST)
> >>            goto brd_input;
> > 
> >     Is this place better, after checking for RTN_BROADCAST?
> > 
> >     /* ARP link-layer broadcasts are acceptable here */
> >     if ((skb->pkt_type == PACKET_BROADCAST ||
> >          skb->pkt_type == PACKET_MULTICAST) &&
> >         skb->protocol == htons(ETH_P_IP))
> >             goto e_inval;
> 
> Indeed, this would make ARP happier, but that still leaves open the
> issue of CLUSTERIP.

I'm back looking at this, but must admit I'm completely confused now :-)

I could add an IPv4 sysctl to control this behaviour:
  0 - off
  1 - RFC 1122 "SHOULD"
  2 - also drop unicast-in-multicast (for wireless)

But I guess due to cluster-IP it would have to default to 0.


However, talk about ip_local_deliver_finish() in this thread has me
wondering if we could just implement it using iptables? I guess
ipt_addrtype and ip6t_addrtype would let me do that?

johannes


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to