mirror of
https://github.com/systemd/systemd.git
synced 2024-12-19 07:03:34 +08:00
39d02a175f
So in theory UUID Variant 2 (i.e. microsoft GUIDs) are supposed to be displayed in native endian. That is of course a bad idea, and Linux userspace generally didn't implement that, i.e. uuidd and similar. Hence, let's not bother either, but let's document that we treat everything the same as Variant 1, even if it declares something else.
81 lines
2.9 KiB
XML
81 lines
2.9 KiB
XML
<?xml version='1.0'?> <!--*-nxml-*-->
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
|
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
|
|
|
|
<refentry id="sd_id128_randomize" xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
|
|
<refentryinfo>
|
|
<title>sd_id128_randomize</title>
|
|
<productname>systemd</productname>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>sd_id128_randomize</refentrytitle>
|
|
<manvolnum>3</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>sd_id128_randomize</refname>
|
|
<refpurpose>Generate 128-bit IDs</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<funcsynopsis>
|
|
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
|
|
|
<funcprototype>
|
|
<funcdef>int <function>sd_id128_randomize</function></funcdef>
|
|
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
|
</funcprototype>
|
|
|
|
</funcsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para><function>sd_id128_randomize()</function> generates a new
|
|
randomized 128-bit ID and returns it in
|
|
<parameter>ret</parameter>. Every invocation returns a new
|
|
randomly generated ID. This uses the
|
|
<filename>/dev/urandom</filename> kernel random number
|
|
generator.</para>
|
|
|
|
<para>Note that <function>sd_id128_randomize()</function> always returns a UUID Variant 1 Version 4
|
|
compatible ID. It is hence guaranteed that this function will never return the ID consisting of all zero
|
|
or all one bits (<constant>SD_ID128_NULL</constant>, <constant>SD_ID128_ALLF</constant>).</para>
|
|
|
|
<para>For more information about the <literal>sd_id128_t</literal>
|
|
type, see
|
|
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
|
|
|
<para><citerefentry><refentrytitle>systemd-id128</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
|
<command>new</command> command may be used as a command line front-end for
|
|
<function>sd_id128_randomize()</function>.</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Return Value</title>
|
|
|
|
<para>The call 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><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
|
</para>
|
|
</refsect1>
|
|
|
|
</refentry>
|