summaryrefslogtreecommitdiffstats
path: root/lib/libfrr.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2018-05-08 14:35:06 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2018-06-19 14:43:59 +0200
commit9e224e60dbffd032d7271ec473366048fb6083d4 (patch)
tree818ad931fea867c8a1b8631aacf993b7a42bee28 /lib/libfrr.h
parentlib: Add ability to retry if backup is specified (diff)
downloadfrr-9e224e60dbffd032d7271ec473366048fb6083d4.tar.xz
frr-9e224e60dbffd032d7271ec473366048fb6083d4.zip
lib: Create a thread for reading in the cli
The read in of cli was happening prior to thread event handling for non-integrated configs. This is interesting for 2 reasons: 1) Read-in of integrated configs was after thread event loop startup, so we had a difference of behavior 2) Read-in can cause a series of events that cause us to attempt to communicate with zebra. The zebra zapi connection only happens after the thread event loop has been started. This can cause data that is being written down to zebra to be lost and no real way to notice that this has happened and to recover gracefully. Modify the code to create a thread event for read in of client config. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'lib/libfrr.h')
-rw-r--r--lib/libfrr.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/libfrr.h b/lib/libfrr.h
index bd572cce1..1c744ee1b 100644
--- a/lib/libfrr.h
+++ b/lib/libfrr.h
@@ -50,6 +50,8 @@ struct frr_daemon_info {
bool dryrun;
bool daemon_mode;
bool terminal;
+
+ struct thread *read_in;
const char *config_file;
const char *backup_config_file;
const char *pid_file;