diff options
Diffstat (limited to 'tools/blktap2/include/vhd-uuid.h')
-rw-r--r-- | tools/blktap2/include/vhd-uuid.h | 97 |
1 files changed, 15 insertions, 82 deletions
diff --git a/tools/blktap2/include/vhd-uuid.h b/tools/blktap2/include/vhd-uuid.h index 655ea8fabd..1b65b67bac 100644 --- a/tools/blktap2/include/vhd-uuid.h +++ b/tools/blktap2/include/vhd-uuid.h @@ -25,106 +25,39 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __BLKTAP2_VHD_UUID_H__ -#define __BLKTAP2_VHDUUID_H__ +#define __BLKTAP2_VHD_UUID_H__ #if defined(__linux__) #include <uuid/uuid.h> - typedef struct { uuid_t uuid; } vhd_uuid_t; -static inline int vhd_uuid_is_nil(vhd_uuid_t *uuid) -{ - return uuid_is_null(uuid->uuid); -} - -static inline void vhd_uuid_generate(vhd_uuid_t *uuid) -{ - uuid_generate(uuid->uuid); -} - -static inline void vhd_uuid_to_string(vhd_uuid_t *uuid, char *out, size_t size) -{ - uuid_unparse(uuid->uuid, out); -} - -static inline void vhd_uuid_from_string(vhd_uuid_t *uuid, const char *in) -{ - uuid_parse(in, uuid->uuid); -} - -static inline void vhd_uuid_copy(vhd_uuid_t *dst, vhd_uuid_t *src) -{ - uuid_copy(dst->uuid, src->uuid); -} - -static inline void vhd_uuid_clear(vhd_uuid_t *uuid) -{ - uuid_clear(uuid->uuid); -} - -static inline int vhd_uuid_compare(vhd_uuid_t *uuid1, vhd_uuid_t *uuid2) -{ - return uuid_compare(uuid1->uuid, uuid2->uuid); -} - #elif defined(__NetBSD__) #include <uuid.h> -#include <string.h> -#include <stdlib.h> typedef uuid_t vhd_uuid_t; -static inline int vhd_uuid_is_nil(vhd_uuid_t *uuid) -{ - uint32_t status; - return uuid_is_nil((uuid_t *)uuid, &status); -} - -static inline void vhd_uuid_generate(vhd_uuid_t *uuid) -{ - uint32_t status; - uuid_create((uuid_t *)uuid, &status); -} - -static inline void vhd_uuid_to_string(vhd_uuid_t *uuid, char *out, size_t size) -{ - uint32_t status; - char *_out = NULL; - uuid_to_string((uuid_t *)uuid, &_out, &status); - strlcpy(out, _out, size); - free(_out); -} - -static inline void vhd_uuid_from_string(vhd_uuid_t *uuid, const char *in) -{ - uint32_t status; - uuid_from_string(in, (uuid_t *)uuid, &status); -} - -static inline void vhd_uuid_copy(vhd_uuid_t *dst, vhd_uuid_t *src) -{ - memcpy((uuid_t *)dst, (uuid_t *)src, sizeof(uuid_t)); -} - -static inline void vhd_uuid_clear(vhd_uuid_t *uuid) -{ - memset((uuid_t *)uuid, 0, sizeof(uuid_t)); -} - -static inline int vhd_uuid_compare(vhd_uuid_t *uuid1, vhd_uuid_t *uuid2) -{ - uint32_t status; - return uuid_compare((uuid_t *)uuid1, (uuid_t *)uuid2, &status); -} - #else #error "Please update vhd-uuid.h for your OS" #endif +int vhd_uuid_is_nil(vhd_uuid_t *uuid); + +void vhd_uuid_generate(vhd_uuid_t *uuid); + +void vhd_uuid_to_string(vhd_uuid_t *uuid, char *out, size_t size); + +void vhd_uuid_from_string(vhd_uuid_t *uuid, const char *in); + +void vhd_uuid_copy(vhd_uuid_t *dst, vhd_uuid_t *src); + +void vhd_uuid_clear(vhd_uuid_t *uuid); + +int vhd_uuid_compare(vhd_uuid_t *uuid1, vhd_uuid_t *uuid2); + #endif /* __BLKTAP2_VHD_UUID_H__ */ |