• Serhey Popovych's avatar
    tun: Consistently configure generic netdev params via rtnetlink · df52eab2
    Serhey Popovych authored
    Configuring generic network device parameters on tun will fail in
    presence of IFLA_INFO_KIND attribute in IFLA_LINKINFO nested attribute
    since tun_validate() always return failure.
    
    This can be visualized with following ip-link(8) command sequences:
    
      # ip link set dev tun0 group 100
      # ip link set dev tun0 group 100 type tun
      RTNETLINK answers: Invalid argument
    
    with contrast to dummy and veth drivers:
    
      # ip link set dev dummy0 group 100
      # ip link set dev dummy0 type dummy
    
      # ip link set dev veth0 group 100
      # ip link set dev veth0 group 100 type veth
    
    Fix by returning zero in tun_validate() when @data is NULL that is
    always in case since rtnl_link_ops->maxtype is zero in tun driver.
    
    Fixes: f019a7a5 ("tun: Implement ip link del tunXXX")
    Signed-off-by: default avatarSerhey Popovych <serhe.popovych@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    df52eab2
tun.c 84 KB