]> git.proxmox.com Git - qemu.git/blame - qemu-monitor.hx
switch qemu-config to qemu_error
[qemu.git] / qemu-monitor.hx
CommitLineData
2313086a
BS
1HXCOMM Use DEFHEADING() to define headings in both help text and texi
2HXCOMM Text between STEXI and ETEXI are copied to texi version and
3HXCOMM discarded from C version
4HXCOMM DEF(command, args, callback, arg_string, help) is used to construct
5HXCOMM monitor commands
6HXCOMM HXCOMM can be used for comments, discarded from both texi and C
7
8STEXI
9@table @option
10ETEXI
11
4d76d2ba 12 { "help|?", "name:s?", do_help_cmd, "[cmd]", "show the help" },
2313086a
BS
13STEXI
14@item help or ? [@var{cmd}]
15Show the help for all commands or just for command @var{cmd}.
16ETEXI
17
075e36b8 18 { "commit", "device:B", do_commit,
2313086a
BS
19 "device|all", "commit changes to the disk images (if -snapshot is used) or backing files" },
20STEXI
21@item commit
22Commit changes to the disk images (if -snapshot is used) or backing files.
23ETEXI
24
4d76d2ba 25 { "info", "item:s?", do_info,
2313086a
BS
26 "[subcommand]", "show various information about the system state" },
27STEXI
28@item info @var{subcommand}
29Show various information about the system state.
30
31@table @option
32@item info version
33show the version of QEMU
34@item info network
35show the various VLANs and the associated devices
36@item info chardev
37show the character devices
38@item info block
39show the block devices
40@item info block
41show block device statistics
42@item info registers
43show the cpu registers
44@item info cpus
45show infos for each CPU
46@item info history
47show the command line history
48@item info irq
49show the interrupts statistics (if available)
50@item info pic
51show i8259 (PIC) state
52@item info pci
53show emulated PCI device info
54@item info tlb
55show virtual to physical memory mappings (i386 only)
56@item info mem
57show the active virtual memory mappings (i386 only)
58@item info hpet
59show state of HPET (i386 only)
2313086a
BS
60@item info kvm
61show KVM information
62@item info usb
63show USB devices plugged on the virtual USB hub
64@item info usbhost
65show all USB host devices
66@item info profile
67show profiling information
68@item info capture
69show information about active capturing
70@item info snapshots
71show list of VM snapshots
72@item info status
73show the current VM status (running|paused)
74@item info pcmcia
75show guest PCMCIA status
76@item info mice
77show which guest mouse is receiving events
78@item info vnc
79show the vnc server status
80@item info name
81show the current VM name
82@item info uuid
83show the current VM UUID
84@item info cpustats
85show CPU statistics
6dbe553f
JK
86@item info usernet
87show user network stack connection states
2313086a
BS
88@item info migrate
89show migration status
90@item info balloon
91show balloon information
92@item info qtree
93show device tree
94@end table
95ETEXI
96
97 { "q|quit", "", do_quit,
98 "", "quit the emulator" },
99STEXI
100@item q or quit
101Quit the emulator.
102ETEXI
103
4d76d2ba 104 { "eject", "force:-f,filename:B", do_eject,
2313086a
BS
105 "[-f] device", "eject a removable medium (use -f to force it)" },
106STEXI
107@item eject [-f] @var{device}
108Eject a removable medium (use -f to force it).
109ETEXI
110
4d76d2ba 111 { "change", "device:B,target:F,arg:s?", do_change,
2313086a
BS
112 "device filename [format]", "change a removable medium, optional format" },
113STEXI
114@item change @var{device} @var{setting}
115
116Change the configuration of a device.
117
118@table @option
119@item change @var{diskdevice} @var{filename} [@var{format}]
120Change the medium for a removable disk device to point to @var{filename}. eg
121
122@example
123(qemu) change ide1-cd0 /path/to/some.iso
124@end example
125
126@var{format} is optional.
127
128@item change vnc @var{display},@var{options}
129Change the configuration of the VNC server. The valid syntax for @var{display}
130and @var{options} are described at @ref{sec_invocation}. eg
131
132@example
133(qemu) change vnc localhost:1
134@end example
135
136@item change vnc password [@var{password}]
137
138Change the password associated with the VNC server. If the new password is not
139supplied, the monitor will prompt for it to be entered. VNC passwords are only
140significant up to 8 letters. eg
141
142@example
143(qemu) change vnc password
144Password: ********
145@end example
146
147@end table
148ETEXI
149
4d76d2ba 150 { "screendump", "filename:F", do_screen_dump,
2313086a
BS
151 "filename", "save screen into PPM image 'filename'" },
152STEXI
153@item screendump @var{filename}
154Save screen into PPM image @var{filename}.
155ETEXI
156
4d76d2ba 157 { "logfile", "filename:F", do_logfile,
2313086a
BS
158 "filename", "output logs to 'filename'" },
159STEXI
160@item logfile @var{filename}
161Output logs to @var{filename}.
162ETEXI
163
4d76d2ba 164 { "log", "items:s", do_log,
2313086a
BS
165 "item1[,...]", "activate logging of the specified items to '/tmp/qemu.log'" },
166STEXI
167@item log @var{item1}[,...]
168Activate logging of the specified items to @file{/tmp/qemu.log}.
169ETEXI
170
4d76d2ba 171 { "savevm", "name:s?", do_savevm,
2313086a
BS
172 "[tag|id]", "save a VM snapshot. If no tag or id are provided, a new snapshot is created" },
173STEXI
174@item savevm [@var{tag}|@var{id}]
175Create a snapshot of the whole virtual machine. If @var{tag} is
176provided, it is used as human readable identifier. If there is already
177a snapshot with the same tag or ID, it is replaced. More info at
178@ref{vm_snapshots}.
179ETEXI
180
4d76d2ba 181 { "loadvm", "name:s", do_loadvm,
2313086a
BS
182 "tag|id", "restore a VM snapshot from its tag or id" },
183STEXI
184@item loadvm @var{tag}|@var{id}
185Set the whole virtual machine to the snapshot identified by the tag
186@var{tag} or the unique snapshot ID @var{id}.
187ETEXI
188
4d76d2ba 189 { "delvm", "name:s", do_delvm,
2313086a
BS
190 "tag|id", "delete a VM snapshot from its tag or id" },
191STEXI
192@item delvm @var{tag}|@var{id}
193Delete the snapshot identified by @var{tag} or @var{id}.
194ETEXI
195
4d76d2ba 196 { "singlestep", "option:s?", do_singlestep,
2313086a
BS
197 "[on|off]", "run emulation in singlestep mode or switch to normal mode", },
198STEXI
199@item singlestep [off]
200Run the emulation in single step mode.
201If called with option off, the emulation returns to normal mode.
202ETEXI
203
204 { "stop", "", do_stop,
205 "", "stop emulation", },
206STEXI
207@item stop
208Stop emulation.
209ETEXI
210
211 { "c|cont", "", do_cont,
212 "", "resume emulation", },
213STEXI
214@item c or cont
215Resume emulation.
216ETEXI
217
4d76d2ba 218 { "gdbserver", "device:s?", do_gdbserver,
2313086a
BS
219 "[device]", "start gdbserver on given device (default 'tcp::1234'), stop with 'none'", },
220STEXI
221@item gdbserver [@var{port}]
222Start gdbserver session (default @var{port}=1234)
223ETEXI
224
4d76d2ba 225 { "x", "fmt:/,addr:l", do_memory_dump,
2313086a
BS
226 "/fmt addr", "virtual memory dump starting at 'addr'", },
227STEXI
228@item x/fmt @var{addr}
229Virtual memory dump starting at @var{addr}.
230ETEXI
231
4d76d2ba 232 { "xp", "fmt:/,addr:l", do_physical_memory_dump,
2313086a
BS
233 "/fmt addr", "physical memory dump starting at 'addr'", },
234STEXI
235@item xp /@var{fmt} @var{addr}
236Physical memory dump starting at @var{addr}.
237
238@var{fmt} is a format which tells the command how to format the
239data. Its syntax is: @option{/@{count@}@{format@}@{size@}}
240
241@table @var
242@item count
243is the number of items to be dumped.
244
245@item format
246can be x (hex), d (signed decimal), u (unsigned decimal), o (octal),
247c (char) or i (asm instruction).
248
249@item size
250can be b (8 bits), h (16 bits), w (32 bits) or g (64 bits). On x86,
251@code{h} or @code{w} can be specified with the @code{i} format to
252respectively select 16 or 32 bit code instruction size.
253
254@end table
255
256Examples:
257@itemize
258@item
259Dump 10 instructions at the current instruction pointer:
260@example
261(qemu) x/10i $eip
2620x90107063: ret
2630x90107064: sti
2640x90107065: lea 0x0(%esi,1),%esi
2650x90107069: lea 0x0(%edi,1),%edi
2660x90107070: ret
2670x90107071: jmp 0x90107080
2680x90107073: nop
2690x90107074: nop
2700x90107075: nop
2710x90107076: nop
272@end example
273
274@item
275Dump 80 16 bit values at the start of the video memory.
276@smallexample
277(qemu) xp/80hx 0xb8000
2780x000b8000: 0x0b50 0x0b6c 0x0b65 0x0b78 0x0b38 0x0b36 0x0b2f 0x0b42
2790x000b8010: 0x0b6f 0x0b63 0x0b68 0x0b73 0x0b20 0x0b56 0x0b47 0x0b41
2800x000b8020: 0x0b42 0x0b69 0x0b6f 0x0b73 0x0b20 0x0b63 0x0b75 0x0b72
2810x000b8030: 0x0b72 0x0b65 0x0b6e 0x0b74 0x0b2d 0x0b63 0x0b76 0x0b73
2820x000b8040: 0x0b20 0x0b30 0x0b35 0x0b20 0x0b4e 0x0b6f 0x0b76 0x0b20
2830x000b8050: 0x0b32 0x0b30 0x0b30 0x0b33 0x0720 0x0720 0x0720 0x0720
2840x000b8060: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
2850x000b8070: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
2860x000b8080: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
2870x000b8090: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
288@end smallexample
289@end itemize
290ETEXI
291
4d76d2ba 292 { "p|print", "fmt:/,val:l", do_print,
2313086a
BS
293 "/fmt expr", "print expression value (use $reg for CPU register access)", },
294STEXI
295@item p or print/@var{fmt} @var{expr}
296
297Print expression value. Only the @var{format} part of @var{fmt} is
298used.
299ETEXI
300
4d76d2ba 301 { "i", "fmt:/,addr:i,index:i.", do_ioport_read,
2313086a
BS
302 "/fmt addr", "I/O port read" },
303STEXI
304Read I/O port.
305ETEXI
306
4d76d2ba 307 { "o", "fmt:/,addr:i,val:i", do_ioport_write,
f114784f
JK
308 "/fmt addr value", "I/O port write" },
309STEXI
310Write to I/O port.
311ETEXI
2313086a 312
4d76d2ba 313 { "sendkey", "string:s,hold_time:i?", do_sendkey,
2313086a
BS
314 "keys [hold_ms]", "send keys to the VM (e.g. 'sendkey ctrl-alt-f1', default hold time=100 ms)" },
315STEXI
316@item sendkey @var{keys}
317
318Send @var{keys} to the emulator. @var{keys} could be the name of the
319key or @code{#} followed by the raw value in either decimal or hexadecimal
320format. Use @code{-} to press several keys simultaneously. Example:
321@example
322sendkey ctrl-alt-f1
323@end example
324
325This command is useful to send keys that your graphical user interface
326intercepts at low level, such as @code{ctrl-alt-f1} in X Window.
327ETEXI
328
329 { "system_reset", "", do_system_reset,
330 "", "reset the system" },
331STEXI
332@item system_reset
333
334Reset the system.
335ETEXI
336
337 { "system_powerdown", "", do_system_powerdown,
338 "", "send system power down event" },
339STEXI
340@item system_powerdown
341
342Power down the system (if supported).
343ETEXI
344
4d76d2ba 345 { "sum", "start:i,size:i", do_sum,
2313086a
BS
346 "addr size", "compute the checksum of a memory region" },
347STEXI
348@item sum @var{addr} @var{size}
349
350Compute the checksum of a memory region.
351ETEXI
352
4d76d2ba 353 { "usb_add", "devname:s", do_usb_add,
2313086a
BS
354 "device", "add USB device (e.g. 'host:bus.addr' or 'host:vendor_id:product_id')" },
355STEXI
356@item usb_add @var{devname}
357
358Add the USB device @var{devname}. For details of available devices see
359@ref{usb_devices}
360ETEXI
361
4d76d2ba 362 { "usb_del", "devname:s", do_usb_del,
2313086a
BS
363 "device", "remove USB device 'bus.addr'" },
364STEXI
365@item usb_del @var{devname}
366
367Remove the USB device @var{devname} from the QEMU virtual USB
368hub. @var{devname} has the syntax @code{bus.addr}. Use the monitor
369command @code{info usb} to see the devices you can remove.
370ETEXI
371
4d76d2ba 372 { "cpu", "index:i", do_cpu_set,
2313086a
BS
373 "index", "set the default CPU" },
374STEXI
375Set the default CPU.
376ETEXI
377
4d76d2ba 378 { "mouse_move", "dx_str:s,dy_str:s,dz_str:s?", do_mouse_move,
2313086a
BS
379 "dx dy [dz]", "send mouse move events" },
380STEXI
381@item mouse_move @var{dx} @var{dy} [@var{dz}]
382Move the active mouse to the specified coordinates @var{dx} @var{dy}
383with optional scroll axis @var{dz}.
384ETEXI
385
4d76d2ba 386 { "mouse_button", "button_state:i", do_mouse_button,
2313086a
BS
387 "state", "change mouse button state (1=L, 2=M, 4=R)" },
388STEXI
389@item mouse_button @var{val}
390Change the active mouse button state @var{val} (1=L, 2=M, 4=R).
391ETEXI
392
4d76d2ba 393 { "mouse_set", "index:i", do_mouse_set,
2313086a
BS
394 "index", "set which mouse device receives events" },
395STEXI
396@item mouse_set @var{index}
397Set which mouse device receives events at given @var{index}, index
398can be obtained with
399@example
400info mice
401@end example
402ETEXI
403
404#ifdef HAS_AUDIO
e0fed6cc 405 { "wavcapture", "path:F,freq:i?,bits:i?,nchannels:i?", do_wav_capture,
2313086a
BS
406 "path [frequency [bits [channels]]]",
407 "capture audio to a wave file (default frequency=44100 bits=16 channels=2)" },
408#endif
409STEXI
410@item wavcapture @var{filename} [@var{frequency} [@var{bits} [@var{channels}]]]
411Capture audio into @var{filename}. Using sample rate @var{frequency}
412bits per sample @var{bits} and number of channels @var{channels}.
413
414Defaults:
415@itemize @minus
416@item Sample rate = 44100 Hz - CD quality
417@item Bits = 16
418@item Number of channels = 2 - Stereo
419@end itemize
420ETEXI
421
422#ifdef HAS_AUDIO
4d76d2ba 423 { "stopcapture", "n:i", do_stop_capture,
2313086a
BS
424 "capture index", "stop capture" },
425#endif
426STEXI
427@item stopcapture @var{index}
428Stop capture with a given @var{index}, index can be obtained with
429@example
430info capture
431@end example
432ETEXI
433
4d76d2ba 434 { "memsave", "val:l,size:i,filename:s", do_memory_save,
2313086a
BS
435 "addr size file", "save to disk virtual memory dump starting at 'addr' of size 'size'", },
436STEXI
437@item memsave @var{addr} @var{size} @var{file}
438save to disk virtual memory dump starting at @var{addr} of size @var{size}.
439ETEXI
440
4d76d2ba 441 { "pmemsave", "val:l,size:i,filename:s", do_physical_memory_save,
2313086a
BS
442 "addr size file", "save to disk physical memory dump starting at 'addr' of size 'size'", },
443STEXI
444@item pmemsave @var{addr} @var{size} @var{file}
445save to disk physical memory dump starting at @var{addr} of size @var{size}.
446ETEXI
447
4d76d2ba 448 { "boot_set", "bootdevice:s", do_boot_set,
2313086a
BS
449 "bootdevice", "define new values for the boot device list" },
450STEXI
451@item boot_set @var{bootdevicelist}
452
453Define new values for the boot device list. Those values will override
454the values specified on the command line through the @code{-boot} option.
455
456The values that can be specified here depend on the machine type, but are
457the same that can be specified in the @code{-boot} command line option.
458ETEXI
459
460#if defined(TARGET_I386)
4d76d2ba 461 { "nmi", "cpu_index:i", do_inject_nmi,
2313086a
BS
462 "cpu", "inject an NMI on the given CPU", },
463#endif
464STEXI
465@item nmi @var{cpu}
466Inject an NMI on the given CPU (x86 only).
467ETEXI
468
4d76d2ba 469 { "migrate", "detach:-d,uri:s", do_migrate,
2313086a
BS
470 "[-d] uri", "migrate to URI (using -d to not wait for completion)" },
471STEXI
472@item migrate [-d] @var{uri}
473Migrate to @var{uri} (using -d to not wait for completion).
474ETEXI
475
476 { "migrate_cancel", "", do_migrate_cancel,
477 "", "cancel the current VM migration" },
478STEXI
479@item migrate_cancel
480Cancel the current VM migration.
481ETEXI
482
4d76d2ba 483 { "migrate_set_speed", "value:s", do_migrate_set_speed,
2313086a
BS
484 "value", "set maximum speed (in bytes) for migrations" },
485STEXI
486@item migrate_set_speed @var{value}
487Set maximum speed to @var{value} (in bytes) for migrations.
2ea42952
GC
488ETEXI
489
4d76d2ba 490 { "migrate_set_downtime", "value:s", do_migrate_set_downtime,
2ea42952
GC
491 "value", "set maximum tolerated downtime (in seconds) for migrations" },
492
493STEXI
494@item migrate_set_downtime @var{second}
495Set maximum tolerated downtime (in seconds) for migration.
2313086a
BS
496ETEXI
497
498#if defined(TARGET_I386)
4d76d2ba
LC
499 { "drive_add", "pci_addr:s,opts:s", drive_hot_add,
500 "[[<domain>:]<bus>:]<slot>\n"
501 "[file=file][,if=type][,bus=n]\n"
2313086a
BS
502 "[,unit=m][,media=d][index=i]\n"
503 "[,cyls=c,heads=h,secs=s[,trans=t]]\n"
504 "[snapshot=on|off][,cache=on|off]",
505 "add drive to PCI storage controller" },
506#endif
507STEXI
508@item drive_add
509Add drive to PCI storage controller.
510ETEXI
511
512#if defined(TARGET_I386)
4d76d2ba 513 { "pci_add", "pci_addr:s,type:s,opts:s?", pci_device_hot_add, "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...", "hot-add PCI device" },
2313086a
BS
514#endif
515STEXI
516@item pci_add
517Hot-add PCI device.
518ETEXI
519
520#if defined(TARGET_I386)
4d76d2ba 521 { "pci_del", "pci_addr:s", do_pci_device_hot_remove, "[[<domain>:]<bus>:]<slot>", "hot remove PCI device" },
2313086a
BS
522#endif
523STEXI
524@item pci_del
525Hot remove PCI device.
526ETEXI
527
4d76d2ba 528 { "host_net_add", "device:s,opts:s?", net_host_device_add,
2313086a
BS
529 "tap|user|socket|vde|dump [options]", "add host VLAN client" },
530STEXI
531@item host_net_add
532Add host VLAN client.
533ETEXI
534
4d76d2ba 535 { "host_net_remove", "vlan_id:i,device:s", net_host_device_remove,
2313086a
BS
536 "vlan_id name", "remove host VLAN client" },
537STEXI
538@item host_net_remove
539Remove host VLAN client.
540ETEXI
541
542#ifdef CONFIG_SLIRP
4d76d2ba 543 { "hostfwd_add", "arg1:s,arg2:s?,arg3:s?", net_slirp_hostfwd_add,
f13b572c 544 "[vlan_id name] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
f3546deb 545 "redirect TCP or UDP connections from host to guest (requires -net user)" },
4d76d2ba 546 { "hostfwd_remove", "arg1:s,arg2:s?,arg3:s?", net_slirp_hostfwd_remove,
f13b572c 547 "[vlan_id name] [tcp|udp]:[hostaddr]:hostport",
3c6a0580 548 "remove host-to-guest TCP or UDP redirection" },
2313086a
BS
549#endif
550STEXI
551@item host_net_redir
552Redirect TCP or UDP connections from host to guest (requires -net user).
553ETEXI
554
4d76d2ba 555 { "balloon", "value:i", do_balloon,
2313086a
BS
556 "target", "request VM to change it's memory allocation (in MB)" },
557STEXI
558@item balloon @var{value}
559Request VM to change its memory allocation to @var{value} (in MB).
560ETEXI
561
4d76d2ba 562 { "set_link", "name:s,up_or_down:s", do_set_link,
2313086a
BS
563 "name up|down", "change the link status of a network adapter" },
564STEXI
565@item set_link @var{name} [up|down]
566Set link @var{name} up or down.
567ETEXI
568
4d76d2ba 569 { "watchdog_action", "action:s", do_watchdog_action,
2313086a
BS
570 "[reset|shutdown|poweroff|pause|debug|none]", "change watchdog action" },
571STEXI
572@item watchdog_action
573Change watchdog action.
574ETEXI
575
4d76d2ba 576 { "acl_show", "aclname:s", do_acl_show, "aclname",
15dfcd45 577 "list rules in the access control list" },
2313086a 578STEXI
15dfcd45
JK
579@item acl_show @var{aclname}
580List all the matching rules in the access control list, and the default
581policy. There are currently two named access control lists,
582@var{vnc.x509dname} and @var{vnc.username} matching on the x509 client
583certificate distinguished name, and SASL username respectively.
584ETEXI
2313086a 585
4d76d2ba 586 { "acl_policy", "aclname:s,policy:s", do_acl_policy, "aclname allow|deny",
15dfcd45
JK
587 "set default access control list policy" },
588STEXI
cbbfacc6 589@item acl_policy @var{aclname} @code{allow|deny}
15dfcd45 590Set the default access control list policy, used in the event that
2313086a 591none of the explicit rules match. The default policy at startup is
15dfcd45
JK
592always @code{deny}.
593ETEXI
594
4d76d2ba 595 { "acl_add", "aclname:s,match:s,policy:s,index:i?", do_acl_add, "aclname match allow|deny [index]",
15dfcd45
JK
596 "add a match rule to the access control list" },
597STEXI
598@item acl_allow @var{aclname} @var{match} @code{allow|deny} [@var{index}]
599Add a match rule to the access control list, allowing or denying access.
600The match will normally be an exact username or x509 distinguished name,
601but can optionally include wildcard globs. eg @code{*@@EXAMPLE.COM} to
602allow all users in the @code{EXAMPLE.COM} kerberos realm. The match will
2313086a 603normally be appended to the end of the ACL, but can be inserted
15dfcd45
JK
604earlier in the list if the optional @var{index} parameter is supplied.
605ETEXI
606
4d76d2ba 607 { "acl_remove", "aclname:s,match:s", do_acl_remove, "aclname match",
15dfcd45
JK
608 "remove a match rule from the access control list" },
609STEXI
610@item acl_remove @var{aclname} @var{match}
611Remove the specified match rule from the access control list.
612ETEXI
613
4d76d2ba 614 { "acl_reset", "aclname:s", do_acl_reset, "aclname",
15dfcd45
JK
615 "reset the access control list" },
616STEXI
617@item acl_remove @var{aclname} @var{match}
618Remove all matches from the access control list, and set the default
2313086a 619policy back to @code{deny}.
2313086a
BS
620ETEXI
621
79c4f6b0 622#if defined(TARGET_I386)
4d76d2ba 623 { "mce", "cpu_index:i,bank:i,status:l,mcg_status:l,addr:l,misc:l", do_inject_mce, "cpu bank status mcgstatus addr misc", "inject a MCE on the given CPU"},
79c4f6b0
HY
624#endif
625STEXI
626@item mce @var{cpu} @var{bank} @var{status} @var{mcgstatus} @var{addr} @var{misc}
627Inject an MCE on the given CPU (x86 only).
f07918fd
MM
628ETEXI
629
4d76d2ba 630 { "getfd", "fdname:s", do_getfd, "getfd name",
f07918fd
MM
631 "receive a file descriptor via SCM rights and assign it a name" },
632STEXI
633@item getfd @var{fdname}
634If a file descriptor is passed alongside this command using the SCM_RIGHTS
635mechanism on unix sockets, it is stored using the name @var{fdname} for
636later use by other monitor commands.
637ETEXI
638
4d76d2ba 639 { "closefd", "fdname:s", do_closefd, "closefd name",
f07918fd
MM
640 "close a file descriptor previously passed via SCM rights" },
641STEXI
642@item closefd @var{fdname}
643Close the file descriptor previously assigned to @var{fdname} using the
644@code{getfd} command. This is only needed if the file descriptor was never
645used by another monitor command.
79c4f6b0
HY
646ETEXI
647
2313086a
BS
648STEXI
649@end table
650ETEXI