VBoxManage.h revision 914fe6f35c397cfd7d97b44a63398c6422579c49
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* $Id$ */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/** @file
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * VBoxManage - VirtualBox command-line interface, internal header file.
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/*
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * Copyright (C) 2006-2012 Oracle Corporation
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync *
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * available from http://www.virtualbox.org. This file is free software;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * you can redistribute it and/or modify it under the terms of the GNU
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * General Public License (GPL) as published by the Free Software
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef ___H_VBOXMANAGE
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define ___H_VBOXMANAGE
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <VBox/com/com.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <VBox/com/ptr.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <VBox/com/VirtualBox.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <VBox/com/string.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <VBox/com/array.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif /* !VBOX_ONLY_DOCS */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <iprt/types.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <iprt/message.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#include <iprt/stream.h>
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync////////////////////////////////////////////////////////////////////////////////
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync//
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync// definitions
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync//
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync////////////////////////////////////////////////////////////////////////////////
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/** @name Syntax diagram category.
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync * @{ */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_DUMPOPTS 0
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_LIST RT_BIT_64(0)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SHOWVMINFO RT_BIT_64(1)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_REGISTERVM RT_BIT_64(2)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_UNREGISTERVM RT_BIT_64(3)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CREATEVM RT_BIT_64(4)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_MODIFYVM RT_BIT_64(5)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CLONEVM RT_BIT_64(6)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_STARTVM RT_BIT_64(7)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CONTROLVM RT_BIT_64(8)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_DISCARDSTATE RT_BIT_64(9)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SNAPSHOT RT_BIT_64(10)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CLOSEMEDIUM RT_BIT_64(11)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SHOWHDINFO RT_BIT_64(12)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CREATEHD RT_BIT_64(13)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_MODIFYHD RT_BIT_64(14)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CLONEHD RT_BIT_64(15)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CREATEHOSTIF RT_BIT_64(17)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_REMOVEHOSTIF RT_BIT_64(18)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_GETEXTRADATA RT_BIT_64(19)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SETEXTRADATA RT_BIT_64(20)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SETPROPERTY RT_BIT_64(21)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_USBFILTER (RT_BIT_64(22) | RT_BIT_64(23) | RT_BIT_64(24))
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_USBFILTER_ADD RT_BIT_64(22)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_USBFILTER_MODIFY RT_BIT_64(23)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_USBFILTER_REMOVE RT_BIT_64(24)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SHAREDFOLDER (RT_BIT_64(25) | RT_BIT_64(26))
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SHAREDFOLDER_ADD RT_BIT_64(25)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SHAREDFOLDER_REMOVE RT_BIT_64(26)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_LOADSYMS RT_BIT_64(29)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_LOADMAP RT_BIT_64(30)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SETHDUUID RT_BIT_64(31)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CONVERTFROMRAW RT_BIT_64(32)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_LISTPARTITIONS RT_BIT_64(33)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CREATERAWVMDK RT_BIT_64(34)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_DEBUGVM RT_BIT_64(35)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_ADOPTSTATE RT_BIT_64(36)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_MODINSTALL RT_BIT_64(37)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_MODUNINSTALL RT_BIT_64(38)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_RENAMEVMDK RT_BIT_64(39)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifdef VBOX_WITH_GUEST_PROPS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync# define USAGE_GUESTPROPERTY RT_BIT_64(40)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif /* VBOX_WITH_GUEST_PROPS defined */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CONVERTTORAW RT_BIT_64(41)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_METRICS RT_BIT_64(42)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_CONVERTHD RT_BIT_64(43)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_IMPORTAPPLIANCE RT_BIT_64(44)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_EXPORTAPPLIANCE RT_BIT_64(45)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_HOSTONLYIFS RT_BIT_64(46)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_DHCPSERVER RT_BIT_64(47)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_DUMPHDINFO RT_BIT_64(48)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_STORAGEATTACH RT_BIT_64(49)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_STORAGECONTROLLER RT_BIT_64(50)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifdef VBOX_WITH_GUEST_CONTROL
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync# define USAGE_GUESTCONTROL RT_BIT_64(51)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif /* VBOX_WITH_GUEST_CONTROL defined */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_DEBUGLOG RT_BIT_64(52)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_SETHDPARENTUUID RT_BIT_64(53)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_PASSWORDHASH RT_BIT_64(54)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_EXTPACK RT_BIT_64(55)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_BANDWIDTHCONTROL RT_BIT_64(56)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_GUESTSTATS RT_BIT_64(57)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_REPAIRHD RT_BIT_64(58)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#define USAGE_ALL (~(uint64_t)0)
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/** @} */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsynctypedef uint64_t USAGECATEGORY;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/** command handler argument */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncstruct HandlerArg
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync{
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync int argc;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync char **argv;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr<IVirtualBox> virtualBox;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr<ISession> session;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync};
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/** flag whether we're in internal mode */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncextern bool g_fInternalMode;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/** showVMInfo details */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsynctypedef enum
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync{
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_NONE = 0,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_STANDARD = 1, /**< standard details */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_FULL = 2, /**< both */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_MACHINEREADABLE = 3, /**< both, and make it machine readable */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_COMPACT = 4
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync} VMINFO_DETAILS;
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync////////////////////////////////////////////////////////////////////////////////
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync//
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync// global variables
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync//
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync////////////////////////////////////////////////////////////////////////////////
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncextern bool g_fDetailedProgress; // in VBoxManage.cpp
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync////////////////////////////////////////////////////////////////////////////////
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync//
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync// prototypes
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync//
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync////////////////////////////////////////////////////////////////////////////////
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
c366016ffe1788c6847d0a967a954713725cab5evboxsync/* VBoxManageHelp.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncvoid printUsage(USAGECATEGORY u64Cmd, PRTSTREAM pStrm);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncRTEXITCODE errorSyntax(USAGECATEGORY u64Cmd, const char *pszFormat, ...);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncRTEXITCODE errorGetOpt(USAGECATEGORY u64Cmd, int rc, union RTGETOPTUNION const *pValueUnion);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncRTEXITCODE errorArgument(const char *pszFormat, ...);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncvoid printUsageInternal(USAGECATEGORY u64Cmd, PRTSTREAM pStrm);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
c366016ffe1788c6847d0a967a954713725cab5evboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncHRESULT showProgress(ComPtr<IProgress> progress);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManage.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncvoid showLogo(PRTSTREAM pStrm);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncRTEXITCODE readPasswordFile(const char *pszFilename, com::Utf8Str *pPasswd);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleInternalCommands(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif /* !VBOX_ONLY_DOCS */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageControlVM.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleControlVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncunsigned int getMaxNics(IVirtualBox* vbox, IMachine* mach);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageModifyVM.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncvoid parseGroups(const char *pcszGroups, com::SafeArray<BSTR> *pGroups);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleModifyVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageDebugVM.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleDebugVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageGuestProp.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncextern void usageGuestProperty(PRTSTREAM pStrm, const char *pcszSep1, const char *pcszSep2);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageGuestCtrl.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncextern void usageGuestControl(PRTSTREAM pStrm, const char *pcszSep1, const char *pcszSep2);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#ifndef VBOX_ONLY_DOCS
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageGuestProp.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncextern int handleGuestProperty(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageGuestCtrl.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncextern int handleGuestControl(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageVMInfo.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncHRESULT showSnapshots(ComPtr<ISnapshot> &rootSnapshot,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr<ISnapshot> &currentSnapshot,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_DETAILS details,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync const com::Bstr &prefix = "",
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync int level = 0);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleShowVMInfo(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncHRESULT showVMInfo(ComPtr<IVirtualBox> virtualBox,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr<IMachine> machine,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_DETAILS details = VMINFO_NONE,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr <IConsole> console = ComPtr<IConsole>());
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncconst char *machineStateToName(MachineState_T machineState, bool fShort);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncHRESULT showBandwidthGroups(ComPtr<IBandwidthControl> &bwCtrl,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync VMINFO_DETAILS details);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageList.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleList(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageMetrics.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleMetrics(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageMisc.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleRegisterVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleUnregisterVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleCreateVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleCloneVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleStartVM(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleDiscardState(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleAdoptState(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleGetExtraData(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleSetExtraData(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleSetProperty(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleSharedFolder(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleExtPack(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageDisk.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncHRESULT findMedium(HandlerArg *a, const char *pszFilenameOrUuid,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync DeviceType_T enmDevType, bool fSilent,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr<IMedium> &pMedium);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncHRESULT findOrOpenMedium(HandlerArg *a, const char *pszFilenameOrUuid,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync DeviceType_T enmDevType, AccessMode_T enmAccessMode,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync ComPtr<IMedium> &pMedium, bool fForceNewUuidOnOpen,
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync bool *pfWasUnknown);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleCreateHardDisk(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleModifyHardDisk(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleCloneHardDisk(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncRTEXITCODE handleConvertFromRaw(int argc, char *argv[]);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleShowHardDiskInfo(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleCloseMedium(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint parseDiskType(const char *psz, MediumType_T *pDiskType);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint parseBool(const char *psz, bool *pb);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageStorageController.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleStorageAttach(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleStorageController(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync// VBoxManageImport.cpp
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleImportAppliance(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleExportAppliance(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync// VBoxManageSnapshot.cpp
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleSnapshot(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageUSB.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleUSBFilter(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageHostonly.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleHostonlyIf(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageHostonly.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleDHCPServer(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync/* VBoxManageBandwidthControl.cpp */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsyncint handleBandwidthControl(HandlerArg *a);
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif /* !VBOX_ONLY_DOCS */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync#endif /* !___H_VBOXMANAGE */
ba287763fb250c9244e7a7afc1abff9387b94e43vboxsync