From: Timo Sirainen Date: Wed, 10 Feb 2021 19:45:58 +0000 (+0200) Subject: global: Use array_foreach_elem() where possible X-Git-Tag: 2.3.16~186 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2b50ec125bfff6f4715f98efe0c9199d1bf78704;p=thirdparty%2Fdovecot%2Fcore.git global: Use array_foreach_elem() where possible --- diff --git a/src/dict/dict-commands.c b/src/dict/dict-commands.c index 135a278fd6..85d2eec70b 100644 --- a/src/dict/dict-commands.c +++ b/src/dict/dict-commands.c @@ -684,12 +684,10 @@ int dict_command_input(struct dict_connection *conn, const char *line) static bool dict_connection_cmds_try_output_more(struct dict_connection *conn) { - struct dict_connection_cmd *const *cmdp, *cmd; + struct dict_connection_cmd *cmd; /* only iterators may be returning a lot of data */ - array_foreach(&conn->cmds, cmdp) { - cmd = *cmdp; - + array_foreach_elem(&conn->cmds, cmd) { if (cmd->iter == NULL) { /* not an iterator */ } else if (cmd_iterate_flush(cmd) == 0) { diff --git a/src/imap-login/imap-login-commands.c b/src/imap-login/imap-login-commands.c index a93f77ee66..8d4878d142 100644 --- a/src/imap-login/imap-login-commands.c +++ b/src/imap-login/imap-login-commands.c @@ -9,11 +9,11 @@ static pool_t imap_login_commands_pool; struct imap_login_command *imap_login_command_lookup(const char *name) { - struct imap_login_command *const *cmdp; + struct imap_login_command *cmd; - array_foreach(&imap_login_commands, cmdp) { - if (strcasecmp((*cmdp)->name, name) == 0) - return *cmdp; + array_foreach_elem(&imap_login_commands, cmd) { + if (strcasecmp(cmd->name, name) == 0) + return cmd; } return NULL; } diff --git a/src/imap-urlauth/imap-urlauth-worker.c b/src/imap-urlauth/imap-urlauth-worker.c index a26a439e58..4dc413a431 100644 --- a/src/imap-urlauth/imap-urlauth-worker.c +++ b/src/imap-urlauth/imap-urlauth-worker.c @@ -217,7 +217,7 @@ static void client_abort(struct client *client, const char *reason) static void client_destroy(struct client *client) { - char **app; + char *app; i_set_failure_prefix("imap-urlauth[%s](%s): ", my_pid, client->access_user); @@ -257,8 +257,8 @@ static void client_destroy(struct client *client) mail_storage_service_user_unref(&client->service_user); i_free(client->access_user); i_free(client->access_service); - array_foreach_modifiable(&client->access_apps, app) - i_free(*app); + array_foreach_elem(&client->access_apps, app) + i_free(app); array_free(&client->access_apps); i_free(client); diff --git a/src/ipc/ipc-connection.c b/src/ipc/ipc-connection.c index 48fcd089d1..763752ac63 100644 --- a/src/ipc/ipc-connection.c +++ b/src/ipc/ipc-connection.c @@ -46,11 +46,11 @@ static void ipc_connection_cmd_free(struct ipc_connection_cmd **_cmd, static struct ipc_connection_cmd * ipc_connection_cmd_find(struct ipc_connection *conn, unsigned int tag) { - struct ipc_connection_cmd *const *cmdp; + struct ipc_connection_cmd *cmd; - array_foreach(&conn->cmds, cmdp) { - if ((*cmdp)->tag == tag) - return *cmdp; + array_foreach_elem(&conn->cmds, cmd) { + if (cmd->tag == tag) + return cmd; } return NULL; } diff --git a/src/ipc/ipc-group.c b/src/ipc/ipc-group.c index e1144c31f7..945141990a 100644 --- a/src/ipc/ipc-group.c +++ b/src/ipc/ipc-group.c @@ -48,23 +48,23 @@ void ipc_group_free(struct ipc_group **_group) struct ipc_group *ipc_group_lookup_listen_fd(int listen_fd) { - struct ipc_group *const *groupp; + struct ipc_group *group; - array_foreach(&ipc_groups, groupp) { - if ((*groupp)->listen_fd == listen_fd) - return *groupp; + array_foreach_elem(&ipc_groups, group) { + if (group->listen_fd == listen_fd) + return group; } return NULL; } struct ipc_group *ipc_group_lookup_name(const char *name) { - struct ipc_group *const *groupp; + struct ipc_group *group; - array_foreach(&ipc_groups, groupp) { - if ((*groupp)->name != NULL && - strcmp((*groupp)->name, name) == 0) - return *groupp; + array_foreach_elem(&ipc_groups, group) { + if (group->name != NULL && + strcmp(group->name, name) == 0) + return group; } return NULL; } diff --git a/src/lib-fs/fs-api.c b/src/lib-fs/fs-api.c index d9bb4bd5c1..048d22af6c 100644 --- a/src/lib-fs/fs-api.c +++ b/src/lib-fs/fs-api.c @@ -96,14 +96,14 @@ static void fs_classes_init(void) static const struct fs *fs_class_find(const char *driver) { - const struct fs *const *classp; + const struct fs *class; if (!array_is_created(&fs_classes)) fs_classes_init(); - array_foreach(&fs_classes, classp) { - if (strcmp((*classp)->name, driver) == 0) - return *classp; + array_foreach_elem(&fs_classes, class) { + if (strcmp(class->name, driver) == 0) + return class; } return NULL; } diff --git a/src/lib-mail/istream-attachment-connector.c b/src/lib-mail/istream-attachment-connector.c index 7095499c6b..cb66563f19 100644 --- a/src/lib-mail/istream-attachment-connector.c +++ b/src/lib-mail/istream-attachment-connector.c @@ -96,12 +96,10 @@ int istream_attachment_connector_add(struct istream_attachment_connector *conn, static void istream_attachment_connector_free(struct istream_attachment_connector *conn) { - struct istream *const *streamp, *stream; + struct istream *stream; - array_foreach(&conn->streams, streamp) { - stream = *streamp; + array_foreach_elem(&conn->streams, stream) i_stream_unref(&stream); - } i_stream_unref(&conn->base_input); pool_unref(&conn->pool); } diff --git a/src/lib-master/master-service-settings.c b/src/lib-master/master-service-settings.c index b9ca3cedbe..d16dc7bba3 100644 --- a/src/lib-master/master-service-settings.c +++ b/src/lib-master/master-service-settings.c @@ -760,7 +760,7 @@ int master_service_set(struct master_service *service, const char *line) bool master_service_set_has_config_override(struct master_service *service, const char *key) { - const char *const *override, *key_root; + const char *override, *key_root; bool ret; if (!array_is_created(&service->config_overrides)) @@ -770,11 +770,11 @@ bool master_service_set_has_config_override(struct master_service *service, if (key_root == NULL) key_root = key; - array_foreach(&service->config_overrides, override) { + array_foreach_elem(&service->config_overrides, override) { T_BEGIN { const char *okey, *okey_root; - okey = t_strcut(*override, '='); + okey = t_strcut(override, '='); okey_root = settings_parse_unalias(service->set_parser, okey); if (okey_root == NULL) diff --git a/src/lib-program-client/program-client-local.c b/src/lib-program-client/program-client-local.c index 3c15fbe420..de5b680c9d 100644 --- a/src/lib-program-client/program-client-local.c +++ b/src/lib-program-client/program-client-local.c @@ -121,11 +121,10 @@ exec_child(const char *bin_path, const char *const *args, env_clean(); if (array_is_created(envs)) { - const char *const *env; + const char *env; - array_foreach(envs, env) { - env_put(*env); - } + array_foreach_elem(envs, env) + env_put(env); } /* Execute */ diff --git a/src/lib-program-client/program-client-remote.c b/src/lib-program-client/program-client-remote.c index 54b5d5a32a..f49cde2808 100644 --- a/src/lib-program-client/program-client-remote.c +++ b/src/lib-program-client/program-client-remote.c @@ -288,10 +288,10 @@ program_client_remote_connected(struct program_client_remote *prclient) str = t_str_new(1024); str_append(str, PROGRAM_CLIENT_VERSION_STRING); if (array_is_created(&pclient->envs)) { - const char *const *env; - array_foreach(&pclient->envs, env) { + const char *env; + array_foreach_elem(&pclient->envs, env) { str_append(str, "env_"); - str_append_tabescaped(str, *env); + str_append_tabescaped(str, env); str_append_c(str, '\n'); } } diff --git a/src/lib-sql/driver-cassandra.c b/src/lib-sql/driver-cassandra.c index 5b140b4f05..0255ad1375 100644 --- a/src/lib-sql/driver-cassandra.c +++ b/src/lib-sql/driver-cassandra.c @@ -371,7 +371,7 @@ static void driver_cassandra_set_state(struct cassandra_db *db, static void driver_cassandra_close(struct cassandra_db *db, const char *error) { - struct cassandra_sql_prepared_statement *const *prep_stmtp; + struct cassandra_sql_prepared_statement *prep_stmt; struct cassandra_result *const *resultp; io_remove(&db->io_pipe); @@ -381,10 +381,10 @@ static void driver_cassandra_close(struct cassandra_db *db, const char *error) } driver_cassandra_set_state(db, SQL_DB_STATE_DISCONNECTED); - array_foreach(&db->pending_prepares, prep_stmtp) { - (*prep_stmtp)->pending = FALSE; - (*prep_stmtp)->error = i_strdup(error); - prepare_finish_pending_statements(*prep_stmtp); + array_foreach_elem(&db->pending_prepares, prep_stmt) { + prep_stmt->pending = FALSE; + prep_stmt->error = i_strdup(error); + prepare_finish_pending_statements(prep_stmt); } array_clear(&db->pending_prepares); @@ -2196,10 +2196,10 @@ static void prepare_finish_statement(struct cassandra_sql_statement *stmt) static void prepare_finish_pending_statements(struct cassandra_sql_prepared_statement *prep_stmt) { - struct cassandra_sql_statement *const *stmtp; + struct cassandra_sql_statement *stmt; - array_foreach(&prep_stmt->pending_statements, stmtp) - prepare_finish_statement(*stmtp); + array_foreach_elem(&prep_stmt->pending_statements, stmt) + prepare_finish_statement(stmt); array_clear(&prep_stmt->pending_statements); } @@ -2248,13 +2248,13 @@ static void prepare_start(struct cassandra_sql_prepared_statement *prep_stmt) static void driver_cassandra_prepare_pending(struct cassandra_db *db) { - struct cassandra_sql_prepared_statement *const *prep_stmtp; + struct cassandra_sql_prepared_statement *prep_stmt; i_assert(SQL_DB_IS_READY(&db->api)); - array_foreach(&db->pending_prepares, prep_stmtp) { - (*prep_stmtp)->pending = FALSE; - prepare_start(*prep_stmtp); + array_foreach_elem(&db->pending_prepares, prep_stmt) { + prep_stmt->pending = FALSE; + prepare_start(prep_stmt); } array_clear(&db->pending_prepares); } diff --git a/src/lib-sql/driver-sqlpool.c b/src/lib-sql/driver-sqlpool.c index c28db84180..8b72f48c82 100644 --- a/src/lib-sql/driver-sqlpool.c +++ b/src/lib-sql/driver-sqlpool.c @@ -421,7 +421,7 @@ static int driver_sqlpool_parse_hosts(struct sqlpool_db *db, const char *connect_string, const char **error_r) { - const char *const *args, *key, *value, *const *hostnamep; + const char *const *args, *key, *value, *hostname; struct sqlpool_host *host; ARRAY_TYPE(const_string) hostnames, connect_args; @@ -467,10 +467,10 @@ driver_sqlpool_parse_hosts(struct sqlpool_db *db, const char *connect_string, if (*connect_string == '\0') connect_string = NULL; - array_foreach(&hostnames, hostnamep) { + array_foreach_elem(&hostnames, hostname) { host = array_append_space(&db->hosts); host->connect_string = - i_strconcat("host=", *hostnamep, " ", + i_strconcat("host=", hostname, " ", connect_string, NULL); } } diff --git a/src/lib-test/test-subprocess.c b/src/lib-test/test-subprocess.c index f7824c93e1..b85c41f7aa 100644 --- a/src/lib-test/test-subprocess.c +++ b/src/lib-test/test-subprocess.c @@ -31,10 +31,10 @@ test_subprocess_signal(const siginfo_t *si ATTR_UNUSED, static void test_subprocess_free_all(void) { - struct test_subprocess **subpp; + struct test_subprocess *subp; - array_foreach_modifiable(&test_subprocesses, subpp) - i_free(*subpp); + array_foreach_elem(&test_subprocesses, subp) + i_free(subp); array_free(&test_subprocesses); } diff --git a/src/lmtp/lmtp-proxy.c b/src/lmtp/lmtp-proxy.c index 11984b7f3a..b33d524b09 100644 --- a/src/lmtp/lmtp-proxy.c +++ b/src/lmtp/lmtp-proxy.c @@ -153,12 +153,12 @@ lmtp_proxy_connection_deinit(struct lmtp_proxy_connection *conn) void lmtp_proxy_deinit(struct lmtp_proxy **_proxy) { struct lmtp_proxy *proxy = *_proxy; - struct lmtp_proxy_connection *const *conns; + struct lmtp_proxy_connection *conn; *_proxy = NULL; - array_foreach(&proxy->connections, conns) - lmtp_proxy_connection_deinit(*conns); + array_foreach_elem(&proxy->connections, conn) + lmtp_proxy_connection_deinit(conn); smtp_client_deinit(&proxy->lmtp_client); i_stream_unref(&proxy->data_input); @@ -230,15 +230,13 @@ lmtp_proxy_get_connection(struct lmtp_proxy *proxy, }; struct smtp_client_settings lmtp_set; struct smtp_server_transaction *trans = proxy->trans; - struct lmtp_proxy_connection *const *conns, *conn; + struct lmtp_proxy_connection *conn; enum smtp_client_connection_ssl_mode ssl_mode; struct ssl_iostream_settings ssl_set; i_assert(set->timeout_msecs > 0); - array_foreach(&proxy->connections, conns) { - conn = *conns; - + array_foreach_elem(&proxy->connections, conn) { if (conn->set.protocol == set->protocol && conn->set.port == set->port && strcmp(conn->set.host, set->host) == 0 && @@ -787,7 +785,7 @@ void lmtp_proxy_data(struct client *client, struct istream *data_input) { struct lmtp_proxy *proxy = client->proxy; - struct lmtp_proxy_connection *const *conns; + struct lmtp_proxy_connection *conn; uoff_t size; i_assert(data_input->seekable); @@ -805,9 +803,7 @@ void lmtp_proxy_data(struct client *client, } /* Create the data_input streams first */ - array_foreach(&proxy->connections, conns) { - struct lmtp_proxy_connection *conn = *conns; - + array_foreach_elem(&proxy->connections, conn) { if (conn->finished) { /* This connection had already failed */ continue; @@ -824,9 +820,7 @@ void lmtp_proxy_data(struct client *client, /* Now that all the streams are created, start reading them (reading them earlier could have caused the data_input parent's offset to change) */ - array_foreach(&proxy->connections, conns) { - struct lmtp_proxy_connection *conn = *conns; - + array_foreach_elem(&proxy->connections, conn) { if (conn->finished) { /* This connection had already failed */ continue; diff --git a/src/login-common/login-proxy.c b/src/login-common/login-proxy.c index 5e3b59c3a8..01927ee529 100644 --- a/src/login-common/login-proxy.c +++ b/src/login-common/login-proxy.c @@ -1022,12 +1022,12 @@ static void login_proxy_cmd_list(struct ipc_cmd *cmd, const char *const *args ATTR_UNUSED) { struct login_proxy *proxy; - char *const *fieldp; + char *field; string_t *str = t_str_new(64); str_append(str, "username\t"); - array_foreach(&global_alt_usernames, fieldp) { - str_append_tabescaped(str, *fieldp); + array_foreach_elem(&global_alt_usernames, field) { + str_append_tabescaped(str, field); str_append_c(str, '\t'); } str_append(str, "service\tsrc-ip\tdest-ip\tdest-port"); diff --git a/src/login-common/main.c b/src/login-common/main.c index cee6d43d14..728e7b1e5d 100644 --- a/src/login-common/main.c +++ b/src/login-common/main.c @@ -489,9 +489,9 @@ static void main_deinit(void) auth_client_deinit(&auth_client); master_auth_deinit(&master_auth); - char **strp; - array_foreach_modifiable(&global_alt_usernames, strp) - i_free(*strp); + char *str; + array_foreach_elem(&global_alt_usernames, str) + i_free(str); array_free(&global_alt_usernames); if (anvil != NULL) diff --git a/src/replication/replicator/doveadm-connection.c b/src/replication/replicator/doveadm-connection.c index c2a113162d..f1acba62e7 100644 --- a/src/replication/replicator/doveadm-connection.c +++ b/src/replication/replicator/doveadm-connection.c @@ -115,16 +115,16 @@ client_input_status_dsyncs(struct doveadm_connection *client) { string_t *str = t_str_new(256); const ARRAY_TYPE(dsync_client) *clients; - struct dsync_client *const *clientp; + struct dsync_client *dsync_client; const char *username; clients = replicator_brain_get_dsync_clients(client->brain); - array_foreach(clients, clientp) { - username = dsync_client_get_username(*clientp); + array_foreach_elem(clients, dsync_client) { + username = dsync_client_get_username(dsync_client); if (username != NULL) { str_append_tabescaped(str, username); str_append_c(str, '\t'); - switch (dsync_client_get_type(*clientp)) { + switch (dsync_client_get_type(dsync_client)) { case DSYNC_TYPE_FULL: str_append(str, "full"); break; @@ -139,7 +139,7 @@ client_input_status_dsyncs(struct doveadm_connection *client) str_append(str, "\t-"); } str_append_c(str, '\t'); - str_append_tabescaped(str, dsync_client_get_state(*clientp)); + str_append_tabescaped(str, dsync_client_get_state(dsync_client)); str_append_c(str, '\n'); } diff --git a/src/replication/replicator/replicator-brain.c b/src/replication/replicator/replicator-brain.c index 370f6179cb..f506aa77b1 100644 --- a/src/replication/replicator/replicator-brain.c +++ b/src/replication/replicator/replicator-brain.c @@ -55,13 +55,13 @@ replicator_brain_init(struct replicator_queue *queue, void replicator_brain_deinit(struct replicator_brain **_brain) { struct replicator_brain *brain = *_brain; - struct dsync_client **connp; + struct dsync_client *conn; *_brain = NULL; brain->deinitializing = TRUE; - array_foreach_modifiable(&brain->dsync_clients, connp) - dsync_client_deinit(connp); + array_foreach_elem(&brain->dsync_clients, conn) + dsync_client_deinit(&conn); timeout_remove(&brain->to); pool_unref(&brain->pool); } @@ -87,11 +87,11 @@ replicator_brain_get_dsync_clients(struct replicator_brain *brain) static struct dsync_client * get_dsync_client(struct replicator_brain *brain) { - struct dsync_client *const *connp, *conn = NULL; + struct dsync_client *conn; - array_foreach(&brain->dsync_clients, connp) { - if (!dsync_client_is_busy(*connp)) - return *connp; + array_foreach_elem(&brain->dsync_clients, conn) { + if (!dsync_client_is_busy(conn)) + return conn; } if (array_count(&brain->dsync_clients) == brain->set->replication_max_conns)