[Olsr-users] running DLEP radio/router outside of OLSR

Henning Rogge (spam-protected)
Wed Feb 25 17:32:38 CET 2015


Do this,

it should also making defining your own application much easier (one
one repository necessary).

Henning Rogge

On Wed, Feb 25, 2015 at 2:58 PM, joe gio <(spam-protected)> wrote:
> Hi Henning,
>
> Thanks for the info!
>
> I was working out of oonf_api, but your links reference oonf which is
> much more up to date.
>
> I suppose I'll be using the later.
>
> Thanks again.
>
> Joe
>
>
>
> On 02/25/2015 02:20 AM, Henning Rogge wrote:
>> On Wed, Feb 25, 2015 at 1:20 AM, joe gio <(spam-protected)> wrote:
>>> Hi
>>>
>>> Id like to experiment with the DLEP Radio and Router plugins outside of
>>> OLSR.
>>> Is this possible or am I on the wrong track ?
>>>
>>> Example below built against oonf_api but crashes on init see below.
>> ...
>>
>>> #0  0xb778e726 in __list_add (new=0xb77b3ab4 <_interface_class+20>,
>>> next=0x0, prev=0xb776d888 <oonf_classes>) at
>>> /home/Devel/r2ri/oonf_api.git/oonf_api/src-api/common/list.h:96
>>> #1  list_add_head (new=0xb77b3ab4 <_interface_class+20>, head=0xb776d888
>>> <oonf_classes>) at
>>> /home/Devel/r2ri/oonf_api.git/oonf_api/src-api/common/list.h:107
>>> #2  avl_insert (tree=0xb776d888 <oonf_classes>, new=0xb77b3ab4
>>> <_interface_class+20>) at
>>> /home/Devel/r2ri/oonf_api.git/oonf_api/src-api/common/avl.c:208
>>> #3  0xb773b42b in oonf_class_add (ci=0xb77b3aa0 <_interface_class>) at
>>> /home//Devel/r2ri/oonf_api.git/oonf_api/src-api/subsystems/oonf_class.c:117
>>> #4  0xb77ad200 in dlep_radio_interface_init () at
>>> /home/Devel/r2ri/oonf_api.git/oonf_api/src-plugins/dlep/radio/dlep_radio_interface.c:84
>>> #5  0xb77ad019 in _init () at
>>> /home/Devel/r2ri/oonf_api.git/oonf_api/src-plugins/dlep/radio/dlep_radio.c:132
>>> #6  0x08048780 in main (argc=1, argv=0xbfbd7aa4) at main.c:17
>> Just as an additional explanation what is going wrong... as you can
>> see from the stacktrace the dlep_radio code is calling into the
>> oonf_class subsystem... which is (at this moment) of course not
>> initialized.
>>
>> When you look into the dlep_radio code (line 114)
>> http://olsr.org/git/?p=oonf.git;a=blob;f=src-plugins/generic/dlep/radio/dlep_radio.c;h=33e88ba3a75ba517f1d756e9a8b1b3308c8cc4ef;hb=master#l114
>>
>> you will see a list of dependencies:
>> static const char *_dependencies[] = {
>>   OONF_CLASS_SUBSYSTEM,
>>   OONF_LAYER2_SUBSYSTEM,
>>   OONF_PACKET_SUBSYSTEM,
>>   OONF_STREAM_SUBSYSTEM,
>>   OONF_TIMER_SUBSYSTEM,
>> };
>>
>> All these plugins/subsystems must be initialized for DLEP_radio to
>> work... and some of them have dependencies of their own.
>>
>> A look at the generic OONF "main function" might also help the amount
>> of initialization going on at the start:
>> http://olsr.org/git/?p=oonf.git;a=blob;f=src-api/core/oonf_main.c;h=0abf6666dc1e10a42e6874496285a27116d6cff5;hb=master
>>
>> Henning Rogge
>>
>>
>




More information about the Olsr-users mailing list