コード例 #1
0
ファイル: libxl_dm.c プロジェクト: abligh/xen
const char *libxl__domain_device_model(libxl__gc *gc,
                                       const libxl_domain_build_info *info)
{
    libxl_ctx *ctx = libxl__gc_owner(gc);
    const char *dm;

    if (libxl_defbool_val(info->device_model_stubdomain))
        return NULL;

    if (info->device_model) {
        dm = libxl__strdup(gc, info->device_model);
    } else {
        switch (info->device_model_version) {
        case LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN_TRADITIONAL:
            dm = libxl__abs_path(gc, "qemu-dm", libxl__libexec_path());
            break;
        case LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN:
            dm = libxl__abs_path(gc, "qemu-system-i386", libxl__libexec_path());
            break;
        default:
            LIBXL__LOG(ctx, LIBXL__LOG_ERROR,
                       "invalid device model version %d\n",
                       info->device_model_version);
            dm = NULL;
            break;
        }
    }
    return dm;
}
コード例 #2
0
ファイル: libxl_dm.c プロジェクト: jsgf/xen
static const char *qemu_xen_path(libxl__gc *gc)
{
#ifdef QEMU_XEN_PATH
    return QEMU_XEN_PATH;
#else
    return libxl__abs_path(gc, "qemu-system-i386", libxl__libexec_path());
#endif
}