Since a long time the D-Bus spec knows a special bit in its message
header for indicating that "interactive" authentication is OK. The
original hostnamed API is before that was added hence most functions
expose that boolean as explicit argument.
For new added functions let's get rid of it, the message flag is good
enough and replaces it with complete functionality.
No new APIs should carry the "interactive" boolean flag explicitly as
argument anymore.
Follow-up for:
9697662915e47a4797b05003cb1970fe2b01e530
in b interactive);
GetProductUUID(in b interactive,
out ay uuid);
- GetHardwareSerial(in b interactive,
- out s serial);
+ GetHardwareSerial(out s serial);
Describe(out s json);
properties:
readonly s Hostname = '...';
_cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL;
_cleanup_free_ char *serial = NULL;
Context *c = userdata;
- int interactive, r;
+ int r;
assert(m);
assert(c);
- r = sd_bus_message_read(m, "b", &interactive);
- if (r < 0)
- return r;
-
r = bus_verify_polkit_async(
m,
CAP_SYS_ADMIN,
"org.freedesktop.hostname1.get-hardware-serial",
NULL,
- interactive,
+ false,
UID_INVALID,
&c->polkit_registry,
error);
method_get_product_uuid,
SD_BUS_VTABLE_UNPRIVILEGED),
SD_BUS_METHOD_WITH_NAMES("GetHardwareSerial",
- "b",
- SD_BUS_PARAM(interactive),
+ NULL,,
"s",
SD_BUS_PARAM(serial),
method_get_hardware_serial,