summaryrefslogtreecommitdiffstats
path: root/ctrl/facemgr/src/interfaces/netlink/netlink.c
diff options
context:
space:
mode:
authorJordan Augé <jordan.auge+fdio@cisco.com>2019-11-05 14:18:34 +0100
committerJordan Augé <jordan.auge+fdio@cisco.com>2019-11-12 00:16:27 +0100
commit955e71001bd6d360805d2b33a9e6b9d6fd17397f (patch)
treed9feee8a560033d25b8f939dd1d9690ea87d504e /ctrl/facemgr/src/interfaces/netlink/netlink.c
parentf4f2f44072344bbf6083840f4df0dfaea5247c50 (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.c13
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);
}