VMMDevState.h revision e09c370deebe5e62acfdee65a0527ef1d94c44fc
/** @file
*
* HGCM - Host-Guest Communication Manager header
*/
/*
* Copyright (C) 2006 InnoTek Systemberatung GmbH
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License as published by the Free Software Foundation,
* in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
* distribution. VirtualBox OSE is distributed in the hope that it will
* be useful, but WITHOUT ANY WARRANTY of any kind.
*
* If you received this file as part of a commercial VirtualBox
* distribution, then only the terms of your commercial VirtualBox
* license agreement apply instead of the previous paragraph.
*/
#ifndef __VMMDevState_h__
#define __VMMDevState_h__
/** device structure containing all state information */
typedef struct VMMDevState
{
/** The PCI device structure. */
/** hypervisor address space size */
/** bit 0: guest capability (1 == wants), bit 1: flag value has changed */
/** bit 2: host capability (1 == wants), bit 3: flag value has changed */
/** absolute mouse position in pixels */
/** Pointer to device instance. */
/** VMMDev port base interface. */
/** VMMDev port interface. */
#ifdef VBOX_HGCM
/** HGCM port interface. */
#endif
/** Pointer to base interface of the driver. */
/** VMMDev connector interface */
#ifdef VBOX_HGCM
/** HGCM connector interface */
#endif
/** message buffer for backdoor logging. */
char szMsg[512];
/** message buffer index. */
unsigned iMsg;
/** Base port in the assigned I/O space. */
/** IRQ number assigned to the device */
/** Current host side event flags */
/** Mask of events guest is interested in */
/** Delayed mask of guest events */
/** Flag whether u32NewGuestFilterMask is valid */
bool fNewGuestFilterMask;
/** HC pointer to VMMDev RAM area */
/** GC physical address of VMMDev RAM area */
/** Information reported by guest via VMMDevReportGuestInfo generic request.
* Until this information is reported the VMMDev refuses any other requests.
*/
/** "Additions are Ok" indicator, set to true after processing VMMDevReportGuestInfo,
* if additions version is compatible. This flag is here to avoid repeated comparing
* of the version in guestInfo.
*/
/** Video acceleration status set by guest. */
/** resolution change request */
struct
{
/** credentials for guest logon purposes */
struct
{
bool fAllowInteractiveLogon;
/** credentials for verification by guest */
struct
{
#ifdef TIMESYNC_BACKDOOR
bool fTimesyncBackdoorLo;
#endif
/** Set if GetHostTime should fail.
* Loaded from the GetHostTimeDisabled configuration value. */
bool fGetHostTimeDisabled;
/** Set if backdoor logging should be disabled (output will be ignored then) */
bool fBackdoorLogDisabled;
} VMMDevState;
#endif /* __VMMDevState_h__ */