- added autoconf check for uuid_t to compile under MacOS X
[public/netxms.git] / include / uuid.h
CommitLineData
f3d12ff6
VK
1/*
2 * Public include file for the UUID library
3 *
4 * Copyright (C) 1996, 1997, 1998 Theodore Ts'o.
5 *
6 * %Begin-Header%
7 * This file may be redistributed under the terms of the GNU
8 * Library General Public License.
9 * %End-Header%
10 */
11
12#ifndef _UUID_H_
13#define _UUID_H_
14
95b6a1b6
VK
15#define UUID_LENGTH 16
16
3071f10a 17#if !HAVE_UUID_T
f3d12ff6
VK
18#undef uuid_t
19typedef unsigned char uuid_t[16];
3071f10a 20#endif
f3d12ff6
VK
21
22/* UUID Variant definitions */
95b6a1b6
VK
23#define UUID_VARIANT_NCS 0
24#define UUID_VARIANT_DCE 1
25#define UUID_VARIANT_MICROSOFT 2
26#define UUID_VARIANT_OTHER 3
f3d12ff6
VK
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32void LIBNETXMS_EXPORTABLE uuid_clear(uuid_t uu);
33int LIBNETXMS_EXPORTABLE uuid_compare(uuid_t uu1, uuid_t uu2);
34void LIBNETXMS_EXPORTABLE uuid_copy(uuid_t uu1, uuid_t uu2);
35void LIBNETXMS_EXPORTABLE uuid_generate(uuid_t out);
36int LIBNETXMS_EXPORTABLE uuid_is_null(uuid_t uu);
203e9d8a 37int LIBNETXMS_EXPORTABLE uuid_parse(const TCHAR *in, uuid_t uu);
4660fdf6 38TCHAR LIBNETXMS_EXPORTABLE *uuid_to_string(uuid_t uu, TCHAR *out);
f3d12ff6
VK
39
40#ifdef __cplusplus
41}
42#endif
43
f3d12ff6 44#endif