1 <?xml version='
1.0'
?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
6 SPDX-License-Identifier: LGPL-2.1+
9 <refentry id=
"sd_id128_randomize" xmlns:
xi=
"http://www.w3.org/2001/XInclude">
12 <title>sd_id128_randomize
</title>
13 <productname>systemd
</productname>
17 <contrib>Developer
</contrib>
18 <firstname>Lennart
</firstname>
19 <surname>Poettering
</surname>
20 <email>lennart@poettering.net
</email>
26 <refentrytitle>sd_id128_randomize
</refentrytitle>
27 <manvolnum>3</manvolnum>
31 <refname>sd_id128_randomize
</refname>
32 <refpurpose>Generate
128-bit IDs
</refpurpose>
37 <funcsynopsisinfo>#include
<systemd/sd-id128.h
></funcsynopsisinfo>
40 <funcdef>int
<function>sd_id128_randomize
</function></funcdef>
41 <paramdef>sd_id128_t *
<parameter>ret
</parameter></paramdef>
48 <title>Description
</title>
50 <para><function>sd_id128_randomize()
</function> generates a new
51 randomized
128-bit ID and returns it in
52 <parameter>ret
</parameter>. Every invocation returns a new
53 randomly generated ID. This uses the
54 <filename>/dev/urandom
</filename> kernel random number
57 <para>Note that
<function>sd_id128_randomize()
</function> always
58 returns a UUID v4-compatible ID.
</para>
60 <para>For more information about the
<literal>sd_id128_t
</literal>
62 <citerefentry><refentrytitle>sd-id128
</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
</para>
64 <para><citerefentry><refentrytitle>journalctl
</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
65 <option>--new-id128
</option> option may be used as a command line
66 front-end for
<function>sd_id128_randomize()
</function>.
</para>
70 <title>Return Value
</title>
72 <para>The call returns
0 on success (in which case
73 <parameter>ret
</parameter> is filled in), or a negative
74 errno-style error code.
</para>
77 <xi:include href=
"libsystemd-pkgconfig.xml" />
80 <title>See Also
</title>
83 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
84 <citerefentry><refentrytitle>sd-id128
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
85 <citerefentry><refentrytitle>machine-id
</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
86 <citerefentry><refentrytitle>random
</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
87 <citerefentry><refentrytitle>sd_id128_get_machine
</refentrytitle><manvolnum>3</manvolnum></citerefentry>