machine: enum AcquireMetadata
This commit is contained in:
@@ -967,3 +967,11 @@ static const char* const kill_whom_table[_KILL_WHOM_MAX] = {
|
||||
};
|
||||
|
||||
DEFINE_STRING_TABLE_LOOKUP(kill_whom, KillWhom);
|
||||
|
||||
static const char* const acquire_metadata_table[_ACQUIRE_METADATA_MAX] = {
|
||||
[ACQUIRE_METADATA_NO] = "no",
|
||||
[ACQUIRE_METADATA_YES] = "yes",
|
||||
[ACQUIRE_METADATA_GRACEFUL] = "graceful"
|
||||
};
|
||||
|
||||
DEFINE_STRING_TABLE_LOOKUP_WITH_BOOLEAN(acquire_metadata, AcquireMetadata, ACQUIRE_METADATA_YES);
|
||||
|
||||
@@ -110,3 +110,17 @@ int machine_owns_gid(Machine *m, gid_t host_gid, gid_t *ret_internal_gid);
|
||||
|
||||
int machine_translate_uid(Machine *m, uid_t internal_uid, uid_t *ret_host_uid);
|
||||
int machine_translate_gid(Machine *m, gid_t internal_gid, gid_t *ret_host_gid);
|
||||
|
||||
typedef enum AcquireMetadata {
|
||||
ACQUIRE_METADATA_NO,
|
||||
ACQUIRE_METADATA_YES,
|
||||
ACQUIRE_METADATA_GRACEFUL,
|
||||
_ACQUIRE_METADATA_MAX,
|
||||
_ACQUIRE_METADATA_INVALID = -EINVAL,
|
||||
} AcquireMetadata;
|
||||
|
||||
AcquireMetadata acquire_metadata_from_string(const char *s) _pure_;
|
||||
const char* acquire_metadata_to_string(AcquireMetadata am) _const_;
|
||||
inline static bool should_acquire_metadata(AcquireMetadata am) {
|
||||
return am == ACQUIRE_METADATA_YES || am == ACQUIRE_METADATA_GRACEFUL;
|
||||
}
|
||||
|
||||
@@ -432,6 +432,8 @@ static void machine_lookup_parameters_done(MachineLookupParameters *p) {
|
||||
pidref_done(&p->pidref);
|
||||
}
|
||||
|
||||
static JSON_DISPATCH_ENUM_DEFINE(json_dispatch_acquire_metadata, AcquireMetadata, acquire_metadata_from_string);
|
||||
|
||||
static int vl_method_list(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata) {
|
||||
static const sd_json_dispatch_field dispatch_table[] = {
|
||||
VARLINK_DISPATCH_MACHINE_LOOKUP_FIELDS(MachineLookupParameters),
|
||||
|
||||
Reference in New Issue
Block a user