资源简介
uuid-1.6.2.tar.gz,用于安装PostgreSQL的uuid-ossp扩展,由于官网链接太烂,特拿出来分享。
代码片段和文件信息
/*
** 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.c: library API implementation
*/
/* own headers (part 1/2) */
#include “uuid.h“
#include “uuid_ac.h“
/* system headers */
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
/* own headers (part 2/2) */
#include “uuid_vers.h“
#include “uuid_md5.h“
#include “uuid_sha1.h“
#include “uuid_prng.h“
#include “uuid_mac.h“
#include “uuid_time.h“
#include “uuid_ui64.h“
#include “uuid_ui128.h“
#include “uuid_str.h“
#include “uuid_bm.h“
#include “uuid_ac.h“
/* maximum number of 100ns ticks of the actual resolution of system clock
(which in our case is 1us (= 1000ns) because we use gettimeofday(2) */
#define UUIDS_PER_TICK 10
/* time offset between UUID and Unix Epoch time according to standards.
(UUID UTC base time is October 15 1582
Unix UTC base time is January 1 1970) */
#define UUID_TIMEOFFSET “01B21DD213814000“
/* IEEE 802 MAC address encoding/decoding bit fields */
#define IEEE_MAC_MCBIT BM_OCTET(00000001)
#define IEEE_MAC_LOBIT BM_OCTET(00000010)
/* IEEE 802 MAC address octet length */
#define IEEE_MAC_OCTETS 6
/* UUID binary representation according to UUID standards */
typedef struct {
uuid_uint32_t time_low; /* bits 0-31 of time field */
uuid_uint16_t time_mid; /* bits 32-47 of time field */
uuid_uint16_t time_hi_and_version; /* bits 48-59 of time field plus 4 bit version */
uuid_uint8_t clock_seq_hi_and_reserved; /* bits 8-13 of clock sequence field plus 2 bit variant */
uuid_uint
- 上一篇:SQL药品管理系统设计
- 下一篇:Oracle-使用RMAN从10g直接迁移到11G
评论
共有 条评论