aboutsummaryrefslogtreecommitdiffstats
path: root/net/8021q
diff options
context:
space:
mode:
Diffstat (limited to 'net/8021q')
-rw-r--r--net/8021q/vlan_dev.c35
1 files changed, 0 insertions, 35 deletions
diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c
index 118956448cf6..1dcfec8b49f3 100644
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
@@ -37,39 +37,6 @@
37#include <linux/netpoll.h> 37#include <linux/netpoll.h>
38 38
39/* 39/*
40 * Rebuild the Ethernet MAC header. This is called after an ARP
41 * (or in future other address resolution) has completed on this
42 * sk_buff. We now let ARP fill in the other fields.
43 *
44 * This routine CANNOT use cached dst->neigh!
45 * Really, it is used only when dst->neigh is wrong.
46 *
47 * TODO: This needs a checkup, I'm ignorant here. --BLG
48 */
49static int vlan_dev_rebuild_header(struct sk_buff *skb)
50{
51 struct net_device *dev = skb->dev;
52 struct vlan_ethhdr *veth = (struct vlan_ethhdr *)(skb->data);
53
54 switch (veth->h_vlan_encapsulated_proto) {
55#ifdef CONFIG_INET
56 case htons(ETH_P_IP):
57
58 /* TODO: Confirm this will work with VLAN headers... */
59 return arp_find(veth->h_dest, skb);
60#endif
61 default:
62 pr_debug("%s: unable to resolve type %X addresses\n",
63 dev->name, ntohs(veth->h_vlan_encapsulated_proto));
64
65 ether_addr_copy(veth->h_source, dev->dev_addr);
66 break;
67 }
68
69 return 0;
70}
71
72/*
73 * Create the VLAN header for an arbitrary protocol layer 40 * Create the VLAN header for an arbitrary protocol layer
74 * 41 *
75 * saddr=NULL means use device source address 42 * saddr=NULL means use device source address
@@ -534,7 +501,6 @@ static int vlan_dev_get_lock_subclass(struct net_device *dev)
534 501
535static const struct header_ops vlan_header_ops = { 502static const struct header_ops vlan_header_ops = {
536 .create = vlan_dev_hard_header, 503 .create = vlan_dev_hard_header,
537 .rebuild = vlan_dev_rebuild_header,
538 .parse = eth_header_parse, 504 .parse = eth_header_parse,
539}; 505};
540 506
@@ -554,7 +520,6 @@ static int vlan_passthru_hard_header(struct sk_buff *skb, struct net_device *dev
554 520
555static const struct header_ops vlan_passthru_header_ops = { 521static const struct header_ops vlan_passthru_header_ops = {
556 .create = vlan_passthru_hard_header, 522 .create = vlan_passthru_hard_header,
557 .rebuild = dev_rebuild_header,
558 .parse = eth_header_parse, 523 .parse = eth_header_parse,
559}; 524};
560 525