const char *wildcard_user)
{
struct mail_storage_service_input input;
- unsigned int user_idx, user_count, interval, n;
+ unsigned int user_idx;
const char *user, *error;
int ret;
ctx->v.init(ctx, (const void *)argv);
- user_count = mail_storage_service_all_init(ctx->storage_service);
- n = user_count / 10000;
- for (interval = 10; n > 0 && interval < 1000; interval *= 10)
- n /= 10;
+ mail_storage_service_all_init(ctx->storage_service);
if (hook_doveadm_mail_init != NULL)
hook_doveadm_mail_init(ctx);
if (ret == -1)
break;
if (doveadm_verbose) {
- if (++user_idx % interval == 0) {
- printf("\r%d / %d", user_idx, user_count);
+ if (++user_idx % 100 == 0) {
+ printf("\r%d", user_idx);
fflush(stdout);
}
}
pool_unref(&temp_pool);
}
-unsigned int
-mail_storage_service_all_init(struct mail_storage_service_ctx *ctx)
+void mail_storage_service_all_init(struct mail_storage_service_ctx *ctx)
{
if (ctx->auth_list != NULL)
(void)auth_master_user_list_deinit(&ctx->auth_list);
mail_storage_service_init_settings(ctx, NULL);
ctx->auth_list = auth_master_user_list_init(ctx->conn, "", NULL);
- return auth_master_user_list_count(ctx->auth_list);
}
int mail_storage_service_all_next(struct mail_storage_service_ctx *ctx,
struct mail_user **mail_user_r,
const char **error_r);
void mail_storage_service_user_free(struct mail_storage_service_user **user);
-/* Initialize iterating through all users. Return the number of users. */
-unsigned int
-mail_storage_service_all_init(struct mail_storage_service_ctx *ctx);
+/* Initialize iterating through all users. */
+void mail_storage_service_all_init(struct mail_storage_service_ctx *ctx);
/* Iterate through all usernames. Returns 1 if username was returned, 0 if
there are no more users, -1 if error. */
int mail_storage_service_all_next(struct mail_storage_service_ctx *ctx,