[Olsr-dev] olsrd cannot have 29 or more interfaces any more?

Markus Kittenberger (spam-protected)
Tue Dec 16 00:20:29 CET 2008


i have startet gdb, and walked through the code,.. and after training my
previously unexisting debugging skills with gdb on this code i found the
reason,..

this parser has a buffer of 512 bytes,..

and multi line config file blocks (e.g. plugins and interfaces), get
strcat-ed into a single buffer at line 1297 of olsr_cfg.c

if such a block gets larger than 512 bytes we are f* up, [#]

as this is easy reachable with multiple interfaces or lqmults or an
httplugin with many whitelisted ips / networks, this is very dangerous,..

and imho this whole parser code looks dangerous not only there,..

i would say it`s the least readable code in olsrd i found till now,..

Markus

# and i already run into this problem on a node with an interface block
having 760 character, and 561 after stripping whitespace
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.olsr.org/pipermail/olsr-dev/attachments/20081216/16925d4b/attachment.html>


More information about the Olsr-dev mailing list