diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-01-01 00:48:52 +0100 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-01-18 23:04:19 +0100 |
commit | af182ae1dc35a48276e9fe0aaa9454377b4a667b (patch) | |
tree | e2f2770e440db1861f9e9e76e561344ab179c78b /src/basic/unit-file.h | |
parent | util: move parse_syscall_and_errno() to seccomp-util.c (diff) | |
download | systemd-af182ae1dc35a48276e9fe0aaa9454377b4a667b.tar.xz systemd-af182ae1dc35a48276e9fe0aaa9454377b4a667b.zip |
util: move unit-file.[ch] to src/basic
As basic/path-lookup.[ch] depend on them.
Diffstat (limited to 'src/basic/unit-file.h')
-rw-r--r-- | src/basic/unit-file.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/basic/unit-file.h b/src/basic/unit-file.h new file mode 100644 index 0000000000..5463b0ab13 --- /dev/null +++ b/src/basic/unit-file.h @@ -0,0 +1,61 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ +#pragma once + +#include <stdbool.h> + +#include "hashmap.h" +#include "time-util.h" +#include "unit-name.h" + +typedef enum UnitFileState UnitFileState; +typedef enum UnitFileScope UnitFileScope; +typedef struct LookupPaths LookupPaths; + +enum UnitFileState { + UNIT_FILE_ENABLED, + UNIT_FILE_ENABLED_RUNTIME, + UNIT_FILE_LINKED, + UNIT_FILE_LINKED_RUNTIME, + UNIT_FILE_ALIAS, + UNIT_FILE_MASKED, + UNIT_FILE_MASKED_RUNTIME, + UNIT_FILE_STATIC, + UNIT_FILE_DISABLED, + UNIT_FILE_INDIRECT, + UNIT_FILE_GENERATED, + UNIT_FILE_TRANSIENT, + UNIT_FILE_BAD, + _UNIT_FILE_STATE_MAX, + _UNIT_FILE_STATE_INVALID = -1 +}; + +enum UnitFileScope { + UNIT_FILE_SYSTEM, + UNIT_FILE_GLOBAL, + UNIT_FILE_USER, + _UNIT_FILE_SCOPE_MAX, + _UNIT_FILE_SCOPE_INVALID = -1 +}; + +bool unit_type_may_alias(UnitType type) _const_; +bool unit_type_may_template(UnitType type) _const_; + +int unit_symlink_name_compatible(const char *symlink, const char *target, bool instance_propagation); +int unit_validate_alias_symlink_and_warn(const char *filename, const char *target); + +bool lookup_paths_timestamp_hash_same(const LookupPaths *lp, uint64_t timestamp_hash, uint64_t *ret_new); +int unit_file_build_name_map( + const LookupPaths *lp, + uint64_t *cache_timestamp_hash, + Hashmap **unit_ids_map, + Hashmap **unit_names_map, + Set **path_cache); + +int unit_file_find_fragment( + Hashmap *unit_ids_map, + Hashmap *unit_name_map, + const char *unit_name, + const char **ret_fragment_path, + Set **ret_names); + +const char* runlevel_to_target(const char *rl); |