changeset 11343:d1012db03a1c HEAD

director: If we logged that we're delaying connections, also log when we continue.
author Timo Sirainen <tss@iki.fi>
date Wed, 19 May 2010 18:49:25 +0200
parents b43d6d2ef2fb
children 2b5af8843142
files src/director/director-connection.c src/director/director.c src/director/director.h
diffstat 3 files changed, 15 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/director/director-connection.c	Wed May 19 18:43:47 2010 +0200
+++ b/src/director/director-connection.c	Wed May 19 18:49:25 2010 +0200
@@ -431,8 +431,7 @@
 			return TRUE;
 
 		/* the ring is handshaked */
-		conn->dir->ring_handshaked = TRUE;
-		director_set_state_changed(conn->dir);
+		director_set_ring_handshaked(conn->dir);
 		return TRUE;
 	}
 
--- a/src/director/director.c	Wed May 19 18:43:47 2010 +0200
+++ b/src/director/director.c	Wed May 19 18:49:25 2010 +0200
@@ -115,11 +115,22 @@
 	}
 	if (i == count) {
 		/* we're the only one */
-		dir->ring_handshaked = TRUE;
-		director_set_state_changed(dir);
+		director_set_ring_handshaked(dir);
 	}
 }
 
+void director_set_ring_handshaked(struct director *dir)
+{
+	if (dir->ring_handshake_warning_sent) {
+		i_warning("Directors have been connected, "
+			  "continuing delayed connections");
+		dir->ring_handshake_warning_sent = FALSE;
+	}
+
+	dir->ring_handshaked = TRUE;
+	director_set_state_changed(dir);
+}
+
 void director_update_host(struct director *dir, struct director_host *src,
 			  struct mail_host *host)
 {
--- a/src/director/director.h	Wed May 19 18:43:47 2010 +0200
+++ b/src/director/director.h	Wed May 19 18:49:25 2010 +0200
@@ -69,6 +69,7 @@
 /* Start connecting to other directors */
 void director_connect(struct director *dir);
 
+void director_set_ring_handshaked(struct director *dir);
 void director_set_state_changed(struct director *dir);
 
 void director_update_host(struct director *dir, struct director_host *src,