linux/net/batman-adv/bridge_loop_avoidance.h
<<
>>
Prefs
   1/* Copyright (C) 2011-2014 B.A.T.M.A.N. contributors:
   2 *
   3 * Simon Wunderlich
   4 *
   5 * This program is free software; you can redistribute it and/or
   6 * modify it under the terms of version 2 of the GNU General Public
   7 * License as published by the Free Software Foundation.
   8 *
   9 * This program is distributed in the hope that it will be useful, but
  10 * WITHOUT ANY WARRANTY; without even the implied warranty of
  11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12 * General Public License for more details.
  13 *
  14 * You should have received a copy of the GNU General Public License
  15 * along with this program; if not, see <http://www.gnu.org/licenses/>.
  16 */
  17
  18#ifndef _NET_BATMAN_ADV_BLA_H_
  19#define _NET_BATMAN_ADV_BLA_H_
  20
  21#ifdef CONFIG_BATMAN_ADV_BLA
  22int batadv_bla_rx(struct batadv_priv *bat_priv, struct sk_buff *skb,
  23                  unsigned short vid, bool is_bcast);
  24int batadv_bla_tx(struct batadv_priv *bat_priv, struct sk_buff *skb,
  25                  unsigned short vid);
  26int batadv_bla_is_backbone_gw(struct sk_buff *skb,
  27                              struct batadv_orig_node *orig_node, int hdr_size);
  28int batadv_bla_claim_table_seq_print_text(struct seq_file *seq, void *offset);
  29int batadv_bla_backbone_table_seq_print_text(struct seq_file *seq,
  30                                             void *offset);
  31bool batadv_bla_is_backbone_gw_orig(struct batadv_priv *bat_priv, uint8_t *orig,
  32                                    unsigned short vid);
  33int batadv_bla_check_bcast_duplist(struct batadv_priv *bat_priv,
  34                                   struct sk_buff *skb);
  35void batadv_bla_update_orig_address(struct batadv_priv *bat_priv,
  36                                    struct batadv_hard_iface *primary_if,
  37                                    struct batadv_hard_iface *oldif);
  38int batadv_bla_init(struct batadv_priv *bat_priv);
  39void batadv_bla_free(struct batadv_priv *bat_priv);
  40
  41#define BATADV_BLA_CRC_INIT     0
  42#else /* ifdef CONFIG_BATMAN_ADV_BLA */
  43
  44static inline int batadv_bla_rx(struct batadv_priv *bat_priv,
  45                                struct sk_buff *skb, unsigned short vid,
  46                                bool is_bcast)
  47{
  48        return 0;
  49}
  50
  51static inline int batadv_bla_tx(struct batadv_priv *bat_priv,
  52                                struct sk_buff *skb, unsigned short vid)
  53{
  54        return 0;
  55}
  56
  57static inline int batadv_bla_is_backbone_gw(struct sk_buff *skb,
  58                                            struct batadv_orig_node *orig_node,
  59                                            int hdr_size)
  60{
  61        return 0;
  62}
  63
  64static inline int batadv_bla_claim_table_seq_print_text(struct seq_file *seq,
  65                                                        void *offset)
  66{
  67        return 0;
  68}
  69
  70static inline int batadv_bla_backbone_table_seq_print_text(struct seq_file *seq,
  71                                                           void *offset)
  72{
  73        return 0;
  74}
  75
  76static inline bool batadv_bla_is_backbone_gw_orig(struct batadv_priv *bat_priv,
  77                                                  uint8_t *orig,
  78                                                  unsigned short vid)
  79{
  80        return false;
  81}
  82
  83static inline int
  84batadv_bla_check_bcast_duplist(struct batadv_priv *bat_priv,
  85                               struct sk_buff *skb)
  86{
  87        return 0;
  88}
  89
  90static inline void
  91batadv_bla_update_orig_address(struct batadv_priv *bat_priv,
  92                               struct batadv_hard_iface *primary_if,
  93                               struct batadv_hard_iface *oldif)
  94{
  95}
  96
  97static inline int batadv_bla_init(struct batadv_priv *bat_priv)
  98{
  99        return 1;
 100}
 101
 102static inline void batadv_bla_free(struct batadv_priv *bat_priv)
 103{
 104}
 105
 106#endif /* ifdef CONFIG_BATMAN_ADV_BLA */
 107
 108#endif /* ifndef _NET_BATMAN_ADV_BLA_H_ */
 109