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

Reply via email to