Mercurial > dovecot > core-2.2
diff src/director/doveadm-connection.c @ 11352:19336bddada2 HEAD
director: Code cleanup - keep mail hosts in a struct rather than in static variables.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 20 May 2010 12:23:55 +0200 |
parents | c57c1ff9c5f1 |
children | 1bc3d5589c5a |
line wrap: on
line diff
--- a/src/director/doveadm-connection.c Thu May 20 11:46:21 2010 +0200 +++ b/src/director/doveadm-connection.c Thu May 20 12:23:55 2010 +0200 @@ -43,7 +43,7 @@ struct mail_host *const *hostp; string_t *str = t_str_new(1024); - array_foreach(mail_hosts_get(), hostp) { + array_foreach(mail_hosts_get(conn->dir->mail_hosts), hostp) { str_printfa(str, "%s\t%u\t%u\n", net_ip2addr(&(*hostp)->ip), (*hostp)->vhost_count, (*hostp)->user_count); @@ -68,6 +68,7 @@ static bool doveadm_cmd_host_set(struct doveadm_connection *conn, const char *line) { + struct director *dir = conn->dir; const char *const *args; struct mail_host *host; struct ip_addr ip; @@ -84,12 +85,12 @@ o_stream_send_str(conn->output, "vhost count too large\n"); return TRUE; } - host = mail_host_lookup(&ip); + host = mail_host_lookup(dir->mail_hosts, &ip); if (host == NULL) - host = mail_host_add_ip(&ip); + host = mail_host_add_ip(dir->mail_hosts, &ip); if (vhost_count != -1U) - mail_host_set_vhost_count(host, vhost_count); - director_update_host(conn->dir, conn->dir->self_host, host); + mail_host_set_vhost_count(dir->mail_hosts, host, vhost_count); + director_update_host(dir, dir->self_host, host); o_stream_send(conn->output, "OK\n", 3); return TRUE; @@ -105,7 +106,7 @@ i_error("doveadm sent invalid HOST-SET parameters"); return FALSE; } - host = mail_host_lookup(&ip); + host = mail_host_lookup(conn->dir->mail_hosts, &ip); if (host == NULL) o_stream_send_str(conn->output, "NOTFOUND\n"); else {