DEF(SET_STR, director_flush_socket),
DEF(SET_TIME, director_user_expire),
DEF(SET_TIME, director_user_kick_delay),
+ DEF(SET_TIME, director_max_parallel_moves),
+ DEF(SET_TIME, director_max_parallel_kicks),
DEF(SET_SIZE, director_output_buffer_size),
SETTING_DEFINE_LIST_END
.director_flush_socket = "",
.director_user_expire = 60*15,
.director_user_kick_delay = 2,
+ .director_max_parallel_moves = 100,
+ .director_max_parallel_kicks = 100,
.director_output_buffer_size = 10 * 1024 * 1024,
};
unsigned int director_user_expire;
unsigned int director_user_kick_delay;
+ unsigned int director_max_parallel_moves;
+ unsigned int director_max_parallel_kicks;
uoff_t director_output_buffer_size;
};
#define DOVEADM_HANDSHAKE "VERSION\tdirector-doveadm\t1\t0\n"
#define MAX_VALID_VHOST_COUNT 1000
-#define DEFAULT_MAX_MOVING_USERS 100
-#define DEFAULT_MAX_KICKING_USERS 100
#define DOVEADM_CONNECTION_RING_SYNC_TIMEOUT_MSECS (30*1000)
struct ip_addr ip;
struct mail_host *const *hosts;
unsigned int i = 0, count;
- unsigned int max_moving_users = DEFAULT_MAX_MOVING_USERS;
+ unsigned int max_moving_users =
+ conn->dir->set->director_max_parallel_moves;
if (args[0] != NULL && args[1] != NULL &&
(str_to_uint(args[1], &max_moving_users) < 0 ||
static bool doveadm_cmd_user_kick_run(struct director_kick_cmd *cmd)
{
- if (cmd->dir->users_kicking_count >= DEFAULT_MAX_KICKING_USERS)
+ if (cmd->dir->users_kicking_count >=
+ cmd->dir->set->director_max_parallel_kicks)
return FALSE;
if (cmd->alt)