On Aug 1, 2013, at 4:00 PM, Felix Fietkau <[email protected]> wrote:

> On 2013-08-01 3:17 PM, Pietro Paolini wrote:
>> Hello all,
>> 
>> I had a look to the /etc/init.d/network script and I would like
>> understand the details of its implementation, especially regarding
>> the reload() function; I have to say in advance that I don't have a
>> big experience of ubus and netifd - maybe should be better say that I
>> know nothing about that - and I don't know where to find some
>> documentation about them, do you have some useful link ?
> There's no real documentation on the internals, you should read the
> source code.
> 
>> As I understand from the OpenWRT related web page
>> 
>> http://wiki.openwrt.org/doc/techref/ubus 
>> http://wiki.openwrt.org/doc/techref/netifd
>> 
>> the ubusd is a daemon which listen for calls and when received it
>> calls a function registered with some argument, as I can see from
>> 
>> root@uplink:~# ubus -v list network.interface.lan 
>> 'network.interface.lan' @099f0c8b "up": {  } "add_device": { "name":
>> "String" } "remove_device": { "name": "String" }
>> 
>> the "up" function does not take any parameters and the add_device
>> does, am I right ?
> Right.
> 
>> In the netifd page is reported that:
>> 
>> ...Simply run /etc/init.d/network reload. This will issue an
>> ubus-call to netifd, telling it to figure out the difference between
>> runtime state and the new config and apply only that. This works on a
>> per-interface level, even with protocol handlers written as shell
>> scripts…
>> 
>> But which function is called ? Where can I see the code of this
>> function and where and how the changes are tracked by netifd ?
> http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=blob;f=ubus.c
> Here you can find the code that registers the ubus objects, and the
> method implementations.
> You can find the code that interacts with the config here:
> http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=blob;f=config.c
> 
> - Felix

Hey Felix .. many thanks!

They are not so big as expected then look at the code is a good idea I guess.
I have got just another question, maybe you can help to reach the point faster 
rather then I can do alone, I found really interesting the smart feature of 
netifd which keep track of the changes and just apply what is really changed 
and I would like have a look at that, do you know where can I  find the related 
code ?


- Pietro
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to