head 1.7; access; symbols UUID_1_6_2:1.6 UUID_1_6_1:1.6 UUID_1_6_0:1.5 UUID_1_5_1:1.4 UUID_1_5_0:1.4 UUID_1_4_2:1.4 UUID_1_4_1:1.4 UUID_1_4_0:1.4 UUID_1_3_2:1.3 UUID_1_3_1:1.3 UUID_1_3_0:1.3 UUID_1_2_1:1.3 UUID_1_2_0:1.2 UUID_1_1_2:1.2 UUID_1_1_1:1.1 UUID_1_1_0:1.1 UUID_1_0_4:1.1 UUID_1_0_3:1.1 UUID_1_0_2:1.1 UUID_1_0_1:1.1 UUID_1_0_0:1.1 UUID_0_9_7:1.1 UUID_0_9_6:1.1 UUID_0_9_5:1.1 UUID_0_9_4:1.1 UUID_0_9_3:1.1 UUID_0_9_2:1.1 UUID_0_9_1:1.1 UUID_0_9_0:1.1; locks; strict; comment @ * @; 1.7 date 2008.07.05.12.58.17; author rse; state dead; branches; next 1.6; commitid XLXN7vUmABwPcC9t; 1.6 date 2008.01.10.14.18.47; author rse; state Exp; branches; next 1.5; commitid LqMgFGBgTR7clSMs; 1.5 date 2007.01.01.18.14.55; author rse; state Exp; branches; next 1.4; commitid jOXiIO8S8v7xFP0s; 1.4 date 2006.01.13.06.44.31; author rse; state Exp; branches; next 1.3; commitid hYfQc9JIMh4bcphr; 1.3 date 2005.08.30.15.26.07; author rse; state Exp; branches; next 1.2; 1.2 date 2004.12.31.19.20.34; author rse; state Exp; branches; next 1.1; 1.1 date 2004.01.10.12.16.03; author rse; state Exp; branches; next ; desc @@ 1.7 log @remove OSSP uuid from CVS -- it is now versioned controlled in a Monotone repository @ text @/* ** OSSP uuid - Universally Unique Identifier ** Copyright (c) 2004-2008 Ralf S. Engelschall ** Copyright (c) 2004-2008 The OSSP Project ** ** This file is part of OSSP uuid, a library for the generation ** of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/ ** ** Permission to use, copy, modify, and distribute this software for ** any purpose with or without fee is hereby granted, provided that ** the above copyright notice and this permission notice appear in all ** copies. ** ** THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR ** CONTRIBUTORS 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. ** ** uuid_prng.h: PRNG API definition */ #ifndef __PRNG_H___ #define __PRNG_H___ #include /* size_t */ #define PRNG_PREFIX uuid_ /* embedding support */ #ifdef PRNG_PREFIX #if defined(__STDC__) || defined(__cplusplus) #define __PRNG_CONCAT(x,y) x ## y #define PRNG_CONCAT(x,y) __PRNG_CONCAT(x,y) #else #define __PRNG_CONCAT(x) x #define PRNG_CONCAT(x,y) __PRNG_CONCAT(x)y #endif #define prng_st PRNG_CONCAT(PRNG_PREFIX,prng_st) #define prng_t PRNG_CONCAT(PRNG_PREFIX,prng_t) #define prng_create PRNG_CONCAT(PRNG_PREFIX,prng_create) #define prng_data PRNG_CONCAT(PRNG_PREFIX,prng_data) #define prng_destroy PRNG_CONCAT(PRNG_PREFIX,prng_destroy) #endif struct prng_st; typedef struct prng_st prng_t; typedef enum { PRNG_RC_OK = 0, PRNG_RC_ARG = 1, PRNG_RC_MEM = 2, PRNG_RC_INT = 3 } prng_rc_t; extern prng_rc_t prng_create (prng_t **prng); extern prng_rc_t prng_data (prng_t *prng, void *data_ptr, size_t data_len); extern prng_rc_t prng_destroy (prng_t *prng); #endif /* __PRNG_H___ */ @ 1.6 log @adjust copyright messages for 2008 and bump version in advance @ text @@ 1.5 log @Adjust copyright messages for new year 2007. @ text @d3 2 a4 2 ** Copyright (c) 2004-2007 Ralf S. Engelschall ** Copyright (c) 2004-2007 The OSSP Project @ 1.4 log @Adjust copyright messages for new year 2006. @ text @d3 2 a4 2 ** Copyright (c) 2004-2006 Ralf S. Engelschall ** Copyright (c) 2004-2006 The OSSP Project @ 1.3 log @Improve the PRNG in case no stronger system PRNG device is available by passing time and rand(3) based entropy into the MD5 one-way hash function to achieve at least some sort of weaker PRN data. @ text @d3 2 a4 2 ** Copyright (c) 2004-2005 Ralf S. Engelschall ** Copyright (c) 2004-2005 The OSSP Project @ 1.2 log @Adjust copyright messages for new year 2005. @ text @d59 2 a60 1 PRNG_RC_MEM = 2 @ 1.1 log @move out PRNG into own object and attach a PRNG and MD5 object for reuse into the UUID object @ text @d3 2 a4 2 ** Copyright (c) 2004 Ralf S. Engelschall ** Copyright (c) 2004 The OSSP Project @