Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 41645
b: refs/heads/master
c: 90833aa
h: refs/heads/master
i:
  41643: c8e7919
v: v3
  • Loading branch information
Adrian Bunk authored and David S. Miller committed Dec 3, 2006
1 parent 848d5ca commit 0661109
Show file tree
Hide file tree
Showing 13 changed files with 7 additions and 768 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d7f7365f5776723da6df73540d855069c2daaa5c
refs/heads/master: 90833aa4f496d69ca374af6acef7d1614c8693ff
15 changes: 0 additions & 15 deletions trunk/Documentation/feature-removal-schedule.txt
Original file line number Diff line number Diff line change
Expand Up @@ -227,21 +227,6 @@ Who: Patrick McHardy <kaber@trash.net>

---------------------------

What: frame diverter
When: November 2006
Why: The frame diverter is included in most distribution kernels, but is
broken. It does not correctly handle many things:
- IPV6
- non-linear skb's
- network device RCU on removal
- input frames not correctly checked for protocol errors
It also adds allocation overhead even if not enabled.
It is not clear if anyone is still using it.
Who: Stephen Hemminger <shemminger@osdl.org>

---------------------------


What: PHYSDEVPATH, PHYSDEVBUS, PHYSDEVDRIVER in the uevent environment
When: October 2008
Why: The stacking of class devices makes these values misleading and
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/net/Space.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@
#include <linux/errno.h>
#include <linux/init.h>
#include <linux/netlink.h>
#include <linux/divert.h>

/* A unified ethernet device probe. This is the easiest way to have every
ethernet adaptor have the name "eth[0123...]".
Expand Down
1 change: 0 additions & 1 deletion trunk/include/linux/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,6 @@ unifdef-y += cuda.h
unifdef-y += cyclades.h
unifdef-y += dccp.h
unifdef-y += dirent.h
unifdef-y += divert.h
unifdef-y += dlm.h
unifdef-y += elfcore.h
unifdef-y += errno.h
Expand Down
132 changes: 0 additions & 132 deletions trunk/include/linux/divert.h

This file was deleted.

6 changes: 0 additions & 6 deletions trunk/include/linux/netdevice.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
#include <linux/percpu.h>
#include <linux/dmaengine.h>

struct divert_blk;
struct vlan_group;
struct ethtool_ops;
struct netpoll_info;
Expand Down Expand Up @@ -517,11 +516,6 @@ struct net_device
/* bridge stuff */
struct net_bridge_port *br_port;

#ifdef CONFIG_NET_DIVERT
/* this will get initialized at each interface type init routine */
struct divert_blk *divert;
#endif /* CONFIG_NET_DIVERT */

/* class/net/name entry */
struct class_device class_dev;
/* space for optional statistics and wireless sysfs groups */
Expand Down
4 changes: 2 additions & 2 deletions trunk/include/linux/sockios.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@
#define SIOCGIFTXQLEN 0x8942 /* Get the tx queue length */
#define SIOCSIFTXQLEN 0x8943 /* Set the tx queue length */

#define SIOCGIFDIVERT 0x8944 /* Frame diversion support */
#define SIOCSIFDIVERT 0x8945 /* Set frame diversion options */
/* SIOCGIFDIVERT was: 0x8944 Frame diversion support */
/* SIOCSIFDIVERT was: 0x8945 Set frame diversion options */

#define SIOCETHTOOL 0x8946 /* Ethtool interface */

Expand Down
27 changes: 0 additions & 27 deletions trunk/net/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -175,33 +175,6 @@ source "net/ipx/Kconfig"
source "drivers/net/appletalk/Kconfig"
source "net/x25/Kconfig"
source "net/lapb/Kconfig"

config NET_DIVERT
bool "Frame Diverter (EXPERIMENTAL)"
depends on EXPERIMENTAL && BROKEN
---help---
The Frame Diverter allows you to divert packets from the
network, that are not aimed at the interface receiving it (in
promisc. mode). Typically, a Linux box setup as an Ethernet bridge
with the Frames Diverter on, can do some *really* transparent www
caching using a Squid proxy for example.

This is very useful when you don't want to change your router's
config (or if you simply don't have access to it).

The other possible usages of diverting Ethernet Frames are
numberous:
- reroute smtp traffic to another interface
- traffic-shape certain network streams
- transparently proxy smtp connections
- etc...

For more informations, please refer to:
<http://diverter.sourceforge.net/>
<http://perso.wanadoo.fr/magpie/EtherDivert.html>

If unsure, say N.

source "net/econet/Kconfig"
source "net/wanrouter/Kconfig"
source "net/sched/Kconfig"
Expand Down
1 change: 0 additions & 1 deletion trunk/net/core/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ obj-y += dev.o ethtool.o dev_mcast.o dst.o netevent.o \

obj-$(CONFIG_XFRM) += flow.o
obj-$(CONFIG_SYSFS) += net-sysfs.o
obj-$(CONFIG_NET_DIVERT) += dv.o
obj-$(CONFIG_NET_PKTGEN) += pktgen.o
obj-$(CONFIG_WIRELESS_EXT) += wireless.o
obj-$(CONFIG_NETPOLL) += netpoll.o
Expand Down
20 changes: 4 additions & 16 deletions trunk/net/core/dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,6 @@
#include <linux/seq_file.h>
#include <linux/stat.h>
#include <linux/if_bridge.h>
#include <linux/divert.h>
#include <net/dst.h>
#include <net/pkt_sched.h>
#include <net/checksum.h>
Expand Down Expand Up @@ -1827,8 +1826,6 @@ int netif_receive_skb(struct sk_buff *skb)
ncls:
#endif

handle_diverter(skb);

if (handle_bridge(&skb, &pt_prev, &ret, orig_dev))
goto out;

Expand Down Expand Up @@ -2898,10 +2895,6 @@ int register_netdevice(struct net_device *dev)
spin_lock_init(&dev->ingress_lock);
#endif

ret = alloc_divert_blk(dev);
if (ret)
goto out;

dev->iflink = -1;

/* Init, if this function is available */
Expand All @@ -2910,13 +2903,13 @@ int register_netdevice(struct net_device *dev)
if (ret) {
if (ret > 0)
ret = -EIO;
goto out_err;
goto out;
}
}

if (!dev_valid_name(dev->name)) {
ret = -EINVAL;
goto out_err;
goto out;
}

dev->ifindex = dev_new_index();
Expand All @@ -2930,7 +2923,7 @@ int register_netdevice(struct net_device *dev)
= hlist_entry(p, struct net_device, name_hlist);
if (!strncmp(d->name, dev->name, IFNAMSIZ)) {
ret = -EEXIST;
goto out_err;
goto out;
}
}

Expand Down Expand Up @@ -2974,7 +2967,7 @@ int register_netdevice(struct net_device *dev)

ret = netdev_register_sysfs(dev);
if (ret)
goto out_err;
goto out;
dev->reg_state = NETREG_REGISTERED;

/*
Expand All @@ -3001,9 +2994,6 @@ int register_netdevice(struct net_device *dev)

out:
return ret;
out_err:
free_divert_blk(dev);
goto out;
}

/**
Expand Down Expand Up @@ -3320,8 +3310,6 @@ int unregister_netdevice(struct net_device *dev)
/* Notifier chain MUST detach us from master device. */
BUG_TRAP(!dev->master);

free_divert_blk(dev);

/* Finish processing unregister after unlock */
net_set_todo(dev);

Expand Down
Loading

0 comments on commit 0661109

Please sign in to comment.