summaryrefslogtreecommitdiff
path: root/cpp/src/IceUtil/UUID.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceUtil/UUID.cpp')
-rw-r--r--cpp/src/IceUtil/UUID.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/cpp/src/IceUtil/UUID.cpp b/cpp/src/IceUtil/UUID.cpp
new file mode 100644
index 00000000000..4c6320a8507
--- /dev/null
+++ b/cpp/src/IceUtil/UUID.cpp
@@ -0,0 +1,36 @@
+// **********************************************************************
+//
+// Copyright (c) 2001
+// MutableRealms, Inc.
+// Huntsville, AL, USA
+//
+// All Rights Reserved
+//
+// **********************************************************************
+
+#include <IceUtil/UUID.h>
+
+#ifdef WIN32
+#else
+extern "C" // uuid/uuid.h seems to miss extern "C" declarations.
+{
+# include <uuid/uuid.h>
+}
+#endif
+
+using namespace std;
+
+string
+IceUtil::generateUUID()
+{
+#ifdef WIN32
+#else
+ uuid_t uuid;
+ uuid_generate(uuid);
+
+ char str[37];
+ uuid_unparse(uuid, str);
+
+ return str;
+#endif
+}