lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080628175241.GA12265@colo.lackof.org>
Date:	Sat, 28 Jun 2008 11:52:41 -0600
From:	Grant Grundler <grundler@...isc-linux.org>
To:	Wang Chen <wangchen@...fujitsu.com>
Cc:	Grant Grundler <grundler@...isc-linux.org>,
	Patrick McHardy <kaber@...sh.net>,
	Jeff Garzik <jgarzik@...ox.com>,
	"David S. Miller" <davem@...emloft.net>,
	NETDEV <netdev@...r.kernel.org>, kyle@...isc-linux.org
Subject: Re: v2 [PATCH 2/2] de4x5: Remove developer debug feature about
	set/clear promisc

On Fri, Jun 27, 2008 at 09:14:52AM +0800, Wang Chen wrote:
> >> If you want to remove a developer debug feature, please just submit
> >> a patch like usual to kyle and myself.
> >>
> > 
> > Is there any user space binary use these features?
> > case DE4X5_SET_PROM:
> > case DE4X5_CLR_PROM: 
> > If not, I will send a patch to remove them.

I spent about 20 minutes using both google and yahoo search trying
to find a use and did not. Given this driver has been visible
since about 1994, I'd expect such use to be visible.

> 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@...fujitsu.com>
> ---
> diff --git a/drivers/net/tulip/de4x5.c b/drivers/net/tulip/de4x5.c
> index bc30c6e..617ef41 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)
>  	netif_wake_queue(dev);                      /* Unlock the TX ring */
>  	break;
>  
> -    case DE4X5_SET_PROM:             /* Set Promiscuous Mode */
> -	if (!capable(CAP_NET_ADMIN)) return -EPERM;
> -	omr = inl(DE4X5_OMR);
> -	omr |= OMR_PR;
> -	outl(omr, DE4X5_OMR);
> -	dev->flags |= IFF_PROMISC;
> -	break;
> -
> -    case DE4X5_CLR_PROM:             /* Clear Promiscuous Mode */
> -	if (!capable(CAP_NET_ADMIN)) return -EPERM;
> -	omr = inl(DE4X5_OMR);
> -	omr &= ~OMR_PR;
> -	outl(omr, DE4X5_OMR);
> -	dev->flags &= ~IFF_PROMISC;
> -	break;
> -
>      case DE4X5_SAY_BOO:              /* Say "Boo!" to the kernel log file */
>  	if (!capable(CAP_NET_ADMIN)) return -EPERM;
>  	printk("%s: Boo!\n", dev->name);
> diff --git a/drivers/net/tulip/de4x5.h b/drivers/net/tulip/de4x5.h
> index f5f33b3..a6b7638 100644
> --- a/drivers/net/tulip/de4x5.h
> +++ b/drivers/net/tulip/de4x5.h
> @@ -1004,8 +1004,8 @@ struct de4x5_ioctl {
>  */
>  #define DE4X5_GET_HWADDR	0x01 /* Get the hardware address */
>  #define DE4X5_SET_HWADDR	0x02 /* Set the hardware address */
> -#define DE4X5_SET_PROM  	0x03 /* Set Promiscuous Mode */
> -#define DE4X5_CLR_PROM  	0x04 /* Clear Promiscuous Mode */
> +#define DE4X5_SET_PROM  	0x03 /* Obsoleted. Set Promiscuous Mode */
> +#define DE4X5_CLR_PROM  	0x04 /* Obsoleted. Clear Promiscuous Mode */

Please just remove them. If the kernel isn't going to provide the
functionality, I'd rather any apps that attempt to use it break
when they compile (vs later when they try to be run).


>  #define DE4X5_SAY_BOO	        0x05 /* Say "Boo!" to the kernel log file */
>  #define DE4X5_GET_MCA   	0x06 /* Get a multicast address */
>  #define DE4X5_SET_MCA   	0x07 /* Set a multicast address */

thanks,
grant
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ