1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3 
4 #include "macro.h"
5 
6 enum {
7         CONF_FILES_EXECUTABLE    = 1 << 0,
8         CONF_FILES_REGULAR       = 1 << 1,
9         CONF_FILES_DIRECTORY     = 1 << 2,
10         CONF_FILES_BASENAME      = 1 << 3,
11         CONF_FILES_FILTER_MASKED = 1 << 4,
12 };
13 
14 int conf_files_list(char ***ret, const char *suffix, const char *root, unsigned flags, const char *dir);
15 int conf_files_list_strv(char ***ret, const char *suffix, const char *root, unsigned flags, const char* const* dirs);
16 int conf_files_list_nulstr(char ***ret, const char *suffix, const char *root, unsigned flags, const char *dirs);
17 int conf_files_insert(char ***strv, const char *root, char **dirs, const char *path);
18 int conf_files_list_with_replacement(
19                 const char *root,
20                 char **config_dirs,
21                 const char *replacement,
22                 char ***files,
23                 char **replace_file);
24