batman-adv: use ETH_P_BATMAN
The ETH_P_BATMAN ethertype is now defined kernel-wide. Use it instead of the private BATADV_ETH_P_BATMAN define. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
This commit is contained in:
parent
bb728820fe
commit
af5d4f7737
4 changed files with 11 additions and 9 deletions
|
@ -30,6 +30,7 @@
|
||||||
#include "bridge_loop_avoidance.h"
|
#include "bridge_loop_avoidance.h"
|
||||||
|
|
||||||
#include <linux/if_arp.h>
|
#include <linux/if_arp.h>
|
||||||
|
#include <linux/if_ether.h>
|
||||||
|
|
||||||
void batadv_hardif_free_rcu(struct rcu_head *rcu)
|
void batadv_hardif_free_rcu(struct rcu_head *rcu)
|
||||||
{
|
{
|
||||||
|
@ -311,7 +312,7 @@ int batadv_hardif_enable_interface(struct batadv_hard_iface *hard_iface,
|
||||||
{
|
{
|
||||||
struct batadv_priv *bat_priv;
|
struct batadv_priv *bat_priv;
|
||||||
struct net_device *soft_iface;
|
struct net_device *soft_iface;
|
||||||
__be16 ethertype = __constant_htons(BATADV_ETH_P_BATMAN);
|
__be16 ethertype = __constant_htons(ETH_P_BATMAN);
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
if (hard_iface->if_status != BATADV_IF_NOT_IN_USE)
|
if (hard_iface->if_status != BATADV_IF_NOT_IN_USE)
|
||||||
|
|
|
@ -20,8 +20,6 @@
|
||||||
#ifndef _NET_BATMAN_ADV_PACKET_H_
|
#ifndef _NET_BATMAN_ADV_PACKET_H_
|
||||||
#define _NET_BATMAN_ADV_PACKET_H_
|
#define _NET_BATMAN_ADV_PACKET_H_
|
||||||
|
|
||||||
#define BATADV_ETH_P_BATMAN 0x4305 /* unofficial/not registered Ethertype */
|
|
||||||
|
|
||||||
enum batadv_packettype {
|
enum batadv_packettype {
|
||||||
BATADV_IV_OGM = 0x01,
|
BATADV_IV_OGM = 0x01,
|
||||||
BATADV_ICMP = 0x02,
|
BATADV_ICMP = 0x02,
|
||||||
|
|
|
@ -28,6 +28,8 @@
|
||||||
#include "gateway_common.h"
|
#include "gateway_common.h"
|
||||||
#include "originator.h"
|
#include "originator.h"
|
||||||
|
|
||||||
|
#include <linux/if_ether.h>
|
||||||
|
|
||||||
static void batadv_send_outstanding_bcast_packet(struct work_struct *work);
|
static void batadv_send_outstanding_bcast_packet(struct work_struct *work);
|
||||||
|
|
||||||
/* send out an already prepared packet to the given address via the
|
/* send out an already prepared packet to the given address via the
|
||||||
|
@ -60,11 +62,11 @@ int batadv_send_skb_packet(struct sk_buff *skb,
|
||||||
ethhdr = (struct ethhdr *)skb_mac_header(skb);
|
ethhdr = (struct ethhdr *)skb_mac_header(skb);
|
||||||
memcpy(ethhdr->h_source, hard_iface->net_dev->dev_addr, ETH_ALEN);
|
memcpy(ethhdr->h_source, hard_iface->net_dev->dev_addr, ETH_ALEN);
|
||||||
memcpy(ethhdr->h_dest, dst_addr, ETH_ALEN);
|
memcpy(ethhdr->h_dest, dst_addr, ETH_ALEN);
|
||||||
ethhdr->h_proto = __constant_htons(BATADV_ETH_P_BATMAN);
|
ethhdr->h_proto = __constant_htons(ETH_P_BATMAN);
|
||||||
|
|
||||||
skb_set_network_header(skb, ETH_HLEN);
|
skb_set_network_header(skb, ETH_HLEN);
|
||||||
skb->priority = TC_PRIO_CONTROL;
|
skb->priority = TC_PRIO_CONTROL;
|
||||||
skb->protocol = __constant_htons(BATADV_ETH_P_BATMAN);
|
skb->protocol = __constant_htons(ETH_P_BATMAN);
|
||||||
|
|
||||||
skb->dev = hard_iface->net_dev;
|
skb->dev = hard_iface->net_dev;
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,7 @@
|
||||||
#include <linux/ethtool.h>
|
#include <linux/ethtool.h>
|
||||||
#include <linux/etherdevice.h>
|
#include <linux/etherdevice.h>
|
||||||
#include <linux/if_vlan.h>
|
#include <linux/if_vlan.h>
|
||||||
|
#include <linux/if_ether.h>
|
||||||
#include "unicast.h"
|
#include "unicast.h"
|
||||||
#include "bridge_loop_avoidance.h"
|
#include "bridge_loop_avoidance.h"
|
||||||
|
|
||||||
|
@ -146,7 +147,7 @@ static int batadv_interface_tx(struct sk_buff *skb,
|
||||||
struct batadv_hard_iface *primary_if = NULL;
|
struct batadv_hard_iface *primary_if = NULL;
|
||||||
struct batadv_bcast_packet *bcast_packet;
|
struct batadv_bcast_packet *bcast_packet;
|
||||||
struct vlan_ethhdr *vhdr;
|
struct vlan_ethhdr *vhdr;
|
||||||
__be16 ethertype = __constant_htons(BATADV_ETH_P_BATMAN);
|
__be16 ethertype = __constant_htons(ETH_P_BATMAN);
|
||||||
static const uint8_t stp_addr[ETH_ALEN] = {0x01, 0x80, 0xC2, 0x00,
|
static const uint8_t stp_addr[ETH_ALEN] = {0x01, 0x80, 0xC2, 0x00,
|
||||||
0x00, 0x00};
|
0x00, 0x00};
|
||||||
static const uint8_t ectp_addr[ETH_ALEN] = {0xCF, 0x00, 0x00, 0x00,
|
static const uint8_t ectp_addr[ETH_ALEN] = {0xCF, 0x00, 0x00, 0x00,
|
||||||
|
@ -172,7 +173,7 @@ static int batadv_interface_tx(struct sk_buff *skb,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/* fall through */
|
/* fall through */
|
||||||
case BATADV_ETH_P_BATMAN:
|
case ETH_P_BATMAN:
|
||||||
goto dropped;
|
goto dropped;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -302,7 +303,7 @@ void batadv_interface_rx(struct net_device *soft_iface,
|
||||||
struct vlan_ethhdr *vhdr;
|
struct vlan_ethhdr *vhdr;
|
||||||
struct batadv_header *batadv_header = (struct batadv_header *)skb->data;
|
struct batadv_header *batadv_header = (struct batadv_header *)skb->data;
|
||||||
short vid __maybe_unused = -1;
|
short vid __maybe_unused = -1;
|
||||||
__be16 ethertype = __constant_htons(BATADV_ETH_P_BATMAN);
|
__be16 ethertype = __constant_htons(ETH_P_BATMAN);
|
||||||
bool is_bcast;
|
bool is_bcast;
|
||||||
|
|
||||||
is_bcast = (batadv_header->packet_type == BATADV_BCAST);
|
is_bcast = (batadv_header->packet_type == BATADV_BCAST);
|
||||||
|
@ -325,7 +326,7 @@ void batadv_interface_rx(struct net_device *soft_iface,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/* fall through */
|
/* fall through */
|
||||||
case BATADV_ETH_P_BATMAN:
|
case ETH_P_BATMAN:
|
||||||
goto dropped;
|
goto dropped;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue