summaryrefslogtreecommitdiff
path: root/usr.sbin/relayd/parse.y
diff options
context:
space:
mode:
authorCamiel Dobbelaar <camield@cvs.openbsd.org>2012-01-21 13:40:49 +0000
committerCamiel Dobbelaar <camield@cvs.openbsd.org>2012-01-21 13:40:49 +0000
commit6471362a8c2f45e3e09131e312eb9421304d92e0 (patch)
treee29ba9d5e6f8732e135a32c001ee38624f794e4b /usr.sbin/relayd/parse.y
parent1df0d8faf0045e8f11d397af7c66860577ac377c (diff)
Only start the child processes after all of them reported to have loaded
the config. Solves a race at startup time where processes can send status messages about hosts that other processes don't know about yet. (and have relayd abort with "desynchronized" or "invalid host id") ok henning pyr deraadt solves the problem ok from benno todd
Diffstat (limited to 'usr.sbin/relayd/parse.y')
-rw-r--r--usr.sbin/relayd/parse.y5
1 files changed, 1 insertions, 4 deletions
diff --git a/usr.sbin/relayd/parse.y b/usr.sbin/relayd/parse.y
index 37fa0da61e1..a6427c58b3f 100644
--- a/usr.sbin/relayd/parse.y
+++ b/usr.sbin/relayd/parse.y
@@ -1,4 +1,4 @@
-/* $OpenBSD: parse.y,v 1.160 2012/01/20 12:16:41 camield Exp $ */
+/* $OpenBSD: parse.y,v 1.161 2012/01/21 13:40:48 camield Exp $ */
/*
* Copyright (c) 2007-2011 Reyk Floeter <reyk@openbsd.org>
@@ -2262,9 +2262,6 @@ load_config(const char *filename, struct relayd *x_conf)
errors++;
}
- if (TAILQ_EMPTY(conf->sc_relays))
- conf->sc_prefork_relay = 0;
-
/* Cleanup relay list to inherit */
while ((rlay = TAILQ_FIRST(&relays)) != NULL) {
TAILQ_REMOVE(&relays, rlay, rl_entry);