mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-21 22:53:37 +00:00
daemon: add get_random_uuid
Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
This commit is contained in:
committed by
Pino Toscano
parent
5166388914
commit
d0c067df87
@@ -97,6 +97,7 @@ dnl iproute has been renamed to iproute2
|
||||
vim-tiny
|
||||
xz-utils
|
||||
zfs-fuse
|
||||
uuid-runtime
|
||||
)
|
||||
|
||||
ifelse(ARCHLINUX,1,
|
||||
|
||||
@@ -152,6 +152,8 @@ extern void udev_settle (void);
|
||||
|
||||
extern int random_name (char *template);
|
||||
|
||||
extern char *get_random_uuid (void);
|
||||
|
||||
/* This just stops gcc from giving a warning about our custom printf
|
||||
* formatters %Q and %R. See guestfs(3)/EXTENDING LIBGUESTFS for more
|
||||
* info about these. In GCC 4.8.0 the warning is even harder to
|
||||
|
||||
@@ -57,6 +57,7 @@
|
||||
#include "daemon.h"
|
||||
|
||||
GUESTFSD_EXT_CMD(str_udevadm, udevadm);
|
||||
GUESTFSD_EXT_CMD(str_uuidgen, uuidgen);
|
||||
|
||||
#ifndef MAX
|
||||
# define MAX(a,b) ((a)>(b)?(a):(b))
|
||||
@@ -1509,6 +1510,24 @@ udev_settle (void)
|
||||
fprintf (stderr, "warning: udevadm command failed\n");
|
||||
}
|
||||
|
||||
char *
|
||||
get_random_uuid (void)
|
||||
{
|
||||
int r;
|
||||
char *out;
|
||||
CLEANUP_FREE char *err = NULL;
|
||||
|
||||
r = command (&out, &err, str_uuidgen, NULL);
|
||||
if (r == -1) {
|
||||
reply_with_error ("%s", err);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* caller free */
|
||||
return out;
|
||||
|
||||
}
|
||||
|
||||
/* Use by the CLEANUP_* macros. Do not call these directly. */
|
||||
void
|
||||
cleanup_free (void *ptr)
|
||||
|
||||
Reference in New Issue
Block a user