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-misc.h"
21#include "qapi-commands-misc.h"
22
23
24void qmp_marshal_qmp_capabilities(QDict *args, QObject **ret, Error **errp)
25{
26 Error *err = NULL;
27 Visitor *v;
28 q_obj_qmp_capabilities_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_qmp_capabilities_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_qmp_capabilities(arg.has_enable, arg.enable, &err);
45
46out:
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_qmp_capabilities_arg_members(v, &arg, NULL);
52 visit_end_struct(v, NULL);
53 visit_free(v);
54}
55
56static void qmp_marshal_output_VersionInfo(VersionInfo *ret_in, QObject **ret_out, Error **errp)
57{
58 Error *err = NULL;
59 Visitor *v;
60
61 v = qobject_output_visitor_new(ret_out);
62 visit_type_VersionInfo(v, "unused", &ret_in, &err);
63 if (!err) {
64 visit_complete(v, ret_out);
65 }
66 error_propagate(errp, err);
67 visit_free(v);
68 v = qapi_dealloc_visitor_new();
69 visit_type_VersionInfo(v, "unused", &ret_in, NULL);
70 visit_free(v);
71}
72
73void qmp_marshal_query_version(QDict *args, QObject **ret, Error **errp)
74{
75 Error *err = NULL;
76 VersionInfo *retval;
77 Visitor *v = NULL;
78
79 if (args) {
80 v = qobject_input_visitor_new(QOBJECT(args));
81 visit_start_struct(v, NULL, NULL, 0, &err);
82 if (err) {
83 goto out;
84 }
85
86 if (!err) {
87 visit_check_struct(v, &err);
88 }
89 visit_end_struct(v, NULL);
90 if (err) {
91 goto out;
92 }
93 }
94
95 retval = qmp_query_version(&err);
96 if (err) {
97 goto out;
98 }
99
100 qmp_marshal_output_VersionInfo(retval, ret, &err);
101
102out:
103 error_propagate(errp, err);
104 visit_free(v);
105 if (args) {
106 v = qapi_dealloc_visitor_new();
107 visit_start_struct(v, NULL, NULL, 0, NULL);
108
109 visit_end_struct(v, NULL);
110 visit_free(v);
111 }
112}
113
114static void qmp_marshal_output_CommandInfoList(CommandInfoList *ret_in, QObject **ret_out, Error **errp)
115{
116 Error *err = NULL;
117 Visitor *v;
118
119 v = qobject_output_visitor_new(ret_out);
120 visit_type_CommandInfoList(v, "unused", &ret_in, &err);
121 if (!err) {
122 visit_complete(v, ret_out);
123 }
124 error_propagate(errp, err);
125 visit_free(v);
126 v = qapi_dealloc_visitor_new();
127 visit_type_CommandInfoList(v, "unused", &ret_in, NULL);
128 visit_free(v);
129}
130
131void qmp_marshal_query_commands(QDict *args, QObject **ret, Error **errp)
132{
133 Error *err = NULL;
134 CommandInfoList *retval;
135 Visitor *v = NULL;
136
137 if (args) {
138 v = qobject_input_visitor_new(QOBJECT(args));
139 visit_start_struct(v, NULL, NULL, 0, &err);
140 if (err) {
141 goto out;
142 }
143
144 if (!err) {
145 visit_check_struct(v, &err);
146 }
147 visit_end_struct(v, NULL);
148 if (err) {
149 goto out;
150 }
151 }
152
153 retval = qmp_query_commands(&err);
154 if (err) {
155 goto out;
156 }
157
158 qmp_marshal_output_CommandInfoList(retval, ret, &err);
159
160out:
161 error_propagate(errp, err);
162 visit_free(v);
163 if (args) {
164 v = qapi_dealloc_visitor_new();
165 visit_start_struct(v, NULL, NULL, 0, NULL);
166
167 visit_end_struct(v, NULL);
168 visit_free(v);
169 }
170}
171
172void qmp_marshal_add_client(QDict *args, QObject **ret, Error **errp)
173{
174 Error *err = NULL;
175 Visitor *v;
176 q_obj_add_client_arg arg = {0};
177
178 v = qobject_input_visitor_new(QOBJECT(args));
179 visit_start_struct(v, NULL, NULL, 0, &err);
180 if (err) {
181 goto out;
182 }
183 visit_type_q_obj_add_client_arg_members(v, &arg, &err);
184 if (!err) {
185 visit_check_struct(v, &err);
186 }
187 visit_end_struct(v, NULL);
188 if (err) {
189 goto out;
190 }
191
192 qmp_add_client(arg.protocol, arg.fdname, arg.has_skipauth, arg.skipauth, arg.has_tls, arg.tls, &err);
193
194out:
195 error_propagate(errp, err);
196 visit_free(v);
197 v = qapi_dealloc_visitor_new();
198 visit_start_struct(v, NULL, NULL, 0, NULL);
199 visit_type_q_obj_add_client_arg_members(v, &arg, NULL);
200 visit_end_struct(v, NULL);
201 visit_free(v);
202}
203
204static void qmp_marshal_output_NameInfo(NameInfo *ret_in, QObject **ret_out, Error **errp)
205{
206 Error *err = NULL;
207 Visitor *v;
208
209 v = qobject_output_visitor_new(ret_out);
210 visit_type_NameInfo(v, "unused", &ret_in, &err);
211 if (!err) {
212 visit_complete(v, ret_out);
213 }
214 error_propagate(errp, err);
215 visit_free(v);
216 v = qapi_dealloc_visitor_new();
217 visit_type_NameInfo(v, "unused", &ret_in, NULL);
218 visit_free(v);
219}
220
221void qmp_marshal_query_name(QDict *args, QObject **ret, Error **errp)
222{
223 Error *err = NULL;
224 NameInfo *retval;
225 Visitor *v = NULL;
226
227 if (args) {
228 v = qobject_input_visitor_new(QOBJECT(args));
229 visit_start_struct(v, NULL, NULL, 0, &err);
230 if (err) {
231 goto out;
232 }
233
234 if (!err) {
235 visit_check_struct(v, &err);
236 }
237 visit_end_struct(v, NULL);
238 if (err) {
239 goto out;
240 }
241 }
242
243 retval = qmp_query_name(&err);
244 if (err) {
245 goto out;
246 }
247
248 qmp_marshal_output_NameInfo(retval, ret, &err);
249
250out:
251 error_propagate(errp, err);
252 visit_free(v);
253 if (args) {
254 v = qapi_dealloc_visitor_new();
255 visit_start_struct(v, NULL, NULL, 0, NULL);
256
257 visit_end_struct(v, NULL);
258 visit_free(v);
259 }
260}
261
262static void qmp_marshal_output_KvmInfo(KvmInfo *ret_in, QObject **ret_out, Error **errp)
263{
264 Error *err = NULL;
265 Visitor *v;
266
267 v = qobject_output_visitor_new(ret_out);
268 visit_type_KvmInfo(v, "unused", &ret_in, &err);
269 if (!err) {
270 visit_complete(v, ret_out);
271 }
272 error_propagate(errp, err);
273 visit_free(v);
274 v = qapi_dealloc_visitor_new();
275 visit_type_KvmInfo(v, "unused", &ret_in, NULL);
276 visit_free(v);
277}
278
279void qmp_marshal_query_kvm(QDict *args, QObject **ret, Error **errp)
280{
281 Error *err = NULL;
282 KvmInfo *retval;
283 Visitor *v = NULL;
284
285 if (args) {
286 v = qobject_input_visitor_new(QOBJECT(args));
287 visit_start_struct(v, NULL, NULL, 0, &err);
288 if (err) {
289 goto out;
290 }
291
292 if (!err) {
293 visit_check_struct(v, &err);
294 }
295 visit_end_struct(v, NULL);
296 if (err) {
297 goto out;
298 }
299 }
300
301 retval = qmp_query_kvm(&err);
302 if (err) {
303 goto out;
304 }
305
306 qmp_marshal_output_KvmInfo(retval, ret, &err);
307
308out:
309 error_propagate(errp, err);
310 visit_free(v);
311 if (args) {
312 v = qapi_dealloc_visitor_new();
313 visit_start_struct(v, NULL, NULL, 0, NULL);
314
315 visit_end_struct(v, NULL);
316 visit_free(v);
317 }
318}
319
320static void qmp_marshal_output_UuidInfo(UuidInfo *ret_in, QObject **ret_out, Error **errp)
321{
322 Error *err = NULL;
323 Visitor *v;
324
325 v = qobject_output_visitor_new(ret_out);
326 visit_type_UuidInfo(v, "unused", &ret_in, &err);
327 if (!err) {
328 visit_complete(v, ret_out);
329 }
330 error_propagate(errp, err);
331 visit_free(v);
332 v = qapi_dealloc_visitor_new();
333 visit_type_UuidInfo(v, "unused", &ret_in, NULL);
334 visit_free(v);
335}
336
337void qmp_marshal_query_uuid(QDict *args, QObject **ret, Error **errp)
338{
339 Error *err = NULL;
340 UuidInfo *retval;
341 Visitor *v = NULL;
342
343 if (args) {
344 v = qobject_input_visitor_new(QOBJECT(args));
345 visit_start_struct(v, NULL, NULL, 0, &err);
346 if (err) {
347 goto out;
348 }
349
350 if (!err) {
351 visit_check_struct(v, &err);
352 }
353 visit_end_struct(v, NULL);
354 if (err) {
355 goto out;
356 }
357 }
358
359 retval = qmp_query_uuid(&err);
360 if (err) {
361 goto out;
362 }
363
364 qmp_marshal_output_UuidInfo(retval, ret, &err);
365
366out:
367 error_propagate(errp, err);
368 visit_free(v);
369 if (args) {
370 v = qapi_dealloc_visitor_new();
371 visit_start_struct(v, NULL, NULL, 0, NULL);
372
373 visit_end_struct(v, NULL);
374 visit_free(v);
375 }
376}
377
378static void qmp_marshal_output_EventInfoList(EventInfoList *ret_in, QObject **ret_out, Error **errp)
379{
380 Error *err = NULL;
381 Visitor *v;
382
383 v = qobject_output_visitor_new(ret_out);
384 visit_type_EventInfoList(v, "unused", &ret_in, &err);
385 if (!err) {
386 visit_complete(v, ret_out);
387 }
388 error_propagate(errp, err);
389 visit_free(v);
390 v = qapi_dealloc_visitor_new();
391 visit_type_EventInfoList(v, "unused", &ret_in, NULL);
392 visit_free(v);
393}
394
395void qmp_marshal_query_events(QDict *args, QObject **ret, Error **errp)
396{
397 Error *err = NULL;
398 EventInfoList *retval;
399 Visitor *v = NULL;
400
401 if (args) {
402 v = qobject_input_visitor_new(QOBJECT(args));
403 visit_start_struct(v, NULL, NULL, 0, &err);
404 if (err) {
405 goto out;
406 }
407
408 if (!err) {
409 visit_check_struct(v, &err);
410 }
411 visit_end_struct(v, NULL);
412 if (err) {
413 goto out;
414 }
415 }
416
417 retval = qmp_query_events(&err);
418 if (err) {
419 goto out;
420 }
421
422 qmp_marshal_output_EventInfoList(retval, ret, &err);
423
424out:
425 error_propagate(errp, err);
426 visit_free(v);
427 if (args) {
428 v = qapi_dealloc_visitor_new();
429 visit_start_struct(v, NULL, NULL, 0, NULL);
430
431 visit_end_struct(v, NULL);
432 visit_free(v);
433 }
434}
435
436static void qmp_marshal_output_IOThreadInfoList(IOThreadInfoList *ret_in, QObject **ret_out, Error **errp)
437{
438 Error *err = NULL;
439 Visitor *v;
440
441 v = qobject_output_visitor_new(ret_out);
442 visit_type_IOThreadInfoList(v, "unused", &ret_in, &err);
443 if (!err) {
444 visit_complete(v, ret_out);
445 }
446 error_propagate(errp, err);
447 visit_free(v);
448 v = qapi_dealloc_visitor_new();
449 visit_type_IOThreadInfoList(v, "unused", &ret_in, NULL);
450 visit_free(v);
451}
452
453void qmp_marshal_query_iothreads(QDict *args, QObject **ret, Error **errp)
454{
455 Error *err = NULL;
456 IOThreadInfoList *retval;
457 Visitor *v = NULL;
458
459 if (args) {
460 v = qobject_input_visitor_new(QOBJECT(args));
461 visit_start_struct(v, NULL, NULL, 0, &err);
462 if (err) {
463 goto out;
464 }
465
466 if (!err) {
467 visit_check_struct(v, &err);
468 }
469 visit_end_struct(v, NULL);
470 if (err) {
471 goto out;
472 }
473 }
474
475 retval = qmp_query_iothreads(&err);
476 if (err) {
477 goto out;
478 }
479
480 qmp_marshal_output_IOThreadInfoList(retval, ret, &err);
481
482out:
483 error_propagate(errp, err);
484 visit_free(v);
485 if (args) {
486 v = qapi_dealloc_visitor_new();
487 visit_start_struct(v, NULL, NULL, 0, NULL);
488
489 visit_end_struct(v, NULL);
490 visit_free(v);
491 }
492}
493
494static void qmp_marshal_output_BalloonInfo(BalloonInfo *ret_in, QObject **ret_out, Error **errp)
495{
496 Error *err = NULL;
497 Visitor *v;
498
499 v = qobject_output_visitor_new(ret_out);
500 visit_type_BalloonInfo(v, "unused", &ret_in, &err);
501 if (!err) {
502 visit_complete(v, ret_out);
503 }
504 error_propagate(errp, err);
505 visit_free(v);
506 v = qapi_dealloc_visitor_new();
507 visit_type_BalloonInfo(v, "unused", &ret_in, NULL);
508 visit_free(v);
509}
510
511void qmp_marshal_query_balloon(QDict *args, QObject **ret, Error **errp)
512{
513 Error *err = NULL;
514 BalloonInfo *retval;
515 Visitor *v = NULL;
516
517 if (args) {
518 v = qobject_input_visitor_new(QOBJECT(args));
519 visit_start_struct(v, NULL, NULL, 0, &err);
520 if (err) {
521 goto out;
522 }
523
524 if (!err) {
525 visit_check_struct(v, &err);
526 }
527 visit_end_struct(v, NULL);
528 if (err) {
529 goto out;
530 }
531 }
532
533 retval = qmp_query_balloon(&err);
534 if (err) {
535 goto out;
536 }
537
538 qmp_marshal_output_BalloonInfo(retval, ret, &err);
539
540out:
541 error_propagate(errp, err);
542 visit_free(v);
543 if (args) {
544 v = qapi_dealloc_visitor_new();
545 visit_start_struct(v, NULL, NULL, 0, NULL);
546
547 visit_end_struct(v, NULL);
548 visit_free(v);
549 }
550}
551
552static void qmp_marshal_output_PciInfoList(PciInfoList *ret_in, QObject **ret_out, Error **errp)
553{
554 Error *err = NULL;
555 Visitor *v;
556
557 v = qobject_output_visitor_new(ret_out);
558 visit_type_PciInfoList(v, "unused", &ret_in, &err);
559 if (!err) {
560 visit_complete(v, ret_out);
561 }
562 error_propagate(errp, err);
563 visit_free(v);
564 v = qapi_dealloc_visitor_new();
565 visit_type_PciInfoList(v, "unused", &ret_in, NULL);
566 visit_free(v);
567}
568
569void qmp_marshal_query_pci(QDict *args, QObject **ret, Error **errp)
570{
571 Error *err = NULL;
572 PciInfoList *retval;
573 Visitor *v = NULL;
574
575 if (args) {
576 v = qobject_input_visitor_new(QOBJECT(args));
577 visit_start_struct(v, NULL, NULL, 0, &err);
578 if (err) {
579 goto out;
580 }
581
582 if (!err) {
583 visit_check_struct(v, &err);
584 }
585 visit_end_struct(v, NULL);
586 if (err) {
587 goto out;
588 }
589 }
590
591 retval = qmp_query_pci(&err);
592 if (err) {
593 goto out;
594 }
595
596 qmp_marshal_output_PciInfoList(retval, ret, &err);
597
598out:
599 error_propagate(errp, err);
600 visit_free(v);
601 if (args) {
602 v = qapi_dealloc_visitor_new();
603 visit_start_struct(v, NULL, NULL, 0, NULL);
604
605 visit_end_struct(v, NULL);
606 visit_free(v);
607 }
608}
609
610void qmp_marshal_quit(QDict *args, QObject **ret, Error **errp)
611{
612 Error *err = NULL;
613 Visitor *v = NULL;
614
615 if (args) {
616 v = qobject_input_visitor_new(QOBJECT(args));
617 visit_start_struct(v, NULL, NULL, 0, &err);
618 if (err) {
619 goto out;
620 }
621
622 if (!err) {
623 visit_check_struct(v, &err);
624 }
625 visit_end_struct(v, NULL);
626 if (err) {
627 goto out;
628 }
629 }
630
631 qmp_quit(&err);
632
633out:
634 error_propagate(errp, err);
635 visit_free(v);
636 if (args) {
637 v = qapi_dealloc_visitor_new();
638 visit_start_struct(v, NULL, NULL, 0, NULL);
639
640 visit_end_struct(v, NULL);
641 visit_free(v);
642 }
643}
644
645void qmp_marshal_stop(QDict *args, QObject **ret, Error **errp)
646{
647 Error *err = NULL;
648 Visitor *v = NULL;
649
650 if (args) {
651 v = qobject_input_visitor_new(QOBJECT(args));
652 visit_start_struct(v, NULL, NULL, 0, &err);
653 if (err) {
654 goto out;
655 }
656
657 if (!err) {
658 visit_check_struct(v, &err);
659 }
660 visit_end_struct(v, NULL);
661 if (err) {
662 goto out;
663 }
664 }
665
666 qmp_stop(&err);
667
668out:
669 error_propagate(errp, err);
670 visit_free(v);
671 if (args) {
672 v = qapi_dealloc_visitor_new();
673 visit_start_struct(v, NULL, NULL, 0, NULL);
674
675 visit_end_struct(v, NULL);
676 visit_free(v);
677 }
678}
679
680void qmp_marshal_system_reset(QDict *args, QObject **ret, Error **errp)
681{
682 Error *err = NULL;
683 Visitor *v = NULL;
684
685 if (args) {
686 v = qobject_input_visitor_new(QOBJECT(args));
687 visit_start_struct(v, NULL, NULL, 0, &err);
688 if (err) {
689 goto out;
690 }
691
692 if (!err) {
693 visit_check_struct(v, &err);
694 }
695 visit_end_struct(v, NULL);
696 if (err) {
697 goto out;
698 }
699 }
700
701 qmp_system_reset(&err);
702
703out:
704 error_propagate(errp, err);
705 visit_free(v);
706 if (args) {
707 v = qapi_dealloc_visitor_new();
708 visit_start_struct(v, NULL, NULL, 0, NULL);
709
710 visit_end_struct(v, NULL);
711 visit_free(v);
712 }
713}
714
715void qmp_marshal_system_powerdown(QDict *args, QObject **ret, Error **errp)
716{
717 Error *err = NULL;
718 Visitor *v = NULL;
719
720 if (args) {
721 v = qobject_input_visitor_new(QOBJECT(args));
722 visit_start_struct(v, NULL, NULL, 0, &err);
723 if (err) {
724 goto out;
725 }
726
727 if (!err) {
728 visit_check_struct(v, &err);
729 }
730 visit_end_struct(v, NULL);
731 if (err) {
732 goto out;
733 }
734 }
735
736 qmp_system_powerdown(&err);
737
738out:
739 error_propagate(errp, err);
740 visit_free(v);
741 if (args) {
742 v = qapi_dealloc_visitor_new();
743 visit_start_struct(v, NULL, NULL, 0, NULL);
744
745 visit_end_struct(v, NULL);
746 visit_free(v);
747 }
748}
749
750void qmp_marshal_memsave(QDict *args, QObject **ret, Error **errp)
751{
752 Error *err = NULL;
753 Visitor *v;
754 q_obj_memsave_arg arg = {0};
755
756 v = qobject_input_visitor_new(QOBJECT(args));
757 visit_start_struct(v, NULL, NULL, 0, &err);
758 if (err) {
759 goto out;
760 }
761 visit_type_q_obj_memsave_arg_members(v, &arg, &err);
762 if (!err) {
763 visit_check_struct(v, &err);
764 }
765 visit_end_struct(v, NULL);
766 if (err) {
767 goto out;
768 }
769
770 qmp_memsave(arg.val, arg.size, arg.filename, arg.has_cpu_index, arg.cpu_index, &err);
771
772out:
773 error_propagate(errp, err);
774 visit_free(v);
775 v = qapi_dealloc_visitor_new();
776 visit_start_struct(v, NULL, NULL, 0, NULL);
777 visit_type_q_obj_memsave_arg_members(v, &arg, NULL);
778 visit_end_struct(v, NULL);
779 visit_free(v);
780}
781
782void qmp_marshal_pmemsave(QDict *args, QObject **ret, Error **errp)
783{
784 Error *err = NULL;
785 Visitor *v;
786 q_obj_pmemsave_arg arg = {0};
787
788 v = qobject_input_visitor_new(QOBJECT(args));
789 visit_start_struct(v, NULL, NULL, 0, &err);
790 if (err) {
791 goto out;
792 }
793 visit_type_q_obj_pmemsave_arg_members(v, &arg, &err);
794 if (!err) {
795 visit_check_struct(v, &err);
796 }
797 visit_end_struct(v, NULL);
798 if (err) {
799 goto out;
800 }
801
802 qmp_pmemsave(arg.val, arg.size, arg.filename, &err);
803
804out:
805 error_propagate(errp, err);
806 visit_free(v);
807 v = qapi_dealloc_visitor_new();
808 visit_start_struct(v, NULL, NULL, 0, NULL);
809 visit_type_q_obj_pmemsave_arg_members(v, &arg, NULL);
810 visit_end_struct(v, NULL);
811 visit_free(v);
812}
813
814void qmp_marshal_cont(QDict *args, QObject **ret, Error **errp)
815{
816 Error *err = NULL;
817 Visitor *v = NULL;
818
819 if (args) {
820 v = qobject_input_visitor_new(QOBJECT(args));
821 visit_start_struct(v, NULL, NULL, 0, &err);
822 if (err) {
823 goto out;
824 }
825
826 if (!err) {
827 visit_check_struct(v, &err);
828 }
829 visit_end_struct(v, NULL);
830 if (err) {
831 goto out;
832 }
833 }
834
835 qmp_cont(&err);
836
837out:
838 error_propagate(errp, err);
839 visit_free(v);
840 if (args) {
841 v = qapi_dealloc_visitor_new();
842 visit_start_struct(v, NULL, NULL, 0, NULL);
843
844 visit_end_struct(v, NULL);
845 visit_free(v);
846 }
847}
848
849void qmp_marshal_x_exit_preconfig(QDict *args, QObject **ret, Error **errp)
850{
851 Error *err = NULL;
852 Visitor *v = NULL;
853
854 if (args) {
855 v = qobject_input_visitor_new(QOBJECT(args));
856 visit_start_struct(v, NULL, NULL, 0, &err);
857 if (err) {
858 goto out;
859 }
860
861 if (!err) {
862 visit_check_struct(v, &err);
863 }
864 visit_end_struct(v, NULL);
865 if (err) {
866 goto out;
867 }
868 }
869
870 qmp_x_exit_preconfig(&err);
871
872out:
873 error_propagate(errp, err);
874 visit_free(v);
875 if (args) {
876 v = qapi_dealloc_visitor_new();
877 visit_start_struct(v, NULL, NULL, 0, NULL);
878
879 visit_end_struct(v, NULL);
880 visit_free(v);
881 }
882}
883
884void qmp_marshal_system_wakeup(QDict *args, QObject **ret, Error **errp)
885{
886 Error *err = NULL;
887 Visitor *v = NULL;
888
889 if (args) {
890 v = qobject_input_visitor_new(QOBJECT(args));
891 visit_start_struct(v, NULL, NULL, 0, &err);
892 if (err) {
893 goto out;
894 }
895
896 if (!err) {
897 visit_check_struct(v, &err);
898 }
899 visit_end_struct(v, NULL);
900 if (err) {
901 goto out;
902 }
903 }
904
905 qmp_system_wakeup(&err);
906
907out:
908 error_propagate(errp, err);
909 visit_free(v);
910 if (args) {
911 v = qapi_dealloc_visitor_new();
912 visit_start_struct(v, NULL, NULL, 0, NULL);
913
914 visit_end_struct(v, NULL);
915 visit_free(v);
916 }
917}
918
919void qmp_marshal_inject_nmi(QDict *args, QObject **ret, Error **errp)
920{
921 Error *err = NULL;
922 Visitor *v = NULL;
923
924 if (args) {
925 v = qobject_input_visitor_new(QOBJECT(args));
926 visit_start_struct(v, NULL, NULL, 0, &err);
927 if (err) {
928 goto out;
929 }
930
931 if (!err) {
932 visit_check_struct(v, &err);
933 }
934 visit_end_struct(v, NULL);
935 if (err) {
936 goto out;
937 }
938 }
939
940 qmp_inject_nmi(&err);
941
942out:
943 error_propagate(errp, err);
944 visit_free(v);
945 if (args) {
946 v = qapi_dealloc_visitor_new();
947 visit_start_struct(v, NULL, NULL, 0, NULL);
948
949 visit_end_struct(v, NULL);
950 visit_free(v);
951 }
952}
953
954void qmp_marshal_balloon(QDict *args, QObject **ret, Error **errp)
955{
956 Error *err = NULL;
957 Visitor *v;
958 q_obj_balloon_arg arg = {0};
959
960 v = qobject_input_visitor_new(QOBJECT(args));
961 visit_start_struct(v, NULL, NULL, 0, &err);
962 if (err) {
963 goto out;
964 }
965 visit_type_q_obj_balloon_arg_members(v, &arg, &err);
966 if (!err) {
967 visit_check_struct(v, &err);
968 }
969 visit_end_struct(v, NULL);
970 if (err) {
971 goto out;
972 }
973
974 qmp_balloon(arg.value, &err);
975
976out:
977 error_propagate(errp, err);
978 visit_free(v);
979 v = qapi_dealloc_visitor_new();
980 visit_start_struct(v, NULL, NULL, 0, NULL);
981 visit_type_q_obj_balloon_arg_members(v, &arg, NULL);
982 visit_end_struct(v, NULL);
983 visit_free(v);
984}
985
986static void qmp_marshal_output_str(char *ret_in, QObject **ret_out, Error **errp)
987{
988 Error *err = NULL;
989 Visitor *v;
990
991 v = qobject_output_visitor_new(ret_out);
992 visit_type_str(v, "unused", &ret_in, &err);
993 if (!err) {
994 visit_complete(v, ret_out);
995 }
996 error_propagate(errp, err);
997 visit_free(v);
998 v = qapi_dealloc_visitor_new();
999 visit_type_str(v, "unused", &ret_in, NULL);
1000 visit_free(v);
1001}
1002
1003void qmp_marshal_human_monitor_command(QDict *args, QObject **ret, Error **errp)
1004{
1005 Error *err = NULL;
1006 char *retval;
1007 Visitor *v;
1008 q_obj_human_monitor_command_arg arg = {0};
1009
1010 v = qobject_input_visitor_new(QOBJECT(args));
1011 visit_start_struct(v, NULL, NULL, 0, &err);
1012 if (err) {
1013 goto out;
1014 }
1015 visit_type_q_obj_human_monitor_command_arg_members(v, &arg, &err);
1016 if (!err) {
1017 visit_check_struct(v, &err);
1018 }
1019 visit_end_struct(v, NULL);
1020 if (err) {
1021 goto out;
1022 }
1023
1024 retval = qmp_human_monitor_command(arg.command_line, arg.has_cpu_index, arg.cpu_index, &err);
1025 if (err) {
1026 goto out;
1027 }
1028
1029 qmp_marshal_output_str(retval, ret, &err);
1030
1031out:
1032 error_propagate(errp, err);
1033 visit_free(v);
1034 v = qapi_dealloc_visitor_new();
1035 visit_start_struct(v, NULL, NULL, 0, NULL);
1036 visit_type_q_obj_human_monitor_command_arg_members(v, &arg, NULL);
1037 visit_end_struct(v, NULL);
1038 visit_free(v);
1039}
1040
1041void qmp_marshal_change(QDict *args, QObject **ret, Error **errp)
1042{
1043 Error *err = NULL;
1044 Visitor *v;
1045 q_obj_change_arg arg = {0};
1046
1047 v = qobject_input_visitor_new(QOBJECT(args));
1048 visit_start_struct(v, NULL, NULL, 0, &err);
1049 if (err) {
1050 goto out;
1051 }
1052 visit_type_q_obj_change_arg_members(v, &arg, &err);
1053 if (!err) {
1054 visit_check_struct(v, &err);
1055 }
1056 visit_end_struct(v, NULL);
1057 if (err) {
1058 goto out;
1059 }
1060
1061 qmp_change(arg.device, arg.target, arg.has_arg, arg.arg, &err);
1062
1063out:
1064 error_propagate(errp, err);
1065 visit_free(v);
1066 v = qapi_dealloc_visitor_new();
1067 visit_start_struct(v, NULL, NULL, 0, NULL);
1068 visit_type_q_obj_change_arg_members(v, &arg, NULL);
1069 visit_end_struct(v, NULL);
1070 visit_free(v);
1071}
1072
1073void qmp_marshal_xen_set_global_dirty_log(QDict *args, QObject **ret, Error **errp)
1074{
1075 Error *err = NULL;
1076 Visitor *v;
1077 q_obj_xen_set_global_dirty_log_arg arg = {0};
1078
1079 v = qobject_input_visitor_new(QOBJECT(args));
1080 visit_start_struct(v, NULL, NULL, 0, &err);
1081 if (err) {
1082 goto out;
1083 }
1084 visit_type_q_obj_xen_set_global_dirty_log_arg_members(v, &arg, &err);
1085 if (!err) {
1086 visit_check_struct(v, &err);
1087 }
1088 visit_end_struct(v, NULL);
1089 if (err) {
1090 goto out;
1091 }
1092
1093 qmp_xen_set_global_dirty_log(arg.enable, &err);
1094
1095out:
1096 error_propagate(errp, err);
1097 visit_free(v);
1098 v = qapi_dealloc_visitor_new();
1099 visit_start_struct(v, NULL, NULL, 0, NULL);
1100 visit_type_q_obj_xen_set_global_dirty_log_arg_members(v, &arg, NULL);
1101 visit_end_struct(v, NULL);
1102 visit_free(v);
1103}
1104
1105void qmp_marshal_getfd(QDict *args, QObject **ret, Error **errp)
1106{
1107 Error *err = NULL;
1108 Visitor *v;
1109 q_obj_getfd_arg arg = {0};
1110
1111 v = qobject_input_visitor_new(QOBJECT(args));
1112 visit_start_struct(v, NULL, NULL, 0, &err);
1113 if (err) {
1114 goto out;
1115 }
1116 visit_type_q_obj_getfd_arg_members(v, &arg, &err);
1117 if (!err) {
1118 visit_check_struct(v, &err);
1119 }
1120 visit_end_struct(v, NULL);
1121 if (err) {
1122 goto out;
1123 }
1124
1125 qmp_getfd(arg.fdname, &err);
1126
1127out:
1128 error_propagate(errp, err);
1129 visit_free(v);
1130 v = qapi_dealloc_visitor_new();
1131 visit_start_struct(v, NULL, NULL, 0, NULL);
1132 visit_type_q_obj_getfd_arg_members(v, &arg, NULL);
1133 visit_end_struct(v, NULL);
1134 visit_free(v);
1135}
1136
1137void qmp_marshal_closefd(QDict *args, QObject **ret, Error **errp)
1138{
1139 Error *err = NULL;
1140 Visitor *v;
1141 q_obj_closefd_arg arg = {0};
1142
1143 v = qobject_input_visitor_new(QOBJECT(args));
1144 visit_start_struct(v, NULL, NULL, 0, &err);
1145 if (err) {
1146 goto out;
1147 }
1148 visit_type_q_obj_closefd_arg_members(v, &arg, &err);
1149 if (!err) {
1150 visit_check_struct(v, &err);
1151 }
1152 visit_end_struct(v, NULL);
1153 if (err) {
1154 goto out;
1155 }
1156
1157 qmp_closefd(arg.fdname, &err);
1158
1159out:
1160 error_propagate(errp, err);
1161 visit_free(v);
1162 v = qapi_dealloc_visitor_new();
1163 visit_start_struct(v, NULL, NULL, 0, NULL);
1164 visit_type_q_obj_closefd_arg_members(v, &arg, NULL);
1165 visit_end_struct(v, NULL);
1166 visit_free(v);
1167}
1168
1169static void qmp_marshal_output_MemoryInfo(MemoryInfo *ret_in, QObject **ret_out, Error **errp)
1170{
1171 Error *err = NULL;
1172 Visitor *v;
1173
1174 v = qobject_output_visitor_new(ret_out);
1175 visit_type_MemoryInfo(v, "unused", &ret_in, &err);
1176 if (!err) {
1177 visit_complete(v, ret_out);
1178 }
1179 error_propagate(errp, err);
1180 visit_free(v);
1181 v = qapi_dealloc_visitor_new();
1182 visit_type_MemoryInfo(v, "unused", &ret_in, NULL);
1183 visit_free(v);
1184}
1185
1186void qmp_marshal_query_memory_size_summary(QDict *args, QObject **ret, Error **errp)
1187{
1188 Error *err = NULL;
1189 MemoryInfo *retval;
1190 Visitor *v = NULL;
1191
1192 if (args) {
1193 v = qobject_input_visitor_new(QOBJECT(args));
1194 visit_start_struct(v, NULL, NULL, 0, &err);
1195 if (err) {
1196 goto out;
1197 }
1198
1199 if (!err) {
1200 visit_check_struct(v, &err);
1201 }
1202 visit_end_struct(v, NULL);
1203 if (err) {
1204 goto out;
1205 }
1206 }
1207
1208 retval = qmp_query_memory_size_summary(&err);
1209 if (err) {
1210 goto out;
1211 }
1212
1213 qmp_marshal_output_MemoryInfo(retval, ret, &err);
1214
1215out:
1216 error_propagate(errp, err);
1217 visit_free(v);
1218 if (args) {
1219 v = qapi_dealloc_visitor_new();
1220 visit_start_struct(v, NULL, NULL, 0, NULL);
1221
1222 visit_end_struct(v, NULL);
1223 visit_free(v);
1224 }
1225}
1226
1227static void qmp_marshal_output_AddfdInfo(AddfdInfo *ret_in, QObject **ret_out, Error **errp)
1228{
1229 Error *err = NULL;
1230 Visitor *v;
1231
1232 v = qobject_output_visitor_new(ret_out);
1233 visit_type_AddfdInfo(v, "unused", &ret_in, &err);
1234 if (!err) {
1235 visit_complete(v, ret_out);
1236 }
1237 error_propagate(errp, err);
1238 visit_free(v);
1239 v = qapi_dealloc_visitor_new();
1240 visit_type_AddfdInfo(v, "unused", &ret_in, NULL);
1241 visit_free(v);
1242}
1243
1244void qmp_marshal_add_fd(QDict *args, QObject **ret, Error **errp)
1245{
1246 Error *err = NULL;
1247 AddfdInfo *retval;
1248 Visitor *v;
1249 q_obj_add_fd_arg arg = {0};
1250
1251 v = qobject_input_visitor_new(QOBJECT(args));
1252 visit_start_struct(v, NULL, NULL, 0, &err);
1253 if (err) {
1254 goto out;
1255 }
1256 visit_type_q_obj_add_fd_arg_members(v, &arg, &err);
1257 if (!err) {
1258 visit_check_struct(v, &err);
1259 }
1260 visit_end_struct(v, NULL);
1261 if (err) {
1262 goto out;
1263 }
1264
1265 retval = qmp_add_fd(arg.has_fdset_id, arg.fdset_id, arg.has_opaque, arg.opaque, &err);
1266 if (err) {
1267 goto out;
1268 }
1269
1270 qmp_marshal_output_AddfdInfo(retval, ret, &err);
1271
1272out:
1273 error_propagate(errp, err);
1274 visit_free(v);
1275 v = qapi_dealloc_visitor_new();
1276 visit_start_struct(v, NULL, NULL, 0, NULL);
1277 visit_type_q_obj_add_fd_arg_members(v, &arg, NULL);
1278 visit_end_struct(v, NULL);
1279 visit_free(v);
1280}
1281
1282void qmp_marshal_remove_fd(QDict *args, QObject **ret, Error **errp)
1283{
1284 Error *err = NULL;
1285 Visitor *v;
1286 q_obj_remove_fd_arg arg = {0};
1287
1288 v = qobject_input_visitor_new(QOBJECT(args));
1289 visit_start_struct(v, NULL, NULL, 0, &err);
1290 if (err) {
1291 goto out;
1292 }
1293 visit_type_q_obj_remove_fd_arg_members(v, &arg, &err);
1294 if (!err) {
1295 visit_check_struct(v, &err);
1296 }
1297 visit_end_struct(v, NULL);
1298 if (err) {
1299 goto out;
1300 }
1301
1302 qmp_remove_fd(arg.fdset_id, arg.has_fd, arg.fd, &err);
1303
1304out:
1305 error_propagate(errp, err);
1306 visit_free(v);
1307 v = qapi_dealloc_visitor_new();
1308 visit_start_struct(v, NULL, NULL, 0, NULL);
1309 visit_type_q_obj_remove_fd_arg_members(v, &arg, NULL);
1310 visit_end_struct(v, NULL);
1311 visit_free(v);
1312}
1313
1314static void qmp_marshal_output_FdsetInfoList(FdsetInfoList *ret_in, QObject **ret_out, Error **errp)
1315{
1316 Error *err = NULL;
1317 Visitor *v;
1318
1319 v = qobject_output_visitor_new(ret_out);
1320 visit_type_FdsetInfoList(v, "unused", &ret_in, &err);
1321 if (!err) {
1322 visit_complete(v, ret_out);
1323 }
1324 error_propagate(errp, err);
1325 visit_free(v);
1326 v = qapi_dealloc_visitor_new();
1327 visit_type_FdsetInfoList(v, "unused", &ret_in, NULL);
1328 visit_free(v);
1329}
1330
1331void qmp_marshal_query_fdsets(QDict *args, QObject **ret, Error **errp)
1332{
1333 Error *err = NULL;
1334 FdsetInfoList *retval;
1335 Visitor *v = NULL;
1336
1337 if (args) {
1338 v = qobject_input_visitor_new(QOBJECT(args));
1339 visit_start_struct(v, NULL, NULL, 0, &err);
1340 if (err) {
1341 goto out;
1342 }
1343
1344 if (!err) {
1345 visit_check_struct(v, &err);
1346 }
1347 visit_end_struct(v, NULL);
1348 if (err) {
1349 goto out;
1350 }
1351 }
1352
1353 retval = qmp_query_fdsets(&err);
1354 if (err) {
1355 goto out;
1356 }
1357
1358 qmp_marshal_output_FdsetInfoList(retval, ret, &err);
1359
1360out:
1361 error_propagate(errp, err);
1362 visit_free(v);
1363 if (args) {
1364 v = qapi_dealloc_visitor_new();
1365 visit_start_struct(v, NULL, NULL, 0, NULL);
1366
1367 visit_end_struct(v, NULL);
1368 visit_free(v);
1369 }
1370}
1371
1372static void qmp_marshal_output_CommandLineOptionInfoList(CommandLineOptionInfoList *ret_in, QObject **ret_out, Error **errp)
1373{
1374 Error *err = NULL;
1375 Visitor *v;
1376
1377 v = qobject_output_visitor_new(ret_out);
1378 visit_type_CommandLineOptionInfoList(v, "unused", &ret_in, &err);
1379 if (!err) {
1380 visit_complete(v, ret_out);
1381 }
1382 error_propagate(errp, err);
1383 visit_free(v);
1384 v = qapi_dealloc_visitor_new();
1385 visit_type_CommandLineOptionInfoList(v, "unused", &ret_in, NULL);
1386 visit_free(v);
1387}
1388
1389void qmp_marshal_query_command_line_options(QDict *args, QObject **ret, Error **errp)
1390{
1391 Error *err = NULL;
1392 CommandLineOptionInfoList *retval;
1393 Visitor *v;
1394 q_obj_query_command_line_options_arg arg = {0};
1395
1396 v = qobject_input_visitor_new(QOBJECT(args));
1397 visit_start_struct(v, NULL, NULL, 0, &err);
1398 if (err) {
1399 goto out;
1400 }
1401 visit_type_q_obj_query_command_line_options_arg_members(v, &arg, &err);
1402 if (!err) {
1403 visit_check_struct(v, &err);
1404 }
1405 visit_end_struct(v, NULL);
1406 if (err) {
1407 goto out;
1408 }
1409
1410 retval = qmp_query_command_line_options(arg.has_option, arg.option, &err);
1411 if (err) {
1412 goto out;
1413 }
1414
1415 qmp_marshal_output_CommandLineOptionInfoList(retval, ret, &err);
1416
1417out:
1418 error_propagate(errp, err);
1419 visit_free(v);
1420 v = qapi_dealloc_visitor_new();
1421 visit_start_struct(v, NULL, NULL, 0, NULL);
1422 visit_type_q_obj_query_command_line_options_arg_members(v, &arg, NULL);
1423 visit_end_struct(v, NULL);
1424 visit_free(v);
1425}
1426
1427static void qmp_marshal_output_MemoryDeviceInfoList(MemoryDeviceInfoList *ret_in, QObject **ret_out, Error **errp)
1428{
1429 Error *err = NULL;
1430 Visitor *v;
1431
1432 v = qobject_output_visitor_new(ret_out);
1433 visit_type_MemoryDeviceInfoList(v, "unused", &ret_in, &err);
1434 if (!err) {
1435 visit_complete(v, ret_out);
1436 }
1437 error_propagate(errp, err);
1438 visit_free(v);
1439 v = qapi_dealloc_visitor_new();
1440 visit_type_MemoryDeviceInfoList(v, "unused", &ret_in, NULL);
1441 visit_free(v);
1442}
1443
1444void qmp_marshal_query_memory_devices(QDict *args, QObject **ret, Error **errp)
1445{
1446 Error *err = NULL;
1447 MemoryDeviceInfoList *retval;
1448 Visitor *v = NULL;
1449
1450 if (args) {
1451 v = qobject_input_visitor_new(QOBJECT(args));
1452 visit_start_struct(v, NULL, NULL, 0, &err);
1453 if (err) {
1454 goto out;
1455 }
1456
1457 if (!err) {
1458 visit_check_struct(v, &err);
1459 }
1460 visit_end_struct(v, NULL);
1461 if (err) {
1462 goto out;
1463 }
1464 }
1465
1466 retval = qmp_query_memory_devices(&err);
1467 if (err) {
1468 goto out;
1469 }
1470
1471 qmp_marshal_output_MemoryDeviceInfoList(retval, ret, &err);
1472
1473out:
1474 error_propagate(errp, err);
1475 visit_free(v);
1476 if (args) {
1477 v = qapi_dealloc_visitor_new();
1478 visit_start_struct(v, NULL, NULL, 0, NULL);
1479
1480 visit_end_struct(v, NULL);
1481 visit_free(v);
1482 }
1483}
1484
1485static void qmp_marshal_output_ACPIOSTInfoList(ACPIOSTInfoList *ret_in, QObject **ret_out, Error **errp)
1486{
1487 Error *err = NULL;
1488 Visitor *v;
1489
1490 v = qobject_output_visitor_new(ret_out);
1491 visit_type_ACPIOSTInfoList(v, "unused", &ret_in, &err);
1492 if (!err) {
1493 visit_complete(v, ret_out);
1494 }
1495 error_propagate(errp, err);
1496 visit_free(v);
1497 v = qapi_dealloc_visitor_new();
1498 visit_type_ACPIOSTInfoList(v, "unused", &ret_in, NULL);
1499 visit_free(v);
1500}
1501
1502void qmp_marshal_query_acpi_ospm_status(QDict *args, QObject **ret, Error **errp)
1503{
1504 Error *err = NULL;
1505 ACPIOSTInfoList *retval;
1506 Visitor *v = NULL;
1507
1508 if (args) {
1509 v = qobject_input_visitor_new(QOBJECT(args));
1510 visit_start_struct(v, NULL, NULL, 0, &err);
1511 if (err) {
1512 goto out;
1513 }
1514
1515 if (!err) {
1516 visit_check_struct(v, &err);
1517 }
1518 visit_end_struct(v, NULL);
1519 if (err) {
1520 goto out;
1521 }
1522 }
1523
1524 retval = qmp_query_acpi_ospm_status(&err);
1525 if (err) {
1526 goto out;
1527 }
1528
1529 qmp_marshal_output_ACPIOSTInfoList(retval, ret, &err);
1530
1531out:
1532 error_propagate(errp, err);
1533 visit_free(v);
1534 if (args) {
1535 v = qapi_dealloc_visitor_new();
1536 visit_start_struct(v, NULL, NULL, 0, NULL);
1537
1538 visit_end_struct(v, NULL);
1539 visit_free(v);
1540 }
1541}
1542
1543void qmp_marshal_xen_load_devices_state(QDict *args, QObject **ret, Error **errp)
1544{
1545 Error *err = NULL;
1546 Visitor *v;
1547 q_obj_xen_load_devices_state_arg arg = {0};
1548
1549 v = qobject_input_visitor_new(QOBJECT(args));
1550 visit_start_struct(v, NULL, NULL, 0, &err);
1551 if (err) {
1552 goto out;
1553 }
1554 visit_type_q_obj_xen_load_devices_state_arg_members(v, &arg, &err);
1555 if (!err) {
1556 visit_check_struct(v, &err);
1557 }
1558 visit_end_struct(v, NULL);
1559 if (err) {
1560 goto out;
1561 }
1562
1563 qmp_xen_load_devices_state(arg.filename, &err);
1564
1565out:
1566 error_propagate(errp, err);
1567 visit_free(v);
1568 v = qapi_dealloc_visitor_new();
1569 visit_start_struct(v, NULL, NULL, 0, NULL);
1570 visit_type_q_obj_xen_load_devices_state_arg_members(v, &arg, NULL);
1571 visit_end_struct(v, NULL);
1572 visit_free(v);
1573}
1574
1575static void qmp_marshal_output_GuidInfo(GuidInfo *ret_in, QObject **ret_out, Error **errp)
1576{
1577 Error *err = NULL;
1578 Visitor *v;
1579
1580 v = qobject_output_visitor_new(ret_out);
1581 visit_type_GuidInfo(v, "unused", &ret_in, &err);
1582 if (!err) {
1583 visit_complete(v, ret_out);
1584 }
1585 error_propagate(errp, err);
1586 visit_free(v);
1587 v = qapi_dealloc_visitor_new();
1588 visit_type_GuidInfo(v, "unused", &ret_in, NULL);
1589 visit_free(v);
1590}
1591
1592void qmp_marshal_query_vm_generation_id(QDict *args, QObject **ret, Error **errp)
1593{
1594 Error *err = NULL;
1595 GuidInfo *retval;
1596 Visitor *v = NULL;
1597
1598 if (args) {
1599 v = qobject_input_visitor_new(QOBJECT(args));
1600 visit_start_struct(v, NULL, NULL, 0, &err);
1601 if (err) {
1602 goto out;
1603 }
1604
1605 if (!err) {
1606 visit_check_struct(v, &err);
1607 }
1608 visit_end_struct(v, NULL);
1609 if (err) {
1610 goto out;
1611 }
1612 }
1613
1614 retval = qmp_query_vm_generation_id(&err);
1615 if (err) {
1616 goto out;
1617 }
1618
1619 qmp_marshal_output_GuidInfo(retval, ret, &err);
1620
1621out:
1622 error_propagate(errp, err);
1623 visit_free(v);
1624 if (args) {
1625 v = qapi_dealloc_visitor_new();
1626 visit_start_struct(v, NULL, NULL, 0, NULL);
1627
1628 visit_end_struct(v, NULL);
1629 visit_free(v);
1630 }
1631}
1632
1633/* Dummy declaration to prevent empty .o file */
1634char qapi_dummy_qapi_commands_misc_c;
1635