sd_id128_to_string
systemd
Developer
Lennart
Poettering
lennart@poettering.net
sd_id128_to_string
3
sd_id128_to_string
sd_id128_from_string
Format or parse 128 bit IDs as strings
#include <systemd/sd-id128.h>
char* sd_id128_to_string
sd_id128_t id, char s[33]
int sd_id128_from_string
const char* s, sd_id128_t* ret
Description
sd_id128_to_string()
formats a 128 bit ID as character string. It expects
the ID and a string array capable of storing 33
characters. The ID will be formatted as 32 lowercase
hexadecimal digits and be terminated by a NUL
byte.
sd_id128_from_string()
implements the reverse operation: it takes a 33
character string with 32 hexadecimal digits
(either lowercase or uppercase, terminated by NUL) and parses them back into an 128
bit ID returned in
ret. Alternatively, this call
can also parse a 37 character string with a 128bit ID
formatted as RFC UUID.
For more information about the
sd_id128_t type see
sd-id1283. Note
that these calls operate the same way on all
architectures, i.e. the results do not depend on
endianess.
When formatting a 128 bit ID into a string it is
often easier to use a format string for
printf3. This
is easily done using the
SD_ID128_FORMAT_STR and
SD_ID128_FORMAT_VAL() macros. For
more information see
sd-id1283.
Return Value
sd_id128_to_string() always
succeeds and returns a pointer to the string array
passed in. sd_id128_from_string
returns 0 on success (in which case
ret is filled in), or a negative
errno-style error code.
Notes
The sd_id128_to_string()
and sd_id128_from_string() 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,
printf3