From: Karl Fleischmann Date: Wed, 26 Oct 2022 15:12:27 +0000 (+0200) Subject: global: Replace settings_get_time*() with str_parse_get_interval*() in project X-Git-Tag: 2.4.0~3397 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=92585c47733443f744ce4c573f4edeed6b53a0f0;p=thirdparty%2Fdovecot%2Fcore.git global: Replace settings_get_time*() with str_parse_get_interval*() in project --- diff --git a/src/lib-auth/auth-proxy.c b/src/lib-auth/auth-proxy.c index 751b48018a..46660872f8 100644 --- a/src/lib-auth/auth-proxy.c +++ b/src/lib-auth/auth-proxy.c @@ -1,7 +1,7 @@ /* Copyright (c) 2021 Dovecot authors, see the included COPYING file */ #include "lib.h" -#include "settings-parser.h" +#include "str-parse.h" #include "auth-proxy.h" static const char *maybe_strdup(pool_t pool, const char *str) @@ -60,7 +60,7 @@ int auth_proxy_settings_parse(struct auth_proxy_settings *set, pool_t pool, /* backwards compatibility: plain number is seconds */ if (str_to_uint(value, &set->timeout_msecs) == 0) set->timeout_msecs *= 1000; - else if (settings_get_time_msecs(value, + else if (str_parse_get_interval_msecs(value, &set->timeout_msecs, error_r) < 0) { return -1; } diff --git a/src/lib-settings/settings-parser.c b/src/lib-settings/settings-parser.c index 8013c6e0cf..8bec3af5a4 100644 --- a/src/lib-settings/settings-parser.c +++ b/src/lib-settings/settings-parser.c @@ -339,18 +339,6 @@ get_octal(struct setting_parser_context *ctx, const char *value, return 0; } -int settings_get_time(const char *str, unsigned int *secs_r, - const char **error_r) -{ - return str_parse_get_interval(str, secs_r, error_r); -} - -int settings_get_time_msecs(const char *str, unsigned int *msecs_r, - const char **error_r) -{ - return str_parse_get_interval_msecs(str, msecs_r, error_r); -} - static int get_enum(struct setting_parser_context *ctx, const char *value, char **result_r, const char *allowed_values) { @@ -525,13 +513,13 @@ settings_parse(struct setting_parser_context *ctx, struct setting_link *link, return -1; break; case SET_TIME: - if (settings_get_time(value, (unsigned int *)ptr, &error) < 0) { + if (str_parse_get_interval(value, (unsigned int *)ptr, &error) < 0) { ctx->error = p_strdup(ctx->parser_pool, error); return -1; } break; case SET_TIME_MSECS: - if (settings_get_time_msecs(value, (unsigned int *)ptr, &error) < 0) { + if (str_parse_get_interval_msecs(value, (unsigned int *)ptr, &error) < 0) { ctx->error = p_strdup(ctx->parser_pool, error); return -1; } diff --git a/src/lib-settings/settings-parser.h b/src/lib-settings/settings-parser.h index c2279265fd..208540179d 100644 --- a/src/lib-settings/settings-parser.h +++ b/src/lib-settings/settings-parser.h @@ -270,12 +270,6 @@ int settings_parser_apply_changes(struct setting_parser_context *dest, /* Return section name escaped */ const char *settings_section_escape(const char *name); -/* Parse time interval string, return as seconds. */ -int settings_get_time(const char *str, unsigned int *secs_r, - const char **error_r); -/* Parse time interval string, return as milliseconds. */ -int settings_get_time_msecs(const char *str, unsigned int *msecs_r, - const char **error_r); void set_config_binary(bool value); bool is_config_binary(void); diff --git a/src/lib-sql/driver-cassandra.c b/src/lib-sql/driver-cassandra.c index 16015b062a..1b60ba7981 100644 --- a/src/lib-sql/driver-cassandra.c +++ b/src/lib-sql/driver-cassandra.c @@ -6,13 +6,13 @@ #include "hostpid.h" #include "hex-binary.h" #include "str.h" +#include "str-parse.h" #include "ioloop.h" #include "net.h" #include "write-full.h" #include "time-util.h" #include "var-expand.h" #include "safe-memset.h" -#include "settings-parser.h" #include "sql-api-private.h" #ifdef BUILD_CASSANDRA @@ -721,43 +721,43 @@ static int driver_cassandra_parse_connect_string(struct cassandra_db *db, return -1; } } else if (strcmp(key, "heartbeat_interval") == 0) { - if (settings_get_time(value, &db->heartbeat_interval_secs, - &error) < 0) { + if (str_parse_get_interval(value, &db->heartbeat_interval_secs, + &error) < 0) { *error_r = t_strdup_printf( "Invalid heartbeat_interval '%s': %s", value, error); return -1; } } else if (strcmp(key, "idle_timeout") == 0) { - if (settings_get_time(value, &db->idle_timeout_secs, - &error) < 0) { + if (str_parse_get_interval(value, &db->idle_timeout_secs, + &error) < 0) { *error_r = t_strdup_printf( "Invalid idle_timeout '%s': %s", value, error); return -1; } } else if (strcmp(key, "connect_timeout") == 0) { - if (settings_get_time_msecs(value, - &db->connect_timeout_msecs, - &error) < 0) { + if (str_parse_get_interval_msecs(value, + &db->connect_timeout_msecs, + &error) < 0) { *error_r = t_strdup_printf( "Invalid connect_timeout '%s': %s", value, error); return -1; } } else if (strcmp(key, "request_timeout") == 0) { - if (settings_get_time_msecs(value, - &db->request_timeout_msecs, - &error) < 0) { + if (str_parse_get_interval_msecs(value, + &db->request_timeout_msecs, + &error) < 0) { *error_r = t_strdup_printf( "Invalid request_timeout '%s': %s", value, error); return -1; } } else if (strcmp(key, "warn_timeout") == 0) { - if (settings_get_time_msecs(value, - &db->warn_timeout_msecs, - &error) < 0) { + if (str_parse_get_interval_msecs(value, + &db->warn_timeout_msecs, + &error) < 0) { *error_r = t_strdup_printf( "Invalid warn_timeout '%s': %s", value, error); @@ -767,9 +767,9 @@ static int driver_cassandra_parse_connect_string(struct cassandra_db *db, i_free(db->metrics_path); db->metrics_path = i_strdup(value); } else if (strcmp(key, "execution_retry_interval") == 0) { - if (settings_get_time_msecs(value, - &db->execution_retry_interval_msecs, - &error) < 0) { + if (str_parse_get_interval_msecs(value, + &db->execution_retry_interval_msecs, + &error) < 0) { *error_r = t_strdup_printf( "Invalid execution_retry_interval '%s': %s", value, error); diff --git a/src/lib-storage/mail-storage.c b/src/lib-storage/mail-storage.c index a37ce30852..05ce59d48f 100644 --- a/src/lib-storage/mail-storage.c +++ b/src/lib-storage/mail-storage.c @@ -6,6 +6,7 @@ #include "llist.h" #include "mail-storage.h" #include "str.h" +#include "str-parse.h" #include "sha1.h" #include "unichar.h" #include "hex-binary.h" @@ -20,7 +21,6 @@ #include "var-expand.h" #include "dsasl-client.h" #include "imap-date.h" -#include "settings-parser.h" #include "mail-index-private.h" #include "mail-index-alloc-cache.h" #include "mailbox-tree.h" @@ -3237,7 +3237,7 @@ int mail_parse_human_timestamp(const char *str, time_t *timestamp_r, /* unix timestamp */ *utc_r = TRUE; return 0; - } else if (settings_get_time(str, &secs, &error) == 0) { + } else if (str_parse_get_interval(str, &secs, &error) == 0) { *timestamp_r = ioloop_time - secs; *utc_r = TRUE; return 0; diff --git a/src/login-common/client-common-auth.c b/src/login-common/client-common-auth.c index 6e003b74b1..b9e1ab9883 100644 --- a/src/login-common/client-common-auth.c +++ b/src/login-common/client-common-auth.c @@ -8,9 +8,9 @@ #include "ostream.h" #include "str.h" #include "strescape.h" +#include "str-parse.h" #include "safe-memset.h" #include "time-util.h" -#include "settings-parser.h" #include "login-proxy.h" #include "auth-client.h" #include "dsasl-client.h" @@ -171,7 +171,7 @@ static bool client_auth_parse_args(const struct client *client, bool success, } else if (strcmp(key, "reason") == 0) reply_r->reason = value; else if (strcmp(key, "proxy_host_immediate_failure_after") == 0) { - if (settings_get_time(value, + if (str_parse_get_interval(value, &reply_r->proxy_host_immediate_failure_after_secs, &error) < 0) { e_error(client->event, diff --git a/src/plugins/fts-flatcurve/fts-flatcurve-plugin.c b/src/plugins/fts-flatcurve/fts-flatcurve-plugin.c index bf19eb92fa..940058eea9 100644 --- a/src/plugins/fts-flatcurve/fts-flatcurve-plugin.c +++ b/src/plugins/fts-flatcurve/fts-flatcurve-plugin.c @@ -3,7 +3,7 @@ #include "lib.h" #include "mail-storage-hooks.h" -#include "settings-parser.h" +#include "str-parse.h" #include "fts-user.h" #include "fts-backend-flatcurve.h" #include "fts-backend-flatcurve-xapian.h" @@ -111,7 +111,7 @@ fts_flatcurve_plugin_init_settings(struct mail_user *user, pset = mail_user_plugin_getenv(user, FTS_FLATCURVE_PLUGIN_ROTATE_TIME); if (pset != NULL) { const char *error; - if (settings_get_time_msecs(pset, &val, &error) < 0) { + if (str_parse_get_interval_msecs(pset, &val, &error) < 0) { *error_r = t_strdup_printf("Invalid %s: %s", FTS_FLATCURVE_PLUGIN_ROTATE_TIME, error); return -1; diff --git a/src/plugins/fts/fts-indexer.c b/src/plugins/fts/fts-indexer.c index 73ff6a7bfb..79d4a4d7af 100644 --- a/src/plugins/fts/fts-indexer.c +++ b/src/plugins/fts/fts-indexer.c @@ -8,7 +8,7 @@ #include "ostream.h" #include "strescape.h" #include "time-util.h" -#include "settings-parser.h" +#include "str-parse.h" #include "mail-user.h" #include "mail-storage-private.h" #include "fts-api.h" @@ -231,7 +231,7 @@ int fts_indexer_init(struct fts_backend *backend, struct mailbox *box, value = mail_user_plugin_getenv(box->storage->user, "fts_index_timeout"); if (value != NULL) { - if (settings_get_time(value, &timeout_secs, &error) < 0) { + if (str_parse_get_interval(value, &timeout_secs, &error) < 0) { e_error(box->storage->user->event, "Invalid fts_index_timeout setting: %s", error); diff --git a/src/plugins/push-notification/push-notification-driver-ox.c b/src/plugins/push-notification/push-notification-driver-ox.c index 962ee54758..f2e19ae971 100644 --- a/src/plugins/push-notification/push-notification-driver-ox.c +++ b/src/plugins/push-notification/push-notification-driver-ox.c @@ -6,12 +6,12 @@ #include "http-url.h" #include "ioloop.h" #include "istream.h" -#include "settings-parser.h" #include "json-parser.h" #include "mailbox-attribute.h" #include "mail-storage-private.h" #include "str.h" #include "strescape.h" +#include "str-parse.h" #include "iostream-ssl.h" #include "push-notification-plugin.h" @@ -117,7 +117,7 @@ push_notification_driver_ox_init(struct push_notification_driver_config *config, if (tmp == NULL) { dconfig->cached_ox_metadata_lifetime_secs = DEFAULT_CACHE_LIFETIME_SECS; - } else if (settings_get_time( + } else if (str_parse_get_interval( tmp, &dconfig->cached_ox_metadata_lifetime_secs, &error) < 0) { event_unref(&dconfig->event); *error_r = t_strdup_printf(