diff options
author | Jordan Augé <jordan.auge+fdio@cisco.com> | 2019-11-05 14:18:34 +0100 |
---|---|---|
committer | Jordan Augé <jordan.auge+fdio@cisco.com> | 2019-11-12 00:16:27 +0100 |
commit | 955e71001bd6d360805d2b33a9e6b9d6fd17397f (patch) | |
tree | d9feee8a560033d25b8f939dd1d9690ea87d504e /ctrl/facemgr/src/interfaces/netlink/netlink.c | |
parent | f4f2f44072344bbf6083840f4df0dfaea5247c50 (diff) |
[HICN-376] Add manual connection/route setting to face manager
Change-Id: I5c24f687e8e815d0e2f437ff8ce7fbb2c76e0579
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
Diffstat (limited to 'ctrl/facemgr/src/interfaces/netlink/netlink.c')
-rw-r--r-- | ctrl/facemgr/src/interfaces/netlink/netlink.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/ctrl/facemgr/src/interfaces/netlink/netlink.c b/ctrl/facemgr/src/interfaces/netlink/netlink.c index a9c8c889e..653f49d26 100644 --- a/ctrl/facemgr/src/interfaces/netlink/netlink.c +++ b/ctrl/facemgr/src/interfaces/netlink/netlink.c @@ -422,6 +422,7 @@ int nl_callback(interface_t * interface, int fd, void * unused) //DEBUG("Interface %s: address was removed", interface_name); if (facelet) { facelet_set_event(facelet, FACELET_EVENT_DELETE); + facelet_set_status(facelet, FACELET_STATUS_CLEAN); interface_raise_event(interface, facelet); } break; @@ -443,6 +444,7 @@ int nl_callback(interface_t * interface, int fd, void * unused) if (facelet) { facelet_set_event(facelet, FACELET_EVENT_UPDATE); + facelet_set_status(facelet, FACELET_STATUS_CLEAN); interface_raise_event(interface, facelet); } break; @@ -464,6 +466,7 @@ int nl_callback(interface_t * interface, int fd, void * unused) break; facelet_set_event(facelet, FACELET_EVENT_DELETE); + facelet_set_status(facelet, FACELET_STATUS_CLEAN); interface_raise_event(interface, facelet); break; @@ -493,17 +496,19 @@ int nl_callback(interface_t * interface, int fd, void * unused) break; if (up && running) { facelet_set_event(facelet, FACELET_EVENT_CREATE); + //facelet_set_family(facelet, AF_INET); + facelet_set_status(facelet, FACELET_STATUS_CLEAN); + interface_raise_event(interface, facelet); + +#if 0 facelet_t * facelet6 = facelet_dup(facelet); if (!facelet6) { ERROR("Could not duplicate face for v6"); break; } - - facelet_set_family(facelet, AF_INET); - interface_raise_event(interface, facelet); - facelet_set_family(facelet6, AF_INET6); interface_raise_event(interface, facelet6); +#endif } else { facelet_free(facelet); } |