VBoxManageModifyVM.cpp revision 9601ea695ea96905d6f5d484facd272732365c40
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * VBoxManage - Implementation of modifyvm command.
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * Copyright (C) 2006-2013 Oracle Corporation
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * available from http://www.virtualbox.org. This file is free software;
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * you can redistribute it and/or modify it under the terms of the GNU
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * General Public License (GPL) as published by the Free Software
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync/*******************************************************************************
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync* Header Files *
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync*******************************************************************************/
054466641bb642a73b66938a9fb851bad1147749vboxsync#endif /* !VBOX_ONLY_DOCS */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsyncusing namespace com;
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync/** @todo refine this after HDD changes; MSC 8.0/64 has trouble with handleModifyVM. */
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync MODIFYVM_VRDPVIDEOCHANNELQUALITY, /* VRDE: deprecated */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--groups", MODIFYVM_GROUPS, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--description", MODIFYVM_DESCRIPTION, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--ostype", MODIFYVM_OSTYPE, RTGETOPT_REQ_STRING },
615105a2b89b7dd89a76504e6a9b8e099704c0d9vboxsync { "--iconfile", MODIFYVM_ICONFILE, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--memory", MODIFYVM_MEMORY, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--pagefusion", MODIFYVM_PAGEFUSION, RTGETOPT_REQ_BOOL_ONOFF },
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--firmware", MODIFYVM_FIRMWARE, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--acpi", MODIFYVM_ACPI, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--ioapic", MODIFYVM_IOAPIC, RTGETOPT_REQ_BOOL_ONOFF },
1f277e5b999f572b1ef1fe4ef593c603ea463be3vboxsync { "--pae", MODIFYVM_PAE, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--longmode", MODIFYVM_LONGMODE, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--synthcpu", MODIFYVM_SYNTHCPU, RTGETOPT_REQ_BOOL_ONOFF },
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync { "--triplefaultreset", MODIFYVM_TFRESET, RTGETOPT_REQ_BOOL_ONOFF },
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync { "--hwvirtex", MODIFYVM_HWVIRTEX, RTGETOPT_REQ_BOOL_ONOFF },
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync { "--nestedpaging", MODIFYVM_NESTEDPAGING, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--largepages", MODIFYVM_LARGEPAGES, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vtxvpid", MODIFYVM_VTXVPID, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vtxux", MODIFYVM_VTXUX, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--cpuidset", MODIFYVM_SETCPUID, RTGETOPT_REQ_UINT32 | RTGETOPT_FLAG_HEX},
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--cpuidremove", MODIFYVM_DELCPUID, RTGETOPT_REQ_UINT32 | RTGETOPT_FLAG_HEX},
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--cpuidremoveall", MODIFYVM_DELALLCPUID, RTGETOPT_REQ_NOTHING},
088a45b35631115e7729fdc57a56f49faf0c2a43vboxsync { "--cpuhotplug", MODIFYVM_CPUHOTPLUG, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--plugcpu", MODIFYVM_PLUGCPU, RTGETOPT_REQ_UINT32 },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--unplugcpu", MODIFYVM_UNPLUGCPU, RTGETOPT_REQ_UINT32 },
cf9a7159379fc741e85867a23371f98c886683c5vboxsync { "--cpuexecutioncap", MODIFYVM_CPU_EXECTUION_CAP, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--rtcuseutc", MODIFYVM_RTCUSEUTC, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--graphicscontroller", MODIFYVM_GRAPHICSCONTROLLER, RTGETOPT_REQ_STRING },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--monitorcount", MODIFYVM_MONITORCOUNT, RTGETOPT_REQ_UINT32 },
e8a568d25b577fb2ce7213b11c63f71eca1f84c2vboxsync { "--accelerate3d", MODIFYVM_ACCELERATE3D, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--accelerate2dvideo", MODIFYVM_ACCELERATE2DVIDEO, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--bioslogofadein", MODIFYVM_BIOSLOGOFADEIN, RTGETOPT_REQ_BOOL_ONOFF },
615105a2b89b7dd89a76504e6a9b8e099704c0d9vboxsync { "--bioslogofadeout", MODIFYVM_BIOSLOGOFADEOUT, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--bioslogodisplaytime", MODIFYVM_BIOSLOGODISPLAYTIME, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--bioslogoimagepath", MODIFYVM_BIOSLOGOIMAGEPATH, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--biosbootmenu", MODIFYVM_BIOSBOOTMENU, RTGETOPT_REQ_STRING },
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--biossystemtimeoffset", MODIFYVM_BIOSSYSTEMTIMEOFFSET, RTGETOPT_REQ_INT64 },
f2fedb6cbb946e9dd6d418b1472373395e2ac34fvboxsync { "--biospxedebug", MODIFYVM_BIOSPXEDEBUG, RTGETOPT_REQ_BOOL_ONOFF },
088a45b35631115e7729fdc57a56f49faf0c2a43vboxsync { "--boot", MODIFYVM_BOOT, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--idecontroller", MODIFYVM_IDECONTROLLER, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--sataportcount", MODIFYVM_SATAPORTCOUNT, RTGETOPT_REQ_UINT32 },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--sataport", MODIFYVM_SATAPORT, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
49207a1552ff3752904e36b9269f08fe643ba871vboxsync { "--scsiport", MODIFYVM_SCSIPORT, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--scsitype", MODIFYVM_SCSITYPE, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--dvdpassthrough", MODIFYVM_DVDPASSTHROUGH, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--floppy", MODIFYVM_FLOPPY, RTGETOPT_REQ_STRING },
615105a2b89b7dd89a76504e6a9b8e099704c0d9vboxsync { "--nictracefile", MODIFYVM_NICTRACEFILE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nictrace", MODIFYVM_NICTRACE, RTGETOPT_REQ_BOOL_ONOFF | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nicproperty", MODIFYVM_NICPROPERTY, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nictype", MODIFYVM_NICTYPE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--nicspeed", MODIFYVM_NICSPEED, RTGETOPT_REQ_UINT32 | RTGETOPT_FLAG_INDEX },
f2fedb6cbb946e9dd6d418b1472373395e2ac34fvboxsync { "--nicbootprio", MODIFYVM_NICBOOTPRIO, RTGETOPT_REQ_UINT32 | RTGETOPT_FLAG_INDEX },
088a45b35631115e7729fdc57a56f49faf0c2a43vboxsync { "--nicpromisc", MODIFYVM_NICPROMISC, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nicbandwidthgroup", MODIFYVM_NICBWGROUP, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--nic", MODIFYVM_NIC, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--cableconnected", MODIFYVM_CABLECONNECTED, RTGETOPT_REQ_BOOL_ONOFF | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--bridgeadapter", MODIFYVM_BRIDGEADAPTER, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--hostonlyadapter", MODIFYVM_HOSTONLYADAPTER, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--intnet", MODIFYVM_INTNET, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
49207a1552ff3752904e36b9269f08fe643ba871vboxsync { "--nicgenericdrv", MODIFYVM_GENERICDRV, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nat-network", MODIFYVM_NATNETWORKNAME, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--natnetwork", MODIFYVM_NATNETWORKNAME, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--natnet", MODIFYVM_NATNET, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--natbindip", MODIFYVM_NATBINDIP, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--natsettings", MODIFYVM_NATSETTINGS, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
615105a2b89b7dd89a76504e6a9b8e099704c0d9vboxsync { "--natpf", MODIFYVM_NATPF, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nataliasmode", MODIFYVM_NATALIASMODE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nattftpprefix", MODIFYVM_NATTFTPPREFIX, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--nattftpfile", MODIFYVM_NATTFTPFILE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--nattftpserver", MODIFYVM_NATTFTPSERVER, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--natdnspassdomain", MODIFYVM_NATDNSPASSDOMAIN, RTGETOPT_REQ_BOOL_ONOFF | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--natdnsproxy", MODIFYVM_NATDNSPROXY, RTGETOPT_REQ_BOOL_ONOFF | RTGETOPT_FLAG_INDEX },
1f277e5b999f572b1ef1fe4ef593c603ea463be3vboxsync { "--natdnshostresolver", MODIFYVM_NATDNSHOSTRESOLVER, RTGETOPT_REQ_BOOL_ONOFF | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--macaddress", MODIFYVM_MACADDRESS, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--mouse", MODIFYVM_HIDPTR, RTGETOPT_REQ_STRING },
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync { "--keyboard", MODIFYVM_HIDKBD, RTGETOPT_REQ_STRING },
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync { "--uartmode", MODIFYVM_UARTMODE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
040c9969cc5574339d5f1fa2c95c73da095c151bvboxsync { "--uart", MODIFYVM_UART, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--lptmode", MODIFYVM_LPTMODE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--lpt", MODIFYVM_LPT, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--guestmemoryballoon", MODIFYVM_GUESTMEMORYBALLOON, RTGETOPT_REQ_UINT32 },
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--audiocontroller", MODIFYVM_AUDIOCONTROLLER, RTGETOPT_REQ_STRING },
f2fedb6cbb946e9dd6d418b1472373395e2ac34fvboxsync { "--audio", MODIFYVM_AUDIO, RTGETOPT_REQ_STRING },
088a45b35631115e7729fdc57a56f49faf0c2a43vboxsync { "--clipboard", MODIFYVM_CLIPBOARD, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--draganddrop", MODIFYVM_DRAGANDDROP, RTGETOPT_REQ_STRING },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--vrdpport", MODIFYVM_VRDPPORT, RTGETOPT_REQ_STRING }, /* deprecated */
1f277e5b999f572b1ef1fe4ef593c603ea463be3vboxsync { "--vrdpaddress", MODIFYVM_VRDPADDRESS, RTGETOPT_REQ_STRING }, /* deprecated */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdpauthtype", MODIFYVM_VRDPAUTHTYPE, RTGETOPT_REQ_STRING }, /* deprecated */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdpmulticon", MODIFYVM_VRDPMULTICON, RTGETOPT_REQ_BOOL_ONOFF }, /* deprecated */
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--vrdpreusecon", MODIFYVM_VRDPREUSECON, RTGETOPT_REQ_BOOL_ONOFF }, /* deprecated */
e8a568d25b577fb2ce7213b11c63f71eca1f84c2vboxsync { "--vrdpvideochannel", MODIFYVM_VRDPVIDEOCHANNEL, RTGETOPT_REQ_BOOL_ONOFF }, /* deprecated */
49207a1552ff3752904e36b9269f08fe643ba871vboxsync { "--vrdpvideochannelquality", MODIFYVM_VRDPVIDEOCHANNELQUALITY, RTGETOPT_REQ_STRING }, /* deprecated */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdp", MODIFYVM_VRDP, RTGETOPT_REQ_BOOL_ONOFF }, /* deprecated */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdeproperty", MODIFYVM_VRDEPROPERTY, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdeport", MODIFYVM_VRDEPORT, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdeaddress", MODIFYVM_VRDEADDRESS, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdeauthtype", MODIFYVM_VRDEAUTHTYPE, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdeauthlibrary", MODIFYVM_VRDEAUTHLIBRARY, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdemulticon", MODIFYVM_VRDEMULTICON, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdereusecon", MODIFYVM_VRDEREUSECON, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdevideochannel", MODIFYVM_VRDEVIDEOCHANNEL, RTGETOPT_REQ_BOOL_ONOFF },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--vrdevideochannelquality", MODIFYVM_VRDEVIDEOCHANNELQUALITY, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrdeextpack", MODIFYVM_VRDE_EXTPACK, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vrde", MODIFYVM_VRDE, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--usbxhci", MODIFYVM_USBXHCI, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--usbehci", MODIFYVM_USBEHCI, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--usb", MODIFYVM_USB, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--snapshotfolder", MODIFYVM_SNAPSHOTFOLDER, RTGETOPT_REQ_STRING },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--teleporter", MODIFYVM_TELEPORTER_ENABLED, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--teleporterenabled", MODIFYVM_TELEPORTER_ENABLED, RTGETOPT_REQ_BOOL_ONOFF }, /* deprecated */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--teleporterport", MODIFYVM_TELEPORTER_PORT, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--teleporteraddress", MODIFYVM_TELEPORTER_ADDRESS, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--teleporterpassword", MODIFYVM_TELEPORTER_PASSWORD, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--teleporterpasswordfile", MODIFYVM_TELEPORTER_PASSWORD_FILE, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--tracing-enabled", MODIFYVM_TRACING_ENABLED, RTGETOPT_REQ_BOOL_ONOFF },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--tracing-config", MODIFYVM_TRACING_CONFIG, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--tracing-allow-vm-access", MODIFYVM_TRACING_ALLOW_VM_ACCESS, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--hardwareuuid", MODIFYVM_HARDWARE_UUID, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--hpet", MODIFYVM_HPET, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--iocache", MODIFYVM_IOCACHE, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--iocachesize", MODIFYVM_IOCACHESIZE, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--faulttolerance", MODIFYVM_FAULT_TOLERANCE, RTGETOPT_REQ_STRING },
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync { "--faulttoleranceaddress", MODIFYVM_FAULT_TOLERANCE_ADDRESS, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--faulttoleranceport", MODIFYVM_FAULT_TOLERANCE_PORT, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--faulttolerancepassword", MODIFYVM_FAULT_TOLERANCE_PASSWORD, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--faulttolerancesyncinterval", MODIFYVM_FAULT_TOLERANCE_SYNC_INTERVAL, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--chipset", MODIFYVM_CHIPSET, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcpenabled", MODIFYVM_VCP, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcpscreens", MODIFYVM_VCP_SCREENS, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcpfile", MODIFYVM_VCP_FILENAME, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcpwidth", MODIFYVM_VCP_WIDTH, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcpheight", MODIFYVM_VCP_HEIGHT, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcprate", MODIFYVM_VCP_RATE, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--vcpfps", MODIFYVM_VCP_FPS, RTGETOPT_REQ_UINT32 },
054466641bb642a73b66938a9fb851bad1147749vboxsync { "--autostart-enabled", MODIFYVM_AUTOSTART_ENABLED, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--autostart-delay", MODIFYVM_AUTOSTART_DELAY, RTGETOPT_REQ_UINT32 },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--autostop-type", MODIFYVM_AUTOSTOP_TYPE, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--pciattach", MODIFYVM_ATTACH_PCI, RTGETOPT_REQ_STRING },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--pcidetach", MODIFYVM_DETACH_PCI, RTGETOPT_REQ_STRING },
6c5e2fff0e3fdfc7c3f3fb2e7b7ec8ebb2223cecvboxsync { "--usbcardreader", MODIFYVM_USBCARDREADER, RTGETOPT_REQ_BOOL_ONOFF },
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync { "--defaultfrontend", MODIFYVM_DEFAULTFRONTEND, RTGETOPT_REQ_STRING },
83c86878d483df62ca8db465c671995984838338vboxsyncstatic void vrdeWarningDeprecatedOption(const char *pszOption)
5413a6a2dab50ebebc702aa2ae7d8059dcd09c9cvboxsync RTStrmPrintf(g_pStdErr, "Warning: '--vrdp%s' is deprecated. Use '--vrde%s'.\n", pszOption, pszOption);
83c86878d483df62ca8db465c671995984838338vboxsync/** Parse PCI address in format 01:02.03 and convert it to the numeric representation. */
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync rc = RTStrToUInt8Ex(pszNext, &pszNext, 16, &aVals[0]);
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync if (RT_FAILURE(rc) || pszNext == NULL || *pszNext != ':')
05c28d9d4557bed6e320dfee1acca69408bc3c15vboxsync rc = RTStrToUInt8Ex(pszNext+1, &pszNext, 16, &aVals[1]);
1f277e5b999f572b1ef1fe4ef593c603ea463be3vboxsync if (RT_FAILURE(rc) || pszNext == NULL || *pszNext != '.')
f2fedb6cbb946e9dd6d418b1472373395e2ac34fvboxsync rc = RTStrToUInt8Ex(pszNext+1, &pszNext, 16, &aVals[2]);
e8e40640deaea2e9002e1bf9cf4944e2590c6e7avboxsync return (aVals[0] << 8) | (aVals[1] << 3) | (aVals[2] << 0);
f2fedb6cbb946e9dd6d418b1472373395e2ac34fvboxsyncvoid parseGroups(const char *pcszGroups, com::SafeArray<BSTR> *pGroups)
30f7bd6bf198ae0489df375e5a17cb086acb30fbvboxsync Bstr(pcszGroups, pComma - pcszGroups).detachTo(pGroups->appendedRaw());
char *pszNext;
pszNext++;
case MODIFYVM_NAME:
case MODIFYVM_GROUPS:
case MODIFYVM_DESCRIPTION:
case MODIFYVM_OSTYPE:
case MODIFYVM_ICONFILE:
int vrc = RTFileOpen(&iconFile, ValueUnion.psz, RTFILE_O_READ | RTFILE_O_OPEN | RTFILE_O_DENY_WRITE);
case MODIFYVM_MEMORY:
case MODIFYVM_PAGEFUSION:
case MODIFYVM_VRAM:
case MODIFYVM_FIRMWARE:
case MODIFYVM_ACPI:
case MODIFYVM_IOAPIC:
case MODIFYVM_PAE:
case MODIFYVM_LONGMODE:
case MODIFYVM_SYNTHCPU:
case MODIFYVM_TFRESET:
case MODIFYVM_HWVIRTEX:
case MODIFYVM_SETCPUID:
case MODIFYVM_DELCPUID:
case MODIFYVM_DELALLCPUID:
case MODIFYVM_NESTEDPAGING:
case MODIFYVM_LARGEPAGES:
case MODIFYVM_VTXVPID:
case MODIFYVM_VTXUX:
CHECK_ERROR(machine, SetHWVirtExProperty(HWVirtExPropertyType_UnrestrictedExecution, ValueUnion.f));
case MODIFYVM_CPUS:
case MODIFYVM_RTCUSEUTC:
case MODIFYVM_CPUHOTPLUG:
case MODIFYVM_PLUGCPU:
case MODIFYVM_UNPLUGCPU:
#ifdef VBOX_WITH_VMSVGA
case MODIFYVM_MONITORCOUNT:
case MODIFYVM_ACCELERATE3D:
#ifdef VBOX_WITH_VIDEOHWACCEL
case MODIFYVM_BIOSLOGOFADEIN:
case MODIFYVM_BIOSLOGOFADEOUT:
case MODIFYVM_BIOSBOOTMENU:
case MODIFYVM_BIOSPXEDEBUG:
case MODIFYVM_BOOT:
u1 = 0;
u1 = 0;
if (hardDisk)
hardDisk));
if (hardDisk)
hardDisk);
hardDisk));
if (!dvdMedium)
if (!dvdMedium)
if (!dvdMedium)
if (floppyAttachment)
if (!floppyAttachment)
if (!floppyMedium)
if (!floppyMedium)
case MODIFYVM_NICTRACEFILE:
case MODIFYVM_NICTRACE:
case MODIFYVM_NICPROPERTY:
if (nic)
if (pszProperty)
if (pDelimiter)
RTStrmPrintf(g_pStdErr, "Error: Failed to allocate memory for --nicproperty%d '%s'\n", GetOptState.uIndex, ValueUnion.psz);
case MODIFYVM_NICTYPE:
#ifdef VBOX_WITH_E1000
#ifdef VBOX_WITH_VIRTIO
case MODIFYVM_NICSPEED:
case MODIFYVM_NICBOOTPRIO:
errorArgument("Invalid boot priority '%u' specfied for NIC %u", ValueUnion.u32, GetOptState.uIndex);
case MODIFYVM_NICPROMISC:
case MODIFYVM_NICBWGROUP:
case MODIFYVM_NIC:
case MODIFYVM_CABLECONNECTED:
case MODIFYVM_BRIDGEADAPTER:
case MODIFYVM_HOSTONLYADAPTER:
case MODIFYVM_INTNET:
case MODIFYVM_GENERICDRV:
case MODIFYVM_NATNETWORKNAME:
case MODIFYVM_NATNET:
case MODIFYVM_NATBINDIP:
if (*ch == 0) \
ch++; \
ch++; \
case MODIFYVM_NATSETTINGS:
char *strMtu;
char *strSockSnd;
char *strSockRcv;
char *strTcpSnd;
char *strTcpRcv;
CHECK_ERROR(engine, SetNetworkSettings(RTStrToUInt32(strMtu), RTStrToUInt32(strSockSnd), RTStrToUInt32(strSockRcv),
case MODIFYVM_NATPF:
char *strName;
char *strProto;
char *strHostIp;
char *strHostPort;
char *strGuestIp;
char *strGuestPort;
int vrc;
case MODIFYVM_NATALIASMODE:
aliasMode = 0;
while(token)
token++;
case MODIFYVM_NATTFTPPREFIX:
case MODIFYVM_NATTFTPFILE:
case MODIFYVM_NATTFTPSERVER:
case MODIFYVM_NATDNSPROXY:
case MODIFYVM_MACADDRESS:
case MODIFYVM_HIDPTR:
bool fEnableUsb = false;
fEnableUsb = true;
fEnableUsb = true;
fEnableUsb = true;
if (fEnableUsb)
&& !cOhciCtrls)
case MODIFYVM_HIDKBD:
bool fEnableUsb = false;
fEnableUsb = true;
if (fEnableUsb)
&& !cOhciCtrls)
case MODIFYVM_UARTMODE:
case MODIFYVM_UART:
case MODIFYVM_LPTMODE:
case MODIFYVM_LPT:
case MODIFYVM_AUDIOCONTROLLER:
case MODIFYVM_AUDIO:
#ifdef RT_OS_WINDOWS
#ifdef VBOX_WITH_WINMM
#ifdef RT_OS_LINUX
# ifdef VBOX_WITH_ALSA
# ifdef VBOX_WITH_PULSE
#ifdef RT_OS_SOLARIS
#ifdef RT_OS_FREEBSD
# ifdef VBOX_WITH_PULSE
#ifdef RT_OS_DARWIN
case MODIFYVM_CLIPBOARD:
case MODIFYVM_DRAGANDDROP:
case MODIFYVM_VRDE_EXTPACK:
if (vrdeServer)
case MODIFYVM_VRDEPROPERTY:
if (vrdeServer)
if (pszProperty)
if (pDelimiter)
RTStrmPrintf(g_pStdErr, "Error: Failed to allocate memory for VRDE property '%s'\n", ValueUnion.psz);
case MODIFYVM_VRDPPORT:
case MODIFYVM_VRDEPORT:
case MODIFYVM_VRDPADDRESS:
case MODIFYVM_VRDEADDRESS:
case MODIFYVM_VRDPAUTHTYPE:
case MODIFYVM_VRDEAUTHTYPE:
case MODIFYVM_VRDEAUTHLIBRARY:
if (vrdeServer)
case MODIFYVM_VRDPMULTICON:
case MODIFYVM_VRDEMULTICON:
case MODIFYVM_VRDPREUSECON:
case MODIFYVM_VRDEREUSECON:
case MODIFYVM_VRDP:
case MODIFYVM_VRDE:
case MODIFYVM_USBXHCI:
case MODIFYVM_USBEHCI:
case MODIFYVM_USB:
case MODIFYVM_SNAPSHOTFOLDER:
case MODIFYVM_TELEPORTER_PORT:
case MODIFYVM_TRACING_ENABLED:
case MODIFYVM_TRACING_CONFIG:
case MODIFYVM_FAULT_TOLERANCE:
case MODIFYVM_HARDWARE_UUID:
case MODIFYVM_HPET:
case MODIFYVM_IOCACHE:
case MODIFYVM_IOCACHESIZE:
case MODIFYVM_CHIPSET:
if (!fIoApic)
#ifdef VBOX_WITH_VPX
case MODIFYVM_VCP:
case MODIFYVM_VCP_SCREENS:
case MODIFYVM_VCP_FILENAME:
case MODIFYVM_VCP_WIDTH:
case MODIFYVM_VCP_HEIGHT:
case MODIFYVM_VCP_RATE:
case MODIFYVM_VCP_FPS:
case MODIFYVM_AUTOSTART_DELAY:
case MODIFYVM_AUTOSTOP_TYPE:
errorArgument("Invalid --autostop-type argument '%s' (valid: disabled, savestate, poweroff, acpishutdown)", ValueUnion.psz);
#ifdef VBOX_WITH_PCI_PASSTHROUGH
case MODIFYVM_ATTACH_PCI:
errorArgument("Invalid --pciattach argument '%s' (valid: 'HB:HD.HF@GB:GD.GF' or just 'HB:HD.HF')", ValueUnion.psz);
case MODIFYVM_DETACH_PCI:
#ifdef VBOX_WITH_USB_CARDREADER
case MODIFYVM_USBCARDREADER:
case MODIFYVM_DEFAULTFRONTEND: