main.c (2c4cdf5950b1a7a9d731c03c56e2cea3bd8ca7b7) main.c (d353d8d4d9f0184ac43a90c6e04b593c33bd28ea)
1/* Copyright (C) 2007-2013 B.A.T.M.A.N. contributors:
2 *
3 * Marek Lindner, 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 *

--- 21 unchanged lines hidden (view full) ---

30#include "translation-table.h"
31#include "hard-interface.h"
32#include "gateway_client.h"
33#include "bridge_loop_avoidance.h"
34#include "distributed-arp-table.h"
35#include "vis.h"
36#include "hash.h"
37#include "bat_algo.h"
1/* Copyright (C) 2007-2013 B.A.T.M.A.N. contributors:
2 *
3 * Marek Lindner, 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 *

--- 21 unchanged lines hidden (view full) ---

30#include "translation-table.h"
31#include "hard-interface.h"
32#include "gateway_client.h"
33#include "bridge_loop_avoidance.h"
34#include "distributed-arp-table.h"
35#include "vis.h"
36#include "hash.h"
37#include "bat_algo.h"
38#include "network-coding.h"
38
39
40/* List manipulations on hardif_list have to be rtnl_lock()'ed,
41 * list traversals just rcu-locked
42 */
43struct list_head batadv_hardif_list;
44static int (*batadv_rx_handler[256])(struct sk_buff *,
45 struct batadv_hard_iface *);

--- 84 unchanged lines hidden (view full) ---

130 ret = batadv_bla_init(bat_priv);
131 if (ret < 0)
132 goto err;
133
134 ret = batadv_dat_init(bat_priv);
135 if (ret < 0)
136 goto err;
137
39
40
41/* List manipulations on hardif_list have to be rtnl_lock()'ed,
42 * list traversals just rcu-locked
43 */
44struct list_head batadv_hardif_list;
45static int (*batadv_rx_handler[256])(struct sk_buff *,
46 struct batadv_hard_iface *);

--- 84 unchanged lines hidden (view full) ---

131 ret = batadv_bla_init(bat_priv);
132 if (ret < 0)
133 goto err;
134
135 ret = batadv_dat_init(bat_priv);
136 if (ret < 0)
137 goto err;
138
139 ret = batadv_nc_init(bat_priv);
140 if (ret < 0)
141 goto err;
142
138 atomic_set(&bat_priv->gw.reselect, 0);
139 atomic_set(&bat_priv->mesh_state, BATADV_MESH_ACTIVE);
140
141 return 0;
142
143err:
144 batadv_mesh_free(soft_iface);
145 return ret;

--- 6 unchanged lines hidden (view full) ---

152 atomic_set(&bat_priv->mesh_state, BATADV_MESH_DEACTIVATING);
153
154 batadv_purge_outstanding_packets(bat_priv, NULL);
155
156 batadv_vis_quit(bat_priv);
157
158 batadv_gw_node_purge(bat_priv);
159 batadv_originator_free(bat_priv);
143 atomic_set(&bat_priv->gw.reselect, 0);
144 atomic_set(&bat_priv->mesh_state, BATADV_MESH_ACTIVE);
145
146 return 0;
147
148err:
149 batadv_mesh_free(soft_iface);
150 return ret;

--- 6 unchanged lines hidden (view full) ---

157 atomic_set(&bat_priv->mesh_state, BATADV_MESH_DEACTIVATING);
158
159 batadv_purge_outstanding_packets(bat_priv, NULL);
160
161 batadv_vis_quit(bat_priv);
162
163 batadv_gw_node_purge(bat_priv);
164 batadv_originator_free(bat_priv);
165 batadv_nc_free(bat_priv);
160
161 batadv_tt_free(bat_priv);
162
163 batadv_bla_free(bat_priv);
164
165 batadv_dat_free(bat_priv);
166
167 free_percpu(bat_priv->bat_counters);

--- 326 unchanged lines hidden ---
166
167 batadv_tt_free(bat_priv);
168
169 batadv_bla_free(bat_priv);
170
171 batadv_dat_free(bat_priv);
172
173 free_percpu(bat_priv->bat_counters);

--- 326 unchanged lines hidden ---