Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
libvirt
提交
bf410bb8
L
libvirt
项目概览
openeuler
/
libvirt
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
libvirt
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
bf410bb8
编写于
6月 10, 2014
作者:
J
Jim Fehlig
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
libxl: support interface type=network
Add support for <interface type='network'> in the libxl driver.
上级
404bac14
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
48 addition
and
3 deletion
+48
-3
src/libxl/libxl_conf.c
src/libxl/libxl_conf.c
+48
-3
未找到文件。
src/libxl/libxl_conf.c
浏览文件 @
bf410bb8
...
...
@@ -875,6 +875,7 @@ libxlMakeNic(virDomainDefPtr def,
libxl_device_nic
*
x_nic
)
{
bool
ioemu_nic
=
STREQ
(
def
->
os
.
type
,
"hvm"
);
virDomainNetType
actual_type
=
virDomainNetGetActualType
(
l_nic
);
/* TODO: Where is mtu stored?
*
...
...
@@ -900,16 +901,60 @@ libxlMakeNic(virDomainDefPtr def,
if
(
VIR_STRDUP
(
x_nic
->
ifname
,
l_nic
->
ifname
)
<
0
)
return
-
1
;
switch
(
l_nic
->
type
)
{
switch
(
actual_
type
)
{
case
VIR_DOMAIN_NET_TYPE_BRIDGE
:
if
(
VIR_STRDUP
(
x_nic
->
bridge
,
l_nic
->
data
.
bridge
.
brname
)
<
0
)
if
(
VIR_STRDUP
(
x_nic
->
bridge
,
virDomainNetGetActualBridgeName
(
l_nic
))
<
0
)
return
-
1
;
/* fallthrough */
case
VIR_DOMAIN_NET_TYPE_ETHERNET
:
if
(
VIR_STRDUP
(
x_nic
->
script
,
l_nic
->
script
)
<
0
)
return
-
1
;
break
;
default:
case
VIR_DOMAIN_NET_TYPE_NETWORK
:
{
bool
fail
=
false
;
char
*
brname
=
NULL
;
virNetworkPtr
network
;
virConnectPtr
conn
;
virErrorPtr
errobj
;
if
(
!
(
conn
=
virConnectOpen
(
"xen:///system"
)))
return
-
1
;
if
(
!
(
network
=
virNetworkLookupByName
(
conn
,
l_nic
->
data
.
network
.
name
)))
{
virObjectUnref
(
conn
);
return
-
1
;
}
if
((
brname
=
virNetworkGetBridgeName
(
network
)))
{
if
(
VIR_STRDUP
(
x_nic
->
bridge
,
brname
)
<
0
)
fail
=
true
;
}
else
{
fail
=
true
;
}
VIR_FREE
(
brname
);
/* Preserve any previous failure */
errobj
=
virSaveLastError
();
virNetworkFree
(
network
);
virSetError
(
errobj
);
virFreeError
(
errobj
);
virObjectUnref
(
conn
);
if
(
fail
)
return
-
1
;
break
;
}
case
VIR_DOMAIN_NET_TYPE_USER
:
case
VIR_DOMAIN_NET_TYPE_SERVER
:
case
VIR_DOMAIN_NET_TYPE_CLIENT
:
case
VIR_DOMAIN_NET_TYPE_MCAST
:
case
VIR_DOMAIN_NET_TYPE_INTERNAL
:
case
VIR_DOMAIN_NET_TYPE_DIRECT
:
case
VIR_DOMAIN_NET_TYPE_HOSTDEV
:
case
VIR_DOMAIN_NET_TYPE_LAST
:
virReportError
(
VIR_ERR_INTERNAL_ERROR
,
_
(
"libxenlight does not support network device type %s"
),
virDomainNetTypeToString
(
l_nic
->
type
));
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录