summaryrefslogtreecommitdiff
path: root/src/ipcpd/normal/connmgr.c
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri.staessens@ugent.be>2018-05-03 17:49:03 +0200
committerSander Vrijders <sander.vrijders@ugent.be>2018-05-03 17:56:11 +0200
commit919349fd119bff11e9d34da09a9d71bf5675dba2 (patch)
treeb078ee0d0c2e5123fd1649a172d6471c3b2f9212 /src/ipcpd/normal/connmgr.c
parent8295c3628f70c1db342860ff1e79fc7056557739 (diff)
downloadouroboros-919349fd119bff11e9d34da09a9d71bf5675dba2.tar.gz
ouroboros-919349fd119bff11e9d34da09a9d71bf5675dba2.zip
ipcpd: Allow wait for dir enrollment on dt conn
This adds the option to wait for the directory (DHT) to enroll on creating a new data transfer connection. This makes scripting network bootstraps more stable. The default setting is OFF. Signed-off-by: Dimitri Staessens <dimitri.staessens@ugent.be> Signed-off-by: Sander Vrijders <sander.vrijders@ugent.be>
Diffstat (limited to 'src/ipcpd/normal/connmgr.c')
-rw-r--r--src/ipcpd/normal/connmgr.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/ipcpd/normal/connmgr.c b/src/ipcpd/normal/connmgr.c
index 843eb280..6301baed 100644
--- a/src/ipcpd/normal/connmgr.c
+++ b/src/ipcpd/normal/connmgr.c
@@ -33,6 +33,7 @@
#include "comp.h"
#include "connmgr.h"
+#include "dir.h"
#include "enroll.h"
#include "ipcp.h"
@@ -376,7 +377,8 @@ int connmgr_alloc(enum comp_id id,
return -1;
}
- if (connmgr.comps[id].info.pref_version != conn->conn_info.pref_version) {
+ if (connmgr.comps[id].info.pref_version !=
+ conn->conn_info.pref_version) {
log_dbg("Unknown protocol version.");
flow_dealloc(conn->flow_info.fd);
return -1;
@@ -391,6 +393,9 @@ int connmgr_alloc(enum comp_id id,
switch (id) {
case COMPID_DT:
notifier_event(NOTIFY_DT_CONN_ADD, conn);
+#ifdef IPCP_CONN_WAIT_DIR
+ dir_wait_running();
+#endif
break;
case COMPID_MGMT:
notifier_event(NOTIFY_MGMT_CONN_ADD, conn);