diff options
Diffstat (limited to 'lib/libc/sys/uuidgen.2')
-rw-r--r-- | lib/libc/sys/uuidgen.2 | 142 |
1 files changed, 0 insertions, 142 deletions
diff --git a/lib/libc/sys/uuidgen.2 b/lib/libc/sys/uuidgen.2 deleted file mode 100644 index 9c90102b3e2f..000000000000 --- a/lib/libc/sys/uuidgen.2 +++ /dev/null @@ -1,142 +0,0 @@ -.\" Copyright (c) 2002 Marcel Moolenaar -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.\" -.\" $FreeBSD$ -.\" -.Dd May 26, 2002 -.Dt UUIDGEN 2 -.Os -.Sh NAME -.Nm uuidgen -.Nd generate universally unique identifiers -.Sh LIBRARY -.Lb libc -.Sh SYNOPSIS -.In sys/uuid.h -.Ft int -.Fn uuidgen "struct uuid *store" "int count" -.Sh DESCRIPTION -The -.Fn uuidgen -system call generates -.Fa count -universally unique identifiers (UUIDs) and writes them to the buffer -pointed to by -.Fa store . -The identifiers are generated according to the syntax and semantics of the -DCE version 1 variant of universally unique identifiers. -See below for a more in-depth description of the identifiers. -When no IEEE 802 -address is available for the node field, a random multicast address is -generated for each invocation of the system call. -According to the algorithm of generating time-based UUIDs, this will also -force a new random clock sequence, thereby increasing the likelihood for -the identifier to be unique. -.Pp -When multiple identifiers are to be generated, the -.Fn uuidgen -system call will generate a set of identifiers that is dense in such a way -that there is no identifier that is larger than the smallest identifier in the -set and smaller than the largest identifier in the set and that is not already -in the set. -.Pp -Universally unique identifiers, also known as globally unique identifiers -(GUIDs), have a binary representation of 128-bits. -The grouping and meaning of these bits is described by the following -structure and its description of the fields that follow it: -.Bd -literal -struct uuid { - uint32_t time_low; - uint16_t time_mid; - uint16_t time_hi_and_version; - uint8_t clock_seq_hi_and_reserved; - uint8_t clock_seq_low; - uint8_t node[_UUID_NODE_LEN]; -}; -.Ed -.Bl -tag -width ".Va clock_seq_hi_and_reserved" -.It Va time_low -The least significant 32 bits of a 60-bit timestamp. -This field is stored in the native byte-order. -.It Va time_mid -The least significant 16 bits of the most significant 28 bits of the 60-bit -timestamp. -This field is stored in the native byte-order. -.It Va time_hi_and_version -The most significant 12 bits of the 60-bit timestamp multiplexed with a 4-bit -version number. -The version number is stored in the most significant 4 bits of the 16-bit -field. -This field is stored in the native byte-order. -.It Va clock_seq_hi_and_reserved -The most significant 6 bits of a 14-bit sequence number multiplexed with a -2-bit variant value. -Note that the width of the variant value is determined by the variant itself. -Identifiers generated by the -.Fn uuidgen -system call have variant value 10b. -the variant value is stored in the most significant bits of the field. -.It Va clock_seq_low -The least significant 8 bits of a 14-bit sequence number. -.It Va node -The 6-byte IEEE 802 (MAC) address of one of the interfaces of the node. -If no such interface exists, a random multi-cast address is used instead. -.El -.Pp -The binary representation is sensitive to byte ordering. -Any multi-byte field is to be stored in the local or native byte-order and -identifiers must be converted when transmitted to hosts that do not agree -on the byte-order. -The specification does not however document what this means in concrete -terms and is otherwise beyond the scope of this system call. -.Sh RETURN VALUES -.Rv -std -.Sh ERRORS -The -.Fn uuidgen -system call can fail with: -.Bl -tag -width Er -.It Bq Er EFAULT -The buffer pointed to by -.Fa store -could not be written to for any or all identifiers. -.It Bq Er EINVAL -The -.Fa count -argument is less than 1 or larger than the hard upper limit of 2048. -.El -.Sh SEE ALSO -.Xr uuidgen 1 , -.Xr uuid 3 -.Sh STANDARDS -The identifiers are represented and generated in conformance with the DCE 1.1 -RPC specification. -The -.Fn uuidgen -system call is itself not part of the specification. -.Sh HISTORY -The -.Fn uuidgen -system call first appeared in -.Fx 5.0 . |