]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
conf-parser: add a flavour of DEFINE_CONFIG_PARSE_ENUM() that allows specifiying...
authorLennart Poettering <lennart@poettering.net>
Mon, 26 Oct 2020 16:38:55 +0000 (17:38 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 27 Oct 2020 13:12:31 +0000 (14:12 +0100)
src/shared/conf-parser.h

index 2514dcbf483cdb6d10e6aabc5c0400eedcf8bb09..d2391d43bbeaa37a39e2084f9931884035d0b65d 100644 (file)
@@ -193,7 +193,7 @@ typedef enum Disabled {
                 return 0;                                               \
         }
 
-#define DEFINE_CONFIG_PARSE_ENUM(function, name, type, msg)             \
+#define DEFINE_CONFIG_PARSE_ENUM_FULL(function, from_string, type, msg) \
         CONFIG_PARSER_PROTOTYPE(function) {                             \
                 type *i = data, x;                                      \
                                                                         \
@@ -202,7 +202,7 @@ typedef enum Disabled {
                 assert(rvalue);                                         \
                 assert(data);                                           \
                                                                         \
-                x = name##_from_string(rvalue);                         \
+                x = from_string(rvalue);                                \
                 if (x < 0) {                                            \
                         log_syntax(unit, LOG_WARNING, filename, line, 0, \
                                    msg ", ignoring: %s", rvalue);       \
@@ -213,6 +213,9 @@ typedef enum Disabled {
                 return 0;                                               \
         }
 
+#define DEFINE_CONFIG_PARSE_ENUM(function, name, type, msg)             \
+        DEFINE_CONFIG_PARSE_ENUM_FULL(function, name##_from_string, type, msg)
+
 #define DEFINE_CONFIG_PARSE_ENUM_WITH_DEFAULT(function, name, type, default_value, msg) \
         CONFIG_PARSER_PROTOTYPE(function) {                             \
                 type *i = data, x;                                      \