blob: e39f93acc28f749793200be5b020df41fd5554e6 [file] [log] [blame]
Simon Wunderlich23721382012-01-22 20:00:19 +01001/*
Antonio Quartullic64703a2012-03-14 12:57:02 +01002 * Copyright (C) 2011-2012 B.A.T.M.A.N. contributors:
Simon Wunderlich23721382012-01-22 20:00:19 +01003 *
4 * Simon Wunderlich
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of version 2 of the GNU General Public
8 * License as published by the Free Software Foundation.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18 * 02110-1301, USA
19 *
20 */
21
22#ifndef _NET_BATMAN_ADV_BLA_H_
23#define _NET_BATMAN_ADV_BLA_H_
24
Simon Wunderlich7a5cc242012-01-22 20:00:27 +010025#ifdef CONFIG_BATMAN_ADV_BLA
Simon Wunderlich23721382012-01-22 20:00:19 +010026int bla_rx(struct bat_priv *bat_priv, struct sk_buff *skb, short vid);
27int bla_tx(struct bat_priv *bat_priv, struct sk_buff *skb, short vid);
28int bla_is_backbone_gw(struct sk_buff *skb,
29 struct orig_node *orig_node, int hdr_size);
Simon Wunderlich9bf8e4d2012-01-22 20:00:21 +010030int bla_claim_table_seq_print_text(struct seq_file *seq, void *offset);
Simon Wunderlich20ff9d52012-01-22 20:00:23 +010031int bla_is_backbone_gw_orig(struct bat_priv *bat_priv, uint8_t *orig);
Simon Wunderlichfe2da6f2012-01-22 20:00:24 +010032int bla_check_bcast_duplist(struct bat_priv *bat_priv,
33 struct bcast_packet *bcast_packet, int hdr_size);
Simon Wunderlich23721382012-01-22 20:00:19 +010034void bla_update_orig_address(struct bat_priv *bat_priv,
35 struct hard_iface *primary_if,
36 struct hard_iface *oldif);
37int bla_init(struct bat_priv *bat_priv);
38void bla_free(struct bat_priv *bat_priv);
39
40#define BLA_CRC_INIT 0
Simon Wunderlich7a5cc242012-01-22 20:00:27 +010041#else /* ifdef CONFIG_BATMAN_ADV_BLA */
42
43static inline int bla_rx(struct bat_priv *bat_priv, struct sk_buff *skb,
44 short vid)
45{
46 return 0;
47}
48
49static inline int bla_tx(struct bat_priv *bat_priv, struct sk_buff *skb,
50 short vid)
51{
52 return 0;
53}
54
55static inline int bla_is_backbone_gw(struct sk_buff *skb,
56 struct orig_node *orig_node,
57 int hdr_size)
58{
59 return 0;
60}
61
62static inline int bla_claim_table_seq_print_text(struct seq_file *seq,
63 void *offset)
64{
65 return 0;
66}
67
68static inline int bla_is_backbone_gw_orig(struct bat_priv *bat_priv,
69 uint8_t *orig)
70{
71 return 0;
72}
73
74static inline int bla_check_bcast_duplist(struct bat_priv *bat_priv,
75 struct bcast_packet *bcast_packet,
76 int hdr_size)
77{
78 return 0;
79}
80
81static inline void bla_update_orig_address(struct bat_priv *bat_priv,
82 struct hard_iface *primary_if,
83 struct hard_iface *oldif)
84{
85}
86
87static inline int bla_init(struct bat_priv *bat_priv)
88{
89 return 1;
90}
91
92static inline void bla_free(struct bat_priv *bat_priv)
93{
94}
95
96#endif /* ifdef CONFIG_BATMAN_ADV_BLA */
Simon Wunderlich23721382012-01-22 20:00:19 +010097
98#endif /* ifndef _NET_BATMAN_ADV_BLA_H_ */