GUuid

GUuid — a universally unique identifier

Functions

Includes

#include <glib.h>
#include <glib/gi18n.h>

Description

A UUID, or Universally unique identifier, is intended to uniquely identify information in a distributed environment. For the definition of UUID, see RFC 4122.

The creation of UUIDs does not require a centralized authority.

UUIDs are of relatively small size (128 bits, or 16 bytes). The common string representation (ex: 1d6c0810-2bd6-45f3-9890-0268422a6f14) needs 37 bytes.

The UUID specification defines 5 versions, and calling g_uuid_string_random() will generate a unique (or rather random) UUID of the most common version, version 4.

Functions

g_uuid_string_is_valid ()

gboolean
g_uuid_string_is_valid (const gchar *str);

Parses the string str and verify if it is a UUID.

The function accepts the following syntax:

  • simple forms (e.g. f81d4fae-7dec-11d0-a765-00a0c91e6bf6)

Note that hyphens are required within the UUID string itself, as per the aforementioned RFC.

Parameters

str

a string representing a UUID

 

Returns

TRUE if str is a valid UUID, FALSE otherwise.

Since: 2.52


g_uuid_string_random ()

gchar *
g_uuid_string_random (void);

Generates a random UUID (RFC 4122 version 4) as a string. It has the same randomness guarantees as GRand, so must not be used for cryptographic purposes such as key generation, nonces, salts or one-time pads.

Returns

A string that should be freed with g_free().

[transfer full]

Since: 2.52