Logo Search packages:      
Sourcecode: virtualbox-ose version File versions

VBoxGuest.h File Reference


Detailed Description

VBoxGuest - VirtualBox Guest Additions interface

Definition in file VBoxGuest.h.

#include <iprt/cdefs.h>
#include <iprt/types.h>
#include <VBox/err.h>
#include <VBox/ostypes.h>

Go to the source code of this file.

Classes

struct  _VBoxGuestFilterMaskInfo
struct  _VBoxGuestPortInfo
struct  _VBoxGuestWaitEventInfo
struct  _VBVACMDHDR
struct  _VBVAMEMORY
struct  _VBVARECORD
struct  _VMMDevCredentials
struct  _VMMDevVideoAccelEnable
struct  _VMMDevVideoAccelFlush
struct  _VMMDevVideoSetVisibleRegion
struct  _VRDPDATABITS
struct  _VRDPORDERAREA
struct  _VRDPORDERBOUNDS
struct  _VRDPORDERCACHEDBITMAP
struct  _VRDPORDERDELETEDBITMAP
struct  _VRDPORDERDSTBLT
struct  _VRDPORDERELLIPSE
struct  _VRDPORDERLINE
struct  _VRDPORDERMEMBLT
struct  _VRDPORDERPATBLTBRUSH
struct  _VRDPORDERPOINT
struct  _VRDPORDERPOLYLINE
struct  _VRDPORDERPOLYPOINTS
struct  _VRDPORDERREPEAT
struct  _VRDPORDERSAVESCREEN
struct  _VRDPORDERSCREENBLT
struct  _VRDPORDERSOLIDBLT
struct  _VRDPORDERSOLIDRECT
struct  VBoxGuestInfo
struct  VMMDevCtlGuestFilterMask
struct  VMMDevDisplayChangeRequest
struct  VMMDevDisplayChangeRequest2
struct  VMMDevEvents
struct  VMMDevGetHeightReductionRequest
struct  VMMDevMemory
struct  VMMDevPowerStateRequest
struct  VMMDevReportGuestInfo
struct  VMMDevReqGuestCapabilities
struct  VMMDevReqHostTime
struct  VMMDevReqHostVersion
struct  VMMDevReqHypervisorInfo
struct  VMMDevReqIdle
struct  VMMDevReqLogString
struct  VMMDevReqMousePointer
struct  VMMDevReqMouseStatus
struct  VMMDevRequestHeader
struct  VMMDevSeamlessChangeRequest
struct  VMMDevVideoModeSupportedRequest
#define HYPERVISOR_PHYSICAL_START   0xf8000000
#define PORT_VMMDEV_REQUEST_OFFSET   0
#define VBOX_MOUSE_POINTER_ALPHA   (0x0002)
#define VBOX_MOUSE_POINTER_SHAPE   (0x0004)
#define VBOX_MOUSE_POINTER_VISIBLE   (0x0001)
#define VBOXGUEST_MOUSE_GUEST_CAN_ABSOLUTE   BIT(0)
#define VBOXGUEST_MOUSE_GUEST_NEEDS_HOST_CURSOR   BIT(2)
#define VBOXGUEST_MOUSE_HOST_CAN_ABSOLUTE   BIT(1)
#define VBOXGUEST_MOUSE_HOST_CANNOT_HWPOINTER   BIT(3)
#define VBVA_F_MODE_ENABLED   (0x00000001)
#define VBVA_F_MODE_VRDP   (0x00000002)
#define VBVA_F_MODE_VRDP_ORDER_MASK   (0x00000008)
#define VBVA_F_MODE_VRDP_RESET   (0x00000004)
#define VBVA_F_RECORD_PARTIAL   (0x80000000)
#define VBVA_F_STATUS_ACCEPTED   (0x01)
#define VBVA_F_STATUS_ENABLED   (0x02)
#define VBVA_MAX_RECORDS   (64)
#define VBVA_RING_BUFFER_SIZE   (_4M - _1K)
#define VBVA_RING_BUFFER_THRESHOLD   (4 * _1K)
#define VBVA_VRDP_BOUNDS   (10)
#define VBVA_VRDP_CACHED_BITMAP   (7)
#define VBVA_VRDP_DELETED_BITMAP   (8)
#define VBVA_VRDP_DIRTY_RECT   (0)
#define VBVA_VRDP_DSTBLT   (3)
#define VBVA_VRDP_ELLIPSE   (13)
#define VBVA_VRDP_INDEX_TO_BIT(__index)   (1 << (__index))
#define VBVA_VRDP_LINE   (9)
#define VBVA_VRDP_MEMBLT   (6)
#define VBVA_VRDP_PATBLTBRUSH   (5)
#define VBVA_VRDP_POLYLINE   (12)
#define VBVA_VRDP_REPEAT   (11)
#define VBVA_VRDP_SAVESCREEN   (14)
#define VBVA_VRDP_SCREENBLT   (4)
#define VBVA_VRDP_SOLIDBLT   (2)
#define VBVA_VRDP_SOLIDRECT   (1)
#define VMMDEV_REQUEST_HEADER_VERSION   (0x10001)
#define VMMDEV_VERSION   ((VMMDEV_VERSION_MAJOR << 16) | VMMDEV_VERSION_MINOR)
#define VMMDEV_VERSION_MAJOR   (0x1)
#define VMMDEV_VERSION_MINOR   (0x4)
enum  VMMDevPowerState {
  VMMDevPowerState_Invalid = 0, VMMDevPowerState_Pause = 1, VMMDevPowerState_PowerOff = 2, VMMDevPowerState_SaveState = 3,
  VMMDevPowerState_SizeHack = 0x7fffffff
}
enum  VMMDevRequestType {
  VMMDevReq_InvalidRequest = 0, VMMDevReq_GetMouseStatus = 1, VMMDevReq_SetMouseStatus = 2, VMMDevReq_SetPointerShape = 3,
  VMMDevReq_GetHostVersion = 4, VMMDevReq_Idle = 5, VMMDevReq_GetHostTime = 10, VMMDevReq_GetHypervisorInfo = 20,
  VMMDevReq_SetHypervisorInfo = 21, VMMDevReq_SetPowerStatus = 30, VMMDevReq_AcknowledgeEvents = 41, VMMDevReq_CtlGuestFilterMask = 42,
  VMMDevReq_ReportGuestInfo = 50, VMMDevReq_GetDisplayChangeRequest = 51, VMMDevReq_VideoModeSupported = 52, VMMDevReq_GetHeightReduction = 53,
  VMMDevReq_GetDisplayChangeRequest2 = 54, VMMDevReq_ReportGuestCapabilities = 55, VMMDevReq_VideoAccelEnable = 70, VMMDevReq_VideoAccelFlush = 71,
  VMMDevReq_VideoSetVisibleRegion = 72, VMMDevReq_GetSeamlessChangeRequest = 73, VMMDevReq_QueryCredentials = 100, VMMDevReq_ReportCredentialsJudgement = 101,
  VMMDevReq_LogString = 200, VMMDevReq_SizeHack = 0x7fffffff
}
enum  VMMDevSeamlessMode { VMMDev_Seamless_Disabled = 0, VMMDev_Seamless_Visible_Region = 1, VMMDev_Seamless_Host_Window = 2 }
typedef struct _VBVACMDHDR VBVACMDHDR
typedef struct _VBVAMEMORY VBVAMEMORY
typedef struct _VBVARECORD VBVARECORD
typedef struct
_VMMDevVideoAccelEnable 
VMMDevVideoAccelEnable
typedef struct
_VMMDevVideoAccelFlush 
VMMDevVideoAccelFlush
typedef struct
_VMMDevVideoSetVisibleRegion 
VMMDevVideoSetVisibleRegion
typedef uint8_t VRDPBITMAPHASH [16]
typedef struct _VRDPDATABITS VRDPDATABITS
typedef struct _VRDPORDERAREA VRDPORDERAREA
typedef struct _VRDPORDERBOUNDS VRDPORDERBOUNDS
typedef struct
_VRDPORDERCACHEDBITMAP 
VRDPORDERCACHEDBITMAP
typedef struct
_VRDPORDERDELETEDBITMAP 
VRDPORDERDELETEDBITMAP
typedef struct _VRDPORDERDSTBLT VRDPORDERDSTBLT
typedef struct _VRDPORDERELLIPSE VRDPORDERELLIPSE
typedef struct _VRDPORDERLINE VRDPORDERLINE
typedef struct _VRDPORDERMEMBLT VRDPORDERMEMBLT
typedef struct
_VRDPORDERPATBLTBRUSH 
VRDPORDERPATBLTBRUSH
typedef struct _VRDPORDERPOINT VRDPORDERPOINT
typedef struct _VRDPORDERPOLYLINE VRDPORDERPOLYLINE
typedef struct _VRDPORDERPOLYPOINTS VRDPORDERPOLYPOINTS
typedef struct _VRDPORDERREPEAT VRDPORDERREPEAT
typedef struct _VRDPORDERSAVESCREEN VRDPORDERSAVESCREEN
typedef struct _VRDPORDERSCREENBLT VRDPORDERSCREENBLT
typedef struct _VRDPORDERSOLIDBLT VRDPORDERSOLIDBLT
typedef struct _VRDPORDERSOLIDRECT VRDPORDERSOLIDRECT
#define IOCTL_VBOXGUEST_GETVMMDEVPORT   IOCTL_CODE(FILE_DEVICE_UNKNOWN, 2048, METHOD_BUFFERED, FILE_WRITE_ACCESS, sizeof(VBoxGuestPortInfo))
#define IOCTL_VBOXGUEST_WAITEVENT   IOCTL_CODE(FILE_DEVICE_UNKNOWN, 2049, METHOD_BUFFERED, FILE_WRITE_ACCESS, sizeof(VBoxGuestWaitEventInfo))
#define VBOXGUEST_WAITEVENT_ERROR   (3)
#define VBOXGUEST_WAITEVENT_INTERRUPTED   (2)
#define VBOXGUEST_WAITEVENT_OK   (0)
#define VBOXGUEST_WAITEVENT_TIMEOUT   (1)
typedef struct _VBoxGuestPortInfo VBoxGuestPortInfo

Defines

#define IOCTL_VBOXGUEST_CTL_FILTER_MASK   IOCTL_CODE(FILE_DEVICE_UNKNOWN, 2051, METHOD_BUFFERED, FILE_WRITE_ACCESS, sizeof (VBoxGuestFilterMaskInfo))
#define IOCTL_VBOXGUEST_VMMREQUEST   IOCTL_CODE(FILE_DEVICE_UNKNOWN, 2050, METHOD_BUFFERED, FILE_WRITE_ACCESS, sizeof(VMMDevRequestHeader))
#define VBOX_DEVICEID   (0xbeef)
#define VBOX_PCI_VENDORID   (0x80ee)
#define VBOX_VENDORID   VBOX_PCI_VENDORID
#define VBOX_VESA_DEVICEID   (0xbeef)
#define VBOX_VESA_VENDORID   VBOX_PCI_VENDORID
#define VMMDEV_CREDENTIALS_CLEAR   BIT(3)
#define VMMDEV_CREDENTIALS_CLEARJUDGE   BIT(9)
#define VMMDEV_CREDENTIALS_JUDGE_DENY   BIT(11)
#define VMMDEV_CREDENTIALS_JUDGE_NOJUDGEMENT   BIT(12)
#define VMMDEV_CREDENTIALS_JUDGE_OK   BIT(10)
#define VMMDEV_CREDENTIALS_NOLOCALLOGON   BIT(17)
#define VMMDEV_CREDENTIALS_PRESENT   BIT(16)
#define VMMDEV_CREDENTIALS_QUERYPRESENCE   BIT(1)
#define VMMDEV_CREDENTIALS_READ   BIT(2)
#define VMMDEV_CREDENTIALS_READJUDGE   BIT(8)
#define VMMDEV_CREDENTIALS_STRLEN   128
#define VMMDEV_DEVICEID   (0xcafe)
#define VMMDEV_VENDORID   VBOX_PCI_VENDORID
#define VMMDEV_EVENT_DISPLAY_CHANGE_REQUEST   BIT(2)
#define VMMDEV_EVENT_HGCM   BIT(1)
#define VMMDEV_EVENT_JUDGE_CREDENTIALS   BIT(3)
#define VMMDEV_EVENT_MOUSE_CAPABILITIES_CHANGED   BIT(0)
#define VMMDEV_EVENT_RESTORED   BIT(4)
#define VMMDEV_EVENT_SEAMLESS_MODE_CHANGE_REQUEST   BIT(5)
#define VMMDEV_MEMORY_VERSION   (1)

Typedefs

typedef struct
_VBoxGuestFilterMaskInfo 
VBoxGuestFilterMaskInfo
typedef struct
_VBoxGuestWaitEventInfo 
VBoxGuestWaitEventInfo
typedef struct _VMMDevCredentials VMMDevCredentials
typedef uint32_t vmmDevHypPhys
typedef uint32_t vmmDevHypPtr

Functions

 DECLINLINE (int) vmmdevInitRequest(VMMDevRequestHeader *req
 DECLINLINE (size_t) vmmdevGetRequestSize(VMMDevRequestType requestType)


Generated by  Doxygen 1.6.0   Back to index