mirror of
https://github.com/systemd/systemd
synced 2024-07-21 18:24:38 +00:00
![Lennart Poettering](/assets/img/avatar_default.png)
This part of the copyright blurb stems from the GPL use recommendations: https://www.gnu.org/licenses/gpl-howto.en.html The concept appears to originate in times where version control was per file, instead of per tree, and was a way to glue the files together. Ultimately, we nowadays don't live in that world anymore, and this information is entirely useless anyway, as people are very welcome to copy these files into any projects they like, and they shouldn't have to change bits that are part of our copyright header for that. hence, let's just get rid of this old cruft, and shorten our codebase a bit.
109 lines
4 KiB
XML
109 lines
4 KiB
XML
<?xml version='1.0'?> <!--*-nxml-*-->
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
|
|
|
<!--
|
|
SPDX-License-Identifier: LGPL-2.1+
|
|
|
|
Copyright 2012 Lennart Poettering
|
|
-->
|
|
|
|
<refentry id="sd_id128_to_string" xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
|
|
<refentryinfo>
|
|
<title>sd_id128_to_string</title>
|
|
<productname>systemd</productname>
|
|
|
|
<authorgroup>
|
|
<author>
|
|
<contrib>Developer</contrib>
|
|
<firstname>Lennart</firstname>
|
|
<surname>Poettering</surname>
|
|
<email>lennart@poettering.net</email>
|
|
</author>
|
|
</authorgroup>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>sd_id128_to_string</refentrytitle>
|
|
<manvolnum>3</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>sd_id128_to_string</refname>
|
|
<refname>sd_id128_from_string</refname>
|
|
<refpurpose>Format or parse 128-bit IDs as strings</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<funcsynopsis>
|
|
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
|
|
|
<funcprototype>
|
|
<funcdef>char *<function>sd_id128_to_string</function></funcdef>
|
|
<paramdef>sd_id128_t <parameter>id</parameter>, char <parameter>s</parameter>[33]</paramdef>
|
|
</funcprototype>
|
|
|
|
<funcprototype>
|
|
<funcdef>int <function>sd_id128_from_string</function></funcdef>
|
|
<paramdef>const char *<parameter>s</parameter>, sd_id128_t *<parameter>ret</parameter></paramdef>
|
|
</funcprototype>
|
|
|
|
</funcsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para><function>sd_id128_to_string()</function> formats a 128-bit
|
|
ID as a 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
|
|
<constant>NUL</constant> byte.</para>
|
|
|
|
<para><function>sd_id128_from_string()</function> implements the reverse operation: it takes a 33 character string
|
|
with 32 hexadecimal digits (either lowercase or uppercase, terminated by <constant>NUL</constant>) and parses them
|
|
back into a 128-bit ID returned in <parameter>ret</parameter>. Alternatively, this call can also parse a
|
|
37-character string with a 128-bit ID formatted as RFC UUID. If <parameter>ret</parameter> is passed as NULL the
|
|
function will validate the passed ID string, but not actually return it in parsed form.</para>
|
|
|
|
<para>For more information about the <literal>sd_id128_t</literal>
|
|
type see
|
|
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
|
Note that these calls operate the same way on all architectures,
|
|
i.e. the results do not depend on endianness.</para>
|
|
|
|
<para>When formatting a 128-bit ID into a string, it is often
|
|
easier to use a format string for
|
|
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
|
This is easily done using the
|
|
<function>SD_ID128_FORMAT_STR</function> and
|
|
<function>SD_ID128_FORMAT_VAL()</function> macros. For more
|
|
information see
|
|
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Return Value</title>
|
|
|
|
<para><function>sd_id128_to_string()</function> always succeeds
|
|
and returns a pointer to the string array passed in.
|
|
<function>sd_id128_from_string</function> returns 0 on success, in
|
|
which case <parameter>ret</parameter> is filled in, or a negative
|
|
errno-style error code.</para>
|
|
</refsect1>
|
|
|
|
<xi:include href="libsystemd-pkgconfig.xml" />
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
|
|
<para>
|
|
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
|
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
|
</para>
|
|
</refsect1>
|
|
|
|
</refentry>
|