On Friday 27 September 2013 18:03:39 Matthias Schiffer wrote:
batman-adv saves its table of packet handlers as a global state, so handlers must be set up only once (and setting them up a second time will fail).
The recently-added network coding support tries to set up its handler each time a new softif is registered, which obviously fails when more that one softif is used (and in consequence, the softif creation fails).
Fix this by splitting up batadv_nc_init into batadv_nc_init (which is called only once) and batadv_nc_mesh_init (which is called for each softif); in addition batadv_nc_free is renamed to batadv_nc_mesh_free to keep naming consistent.
Signed-off-by: Matthias Schiffer mschiffer@universe-factory.net
v3: moved things around as Marek suggested
main.c | 5 +++-- network-coding.c | 28 ++++++++++++++++++---------- network-coding.h | 14 ++++++++++---- 3 files changed, 31 insertions(+), 16 deletions(-)
Applied in revision 586cf84.
Thanks, Marek