]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/sd_id128_randomize.xml
tree-wide: drop license boilerplate
[thirdparty/systemd.git] / man / sd_id128_randomize.xml
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">
4
5 <!--
6 SPDX-License-Identifier: LGPL-2.1+
7
8 This file is part of systemd.
9
10 Copyright 2012 Lennart Poettering
11 -->
12
13 <refentry id="sd_id128_randomize">
14
15 <refentryinfo>
16 <title>sd_id128_randomize</title>
17 <productname>systemd</productname>
18
19 <authorgroup>
20 <author>
21 <contrib>Developer</contrib>
22 <firstname>Lennart</firstname>
23 <surname>Poettering</surname>
24 <email>lennart@poettering.net</email>
25 </author>
26 </authorgroup>
27 </refentryinfo>
28
29 <refmeta>
30 <refentrytitle>sd_id128_randomize</refentrytitle>
31 <manvolnum>3</manvolnum>
32 </refmeta>
33
34 <refnamediv>
35 <refname>sd_id128_randomize</refname>
36 <refpurpose>Generate 128-bit IDs</refpurpose>
37 </refnamediv>
38
39 <refsynopsisdiv>
40 <funcsynopsis>
41 <funcsynopsisinfo>#include &lt;systemd/sd-id128.h&gt;</funcsynopsisinfo>
42
43 <funcprototype>
44 <funcdef>int <function>sd_id128_randomize</function></funcdef>
45 <paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
46 </funcprototype>
47
48 </funcsynopsis>
49 </refsynopsisdiv>
50
51 <refsect1>
52 <title>Description</title>
53
54 <para><function>sd_id128_randomize()</function> generates a new
55 randomized 128-bit ID and returns it in
56 <parameter>ret</parameter>. Every invocation returns a new
57 randomly generated ID. This uses the
58 <filename>/dev/urandom</filename> kernel random number
59 generator.</para>
60
61 <para>Note that <function>sd_id128_randomize()</function> always
62 returns a UUID v4-compatible ID.</para>
63
64 <para>For more information about the <literal>sd_id128_t</literal>
65 type, see
66 <citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
67
68 <para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
69 <option>--new-id128</option> option may be used as a command line
70 front-end for <function>sd_id128_randomize()</function>.</para>
71 </refsect1>
72
73 <refsect1>
74 <title>Return Value</title>
75
76 <para>The call returns 0 on success (in which case
77 <parameter>ret</parameter> is filled in), or a negative
78 errno-style error code.</para>
79 </refsect1>
80
81 <refsect1>
82 <title>Notes</title>
83
84 <para>The <function>sd_id128_randomize()</function> interface is
85 available as a shared library, which can be compiled and linked to
86 with the
87 <literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
88 file.</para>
89 </refsect1>
90
91 <refsect1>
92 <title>See Also</title>
93
94 <para>
95 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
96 <citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
97 <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
98 <citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
99 <citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>
100 </para>
101 </refsect1>
102
103 </refentry>