From 69ec7c9170e29fdf745fa282448d051edd1f88b2 Mon Sep 17 00:00:00 2001 From: Michal Sekletar Date: Tue, 9 Aug 2022 11:41:04 +0200 Subject: [PATCH] core/load-fragment: move config_parse_sec_fix_0 to src/shared (cherry picked from commit 4ee8176fe33bbcd0971c4583a0e7d1cc2a64ac06) Related: #2122288 --- src/core/load-fragment.c | 33 --------------------------------- src/core/load-fragment.h | 1 - src/shared/conf-parser.c | 2 ++ src/shared/conf-parser.h | 1 + 4 files changed, 3 insertions(+), 34 deletions(-) diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c index c0b1fd4f91..53de7ff5e9 100644 --- a/src/core/load-fragment.c +++ b/src/core/load-fragment.c @@ -1865,39 +1865,6 @@ int config_parse_service_timeout( return 0; } -int config_parse_sec_fix_0( - const char *unit, - const char *filename, - unsigned line, - const char *section, - unsigned section_line, - const char *lvalue, - int ltype, - const char *rvalue, - void *data, - void *userdata) { - - usec_t *usec = data; - int r; - - assert(filename); - assert(lvalue); - assert(rvalue); - assert(usec); - - /* This is pretty much like config_parse_sec(), except that this treats a time of 0 as infinity, for - * compatibility with older versions of systemd where 0 instead of infinity was used as indicator to turn off a - * timeout. */ - - r = parse_sec_fix_0(rvalue, usec); - if (r < 0) { - log_syntax(unit, LOG_ERR, filename, line, r, "Failed to parse %s= parameter, ignoring: %s", lvalue, rvalue); - return 0; - } - - return 0; -} - int config_parse_user_group_compat( const char *unit, const char *filename, diff --git a/src/core/load-fragment.h b/src/core/load-fragment.h index f9d34d484d..b964737f9e 100644 --- a/src/core/load-fragment.h +++ b/src/core/load-fragment.h @@ -95,7 +95,6 @@ CONFIG_PARSER_PROTOTYPE(config_parse_bus_name); CONFIG_PARSER_PROTOTYPE(config_parse_exec_utmp_mode); CONFIG_PARSER_PROTOTYPE(config_parse_working_directory); CONFIG_PARSER_PROTOTYPE(config_parse_fdname); -CONFIG_PARSER_PROTOTYPE(config_parse_sec_fix_0); CONFIG_PARSER_PROTOTYPE(config_parse_user_group_compat); CONFIG_PARSER_PROTOTYPE(config_parse_user_group_strv_compat); CONFIG_PARSER_PROTOTYPE(config_parse_restrict_namespaces); diff --git a/src/shared/conf-parser.c b/src/shared/conf-parser.c index 1f40f00c72..414dde2e3d 100644 --- a/src/shared/conf-parser.c +++ b/src/shared/conf-parser.c @@ -1286,3 +1286,5 @@ int config_parse_permille(const char* unit, return 0; } + +DEFINE_CONFIG_PARSE_PTR(config_parse_sec_fix_0, parse_sec_fix_0, usec_t, "Failed to parse time value"); diff --git a/src/shared/conf-parser.h b/src/shared/conf-parser.h index 375b2e5a74..56fd302db8 100644 --- a/src/shared/conf-parser.h +++ b/src/shared/conf-parser.h @@ -142,6 +142,7 @@ CONFIG_PARSER_PROTOTYPE(config_parse_ip_port); CONFIG_PARSER_PROTOTYPE(config_parse_join_controllers); CONFIG_PARSER_PROTOTYPE(config_parse_mtu); CONFIG_PARSER_PROTOTYPE(config_parse_rlimit); +CONFIG_PARSER_PROTOTYPE(config_parse_sec_fix_0); typedef enum Disabled { DISABLED_CONFIGURATION,