dovecot-2.2: director: Removed special (time_t)-1 code, it's not...

dovecot at dovecot.org dovecot at dovecot.org
Sun May 20 03:26:33 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.2/rev/45be27ff3414
changeset: 14487:45be27ff3414
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Apr 20 11:22:26 2012 +0300
description:
director: Removed special (time_t)-1 code, it's not actually needed.
Also this fixes a user refreshing issue.

diffstat:

 src/director/director-connection.c |  4 ++--
 src/director/director-request.c    |  2 +-
 src/director/director.c            |  2 +-
 src/director/test-user-directory.c |  2 +-
 src/director/user-directory.c      |  9 ++-------
 src/director/user-directory.h      |  3 +--
 6 files changed, 8 insertions(+), 14 deletions(-)

diffs (90 lines):

diff -r 58286c1e272d -r 45be27ff3414 src/director/director-connection.c
--- a/src/director/director-connection.c	Fri Apr 20 11:09:36 2012 +0300
+++ b/src/director/director-connection.c	Fri Apr 20 11:22:26 2012 +0300
@@ -549,7 +549,7 @@
 	}
 
 	if (director_user_refresh(conn, username_hash,
-				  host, (time_t)-1, FALSE, &user)) {
+				  host, ioloop_time, FALSE, &user)) {
 		i_assert(!user->weak);
 		director_update_user(conn->dir, conn->host, user);
 	}
@@ -683,7 +683,7 @@
 	}
 
 	if (director_user_refresh(conn, username_hash,
-				  host, (time_t)-1, weak, &user)) {
+				  host, ioloop_time, weak, &user)) {
 		if (!user->weak)
 			director_update_user(conn->dir, src_host, user);
 		else {
diff -r 58286c1e272d -r 45be27ff3414 src/director/director-request.c
--- a/src/director/director-request.c	Fri Apr 20 11:09:36 2012 +0300
+++ b/src/director/director-request.c	Fri Apr 20 11:22:26 2012 +0300
@@ -225,7 +225,7 @@
 			return FALSE;
 		}
 		user = user_directory_add(dir->users, request->username_hash,
-					  host, (time_t)-1);
+					  host, ioloop_time);
 	}
 
 	i_assert(!user->weak);
diff -r 58286c1e272d -r 45be27ff3414 src/director/director.c
--- a/src/director/director.c	Fri Apr 20 11:09:36 2012 +0300
+++ b/src/director/director.c	Fri Apr 20 11:22:26 2012 +0300
@@ -582,7 +582,7 @@
 	user = user_directory_lookup(dir->users, username_hash);
 	if (user == NULL) {
 		user = user_directory_add(dir->users, username_hash,
-					  host, (time_t)-1);
+					  host, ioloop_time);
 	} else {
 		if (user->host == host) {
 			/* user is already in this host */
diff -r 58286c1e272d -r 45be27ff3414 src/director/test-user-directory.c
--- a/src/director/test-user-directory.c	Fri Apr 20 11:09:36 2012 +0300
+++ b/src/director/test-user-directory.c	Fri Apr 20 11:22:26 2012 +0300
@@ -81,7 +81,7 @@
 	dir = user_directory_init(USER_DIR_TIMEOUT, "%u");
 	for (i = 0; i < count; i++) {
 		if (rand() % 10 == 0)
-			timestamp = (time_t)-1;
+			timestamp = ioloop_time;
 		else
 			timestamp = ioloop_time-rand()%100;
 		user_directory_add(dir, i+1, host, timestamp);
diff -r 58286c1e272d -r 45be27ff3414 src/director/user-directory.c
--- a/src/director/user-directory.c	Fri Apr 20 11:09:36 2012 +0300
+++ b/src/director/user-directory.c	Fri Apr 20 11:22:26 2012 +0300
@@ -131,14 +131,9 @@
 {
 	struct user *user;
 
-	if (timestamp == (time_t)-1) {
-		/* add it at the end */
+	/* make sure we don't add timestamps higher than ioloop time */
+	if (timestamp > ioloop_time)
 		timestamp = ioloop_time;
-	} else {
-		/* make sure we don't add timestamps higher than ioloop time */
-		if (timestamp > ioloop_time)
-			timestamp = ioloop_time;
-	}
 
 	user = i_new(struct user, 1);
 	user->username_hash = username_hash;
diff -r 58286c1e272d -r 45be27ff3414 src/director/user-directory.h
--- a/src/director/user-directory.h	Fri Apr 20 11:09:36 2012 +0300
+++ b/src/director/user-directory.h	Fri Apr 20 11:22:26 2012 +0300
@@ -54,8 +54,7 @@
 /* Look up username from directory. Returns NULL if not found. */
 struct user *user_directory_lookup(struct user_directory *dir,
 				   unsigned int username_hash);
-/* Add a user to directory and return it. If timestamp is (time_t)-1,
-   the current time is used. */
+/* Add a user to directory and return it. */
 struct user *
 user_directory_add(struct user_directory *dir, unsigned int username_hash,
 		   struct mail_host *host, time_t timestamp);


More information about the dovecot-cvs mailing list