On Fri, 22 Apr 2016 20:40:13 -0700, pravin shelar wrote: > But skb->protocol is not set to ETH_P_TEB anywhere in ip-gre module. > Am I missing something?
Ah, I see your point. It needs to be solved a bit differently, though, we need to call __iptunnel_pull_header instead of iptunnel_pull_header for these packets. I'll rework the patch. > ip_tunnel_rcv() checks device type (tunnel->dev->type) to perform > ethernet specific processing on packet. I think that should be changed > to check packet type. The current behavior is correct. The Ethernet processing depends on the interface type, ARPHRD_IPGRE interfaces can't treat Ethernet headers as L2 headers, that wouldn't match the interface type. Jiri