diff options
Diffstat (limited to 'net/bridge/br_if.c')
-rw-r--r-- | net/bridge/br_if.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c index 0c52e6500..7bb9a9fae 100644 --- a/net/bridge/br_if.c +++ b/net/bridge/br_if.c @@ -5,7 +5,7 @@ * Authors: * Lennert Buytenhek <buytenh@gnu.org> * - * $Id: br_if.c,v 1.6 2001-11-24 17:51:03 davem Exp $ + * $Id: br_if.c,v 1.7 2001-12-24 00:59:55 davem Exp $ * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -226,6 +226,9 @@ int br_add_if(struct net_bridge *br, struct net_device *dev) if (dev->flags & IFF_LOOPBACK || dev->type != ARPHRD_ETHER) return -EINVAL; + if (dev->hard_start_xmit == br_dev_xmit) + return -ELOOP; + dev_hold(dev); write_lock_bh(&br->lock); if ((p = new_nbp(br, dev)) == NULL) { |