SD_ID128_TO_STRING - Online Linux Manual PageSection : 3
Updated :
Source : systemd 250
Note : sd_id128_to_string

NAMEsd_id128_to_string, SD_ID128_TO_STRING, sd_id128_from_string, SD_ID128_STRING_MAX − Format or parse 128−bit IDs as strings

SYNOPSIS#include <systemd/sd−id128​.h>#define SD_ID128_STRING_MAX 33U#define SD_ID128_TO_STRING(id) ​...char *sd_id128_to_string(sd_id128_t id, char s[static SD_ID128_STRING_MAX]); int sd_id128_from_string(const char *s, sd_id128_t *ret);

DESCRIPTIONsd_id128_to_string() formats a 128−bit ID as a character string​. It expects the ID and a string array capable of storing 33 characters (SD_ID128_STRING_MAX)​. The ID will be formatted as 32 lowercase hexadecimal digits and be terminated by a NUL byte​. SD_ID128_TO_STRING() is a macro that wraps sd_id128_to_string() and passes an appropriately sized buffer as second argument, allocated as C99 compound literal​. Each use will thus implicitly acquire a suitable buffer on the stack which remains valid until the end of the current code block​. This is usually the simplest way to acquire a string representation of a 128−bit ID in a buffer that is valid in the current code block​. 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 a 128−bit ID returned in ret​. Alternatively, this call can also parse a 37−character string with a 128−bit ID formatted as RFC UUID​. If ret is passed as NULL the function will validate the passed ID string, but not actually return it in parsed form​. Note that when parsing 37 character UUIDs this is done strictly in Big Endian byte order, i​.e​. according to RFC4122[1] Variant 1 rules, even if the UUID encodes a different variant​. This matches behaviour in various other Linux userspace tools​. It's probably wise to avoid UUIDs of other variant types​. For more information about the "sd_id128_t" type see sd-id128(3)​. Note that these calls operate the same way on all architectures, i​.e​. the results do not depend on endianness​. When formatting a 128−bit ID into a string, it is often easier to use a format string for printf(3)​. This is easily done using the SD_ID128_FORMAT_STR and SD_ID128_FORMAT_VAL() macros​. For more information see sd-id128(3)​.

RETURN VALUEsd_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​.

NOTESThese APIs are implemented as a shared library, which can be compiled and linked to with the libsystemd ​pkg-config(1) file​.

SEE ALSOsystemd(1), sd-id128(3), printf(3)

NOTES 1. RFC4122 ­https://tools.ietf.org/html/rfc4122
0
Johanes Gumabo
Data Size   :   10,575 byte
man-sd_id128_to_string.3Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   3 / 182,214
Visitor ID   :     :  
Visitor IP   :   3.144.23.138   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.