~ahs3/+junk/cq-qemu

« back to all changes in this revision

Viewing changes to arm-softmmu/hmp-commands.h

  • Committer: Al Stone
  • Date: 2012-02-09 01:17:20 UTC
  • Revision ID: albert.stone@canonical.com-20120209011720-tztl7ik3qayz80p4
first commit to bzr for qemu

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
 
 
3
{
 
4
.name       = "help|?",
 
5
.args_type  = "name:s?",
 
6
.params     = "[cmd]",
 
7
.help       = "show the help",
 
8
.mhandler.cmd = do_help_cmd,
 
9
},
 
10
 
 
11
 
 
12
{
 
13
.name       = "commit",
 
14
.args_type  = "device:B",
 
15
.params     = "device|all",
 
16
.help       = "commit changes to the disk images (if -snapshot is used) or backing files",
 
17
.mhandler.cmd = do_commit,
 
18
},
 
19
 
 
20
 
 
21
{
 
22
.name       = "q|quit",
 
23
.args_type  = "",
 
24
.params     = "",
 
25
.help       = "quit the emulator",
 
26
.user_print = monitor_user_noop,
 
27
.mhandler.cmd = hmp_quit,
 
28
},
 
29
 
 
30
 
 
31
{
 
32
.name       = "block_resize",
 
33
.args_type  = "device:B,size:o",
 
34
.params     = "device size",
 
35
.help       = "resize a block image",
 
36
.user_print = monitor_user_noop,
 
37
.mhandler.cmd_new = do_block_resize,
 
38
},
 
39
 
 
40
 
 
41
 
 
42
{
 
43
.name       = "eject",
 
44
.args_type  = "force:-f,device:B",
 
45
.params     = "[-f] device",
 
46
.help       = "eject a removable medium (use -f to force it)",
 
47
.user_print = monitor_user_noop,
 
48
.mhandler.cmd_new = do_eject,
 
49
},
 
50
 
 
51
 
 
52
{
 
53
.name       = "drive_del",
 
54
.args_type  = "id:s",
 
55
.params     = "device",
 
56
.help       = "remove host block device",
 
57
.user_print = monitor_user_noop,
 
58
.mhandler.cmd_new = do_drive_del,
 
59
},
 
60
 
 
61
 
 
62
{
 
63
.name       = "change",
 
64
.args_type  = "device:B,target:F,arg:s?",
 
65
.params     = "device filename [format]",
 
66
.help       = "change a removable medium, optional format",
 
67
.user_print = monitor_user_noop,
 
68
.mhandler.cmd_new = do_change,
 
69
},
 
70
 
 
71
 
 
72
{
 
73
.name       = "screendump",
 
74
.args_type  = "filename:F",
 
75
.params     = "filename",
 
76
.help       = "save screen into PPM image 'filename'",
 
77
.user_print = monitor_user_noop,
 
78
.mhandler.cmd_new = do_screen_dump,
 
79
},
 
80
 
 
81
 
 
82
{
 
83
.name       = "logfile",
 
84
.args_type  = "filename:F",
 
85
.params     = "filename",
 
86
.help       = "output logs to 'filename'",
 
87
.mhandler.cmd = do_logfile,
 
88
},
 
89
 
 
90
 
 
91
{
 
92
.name       = "trace-event",
 
93
.args_type  = "name:s,option:b",
 
94
.params     = "name on|off",
 
95
.help       = "changes status of a specific trace event",
 
96
.mhandler.cmd = do_trace_event_set_state,
 
97
},
 
98
 
 
99
 
 
100
#if defined(CONFIG_TRACE_SIMPLE)
 
101
{
 
102
.name       = "trace-file",
 
103
.args_type  = "op:s?,arg:F?",
 
104
.params     = "on|off|flush|set [arg]",
 
105
.help       = "open, close, or flush trace file, or set a new file name",
 
106
.mhandler.cmd = do_trace_file,
 
107
},
 
108
 
 
109
#endif
 
110
 
 
111
{
 
112
.name       = "log",
 
113
.args_type  = "items:s",
 
114
.params     = "item1[,...]",
 
115
.help       = "activate logging of the specified items to '/tmp/qemu.log'",
 
116
.mhandler.cmd = do_log,
 
117
},
 
118
 
 
119
 
 
120
{
 
121
.name       = "savevm",
 
122
.args_type  = "name:s?",
 
123
.params     = "[tag|id]",
 
124
.help       = "save a VM snapshot. If no tag or id are provided, a new snapshot is created",
 
125
.mhandler.cmd = do_savevm,
 
126
},
 
127
 
 
128
 
 
129
{
 
130
.name       = "loadvm",
 
131
.args_type  = "name:s",
 
132
.params     = "tag|id",
 
133
.help       = "restore a VM snapshot from its tag or id",
 
134
.mhandler.cmd = do_loadvm,
 
135
},
 
136
 
 
137
 
 
138
{
 
139
.name       = "delvm",
 
140
.args_type  = "name:s",
 
141
.params     = "tag|id",
 
142
.help       = "delete a VM snapshot from its tag or id",
 
143
.mhandler.cmd = do_delvm,
 
144
},
 
145
 
 
146
 
 
147
{
 
148
.name       = "singlestep",
 
149
.args_type  = "option:s?",
 
150
.params     = "[on|off]",
 
151
.help       = "run emulation in singlestep mode or switch to normal mode",
 
152
.mhandler.cmd = do_singlestep,
 
153
},
 
154
 
 
155
 
 
156
{
 
157
.name       = "stop",
 
158
.args_type  = "",
 
159
.params     = "",
 
160
.help       = "stop emulation",
 
161
.mhandler.cmd = hmp_stop,
 
162
},
 
163
 
 
164
 
 
165
{
 
166
.name       = "c|cont",
 
167
.args_type  = "",
 
168
.params     = "",
 
169
.help       = "resume emulation",
 
170
.user_print = monitor_user_noop,
 
171
.mhandler.cmd_new = do_cont,
 
172
},
 
173
 
 
174
 
 
175
{
 
176
.name       = "gdbserver",
 
177
.args_type  = "device:s?",
 
178
.params     = "[device]",
 
179
.help       = "start gdbserver on given device (default 'tcp::1234'), stop with 'none'",
 
180
.mhandler.cmd = do_gdbserver,
 
181
},
 
182
 
 
183
 
 
184
{
 
185
.name       = "x",
 
186
.args_type  = "fmt:/,addr:l",
 
187
.params     = "/fmt addr",
 
188
.help       = "virtual memory dump starting at 'addr'",
 
189
.mhandler.cmd = do_memory_dump,
 
190
},
 
191
 
 
192
 
 
193
{
 
194
.name       = "xp",
 
195
.args_type  = "fmt:/,addr:l",
 
196
.params     = "/fmt addr",
 
197
.help       = "physical memory dump starting at 'addr'",
 
198
.mhandler.cmd = do_physical_memory_dump,
 
199
},
 
200
 
 
201
 
 
202
{
 
203
.name       = "p|print",
 
204
.args_type  = "fmt:/,val:l",
 
205
.params     = "/fmt expr",
 
206
.help       = "print expression value (use $reg for CPU register access)",
 
207
.mhandler.cmd = do_print,
 
208
},
 
209
 
 
210
 
 
211
{
 
212
.name       = "i",
 
213
.args_type  = "fmt:/,addr:i,index:i.",
 
214
.params     = "/fmt addr",
 
215
.help       = "I/O port read",
 
216
.mhandler.cmd = do_ioport_read,
 
217
},
 
218
 
 
219
 
 
220
{
 
221
.name       = "o",
 
222
.args_type  = "fmt:/,addr:i,val:i",
 
223
.params     = "/fmt addr value",
 
224
.help       = "I/O port write",
 
225
.mhandler.cmd = do_ioport_write,
 
226
},
 
227
 
 
228
 
 
229
{
 
230
.name       = "sendkey",
 
231
.args_type  = "string:s,hold_time:i?",
 
232
.params     = "keys [hold_ms]",
 
233
.help       = "send keys to the VM (e.g. 'sendkey ctrl-alt-f1', default hold time=100 ms)",
 
234
.mhandler.cmd = do_sendkey,
 
235
},
 
236
 
 
237
 
 
238
{
 
239
.name       = "system_reset",
 
240
.args_type  = "",
 
241
.params     = "",
 
242
.help       = "reset the system",
 
243
.mhandler.cmd = hmp_system_reset,
 
244
},
 
245
 
 
246
 
 
247
{
 
248
.name       = "system_powerdown",
 
249
.args_type  = "",
 
250
.params     = "",
 
251
.help       = "send system power down event",
 
252
.mhandler.cmd = hmp_system_powerdown,
 
253
},
 
254
 
 
255
 
 
256
{
 
257
.name       = "sum",
 
258
.args_type  = "start:i,size:i",
 
259
.params     = "addr size",
 
260
.help       = "compute the checksum of a memory region",
 
261
.mhandler.cmd = do_sum,
 
262
},
 
263
 
 
264
 
 
265
{
 
266
.name       = "usb_add",
 
267
.args_type  = "devname:s",
 
268
.params     = "device",
 
269
.help       = "add USB device (e.g. 'host:bus.addr' or 'host:vendor_id:product_id')",
 
270
.mhandler.cmd = do_usb_add,
 
271
},
 
272
 
 
273
 
 
274
{
 
275
.name       = "usb_del",
 
276
.args_type  = "devname:s",
 
277
.params     = "device",
 
278
.help       = "remove USB device 'bus.addr'",
 
279
.mhandler.cmd = do_usb_del,
 
280
},
 
281
 
 
282
 
 
283
{
 
284
.name       = "device_add",
 
285
.args_type  = "device:O",
 
286
.params     = "driver[,prop=value][,...]",
 
287
.help       = "add device, like -device on the command line",
 
288
.user_print = monitor_user_noop,
 
289
.mhandler.cmd_new = do_device_add,
 
290
},
 
291
 
 
292
 
 
293
{
 
294
.name       = "device_del",
 
295
.args_type  = "id:s",
 
296
.params     = "device",
 
297
.help       = "remove device",
 
298
.user_print = monitor_user_noop,
 
299
.mhandler.cmd_new = do_device_del,
 
300
},
 
301
 
 
302
 
 
303
{
 
304
.name       = "cpu",
 
305
.args_type  = "index:i",
 
306
.params     = "index",
 
307
.help       = "set the default CPU",
 
308
.mhandler.cmd = hmp_cpu,
 
309
},
 
310
 
 
311
 
 
312
{
 
313
.name       = "mouse_move",
 
314
.args_type  = "dx_str:s,dy_str:s,dz_str:s?",
 
315
.params     = "dx dy [dz]",
 
316
.help       = "send mouse move events",
 
317
.mhandler.cmd = do_mouse_move,
 
318
},
 
319
 
 
320
 
 
321
{
 
322
.name       = "mouse_button",
 
323
.args_type  = "button_state:i",
 
324
.params     = "state",
 
325
.help       = "change mouse button state (1=L, 2=M, 4=R)",
 
326
.mhandler.cmd = do_mouse_button,
 
327
},
 
328
 
 
329
 
 
330
{
 
331
.name       = "mouse_set",
 
332
.args_type  = "index:i",
 
333
.params     = "index",
 
334
.help       = "set which mouse device receives events",
 
335
.mhandler.cmd = do_mouse_set,
 
336
},
 
337
 
 
338
 
 
339
#ifdef HAS_AUDIO
 
340
{
 
341
.name       = "wavcapture",
 
342
.args_type  = "path:F,freq:i?,bits:i?,nchannels:i?",
 
343
.params     = "path [frequency [bits [channels]]]",
 
344
.help       = "capture audio to a wave file (default frequency=44100 bits=16 channels=2)",
 
345
.mhandler.cmd = do_wav_capture,
 
346
},
 
347
#endif
 
348
 
 
349
#ifdef HAS_AUDIO
 
350
{
 
351
.name       = "stopcapture",
 
352
.args_type  = "n:i",
 
353
.params     = "capture index",
 
354
.help       = "stop capture",
 
355
.mhandler.cmd = do_stop_capture,
 
356
},
 
357
#endif
 
358
 
 
359
{
 
360
.name       = "memsave",
 
361
.args_type  = "val:l,size:i,filename:s",
 
362
.params     = "addr size file",
 
363
.help       = "save to disk virtual memory dump starting at 'addr' of size 'size'",
 
364
.user_print = monitor_user_noop,
 
365
.mhandler.cmd_new = do_memory_save,
 
366
},
 
367
 
 
368
 
 
369
{
 
370
.name       = "pmemsave",
 
371
.args_type  = "val:l,size:i,filename:s",
 
372
.params     = "addr size file",
 
373
.help       = "save to disk physical memory dump starting at 'addr' of size 'size'",
 
374
.user_print = monitor_user_noop,
 
375
.mhandler.cmd_new = do_physical_memory_save,
 
376
},
 
377
 
 
378
 
 
379
{
 
380
.name       = "boot_set",
 
381
.args_type  = "bootdevice:s",
 
382
.params     = "bootdevice",
 
383
.help       = "define new values for the boot device list",
 
384
.mhandler.cmd = do_boot_set,
 
385
},
 
386
 
 
387
 
 
388
#if defined(TARGET_I386)
 
389
{
 
390
.name       = "nmi",
 
391
.args_type  = "",
 
392
.params     = "",
 
393
.help       = "inject an NMI on all guest's CPUs",
 
394
.user_print = monitor_user_noop,
 
395
.mhandler.cmd_new = do_inject_nmi,
 
396
},
 
397
#endif
 
398
 
 
399
{
 
400
.name       = "migrate",
 
401
.args_type  = "detach:-d,blk:-b,inc:-i,uri:s",
 
402
.params     = "[-d] [-b] [-i] uri",
 
403
.help       = "migrate to URI (using -d to not wait for completion)"
 
404
"\n\t\t\t -b for migration without shared storage with"
 
405
" full copy of disk\n\t\t\t -i for migration without "
 
406
"shared storage with incremental copy of disk "
 
407
"(base image shared between src and destination)",
 
408
.user_print = monitor_user_noop,        
 
409
.mhandler.cmd_new = do_migrate,
 
410
},
 
411
 
 
412
 
 
413
 
 
414
{
 
415
.name       = "migrate_cancel",
 
416
.args_type  = "",
 
417
.params     = "",
 
418
.help       = "cancel the current VM migration",
 
419
.user_print = monitor_user_noop,
 
420
.mhandler.cmd_new = do_migrate_cancel,
 
421
},
 
422
 
 
423
 
 
424
{
 
425
.name       = "migrate_set_speed",
 
426
.args_type  = "value:o",
 
427
.params     = "value",
 
428
.help       = "set maximum speed (in bytes) for migrations. "
 
429
"Defaults to MB if no size suffix is specified, ie. B/K/M/G/T",
 
430
.user_print = monitor_user_noop,
 
431
.mhandler.cmd_new = do_migrate_set_speed,
 
432
},
 
433
 
 
434
 
 
435
{
 
436
.name       = "migrate_set_downtime",
 
437
.args_type  = "value:T",
 
438
.params     = "value",
 
439
.help       = "set maximum tolerated downtime (in seconds) for migrations",
 
440
.user_print = monitor_user_noop,
 
441
.mhandler.cmd_new = do_migrate_set_downtime,
 
442
},
 
443
 
 
444
 
 
445
{
 
446
.name       = "client_migrate_info",
 
447
.args_type  = "protocol:s,hostname:s,port:i?,tls-port:i?,cert-subject:s?",
 
448
.params     = "protocol hostname port tls-port cert-subject",
 
449
.help       = "send migration info to spice/vnc client",
 
450
.user_print = monitor_user_noop,
 
451
.mhandler.cmd_async = client_migrate_info,
 
452
.flags      = MONITOR_CMD_ASYNC,
 
453
},
 
454
 
 
455
 
 
456
{
 
457
.name       = "snapshot_blkdev",
 
458
.args_type  = "device:B,snapshot-file:s?,format:s?",
 
459
.params     = "device [new-image-file] [format]",
 
460
.help       = "initiates a live snapshot\n\t\t\t"
 
461
"of device. If a new image file is specified, the\n\t\t\t"
 
462
"new image file will become the new root image.\n\t\t\t"
 
463
"If format is specified, the snapshot file will\n\t\t\t"
 
464
"be created in that format. Otherwise the\n\t\t\t"
 
465
"snapshot will be internal! (currently unsupported)",
 
466
.mhandler.cmd_new = do_snapshot_blkdev,
 
467
},
 
468
 
 
469
 
 
470
#if defined(TARGET_I386)
 
471
{
 
472
.name       = "drive_add",
 
473
.args_type  = "pci_addr:s,opts:s",
 
474
.params     = "[[<domain>:]<bus>:]<slot>\n"
 
475
"[file=file][,if=type][,bus=n]\n"
 
476
"[,unit=m][,media=d][index=i]\n"
 
477
"[,cyls=c,heads=h,secs=s[,trans=t]]\n"
 
478
"[snapshot=on|off][,cache=on|off]",
 
479
.help       = "add drive to PCI storage controller",
 
480
.mhandler.cmd = drive_hot_add,
 
481
},
 
482
#endif
 
483
 
 
484
 
 
485
#if defined(TARGET_I386)
 
486
{
 
487
.name       = "pci_add",
 
488
.args_type  = "pci_addr:s,type:s,opts:s?",
 
489
.params     = "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...",
 
490
.help       = "hot-add PCI device",
 
491
.mhandler.cmd = pci_device_hot_add,
 
492
},
 
493
#endif
 
494
 
 
495
 
 
496
#if defined(TARGET_I386)
 
497
{
 
498
.name       = "pci_del",
 
499
.args_type  = "pci_addr:s",
 
500
.params     = "[[<domain>:]<bus>:]<slot>",
 
501
.help       = "hot remove PCI device",
 
502
.mhandler.cmd = do_pci_device_hot_remove,
 
503
},
 
504
#endif
 
505
 
 
506
 
 
507
{
 
508
.name       = "pcie_aer_inject_error",
 
509
.args_type  = "advisory_non_fatal:-a,correctable:-c,"
 
510
"id:s,error_status:s,"
 
511
"header0:i?,header1:i?,header2:i?,header3:i?,"
 
512
"prefix0:i?,prefix1:i?,prefix2:i?,prefix3:i?",
 
513
.params     = "[-a] [-c] id "
 
514
"<error_status> [<tlp header> [<tlp header prefix>]]",
 
515
.help       = "inject pcie aer error\n\t\t\t"
 
516
" -a for advisory non fatal error\n\t\t\t"
 
517
" -c for correctable error\n\t\t\t"
 
518
"<id> = qdev device id\n\t\t\t"
 
519
"<error_status> = error string or 32bit\n\t\t\t"
 
520
"<tlb header> = 32bit x 4\n\t\t\t"
 
521
"<tlb header prefix> = 32bit x 4",
 
522
.user_print  = pcie_aer_inject_error_print,
 
523
.mhandler.cmd_new = do_pcie_aer_inejct_error,
 
524
},
 
525
 
 
526
 
 
527
{
 
528
.name       = "host_net_add",
 
529
.args_type  = "device:s,opts:s?",
 
530
.params     = "tap|user|socket|vde|dump [options]",
 
531
.help       = "add host VLAN client",
 
532
.mhandler.cmd = net_host_device_add,
 
533
},
 
534
 
 
535
 
 
536
{
 
537
.name       = "host_net_remove",
 
538
.args_type  = "vlan_id:i,device:s",
 
539
.params     = "vlan_id name",
 
540
.help       = "remove host VLAN client",
 
541
.mhandler.cmd = net_host_device_remove,
 
542
},
 
543
 
 
544
 
 
545
{
 
546
.name       = "netdev_add",
 
547
.args_type  = "netdev:O",
 
548
.params     = "[user|tap|socket],id=str[,prop=value][,...]",
 
549
.help       = "add host network device",
 
550
.user_print = monitor_user_noop,
 
551
.mhandler.cmd_new = do_netdev_add,
 
552
},
 
553
 
 
554
 
 
555
{
 
556
.name       = "netdev_del",
 
557
.args_type  = "id:s",
 
558
.params     = "id",
 
559
.help       = "remove host network device",
 
560
.user_print = monitor_user_noop,
 
561
.mhandler.cmd_new = do_netdev_del,
 
562
},
 
563
 
 
564
 
 
565
#ifdef CONFIG_SLIRP
 
566
{
 
567
.name       = "hostfwd_add",
 
568
.args_type  = "arg1:s,arg2:s?,arg3:s?",
 
569
.params     = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
 
570
.help       = "redirect TCP or UDP connections from host to guest (requires -net user)",
 
571
.mhandler.cmd = net_slirp_hostfwd_add,
 
572
},
 
573
#endif
 
574
 
 
575
#ifdef CONFIG_SLIRP
 
576
{
 
577
.name       = "hostfwd_remove",
 
578
.args_type  = "arg1:s,arg2:s?,arg3:s?",
 
579
.params     = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport",
 
580
.help       = "remove host-to-guest TCP or UDP redirection",
 
581
.mhandler.cmd = net_slirp_hostfwd_remove,
 
582
},
 
583
 
 
584
#endif
 
585
 
 
586
{
 
587
.name       = "balloon",
 
588
.args_type  = "value:M",
 
589
.params     = "target",
 
590
.help       = "request VM to change its memory allocation (in MB)",
 
591
.user_print = monitor_user_noop,
 
592
.mhandler.cmd_async = do_balloon,
 
593
.flags      = MONITOR_CMD_ASYNC,
 
594
},
 
595
 
 
596
 
 
597
{
 
598
.name       = "set_link",
 
599
.args_type  = "name:s,up:b",
 
600
.params     = "name on|off",
 
601
.help       = "change the link status of a network adapter",
 
602
.user_print = monitor_user_noop,
 
603
.mhandler.cmd_new = do_set_link,
 
604
},
 
605
 
 
606
 
 
607
{
 
608
.name       = "watchdog_action",
 
609
.args_type  = "action:s",
 
610
.params     = "[reset|shutdown|poweroff|pause|debug|none]",
 
611
.help       = "change watchdog action",
 
612
.mhandler.cmd = do_watchdog_action,
 
613
},
 
614
 
 
615
 
 
616
{
 
617
.name       = "acl_show",
 
618
.args_type  = "aclname:s",
 
619
.params     = "aclname",
 
620
.help       = "list rules in the access control list",
 
621
.mhandler.cmd = do_acl_show,
 
622
},
 
623
 
 
624
 
 
625
{
 
626
.name       = "acl_policy",
 
627
.args_type  = "aclname:s,policy:s",
 
628
.params     = "aclname allow|deny",
 
629
.help       = "set default access control list policy",
 
630
.mhandler.cmd = do_acl_policy,
 
631
},
 
632
 
 
633
 
 
634
{
 
635
.name       = "acl_add",
 
636
.args_type  = "aclname:s,match:s,policy:s,index:i?",
 
637
.params     = "aclname match allow|deny [index]",
 
638
.help       = "add a match rule to the access control list",
 
639
.mhandler.cmd = do_acl_add,
 
640
},
 
641
 
 
642
 
 
643
{
 
644
.name       = "acl_remove",
 
645
.args_type  = "aclname:s,match:s",
 
646
.params     = "aclname match",
 
647
.help       = "remove a match rule from the access control list",
 
648
.mhandler.cmd = do_acl_remove,
 
649
},
 
650
 
 
651
 
 
652
{
 
653
.name       = "acl_reset",
 
654
.args_type  = "aclname:s",
 
655
.params     = "aclname",
 
656
.help       = "reset the access control list",
 
657
.mhandler.cmd = do_acl_reset,
 
658
},
 
659
 
 
660
 
 
661
#if defined(TARGET_I386)
 
662
 
 
663
{
 
664
.name       = "mce",
 
665
.args_type  = "broadcast:-b,cpu_index:i,bank:i,status:l,mcg_status:l,addr:l,misc:l",
 
666
.params     = "[-b] cpu bank status mcgstatus addr misc",
 
667
.help       = "inject a MCE on the given CPU [and broadcast to other CPUs with -b option]",
 
668
.mhandler.cmd = do_inject_mce,
 
669
},
 
670
 
 
671
#endif
 
672
 
 
673
{
 
674
.name       = "getfd",
 
675
.args_type  = "fdname:s",
 
676
.params     = "getfd name",
 
677
.help       = "receive a file descriptor via SCM rights and assign it a name",
 
678
.user_print = monitor_user_noop,
 
679
.mhandler.cmd_new = do_getfd,
 
680
},
 
681
 
 
682
 
 
683
{
 
684
.name       = "closefd",
 
685
.args_type  = "fdname:s",
 
686
.params     = "closefd name",
 
687
.help       = "close a file descriptor previously passed via SCM rights",
 
688
.user_print = monitor_user_noop,
 
689
.mhandler.cmd_new = do_closefd,
 
690
},
 
691
 
 
692
 
 
693
{
 
694
.name       = "block_passwd",
 
695
.args_type  = "device:B,password:s",
 
696
.params     = "block_passwd device password",
 
697
.help       = "set the password of encrypted block devices",
 
698
.user_print = monitor_user_noop,
 
699
.mhandler.cmd_new = do_block_set_passwd,
 
700
},
 
701
 
 
702
 
 
703
{
 
704
.name       = "set_password",
 
705
.args_type  = "protocol:s,password:s,connected:s?",
 
706
.params     = "protocol password action-if-connected",
 
707
.help       = "set spice/vnc password",
 
708
.user_print = monitor_user_noop,
 
709
.mhandler.cmd_new = set_password,
 
710
},
 
711
 
 
712
 
 
713
{
 
714
.name       = "expire_password",
 
715
.args_type  = "protocol:s,time:s",
 
716
.params     = "protocol time",
 
717
.help       = "set spice/vnc password expire-time",
 
718
.user_print = monitor_user_noop,
 
719
.mhandler.cmd_new = expire_password,
 
720
},
 
721
 
 
722
 
 
723
{
 
724
.name       = "info",
 
725
.args_type  = "item:s?",
 
726
.params     = "[subcommand]",
 
727
.help       = "show various information about the system state",
 
728
.mhandler.cmd = do_info,
 
729
},
 
730
 
 
731
 
 
732
#ifdef CONFIG_TRACE_SIMPLE
 
733
#endif
 
734
 
 
735