batman-adv: add bridge loop avoidance compile option

The define CONFIG_BATMAN_ADV_BLA switches the bridge loop avoidance
on - skip it, and the bridge loop avoidance is not compiled in.

This is useful if binary size should be saved or the feature is
not needed.

Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
This commit is contained in:
Simon Wunderlich
2012-01-22 20:00:27 +01:00
committed by Antonio Quartulli
parent 38ef3d1d91
commit 7a5cc24277
7 changed files with 89 additions and 5 deletions

View File

@@ -22,6 +22,7 @@
#ifndef _NET_BATMAN_ADV_BLA_H_
#define _NET_BATMAN_ADV_BLA_H_
#ifdef CONFIG_BATMAN_ADV_BLA
int bla_rx(struct bat_priv *bat_priv, struct sk_buff *skb, short vid);
int bla_tx(struct bat_priv *bat_priv, struct sk_buff *skb, short vid);
int bla_is_backbone_gw(struct sk_buff *skb,
@@ -37,5 +38,61 @@ int bla_init(struct bat_priv *bat_priv);
void bla_free(struct bat_priv *bat_priv);
#define BLA_CRC_INIT 0
#else /* ifdef CONFIG_BATMAN_ADV_BLA */
static inline int bla_rx(struct bat_priv *bat_priv, struct sk_buff *skb,
short vid)
{
return 0;
}
static inline int bla_tx(struct bat_priv *bat_priv, struct sk_buff *skb,
short vid)
{
return 0;
}
static inline int bla_is_backbone_gw(struct sk_buff *skb,
struct orig_node *orig_node,
int hdr_size)
{
return 0;
}
static inline int bla_claim_table_seq_print_text(struct seq_file *seq,
void *offset)
{
return 0;
}
static inline int bla_is_backbone_gw_orig(struct bat_priv *bat_priv,
uint8_t *orig)
{
return 0;
}
static inline int bla_check_bcast_duplist(struct bat_priv *bat_priv,
struct bcast_packet *bcast_packet,
int hdr_size)
{
return 0;
}
static inline void bla_update_orig_address(struct bat_priv *bat_priv,
struct hard_iface *primary_if,
struct hard_iface *oldif)
{
}
static inline int bla_init(struct bat_priv *bat_priv)
{
return 1;
}
static inline void bla_free(struct bat_priv *bat_priv)
{
}
#endif /* ifdef CONFIG_BATMAN_ADV_BLA */
#endif /* ifndef _NET_BATMAN_ADV_BLA_H_ */