mpls: allow routes on ipip and sit devices
authorSimon Horman <simon.horman@netronome.com>
Thu, 7 Jul 2016 05:56:15 +0000 (07:56 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 9 Jul 2016 21:45:56 +0000 (17:45 -0400)
Allow MPLS routes on IPIP and SIT devices now that they
support forwarding MPLS packets.

Signed-off-by: Simon Horman <simon.horman@netronome.com>
Reviewed-by: Dinan Gunawardena <dinan.gunawardena@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mpls/af_mpls.c

index e9beaa58573c65ec9aa65df80f0e1d48ce3a53be..5c161e7759b507b78416cdfc93f1500407ba288c 100644 (file)
@@ -1009,10 +1009,12 @@ static int mpls_dev_notify(struct notifier_block *this, unsigned long event,
        unsigned int flags;
 
        if (event == NETDEV_REGISTER) {
-               /* For now just support Ethernet and IPGRE devices */
+               /* For now just support Ethernet, IPGRE, SIT and IPIP devices */
                if (dev->type == ARPHRD_ETHER ||
                    dev->type == ARPHRD_LOOPBACK ||
-                   dev->type == ARPHRD_IPGRE) {
+                   dev->type == ARPHRD_IPGRE ||
+                   dev->type == ARPHRD_SIT ||
+                   dev->type == ARPHRD_TUNNEL) {
                        mdev = mpls_add_dev(dev);
                        if (IS_ERR(mdev))
                                return notifier_from_errno(PTR_ERR(mdev));