1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3 
4 #include "hashmap.h"
5 #include "macro.h"
6 #include "set.h"
7 #include "unit-name.h"
8 
9 int drop_in_file(const char *dir, const char *unit, unsigned level,
10                  const char *name, char **_p, char **_q);
11 
12 int write_drop_in(const char *dir, const char *unit, unsigned level,
13                   const char *name, const char *data);
14 
15 int write_drop_in_format(const char *dir, const char *unit, unsigned level,
16                          const char *name, const char *format, ...) _printf_(5, 6);
17 
18 int unit_file_find_dropin_paths(
19                 const char *original_root,
20                 char **lookup_path,
21                 Set *unit_path_cache,
22                 const char *dir_suffix,
23                 const char *file_suffix,
24                 const char *name,
25                 const Set *aliases,
26                 char ***paths);
27