Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
libvirt
提交
1cefc14f
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看板
提交
1cefc14f
编写于
3月 09, 2016
作者:
M
Martin Kletzander
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
gendispatch: Accept server as an argument
Signed-off-by:
N
Martin Kletzander
<
mkletzan@redhat.com
>
上级
d949280c
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
41 addition
and
0 deletion
+41
-0
src/rpc/gendispatch.pl
src/rpc/gendispatch.pl
+41
-0
未找到文件。
src/rpc/gendispatch.pl
浏览文件 @
1cefc14f
...
...
@@ -600,6 +600,16 @@ elsif ($mode eq "server") {
}
else
{
push
(
@args_list
,
"
args->
$arg_name
");
}
}
elsif
(
$args_member
=~
m/^admin_nonnull_(server) (\S+);/
)
{
my
$type_name
=
name_to_TypeName
(
$
1
);
push
(
@vars_list
,
"
virNet
${type_name}
Ptr $2 = NULL
");
push
(
@getters_list
,
"
if (!($2 = get_nonnull_$1(priv->dmn, args->$2)))
\n
"
.
"
goto cleanup;
\n
");
push
(
@args_list
,
"
$2
");
push
(
@free_list
,
"
virObjectUnref($2);
");
}
elsif
(
$args_member
=~
m/^(\/)?\*/
)
{
# ignore comments
}
else
{
...
...
@@ -819,6 +829,16 @@ elsif ($mode eq "server") {
}
elsif
(
$ret_member
=~
m/^opaque (\S+)<\S+>;/
)
{
# error out on unannotated arrays
die
"
opaque array without insert@<offset> annotation:
$ret_member
";
}
elsif
(
$ret_member
=~
m/^admin_nonnull_(server) (\S+);/
)
{
my
$type_name
=
name_to_TypeName
(
$
1
);
push
(
@vars_list
,
"
virNet
${type_name}
Ptr $2 = NULL
");
push
(
@ret_list
,
"
make_nonnull_$1(&ret->$2, $2);
");
push
(
@free_list
,
"
virObjectUnref($2);
");
$single_ret_var
=
$
2
;
$single_ret_by_ref
=
0
;
$single_ret_check
=
"
== NULL
";
}
elsif
(
$ret_member
=~
m/^(\/)?\*/
)
{
# ignore comments
}
else
{
...
...
@@ -1317,6 +1337,17 @@ elsif ($mode eq "client") {
push
(
@args_list
,
"
$type_name
$arg_name
");
push
(
@setters_list
,
"
args.
$arg_name
=
$arg_name
;
");
}
elsif
(
$args_member
=~
m/^admin_nonnull_(server) (\S+);/
)
{
my
$name
=
$
1
;
my
$arg_name
=
$
2
;
my
$type_name
=
name_to_TypeName
(
$name
);
if
(
$is_first_arg
)
{
$priv_src
=
"
$arg_name
->conn
";
}
push
(
@args_list
,
"
virAdm
${type_name}
Ptr
$arg_name
");
push
(
@setters_list
,
"
make_nonnull_$1(&args.
$arg_name
,
$arg_name
);
");
}
elsif
(
$args_member
=~
m/^(\/)?\*/
)
{
# ignore comments
}
else
{
...
...
@@ -1514,6 +1545,16 @@ elsif ($mode eq "client") {
$single_ret_var
=
"
unsigned long long rv = 0
";
$single_ret_type
=
"
unsigned long long
";
}
}
elsif
(
$ret_member
=~
m/^admin_nonnull_(server) (\S+);/
)
{
my
$name
=
$
1
;
my
$arg_name
=
$
2
;
my
$type_name
=
name_to_TypeName
(
$name
);
push
(
@ret_list
,
"
rv = get_nonnull_
$name
(
$priv_src
, ret.
$arg_name
);
");
push
(
@ret_list
,
"
xdr_free((xdrproc_t)xdr_
$rettype
, (char *)&ret);
");
$single_ret_var
=
"
virAdm
${type_name}
Ptr rv = NULL
";
$single_ret_type
=
"
virAdm
${type_name}
Ptr
";
}
elsif
(
$ret_member
=~
m/^(\/)?\*/
)
{
# ignore comments
}
else
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录