On Feb 20, 2013, at 11:00 , ext Lorand Jakab wrote:
> +static int lisp_tnl_send(struct vport *vport, struct sk_buff *skb)
> +{
> + int network_offset = skb_network_offset(skb);
> +
> + /* We only encapsulate IPv4 and IPv6 packets */
> + switch (skb->protocol) {
> + case htons(ETH_P_IP):
> + case htons(ETH_P_IPV6):
> + /* Pop off "inner" Ethernet header */
> + skb_pull(skb, network_offset);
> + return ovs_tnl_send(vport, skb) + network_offset;
Should return 0 if ovs_tnl_send() returns 0, like this:
int tnl_len = ovs_tnl_send(vport, skb);
/* Report the whole packet as sent, if anything was sent */
return tnl_len > 0 ? tnl_len + network_offset : 0;
Jarno
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev