From: Mathieu Desnoyers Date: Thu, 1 Mar 2012 23:15:38 +0000 (-0500) Subject: FreeBSD uuid wrapper fixes X-Git-Tag: v1.0.0-pre3~5 X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=commitdiff_plain;h=57a9f43a3a08ec058852160c7b6b73c844aa2a08;hp=1b1d76c058fa73f31ede6a80d6777745ca07e6aa FreeBSD uuid wrapper fixes Signed-off-by: Mathieu Desnoyers --- diff --git a/include/babeltrace/ctf/metadata.h b/include/babeltrace/ctf/metadata.h index f283fe70..de8a1a8e 100644 --- a/include/babeltrace/ctf/metadata.h +++ b/include/babeltrace/ctf/metadata.h @@ -25,7 +25,6 @@ #include #include #include -#include #include #include diff --git a/include/babeltrace/uuid.h b/include/babeltrace/uuid.h index dfe1e020..3404ed43 100644 --- a/include/babeltrace/uuid.h +++ b/include/babeltrace/uuid.h @@ -31,9 +31,10 @@ int babeltrace_uuid_generate(unsigned char *uuid_out) } static inline -void babeltrace_uuid_unparse(const unsigned char *uuid_in, char *str_out) +int babeltrace_uuid_unparse(const unsigned char *uuid_in, char *str_out) { - return uuid_unparse(uuid_in, str_out); + uuid_unparse(uuid_in, str_out); + return 0; } static inline @@ -52,6 +53,8 @@ int babeltrace_uuid_compare(const unsigned char *uuid_a, #elif defined(BABELTRACE_HAVE_LIBC_UUID) #include #include +#include +#include static inline int babeltrace_uuid_generate(unsigned char *uuid_out) @@ -66,15 +69,21 @@ int babeltrace_uuid_generate(unsigned char *uuid_out) } static inline -void babeltrace_uuid_unparse(const unsigned char *uuid_in, char *str_out) +int babeltrace_uuid_unparse(const unsigned char *uuid_in, char *str_out) { uint32_t status; - - uuid_to_string((uuid_t *) uuid_in, str_out, &status); - if (status == uuid_s_ok) - return 0; - else - return -1; + char *alloc_str; + int ret; + + uuid_to_string((uuid_t *) uuid_in, &alloc_str, &status); + if (status == uuid_s_ok) { + strcpy(str_out, alloc_str); + ret = 0; + } else { + ret = -1; + } + free(alloc_str); + return ret; } static inline