Clean up more includes (#37527)

Split out of #37344
This commit is contained in:
Yu Watanabe
2025-05-21 19:43:39 +09:00
committed by GitHub
293 changed files with 344 additions and 637 deletions
+44
View File
@@ -0,0 +1,44 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once
#include "cleanup-util.h"
/* Argument list for parsers of specific configuration settings. */
#define CONFIG_PARSER_ARGUMENTS \
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
/* Prototype for a parser for a specific configuration setting */
typedef int (*ConfigParserCallback)(CONFIG_PARSER_ARGUMENTS);
/* A macro declaring a function prototype, following the typedef above, simply because it's so cumbersomely long
* otherwise. (And current emacs gets irritatingly slow when editing files that contain lots of very long function
* prototypes on the same screen…) */
#define CONFIG_PARSER_PROTOTYPE(name) int name(CONFIG_PARSER_ARGUMENTS)
typedef struct ConfigSection {
unsigned line;
bool invalid;
char filename[];
} ConfigSection;
#define DEFINE_SECTION_CLEANUP_FUNCTIONS(type, free_func) \
static inline type* free_func##_or_set_invalid(type *p) { \
assert(p); \
\
if (p->section) \
p->section->invalid = true; \
else \
free_func(p); \
return NULL; \
} \
DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func); \
DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func##_or_set_invalid);
+1 -40
View File
@@ -8,6 +8,7 @@
#include <sys/stat.h>
#include <syslog.h>
#include "conf-parser-forward.h"
#include "hashmap.h"
#include "log.h"
#include "memory-util.h"
@@ -19,27 +20,6 @@ typedef enum ConfigParseFlags {
CONFIG_PARSE_WARN = 1 << 1, /* Emit non-debug messages */
} ConfigParseFlags;
/* Argument list for parsers of specific configuration settings. */
#define CONFIG_PARSER_ARGUMENTS \
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
/* Prototype for a parser for a specific configuration setting */
typedef int (*ConfigParserCallback)(CONFIG_PARSER_ARGUMENTS);
/* A macro declaring a function prototype, following the typedef above, simply because it's so cumbersomely long
* otherwise. (And current emacs gets irritatingly slow when editing files that contain lots of very long function
* prototypes on the same screen…) */
#define CONFIG_PARSER_PROTOTYPE(name) int name(CONFIG_PARSER_ARGUMENTS)
/* Wraps information for parsing a specific configuration variable, to
* be stored in a simple array */
typedef struct ConfigTableItem {
@@ -164,12 +144,6 @@ int config_section_parse(
const char *rvalue,
void *userdata);
typedef struct ConfigSection {
unsigned line;
bool invalid;
char filename[];
} ConfigSection;
static inline ConfigSection* config_section_free(ConfigSection *cs) {
return mfree(cs);
}
@@ -207,19 +181,6 @@ static inline bool section_is_invalid(ConfigSection *section) {
return section->invalid;
}
#define DEFINE_SECTION_CLEANUP_FUNCTIONS(type, free_func) \
static inline type* free_func##_or_set_invalid(type *p) { \
assert(p); \
\
if (p->section) \
p->section->invalid = true; \
else \
free_func(p); \
return NULL; \
} \
DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func); \
DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func##_or_set_invalid);
#define log_section_full_errno_zerook(section, level, error, ...) \
({ \
const ConfigSection *_s = (section); \
+1 -1
View File
@@ -29,7 +29,7 @@ typedef struct {} pcre2_code;
extern const struct hash_ops pcre2_code_hash_ops_free;
typedef enum {
typedef enum PatternCompileCase {
PATTERN_COMPILE_CASE_AUTO,
PATTERN_COMPILE_CASE_SENSITIVE,
PATTERN_COMPILE_CASE_INSENSITIVE,
+1
View File
@@ -10,6 +10,7 @@
#include "argv-util.h"
#include "errno-util.h"
#include "extract-word.h"
#include "forward.h"
#include "log.h"
#include "macro.h"
#include "process-util.h"