summaryrefslogtreecommitdiff
path: root/src/ipcpd/normal/routing.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ipcpd/normal/routing.c')
-rw-r--r--src/ipcpd/normal/routing.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/ipcpd/normal/routing.c b/src/ipcpd/normal/routing.c
index bf736311..cc6cdca8 100644
--- a/src/ipcpd/normal/routing.c
+++ b/src/ipcpd/normal/routing.c
@@ -92,7 +92,7 @@ static void * calculate_pff(void * o)
table = NULL;
n_table = graph_routing_table(routing.graph,
ipcpi.dt_addr, &table);
- if (table == NULL) {
+ if (n_table < 0) {
sleep(RECALC_TIME);
continue;
}
@@ -157,6 +157,10 @@ static int routing_neighbor_event(enum nb_event event,
size_t len;
uint8_t * data;
+ /* Only announce the flow if our address is bigger */
+ if (ipcpi.dt_addr < conn.conn_info.addr)
+ return 0;
+
path[0] = '\0';
sprintf(fso_name, "%" PRIu64 "-%" PRIu64,
ipcpi.dt_addr, conn.conn_info.addr);