Re: [PATCH] net: arp, ipv6: handle special case of tap device

From: Vladis Dronov
Date: Wed Oct 03 2018 - 09:25:17 EST


> From: "David Miller" <davem@xxxxxxxxxxxxx>
> Sent: Wednesday, October 3, 2018 7:25:40 AM
>
> > Probably, this functionality is already used by some userspace, so I
> > believe, I cannot just remove TUNSETLINK ioctl.
>
> Who uses it, how do they use it, and what do they sanely expect about
> the link layer header properties of a tap device which has had ->type
> changed?

Honestly, I have no idea. I was working on a syzkaller bug report and
found that the reason for that bug was TUNSETLINK ioctl.

This ioctl was introduced 13 years ago with ff4cc3ac93e1d and it says:

> For use with
> wireless and other networking types it should be possible to set the
> ARP type via an ioctl.

, that's all. Let me try to prepare a patch that sets dev->addr_len and
dev->broadcast according to dev->type. I would probably need an advise
what other fields must be adjusted too.

Otherwise, we can just to remove the TUNSETLINK ioctl.

Best regards,
Vladis Dronov | Red Hat, Inc. | Product Security Engineer