]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
machined: use bus_message_read_id128() at one more place
authorLennart Poettering <lennart@poettering.net>
Mon, 13 May 2024 13:02:37 +0000 (07:02 -0600)
committerLuca Boccassi <luca.boccassi@gmail.com>
Sat, 15 Jun 2024 00:19:31 +0000 (01:19 +0100)
src/machine/machined-dbus.c

index da64095d37200c74d836d345fb5d45628884d487..a66e00edb5ab385282575fd4021e626a2e4dcceb 100644 (file)
@@ -231,9 +231,8 @@ static int method_create_or_register_machine(
         MachineClass c;
         uint32_t leader;
         sd_id128_t id;
-        const void *v;
         Machine *m;
-        size_t n, n_netif = 0;
+        size_t n_netif = 0;
         int r;
 
         assert(manager);
@@ -246,14 +245,8 @@ static int method_create_or_register_machine(
         if (!hostname_is_valid(name, 0))
                 return sd_bus_error_set(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid machine name");
 
-        r = sd_bus_message_read_array(message, 'y', &v, &n);
+        r = bus_message_read_id128(message, &id);
         if (r < 0)
-                return r;
-        if (n == 0)
-                id = SD_ID128_NULL;
-        else if (n == 16)
-                memcpy(&id, v, n);
-        else
                 return sd_bus_error_set(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid machine ID parameter");
 
         r = sd_bus_message_read(message, "ssus", &service, &class, &leader, &root_directory);