static char *make_blktap2_device(struct libxl_ctx *ctx,
const char *name, const char *type)
{
- char *params, *devname;
+ char *params, *devname = NULL, *rv = NULL;
int err;
params = libxl_sprintf(ctx, "%s:%s", type, name);
- devname = NULL;
err = tap_ctl_create(params, &devname);
- free(params);
- return err ? NULL : devname;
+ if (!err) {
+ rv = libxl_sprintf(ctx, devname);
+ free(devname);
+ }
+ return rv;
}
int libxl_device_disk_add(struct libxl_ctx *ctx, uint32_t domid, libxl_device_disk *disk)