Tom Gundersen
63bbe5c767
networkd: address - drop the 'added' flag
...
Instead instantiate the kernel flags to TENTATIVE until the kernel
updates us with the real value.
2015-11-11 15:42:38 +01:00
Tom Gundersen
c4a03a5669
networkd: link - deserialize
...
For now only deserialize some basic state and the applied addresses.
When a link is added, try to deserialize it's state from /run. This
is relevant only when networkd is restarted at runtime.
2015-10-30 12:32:49 +01:00
Tom Gundersen
adda1ed94a
networkd: address - distinguish between addresses added by us and by others
...
We only keep the addresses that we added ourselves in link->addresses, and
introduce a new set link->addresses_foreign to keep addresses of unknown
origin.
Only functional change is that "foreign" addresses no longer prevent a link
from entering "configured" state.
2015-10-21 02:35:31 +02:00
Tom Gundersen
6666907869
networkd: address - merge _change() into _configure()
...
These functions are almost entirely the same, so avoid duplication.
2015-10-21 02:35:31 +02:00
Tom Gundersen
36c32f6120
networkd: address - factor out address_update()
...
Call back into link_check_ready() whenever an address state change may have
made a link ready.
2015-10-21 02:35:31 +02:00
Tom Gundersen
ce6c77ebf1
networkd: address - introduce address_is_ready()
...
Checks that a given address is not tentative nor deprecated.
2015-10-11 15:04:16 +02:00
Tom Gundersen
91b5f99731
networkd: make address_{establish,release}() static
...
No need to expose these functions, but rather call them from address_{add,drop}.
2015-10-11 15:04:16 +02:00
Tom Gundersen
054f0db487
networkd: manager - avoid unnecessary memory allocation
...
Don't allocate Address objects only to free them again when processing
rtnl events.
2015-10-11 15:04:16 +02:00
Tom Gundersen
cf1d700da3
networkd: address - store active addresses in a Set rather than a List
...
We need to be able to look these things up quickly as we will be updating them
continuously and there can in principle be many of them.
2015-10-11 15:04:16 +02:00
Tom Gundersen
f0213e3796
networkd: route/address - simplify and unify creators
...
Rename new_dynamic() to simply _new() and reuse that from new_static().
2015-10-11 14:21:41 +02:00
Lennart Poettering
fc2f9534d0
networkd: split up networkd.h into per-object header files
...
No functional changes, just moving definitions into separate header
files.
2015-08-27 14:01:23 +02:00