1 | /* AUTOMATICALLY GENERATED, DO NOT MODIFY */ |
2 | |
3 | /* |
4 | * Schema-defined QAPI/QMP commands |
5 | * |
6 | * Copyright IBM, Corp. 2011 |
7 | * Copyright (C) 2014-2018 Red Hat, Inc. |
8 | * |
9 | * This work is licensed under the terms of the GNU LGPL, version 2.1 or later. |
10 | * See the COPYING.LIB file in the top-level directory. |
11 | */ |
12 | |
13 | #include "qemu/osdep.h" |
14 | #include "qapi/visitor.h" |
15 | #include "qapi/qmp/qdict.h" |
16 | #include "qapi/qobject-output-visitor.h" |
17 | #include "qapi/qobject-input-visitor.h" |
18 | #include "qapi/dealloc-visitor.h" |
19 | #include "qapi/error.h" |
20 | #include "qapi-visit-net.h" |
21 | #include "qapi-commands-net.h" |
22 | |
23 | |
24 | void qmp_marshal_set_link(QDict *args, QObject **ret, Error **errp) |
25 | { |
26 | Error *err = NULL; |
27 | Visitor *v; |
28 | q_obj_set_link_arg arg = {0}; |
29 | |
30 | v = qobject_input_visitor_new(QOBJECT(args)); |
31 | visit_start_struct(v, NULL, NULL, 0, &err); |
32 | if (err) { |
33 | goto out; |
34 | } |
35 | visit_type_q_obj_set_link_arg_members(v, &arg, &err); |
36 | if (!err) { |
37 | visit_check_struct(v, &err); |
38 | } |
39 | visit_end_struct(v, NULL); |
40 | if (err) { |
41 | goto out; |
42 | } |
43 | |
44 | qmp_set_link(arg.name, arg.up, &err); |
45 | |
46 | out: |
47 | error_propagate(errp, err); |
48 | visit_free(v); |
49 | v = qapi_dealloc_visitor_new(); |
50 | visit_start_struct(v, NULL, NULL, 0, NULL); |
51 | visit_type_q_obj_set_link_arg_members(v, &arg, NULL); |
52 | visit_end_struct(v, NULL); |
53 | visit_free(v); |
54 | } |
55 | |
56 | void qmp_marshal_netdev_del(QDict *args, QObject **ret, Error **errp) |
57 | { |
58 | Error *err = NULL; |
59 | Visitor *v; |
60 | q_obj_netdev_del_arg arg = {0}; |
61 | |
62 | v = qobject_input_visitor_new(QOBJECT(args)); |
63 | visit_start_struct(v, NULL, NULL, 0, &err); |
64 | if (err) { |
65 | goto out; |
66 | } |
67 | visit_type_q_obj_netdev_del_arg_members(v, &arg, &err); |
68 | if (!err) { |
69 | visit_check_struct(v, &err); |
70 | } |
71 | visit_end_struct(v, NULL); |
72 | if (err) { |
73 | goto out; |
74 | } |
75 | |
76 | qmp_netdev_del(arg.id, &err); |
77 | |
78 | out: |
79 | error_propagate(errp, err); |
80 | visit_free(v); |
81 | v = qapi_dealloc_visitor_new(); |
82 | visit_start_struct(v, NULL, NULL, 0, NULL); |
83 | visit_type_q_obj_netdev_del_arg_members(v, &arg, NULL); |
84 | visit_end_struct(v, NULL); |
85 | visit_free(v); |
86 | } |
87 | |
88 | static void qmp_marshal_output_RxFilterInfoList(RxFilterInfoList *ret_in, QObject **ret_out, Error **errp) |
89 | { |
90 | Error *err = NULL; |
91 | Visitor *v; |
92 | |
93 | v = qobject_output_visitor_new(ret_out); |
94 | visit_type_RxFilterInfoList(v, "unused" , &ret_in, &err); |
95 | if (!err) { |
96 | visit_complete(v, ret_out); |
97 | } |
98 | error_propagate(errp, err); |
99 | visit_free(v); |
100 | v = qapi_dealloc_visitor_new(); |
101 | visit_type_RxFilterInfoList(v, "unused" , &ret_in, NULL); |
102 | visit_free(v); |
103 | } |
104 | |
105 | void qmp_marshal_query_rx_filter(QDict *args, QObject **ret, Error **errp) |
106 | { |
107 | Error *err = NULL; |
108 | RxFilterInfoList *retval; |
109 | Visitor *v; |
110 | q_obj_query_rx_filter_arg arg = {0}; |
111 | |
112 | v = qobject_input_visitor_new(QOBJECT(args)); |
113 | visit_start_struct(v, NULL, NULL, 0, &err); |
114 | if (err) { |
115 | goto out; |
116 | } |
117 | visit_type_q_obj_query_rx_filter_arg_members(v, &arg, &err); |
118 | if (!err) { |
119 | visit_check_struct(v, &err); |
120 | } |
121 | visit_end_struct(v, NULL); |
122 | if (err) { |
123 | goto out; |
124 | } |
125 | |
126 | retval = qmp_query_rx_filter(arg.has_name, arg.name, &err); |
127 | if (err) { |
128 | goto out; |
129 | } |
130 | |
131 | qmp_marshal_output_RxFilterInfoList(retval, ret, &err); |
132 | |
133 | out: |
134 | error_propagate(errp, err); |
135 | visit_free(v); |
136 | v = qapi_dealloc_visitor_new(); |
137 | visit_start_struct(v, NULL, NULL, 0, NULL); |
138 | visit_type_q_obj_query_rx_filter_arg_members(v, &arg, NULL); |
139 | visit_end_struct(v, NULL); |
140 | visit_free(v); |
141 | } |
142 | |
143 | void qmp_marshal_announce_self(QDict *args, QObject **ret, Error **errp) |
144 | { |
145 | Error *err = NULL; |
146 | Visitor *v; |
147 | AnnounceParameters arg = {0}; |
148 | |
149 | v = qobject_input_visitor_new(QOBJECT(args)); |
150 | visit_start_struct(v, NULL, NULL, 0, &err); |
151 | if (err) { |
152 | goto out; |
153 | } |
154 | visit_type_AnnounceParameters_members(v, &arg, &err); |
155 | if (!err) { |
156 | visit_check_struct(v, &err); |
157 | } |
158 | visit_end_struct(v, NULL); |
159 | if (err) { |
160 | goto out; |
161 | } |
162 | |
163 | qmp_announce_self(&arg, &err); |
164 | |
165 | out: |
166 | error_propagate(errp, err); |
167 | visit_free(v); |
168 | v = qapi_dealloc_visitor_new(); |
169 | visit_start_struct(v, NULL, NULL, 0, NULL); |
170 | visit_type_AnnounceParameters_members(v, &arg, NULL); |
171 | visit_end_struct(v, NULL); |
172 | visit_free(v); |
173 | } |
174 | |
175 | /* Dummy declaration to prevent empty .o file */ |
176 | char qapi_dummy_qapi_commands_net_c; |
177 | |