aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWang Chen <wangchen@cn.fujitsu.com>2008-07-22 01:13:18 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-07-22 16:09:09 -0400
commitb57f9cae8724e4822fedfcc12530f868dcf6ea94 (patch)
tree310ec9c09017bfffc655ec97ae63d692d3f5cd31
parent2b4ff112a0b3fe90de561a77f2e66000c028ca54 (diff)
de4x5: Remove developer debug feature about set/clear promisc
IFF_PROMISC flag shouldn't be set or cleared by drivers, because whether device be promisc mode is decided by how many upper layer callers being referenced to it. And the promisc changing feature of de4x5 ioctl is developer debug feature, we can remove it now. Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Acked-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
-rw-r--r--drivers/net/tulip/de4x5.c16
-rw-r--r--drivers/net/tulip/de4x5.h3
2 files changed, 1 insertions, 18 deletions
diff --git a/drivers/net/tulip/de4x5.c b/drivers/net/tulip/de4x5.c
index bc30c6e8fea2..617ef41bdfea 100644
--- a/drivers/net/tulip/de4x5.c
+++ b/drivers/net/tulip/de4x5.c
@@ -5514,22 +5514,6 @@ de4x5_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
5514 netif_wake_queue(dev); /* Unlock the TX ring */ 5514 netif_wake_queue(dev); /* Unlock the TX ring */
5515 break; 5515 break;
5516 5516
5517 case DE4X5_SET_PROM: /* Set Promiscuous Mode */
5518 if (!capable(CAP_NET_ADMIN)) return -EPERM;
5519 omr = inl(DE4X5_OMR);
5520 omr |= OMR_PR;
5521 outl(omr, DE4X5_OMR);
5522 dev->flags |= IFF_PROMISC;
5523 break;
5524
5525 case DE4X5_CLR_PROM: /* Clear Promiscuous Mode */
5526 if (!capable(CAP_NET_ADMIN)) return -EPERM;
5527 omr = inl(DE4X5_OMR);
5528 omr &= ~OMR_PR;
5529 outl(omr, DE4X5_OMR);
5530 dev->flags &= ~IFF_PROMISC;
5531 break;
5532
5533 case DE4X5_SAY_BOO: /* Say "Boo!" to the kernel log file */ 5517 case DE4X5_SAY_BOO: /* Say "Boo!" to the kernel log file */
5534 if (!capable(CAP_NET_ADMIN)) return -EPERM; 5518 if (!capable(CAP_NET_ADMIN)) return -EPERM;
5535 printk("%s: Boo!\n", dev->name); 5519 printk("%s: Boo!\n", dev->name);
diff --git a/drivers/net/tulip/de4x5.h b/drivers/net/tulip/de4x5.h
index f5f33b3eb067..9f2877438fb0 100644
--- a/drivers/net/tulip/de4x5.h
+++ b/drivers/net/tulip/de4x5.h
@@ -1004,8 +1004,7 @@ struct de4x5_ioctl {
1004*/ 1004*/
1005#define DE4X5_GET_HWADDR 0x01 /* Get the hardware address */ 1005#define DE4X5_GET_HWADDR 0x01 /* Get the hardware address */
1006#define DE4X5_SET_HWADDR 0x02 /* Set the hardware address */ 1006#define DE4X5_SET_HWADDR 0x02 /* Set the hardware address */
1007#define DE4X5_SET_PROM 0x03 /* Set Promiscuous Mode */ 1007/* 0x03 and 0x04 were used before and are obsoleted now. Don't use them. */
1008#define DE4X5_CLR_PROM 0x04 /* Clear Promiscuous Mode */
1009#define DE4X5_SAY_BOO 0x05 /* Say "Boo!" to the kernel log file */ 1008#define DE4X5_SAY_BOO 0x05 /* Say "Boo!" to the kernel log file */
1010#define DE4X5_GET_MCA 0x06 /* Get a multicast address */ 1009#define DE4X5_GET_MCA 0x06 /* Get a multicast address */
1011#define DE4X5_SET_MCA 0x07 /* Set a multicast address */ 1010#define DE4X5_SET_MCA 0x07 /* Set a multicast address */