From: Yu Watanabe Date: Wed, 14 Aug 2024 06:52:39 +0000 (+0900) Subject: sd-json: add sd_json_variant_set_field_id128() and _uuid() X-Git-Tag: v257-rc1~706^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9ec6d26e418459669244ce89a6194d0fbfab8724;p=thirdparty%2Fsystemd.git sd-json: add sd_json_variant_set_field_id128() and _uuid() --- diff --git a/src/libsystemd/libsystemd.sym b/src/libsystemd/libsystemd.sym index 65b81db4644..50ef8096db0 100644 --- a/src/libsystemd/libsystemd.sym +++ b/src/libsystemd/libsystemd.sym @@ -934,10 +934,12 @@ global: sd_json_variant_sensitive; sd_json_variant_set_field; sd_json_variant_set_field_boolean; + sd_json_variant_set_field_id128; sd_json_variant_set_field_integer; sd_json_variant_set_field_string; sd_json_variant_set_field_strv; sd_json_variant_set_field_unsigned; + sd_json_variant_set_field_uuid; sd_json_variant_set_fieldb; sd_json_variant_sort; sd_json_variant_string; diff --git a/src/libsystemd/sd-json/sd-json.c b/src/libsystemd/sd-json/sd-json.c index 98ffe4db548..63e091085fd 100644 --- a/src/libsystemd/sd-json/sd-json.c +++ b/src/libsystemd/sd-json/sd-json.c @@ -2075,6 +2075,14 @@ _public_ int sd_json_variant_set_field_string(sd_json_variant **v, const char *f return sd_json_variant_set_field(v, field, m); } +_public_ int sd_json_variant_set_field_id128(sd_json_variant **v, const char *field, sd_id128_t value) { + return sd_json_variant_set_field_string(v, field, SD_ID128_TO_STRING(value)); +} + +_public_ int sd_json_variant_set_field_uuid(sd_json_variant **v, const char *field, sd_id128_t value) { + return sd_json_variant_set_field_string(v, field, SD_ID128_TO_UUID_STRING(value)); +} + _public_ int sd_json_variant_set_field_integer(sd_json_variant **v, const char *field, int64_t i) { _cleanup_(sd_json_variant_unrefp) sd_json_variant *m = NULL; int r; diff --git a/src/systemd/sd-json.h b/src/systemd/sd-json.h index fb796f0fa8e..4b5cbd4e5da 100644 --- a/src/systemd/sd-json.h +++ b/src/systemd/sd-json.h @@ -161,6 +161,8 @@ int sd_json_variant_set_fieldb(sd_json_variant **v, const char *field, ...); #define sd_json_variant_set_fieldbo(v, field, ...) \ sd_json_variant_set_fieldb((v), (field), SD_JSON_BUILD_OBJECT(__VA_ARGS__)) int sd_json_variant_set_field_string(sd_json_variant **v, const char *field, const char *value); +int sd_json_variant_set_field_id128(sd_json_variant **v, const char *field, sd_id128_t value); +int sd_json_variant_set_field_uuid(sd_json_variant **v, const char *field, sd_id128_t value); int sd_json_variant_set_field_integer(sd_json_variant **v, const char *field, int64_t value); int sd_json_variant_set_field_unsigned(sd_json_variant **v, const char *field, uint64_t value); int sd_json_variant_set_field_boolean(sd_json_variant **v, const char *field, int b);