[dpdk-dev] net/tap: fix the protocol field for non ip
Checks
Commit Message
When non IP packets are sent on TUN interface, the logic put Ipv6 as
protocol field in header. With the current patch, the check is modified
for ipv4, ipv6 and non ip.
Fixes: 5a3efcfffd06 ("net/tap: add tun support")
Cc: vipin.varghese@intel.com
Suggested-by: Ophir Munk <ophirmu@mellanox.com>
Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
---
drivers/net/tap/rte_eth_tap.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Comments
On 4/13/2018 6:58 AM, Vipin Varghese wrote:
> When non IP packets are sent on TUN interface, the logic put Ipv6 as
> protocol field in header. With the current patch, the check is modified
> for ipv4, ipv6 and non ip.
>
> Fixes: 5a3efcfffd06 ("net/tap: add tun support")
> Cc: vipin.varghese@intel.com
>
> Suggested-by: Ophir Munk <ophirmu@mellanox.com>
> Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
On 4/17/2018 6:45 PM, Ferruh Yigit wrote:
> On 4/13/2018 6:58 AM, Vipin Varghese wrote:
>> When non IP packets are sent on TUN interface, the logic put Ipv6 as
>> protocol field in header. With the current patch, the check is modified
>> for ipv4, ipv6 and non ip.
>>
>> Fixes: 5a3efcfffd06 ("net/tap: add tun support")
Fixes: 204d026a3922 ("net/tap: support tun")
>> Cc: vipin.varghese@intel.com
>>
>> Suggested-by: Ophir Munk <ophirmu@mellanox.com>
>> Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
>
> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied to dpdk-next-net/master, thanks.
@@ -526,8 +526,8 @@ enum ioctl_mode {
*/
char *buff_data = rte_pktmbuf_mtod(seg, void *);
j = (*buff_data & 0xf0);
- if (j & (0x40 | 0x60))
- pi.proto = (j == 0x40) ? 0x0008 : 0xdd86;
+ pi.proto = (j == 0x40) ? 0x0008 :
+ (j == 0x60) ? 0xdd86 : 0x00;
iovecs[0].iov_base = π
iovecs[0].iov_len = sizeof(pi);