summaryrefslogtreecommitdiff
path: root/src/ipcpd/normal/routing.c
diff options
context:
space:
mode:
authorSander Vrijders <sander.vrijders@ugent.be>2017-09-27 15:33:39 +0200
committerSander Vrijders <sander.vrijders@ugent.be>2017-09-29 15:12:36 +0200
commite3dba5812b1422a79e6e77ce9f923bade5a480e4 (patch)
treeca538ff9fd4887a17f85556e8207412d9699c833 /src/ipcpd/normal/routing.c
parentddba836eb79ace3bd80ea6af69801f402cbffd20 (diff)
downloadouroboros-e3dba5812b1422a79e6e77ce9f923bade5a480e4.tar.gz
ouroboros-e3dba5812b1422a79e6e77ce9f923bade5a480e4.zip
ipcpd: normal: Add Loop-Free Alternates routing
This adds the Loop-Free Alternates (LFA) policy. In case a link goes down a LFA may be selected to route the SDUs on without causing loops instead of the main hop that just went down.
Diffstat (limited to 'src/ipcpd/normal/routing.c')
-rw-r--r--src/ipcpd/normal/routing.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ipcpd/normal/routing.c b/src/ipcpd/normal/routing.c
index afef23a2..909f74cc 100644
--- a/src/ipcpd/normal/routing.c
+++ b/src/ipcpd/normal/routing.c
@@ -33,13 +33,14 @@ int routing_init(enum pol_routing pr)
{
switch (pr) {
case ROUTING_LINK_STATE:
+ case ROUTING_LINK_STATE_LFA:
r_ops = &link_state_ops;
break;
default:
return -ENOTSUP;
}
- return r_ops->init();
+ return r_ops->init(pr);
}
struct routing_i * routing_i_create(struct pff * pff)