Mercurial > dovecot > core-2.2
changeset 14487:45be27ff3414
director: Removed special (time_t)-1 code, it's not actually needed.
Also this fixes a user refreshing issue.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 20 Apr 2012 11:22:26 +0300 |
parents | 58286c1e272d |
children | 798b5e1609e5 |
files | src/director/director-connection.c src/director/director-request.c src/director/director.c src/director/test-user-directory.c src/director/user-directory.c src/director/user-directory.h |
diffstat | 6 files changed, 8 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- 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 {
--- 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);
--- 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 */
--- 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);
--- 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;
--- 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);