sd_id128_get_machine
systemd
Developer
Lennart
Poettering
lennart@poettering.net
sd_id128_get_machine
3
sd_id128_get_machine
sd_id128_get_boot
Retrieve 128 bit IDs
#include <systemd/sd-id128.h>
int sd_id128_get_machine
sd_id128_t* ret
int sd_id128_get_boot
sd_id128_t* ret
Description
sd_id128_get_machine()
returns the machine ID of the executing host. This
reads and parses the
machine-id5
file. This function caches the machine ID internally
to make retrieving the machine ID a cheap
operation.
sd_id128_get_boot() returns
the boot ID of the executing kernel. This reads and
parses the
/proc/sys/kernel/random/boot_id
file exposed by the kernel. It is randomly generated
early at boot and is unique for every running kernel
instance. See
random4
for more information. This function also internally
caches the returned ID to make this call a cheap
operation.
Note that
sd_id128_get_boot() always returns
a UUID v4 compatible
ID. sd_id128_get_machine() will
also return a UUID v4 compatible ID on new
installations, but might not on older. It is possible
to convert the machine ID into an UUID v4 compatible
one. For more information see
machine-id5.
For more information about the
sd_id128_t type see
sd-id1283.
Return Value
The two calls return 0 on success (in which
case ret is filled in), or a
negative errno-style error code.
Notes
The sd_id128_get_machine()
and sd_id128_get_boot()
interfaces are available as shared library, which can
be compiled and linked to with the
libsystemd-id128
pkg-config1
file.
See Also
systemd1,
sd-id1283,
machine-id5,
random4,
sd_id128_randomize3