Browse Source

WAN: Generic HDLC now uses IFF_WAN_HDLC private flag.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Krzysztof Hałasa 16 năm trước cách đây
mục cha
commit
7cdc15f5f9
2 tập tin đã thay đổi với 3 bổ sung1 xóa
  1. 2 1
      drivers/net/wan/hdlc.c
  2. 1 0
      include/linux/if.h

+ 2 - 1
drivers/net/wan/hdlc.c

@@ -106,7 +106,7 @@ static int hdlc_device_event(struct notifier_block *this, unsigned long event,
 	if (dev_net(dev) != &init_net)
 		return NOTIFY_DONE;
 
-	if (dev->get_stats != hdlc_get_stats)
+	if (!(dev->priv_flags & IFF_WAN_HDLC))
 		return NOTIFY_DONE; /* not an HDLC device */
 
 	if (event != NETDEV_CHANGE)
@@ -235,6 +235,7 @@ static void hdlc_setup_dev(struct net_device *dev)
 	 */
 	dev->get_stats		 = hdlc_get_stats;
 	dev->flags		 = IFF_POINTOPOINT | IFF_NOARP;
+	dev->priv_flags		 = IFF_WAN_HDLC;
 	dev->mtu		 = HDLC_MAX_MTU;
 	dev->type		 = ARPHRD_RAWHDLC;
 	dev->hard_header_len	 = 16;

+ 1 - 0
include/linux/if.h

@@ -66,6 +66,7 @@
 #define IFF_SLAVE_NEEDARP 0x40		/* need ARPs for validation	*/
 #define IFF_ISATAP	0x80		/* ISATAP interface (RFC4214)	*/
 #define IFF_MASTER_ARPMON 0x100		/* bonding master, ARP mon in use */
+#define IFF_WAN_HDLC	0x200		/* WAN HDLC device		*/
 
 #define IF_GET_IFACE	0x0001		/* for querying only */
 #define IF_GET_PROTO	0x0002