MEDIUM: init: stop any peers section not bound to the correct process

This will prevent the peers section from remaining in listen state on
the incorrect process. The peers_fe pointer is set to NULL, which will
tell the peers task to commit suicide if it was already scheduled.
diff --git a/src/haproxy.c b/src/haproxy.c
index b5144a7..233c434 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -1740,6 +1740,7 @@
 
 	if (global.mode & (MODE_DAEMON | MODE_SYSTEMD)) {
 		struct proxy *px;
+		struct peers *curpeers;
 		int ret = 0;
 		int *children = calloc(global.nbproc, sizeof(int));
 		int proc;
@@ -1799,6 +1800,19 @@
 			px = px->next;
 		}
 
+		/* we might have to unbind some peers sections from some processes */
+		for (curpeers = peers; curpeers; curpeers = curpeers->next) {
+			if (!curpeers->peers_fe)
+				continue;
+
+			if (curpeers->peers_fe->bind_proc & (1UL << proc))
+				continue;
+
+			stop_proxy(curpeers->peers_fe);
+			/* disable this peer section so that it kills itself */
+			curpeers->peers_fe = NULL;
+		}
+
 		free(children);
 		children = NULL;
 		/* if we're NOT in QUIET mode, we should now close the 3 first FDs to ensure