VirtualBox

Changeset 21224 in vbox for trunk/include


Ignore:
Timestamp:
Jul 5, 2009 3:10:29 PM (16 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
49544
Message:

VBoxGuest.* cleanup.

Location:
trunk/include/VBox
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/VBoxGuest.h

    r21223 r21224  
    3333#define ___VBox_VBoxGuest_h
    3434
    35 
    3635#include <VBox/cdefs.h>
    3736#include <VBox/types.h>
     
    4039
    4140
    42 #if defined(RT_OS_LINUX) && !defined(VBOX_WITH_COMMON_VBOXGUEST_ON_LINUX)
    43 /** The support device name. */
    44 # define VBOXGUEST_DEVICE_NAME        "/dev/vboxadd"
    45 /** The support device name of the user accessible device node. */
    46 # define VBOXGUEST_USER_DEVICE_NAME   "/dev/vboxuser"
    47 
    48 #elif defined(RT_OS_OS2)
    49 /** The support device name. */
    50 # define VBOXGUEST_DEVICE_NAME        "\\Dev\\VBoxGst$"
    51 /** The support device name of the user accessible device node. */
    52 # define VBOXGUEST_USER_DEVICE_NAME   "\\Dev\\VBoxGst$"
     41/** @defgroup grp_vboxguest     VirtualBox Guest Additions Driver Interface
     42 * @{
     43 */
     44
     45/** @todo it would be nice if we could have two define without paths. */
     46
     47/** @def VBOXGUEST_DEVICE_NAME
     48 * The support device name. */
     49/** @def VBOXGUEST_USER_DEVICE_NAME
     50 * The support device name of the user accessible device node. */
     51
     52#if defined(RT_OS_OS2)
     53# define VBOXGUEST_DEVICE_NAME          "\\Dev\\VBoxGst$"
    5354
    5455#elif defined(RT_OS_WINDOWS)
     56# define VBOXGUEST_DEVICE_NAME          "\\\\.\\VBoxGuest"
     57
    5558/** The support service name. */
    56 # define VBOXGUEST_SERVICE_NAME       "VBoxGuest"
    57 /** Win32 device name. */
    58 # define VBOXGUEST_DEVICE_NAME        "\\\\.\\VBoxGuest"
    59 /** The support device name of the user accessible device node. */
    60 # define VBOXGUEST_USER_DEVICE_NAME   "\\\\.\\VBoxGuest"
     59# define VBOXGUEST_SERVICE_NAME         "VBoxGuest"
    6160/** Global name for Win2k+ */
    62 # define VBOXGUEST_DEVICE_NAME_GLOBAL "\\\\.\\Global\\VBoxGuest"
     61# define VBOXGUEST_DEVICE_NAME_GLOBAL   "\\\\.\\Global\\VBoxGuest"
    6362/** Win32 driver name */
    64 # define VBOXGUEST_DEVICE_NAME_NT     L"\\Device\\VBoxGuest"
    65 /** device name */
    66 # define VBOXGUEST_DEVICE_NAME_DOS    L"\\DosDevices\\VBoxGuest"
     63# define VBOXGUEST_DEVICE_NAME_NT       L"\\Device\\VBoxGuest"
     64/** Device name. */
     65# define VBOXGUEST_DEVICE_NAME_DOS      L"\\DosDevices\\VBoxGuest"
     66
     67#elif defined(RT_OS_LINUX) && !defined(VBOX_WITH_COMMON_VBOXGUEST_ON_LINUX)
     68# define VBOXGUEST_DEVICE_NAME          "/dev/vboxadd"
     69# define VBOXGUEST_USER_DEVICE_NAME     "/dev/vboxuser"
    6770
    6871#else /* PORTME */
    69 /** The support device name. */
    70 # define VBOXGUEST_DEVICE_NAME        "/dev/vboxguest"
    71 /** The support device name of the user accessible device node. */
     72# define VBOXGUEST_DEVICE_NAME          "/dev/vboxguest"
    7273# if defined(RT_OS_LINUX)
    73 #  define VBOXGUEST_USER_DEVICE_NAME  "/dev/vboxuser"
    74 # else
    75 #  define VBOXGUEST_USER_DEVICE_NAME  "/dev/vboxguest"
     74#  define VBOXGUEST_USER_DEVICE_NAME    "/dev/vboxuser"
    7675# endif
    77 
     76#endif
     77
     78#ifndef VBOXGUEST_USER_DEVICE_NAME
     79# define VBOXGUEST_USER_DEVICE_NAME     VBOXGUEST_DEVICE_NAME
    7880#endif
    7981
     
    8991 * The 8th bit is reserved for distinguishing between 32-bit and 64-bit
    9092 * processes in future 64-bit guest additions.
    91  *
    92  * While windows IOCTL function number has to start at 2048 and stop at 4096 there
    93  * never was any need to do this for everyone. A simple ((Function) | 0x800) would
    94  * have sufficed. On Linux we're now intruding upon the type field. Fortunately
    95  * this hasn't caused any trouble because the FILE_DEVICE_UNKNOWN value was set
    96  * to 0x22 (if it were 0x2C it would not have worked soo smoothly). The situation
    97  * would've been the same for *BSD and Darwin since they seems to share common
    98  * _IOC() heritage.
    99  *
    100  * However, on good old OS/2 we only have 8-bit handy for the function number. The
    101  * result from using the old IOCTL function numbers her would've been overlapping
    102  * between the two ranges.
    103  *
    104  * To fix this problem and get rid of all the unnecessary windowsy crap that I
    105  * bet was copied from my SUPDRVIOC.h once upon a time (although the concept of
    106  * prefixing macros with the purpose of avoid clashes with system stuff and
    107  * to indicate exactly how owns them seems to have been lost somewhere along
    108  * the way), I've introduced a VBOXGUEST_IOCTL_CODE for defining generic IN/OUT
    109  * IOCtls on new ports of the additions.
    11093 *
    11194 * @remarks When creating new IOCtl interfaces keep in mind that not all OSes supports
     
    154137    uint32_t    u32Padding;
    155138#endif
    156 /** @todo r=bird: add a rc field. */
     139/** @todo r=bird: We need a 'rc' field for passing VBox status codes. Reused
     140 *        some input field as rc on output. */
    157141} VBGLBIGREQ;
    158142/** Pointer to a request wrapper for solaris guests. */
     
    162146
    163147/** The VBGLBIGREQ::u32Magic value (Ryuu Murakami). */
    164 #define VBGLBIGREQ_MAGIC                        0x19520219
     148#define VBGLBIGREQ_MAGIC                            0x19520219
    165149
    166150
     
    170154# define IOCTL_CODE(DeviceType, Function, Method, Access, DataSize_ignored) \
    171155  ( ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method))
    172 # define VBOXGUEST_IOCTL_CODE_(Function, Size)  IOCTL_CODE(FILE_DEVICE_UNKNOWN, 2048 + (Function), METHOD_BUFFERED, FILE_WRITE_ACCESS, 0)
    173 # define VBOXGUEST_IOCTL_STRIP_SIZE_(Code)      (Code)
     156# define VBOXGUEST_IOCTL_CODE_(Function, Size)      IOCTL_CODE(FILE_DEVICE_UNKNOWN, 2048 + (Function), METHOD_BUFFERED, FILE_WRITE_ACCESS, 0)
     157# define VBOXGUEST_IOCTL_STRIP_SIZE_(Code)          (Code)
    174158
    175159#elif defined(RT_OS_OS2)
    176160  /* No automatic buffering, size not encoded. */
    177 # define VBOXGUEST_IOCTL_CATEGORY               0xc2
    178 # define VBOXGUEST_IOCTL_CODE_(Function, Size)  ((unsigned char)(Function))
    179 # define VBOXGUEST_IOCTL_CATEGORY_FAST          0xc3 /**< Also defined in VBoxGuestA-os2.asm. */
    180 # define VBOXGUEST_IOCTL_CODE_FAST_(Function)   ((unsigned char)(Function))
    181 # define VBOXGUEST_IOCTL_STRIP_SIZE(Code)       (Code)
     161# define VBOXGUEST_IOCTL_CATEGORY                   0xc2
     162# define VBOXGUEST_IOCTL_CODE_(Function, Size)      ((unsigned char)(Function))
     163# define VBOXGUEST_IOCTL_CATEGORY_FAST              0xc3 /**< Also defined in VBoxGuestA-os2.asm. */
     164# define VBOXGUEST_IOCTL_CODE_FAST_(Function)       ((unsigned char)(Function))
     165# define VBOXGUEST_IOCTL_STRIP_SIZE(Code)           (Code)
    182166
    183167#elif defined(RT_OS_SOLARIS)
    184168  /* No automatic buffering, size limited to 255 bytes => use VBGLBIGREQ for everything. */
    185169# include <sys/ioccom.h>
    186 # define VBOXGUEST_IOCTL_CODE_(Function, Size)  _IOWRN('V', (Function), sizeof(VBGLBIGREQ))
    187 # define VBOXGUEST_IOCTL_CODE_FAST_(Function)   _IO(  'V', (Function))
    188 # define VBOXGUEST_IOCTL_STRIP_SIZE(Code)       (Code)
     170# define VBOXGUEST_IOCTL_CODE_(Function, Size)      _IOWRN('V', (Function), sizeof(VBGLBIGREQ))
     171# define VBOXGUEST_IOCTL_CODE_FAST_(Function)       _IO(  'V', (Function))
     172# define VBOXGUEST_IOCTL_STRIP_SIZE(Code)           (Code)
    189173
    190174#elif defined(RT_OS_LINUX)
    191175  /* No automatic buffering, size limited to 16KB. */
    192176# include <linux/ioctl.h>
    193 # define VBOXGUEST_IOCTL_CODE_(Function, Size)  _IOC(_IOC_READ|_IOC_WRITE, 'V', (Function), (Size))
    194 # define VBOXGUEST_IOCTL_CODE_FAST_(Function)   _IO(  'V', (Function))
    195 # define VBOXGUEST_IOCTL_STRIP_SIZE(Code)       VBOXGUEST_IOCTL_CODE_(_IOC_NR((Code)), 0)
     177# define VBOXGUEST_IOCTL_CODE_(Function, Size)      _IOC(_IOC_READ|_IOC_WRITE, 'V', (Function), (Size))
     178# define VBOXGUEST_IOCTL_CODE_FAST_(Function)       _IO(  'V', (Function))
     179# define VBOXGUEST_IOCTL_STRIP_SIZE(Code)           VBOXGUEST_IOCTL_CODE_(_IOC_NR((Code)), 0)
    196180
    197181#elif defined(RT_OS_FREEBSD) /** @todo r=bird: Please do it like SUPDRVIOC to keep it as similar as possible. */
    198182# include <sys/ioccom.h>
    199183
    200 # define VBOXGUEST_IOCTL_CODE_(Function, Size)  _IOWR('V', (Function), VBGLBIGREQ)
    201 # define VBOXGUEST_IOCTL_CODE_FAST_(Function)   _IO(  'V', (Function))
    202 # define VBOXGUEST_IOCTL_STRIP_SIZE(Code)       IOCBASECMD(Code)
     184# define VBOXGUEST_IOCTL_CODE_(Function, Size)      _IOWR('V', (Function), VBGLBIGREQ)
     185# define VBOXGUEST_IOCTL_CODE_FAST_(Function)       _IO(  'V', (Function))
     186# define VBOXGUEST_IOCTL_STRIP_SIZE(Code)           IOCBASECMD(Code)
    203187
    204188#else
     
    206190#endif
    207191
    208 #define VBOXGUEST_IOCTL_CODE(Function, Size)     VBOXGUEST_IOCTL_CODE_((Function) | VBOXGUEST_IOCTL_FLAG, Size)
    209 #define VBOXGUEST_IOCTL_CODE_FAST(Function)      VBOXGUEST_IOCTL_CODE_FAST_((Function) | VBOXGUEST_IOCTL_FLAG)
     192#define VBOXGUEST_IOCTL_CODE(Function, Size)        VBOXGUEST_IOCTL_CODE_((Function) | VBOXGUEST_IOCTL_FLAG, Size)
     193#define VBOXGUEST_IOCTL_CODE_FAST(Function)         VBOXGUEST_IOCTL_CODE_FAST_((Function) | VBOXGUEST_IOCTL_FLAG)
    210194
    211195/* Define 32 bit codes to support 32 bit applications requests in the 64 bit guest driver. */
    212196#ifdef RT_ARCH_AMD64
    213 # define VBOXGUEST_IOCTL_CODE_32(Function, Size) VBOXGUEST_IOCTL_CODE_(Function, Size)
    214 # define VBOXGUEST_IOCTL_CODE_FAST_32(Function)  VBOXGUEST_IOCTL_CODE_FAST_(Function)
     197# define VBOXGUEST_IOCTL_CODE_32(Function, Size)    VBOXGUEST_IOCTL_CODE_(Function, Size)
     198# define VBOXGUEST_IOCTL_CODE_FAST_32(Function)     VBOXGUEST_IOCTL_CODE_FAST_(Function)
    215199#endif /* RT_ARCH_AMD64 */
    216200
     
    228212} VBoxGuestPortInfo;
    229213
     214
    230215/** IOCTL to VBoxGuest to wait for a VMMDev host notification */
    231216#define VBOXGUEST_IOCTL_WAITEVENT                   VBOXGUEST_IOCTL_CODE_(2, sizeof(VBoxGuestWaitEventInfo))
    232 
    233 /** IOCTL to VBoxGuest to interrupt (cancel) any pending WAITEVENTs and return.
    234  * Handled inside the guest additions and not seen by the host at all.
    235  * @see VBOXGUEST_IOCTL_WAITEVENT */
    236 #define VBOXGUEST_IOCTL_CANCEL_ALL_WAITEVENTS       VBOXGUEST_IOCTL_CODE_(5, 0)
    237217
    238218/** @name Result codes for VBoxGuestWaitEventInfo::u32Result
     
    250230
    251231/** Input and output buffers layout of the IOCTL_VBOXGUEST_WAITEVENT */
    252 typedef struct _VBoxGuestWaitEventInfo
     232typedef struct VBoxGuestWaitEventInfo
    253233{
    254234    /** timeout in milliseconds */
     
    263243AssertCompileSize(VBoxGuestWaitEventInfo, 16);
    264244
     245
     246/** IOCTL to VBoxGuest to interrupt (cancel) any pending WAITEVENTs and return.
     247 * Handled inside the guest additions and not seen by the host at all.
     248 * @see VBOXGUEST_IOCTL_WAITEVENT */
     249#define VBOXGUEST_IOCTL_CANCEL_ALL_WAITEVENTS       VBOXGUEST_IOCTL_CODE_(5, 0)
     250
     251
     252
    265253/** IOCTL to VBoxGuest to perform a VMM request
    266254 * @remark  The data buffer for this IOCtl has an variable size, keep this in mind
     
    268256#define VBOXGUEST_IOCTL_VMMREQUEST(Size)            VBOXGUEST_IOCTL_CODE_(3, (Size))
    269257
     258
     259/** IOCTL to VBoxGuest to control event filter mask. */
     260#define VBOXGUEST_IOCTL_CTL_FILTER_MASK             VBOXGUEST_IOCTL_CODE_(4, sizeof(VBoxGuestFilterMaskInfo))
     261
    270262/** Input and output buffer layout of the IOCTL_VBOXGUEST_CTL_FILTER_MASK. */
    271 typedef struct _VBoxGuestFilterMaskInfo
     263typedef struct VBoxGuestFilterMaskInfo
    272264{
    273265    uint32_t u32OrMask;
     
    277269#pragma pack()
    278270
    279 /** IOCTL to VBoxGuest to control event filter mask. */
    280 #define VBOXGUEST_IOCTL_CTL_FILTER_MASK             VBOXGUEST_IOCTL_CODE_(4, sizeof(VBoxGuestFilterMaskInfo))
    281271
    282272/** IOCTL to VBoxGuest to check memory ballooning. */
    283273#define VBOXGUEST_IOCTL_CTL_CHECK_BALLOON_MASK      VBOXGUEST_IOCTL_CODE_(7, 100)
    284274
    285 /** IOCTL to VBoxGuest to perform backdoor logging. */
     275
     276/** IOCTL to VBoxGuest to perform backdoor logging.
     277 * The argument is a string buffer of the specified size. */
    286278#define VBOXGUEST_IOCTL_LOG(Size)                   VBOXGUEST_IOCTL_CODE_(6, (Size))
    287279
    288280
    289281#ifdef VBOX_WITH_HGCM
    290 /* These structures are shared between the driver and other binaries,
    291  * therefore packing must be defined explicitely.
    292  */
    293 # pragma pack(1)
    294 typedef struct _VBoxGuestHGCMConnectInfo /**< @todo I think the usage of '_' in tags, like _VBoxGuestHGCMConnectInfo here, is trespassing on the system/compiler name space. Check+fix. */
     282/** IOCTL to VBoxGuest to connect to a HGCM service. */
     283# define VBOXGUEST_IOCTL_HGCM_CONNECT               VBOXGUEST_IOCTL_CODE(16, sizeof(VBoxGuestHGCMConnectInfo))
     284
     285# pragma pack(1) /* explicit packing for good measure. */
     286typedef struct VBoxGuestHGCMConnectInfo
    295287{
    296288    int32_t result;           /**< OUT */
     
    299291} VBoxGuestHGCMConnectInfo;
    300292AssertCompileSize(VBoxGuestHGCMConnectInfo, 4+4+128+4);
    301 
    302 typedef struct _VBoxGuestHGCMDisconnectInfo
     293# pragma pack()
     294
     295
     296/** IOCTL to VBoxGuest to disconnect from a HGCM service. */
     297# define VBOXGUEST_IOCTL_HGCM_DISCONNECT          VBOXGUEST_IOCTL_CODE(17, sizeof(VBoxGuestHGCMDisconnectInfo))
     298typedef struct VBoxGuestHGCMDisconnectInfo
    303299{
    304300    int32_t result;           /**< OUT */
     
    307303AssertCompileSize(VBoxGuestHGCMDisconnectInfo, 8);
    308304
    309 typedef struct _VBoxGuestHGCMCallInfo
     305
     306/** IOCTL to VBoxGuest to make a call to a HGCM service. */
     307# define VBOXGUEST_IOCTL_HGCM_CALL(Size)          VBOXGUEST_IOCTL_CODE(18, (Size))
     308typedef struct VBoxGuestHGCMCallInfo
    310309{
    311310    int32_t result;           /**< OUT Host HGCM return code.*/
     
    317316AssertCompileSize(VBoxGuestHGCMCallInfo, 16);
    318317
    319 typedef struct _VBoxGuestHGCMCallInfoTimed
    320 {
    321     uint32_t u32Timeout;         /**< IN  How long to wait for completion before cancelling the call */
     318
     319/** IOCTL to VBoxGuest to make a timed call to a HGCM service. */
     320# define VBOXGUEST_IOCTL_HGCM_CALL_TIMED(Size)    VBOXGUEST_IOCTL_CODE(20, (Size))
     321# pragma pack(1) /* explicit packing for good measure. */
     322typedef struct VBoxGuestHGCMCallInfoTimed
     323{
     324    uint32_t u32Timeout;         /**< IN  How long to wait for completion before cancelling the call. */
    322325    uint32_t fInterruptible;     /**< IN  Is this request interruptible? */
    323326    VBoxGuestHGCMCallInfo info;  /**< IN/OUT The rest of the call information.  Placed after the timeout
     
    328331# pragma pack()
    329332
    330 # define VBOXGUEST_IOCTL_HGCM_CONNECT             VBOXGUEST_IOCTL_CODE(16, sizeof(VBoxGuestHGCMConnectInfo))
    331 # define VBOXGUEST_IOCTL_HGCM_DISCONNECT          VBOXGUEST_IOCTL_CODE(17, sizeof(VBoxGuestHGCMDisconnectInfo))
    332 # define VBOXGUEST_IOCTL_HGCM_CALL(Size)          VBOXGUEST_IOCTL_CODE(18, (Size))
    333 # define VBOXGUEST_IOCTL_HGCM_CALL_TIMED(Size)    VBOXGUEST_IOCTL_CODE(20, (Size))
     333# ifdef RT_ARCH_AMD64
     334/** @name IOCTL numbers that 32-bit clients, like the Windows OpenGL guest
     335 *        driver, will use when taking to a 64-bit driver.
     336 * @remarks These are only used by the driver implementation! */
     337#  define VBOXGUEST_IOCTL_HGCM_CONNECT_32           VBOXGUEST_IOCTL_CODE_32(16, sizeof(VBoxGuestHGCMConnectInfo))
     338#  define VBOXGUEST_IOCTL_HGCM_DISCONNECT_32        VBOXGUEST_IOCTL_CODE_32(17, sizeof(VBoxGuestHGCMDisconnectInfo))
     339#  define VBOXGUEST_IOCTL_HGCM_CALL_32(Size)        VBOXGUEST_IOCTL_CODE_32(18, (Size))
     340#  define VBOXGUEST_IOCTL_HGCM_CALL_TIMED_32(Size)  VBOXGUEST_IOCTL_CODE_32(20, (Size))
     341/** @} */
     342# endif /* RT_ARCH_AMD64 */
     343
     344/** Get the pointer to the first HGCM parameter.  */
     345# define VBOXGUEST_HGCM_CALL_PARMS(a)             ( (HGCMFunctionParameter   *)((uint8_t *)(a) + sizeof(VBoxGuestHGCMCallInfo)) )
     346/** Get the pointer to the first HGCM parameter in a 32-bit request.  */
     347# define VBOXGUEST_HGCM_CALL_PARMS32(a)           ( (HGCMFunctionParameter32 *)((uint8_t *)(a) + sizeof(VBoxGuestHGCMCallInfo)) )
     348
     349/** IOCTL to VBoxGuest to make a connect to the clipboard service.
     350 * @todo Seems this is no longer is use. Try remove it. */
    334351# define VBOXGUEST_IOCTL_CLIPBOARD_CONNECT        VBOXGUEST_IOCTL_CODE_(19, sizeof(uint32_t))
    335 # ifdef RT_ARCH_AMD64
    336 /* Following HGCM IOCtls can be used by a 32 bit application on a 64 bit guest (Windows OpenGL guest driver). */
    337 #  define VBOXGUEST_IOCTL_HGCM_CONNECT_32         VBOXGUEST_IOCTL_CODE_32(16, sizeof(VBoxGuestHGCMConnectInfo))
    338 #  define VBOXGUEST_IOCTL_HGCM_DISCONNECT_32      VBOXGUEST_IOCTL_CODE_32(17, sizeof(VBoxGuestHGCMDisconnectInfo))
    339 #  define VBOXGUEST_IOCTL_HGCM_CALL_32(Size)      VBOXGUEST_IOCTL_CODE_32(18, (Size))
    340 #  define VBOXGUEST_IOCTL_HGCM_CALL_TIMED_32(Size) VBOXGUEST_IOCTL_CODE_32(20, (Size))
    341 # endif /* RT_ARCH_AMD64 */
    342 
    343 # define VBOXGUEST_HGCM_CALL_PARMS(a)       ((HGCMFunctionParameter *)((uint8_t *)(a) + sizeof (VBoxGuestHGCMCallInfo)))
    344 # define VBOXGUEST_HGCM_CALL_PARMS32(a)     ((HGCMFunctionParameter32 *)((uint8_t *)(a) + sizeof (VBoxGuestHGCMCallInfo)))
    345352
    346353#endif /* VBOX_WITH_HGCM */
     
    413420 * is only recognized if it arrives thru the IDC service EP.
    414421 */
    415 #define VBOXGUEST_IOCTL_OS2_IDC_DISCONNECT  VBOXGUEST_IOCTL_CODE(48, sizeof(uint32_t))
     422# define VBOXGUEST_IOCTL_OS2_IDC_DISCONNECT     VBOXGUEST_IOCTL_CODE(48, sizeof(uint32_t))
    416423
    417424#endif /* RT_OS_OS2 */
  • trunk/include/VBox/VBoxGuest.inc

    r8155 r21224  
    3030
    3131
    32 VMMDEV_VERSION_MAJOR    EQU     1
    33 VMMDEV_VERSION_MINOR    EQU     4
    34 VMMDEV_VERSION          EQU     000010004h
    35 
    3632;; ASSUMES OS/2 for now.
    3733VBOXGUEST_DEVICE_NAME   EQU     "VBoxGst$"
    3834
    3935
    40 ;; aka VBOXGUESTOS2IDCCONNECT 
     36;; aka VBOXGUESTOS2IDCCONNECT
    4137VBGOS2IDC STRUC
    4238u32Version         DD ?
     
    4541fpfnServiceEP      DD ?
    4642fpfnServiceAsmEP   DD ?
    47 VBGOS2IDC ENDS   
     43VBGOS2IDC ENDS
    4844
     45
     46; From VMMDev.h
     47VMMDEV_VERSION_MAJOR    EQU     1
     48VMMDEV_VERSION_MINOR    EQU     4
     49VMMDEV_VERSION          EQU     000010004h
     50
  • trunk/include/VBox/VBoxGuest.mac

    r8155 r21224  
    3232%define ___VBox_VBoxGuest_mac___
    3333
    34 %define VMMDEV_VERSION_MAJOR    1
    35 %define VMMDEV_VERSION_MINOR    4
    36 %define VMMDEV_VERSION          000010004h
    37 
    3834%ifdef RT_OS_OS2
    3935%define VBOXGUEST_DEVICE_NAME   "vboxgst$"
    4036
    41 ;; aka VBOXGUESTOS2IDCCONNECT 
     37;; aka VBOXGUESTOS2IDCCONNECT
    4238struc VBGOS2IDC
    4339    .u32Version         resd 1
     
    4642    .fpfnServiceEP      resd 1
    4743    .fpfnServiceAsmEP   resd 1
    48 endstruc   
     44endstruc
    4945
    5046%endif ; RT_OS_OS2
    5147
     48; From VMMDev.h
     49%define VMMDEV_VERSION_MAJOR    1
     50%define VMMDEV_VERSION_MINOR    4
     51%define VMMDEV_VERSION          000010004h
     52
    5253%endif
    5354
  • trunk/include/VBox/VBoxGuest16.h

    r8155 r21224  
    11/** @file
    2  * VBoxGuest - VirtualBox Guest Additions Interface, 16-bit (OS/2) header.
     2 * VBoxGuest - VirtualBox Guest Additions Driver Interface, 16-bit (OS/2) header.
    33 */
    44
     
    3131#define ___VBox_VBoxGuest16_h
    3232
    33 #define RT_BIT(bit)                                (1UL << (bit))
    34 
    35 
    36 #define VMMDEV_VERSION                          0x00010004UL
     33#define RT_BIT(bit)                             (1UL << (bit))
    3734
    3835#define VBOXGUEST_DEVICE_NAME                   "vboxgst$"
     
    4441    unsigned long u32Session;
    4542    unsigned long pfnServiceEP;
    46     short (__cdecl __far *fpfnServiceEP)(unsigned long u32Session, unsigned short iFunction, 
     43    short (__cdecl __far *fpfnServiceEP)(unsigned long u32Session, unsigned short iFunction,
    4744                                         void __far *fpvData, unsigned short cbData, unsigned short __far *pcbDataReturned);
    4845    unsigned long fpfnServiceAsmEP;
     
    5350#define VBOXGUEST_IOCTL_VMMREQUEST              3
    5451#define VBOXGUEST_IOCTL_OS2_IDC_DISCONNECT      48
    55 
    56 
    57 #define VMMDEV_EVENT_MOUSE_CAPABILITIES_CHANGED RT_BIT(0)
    58 #define VMMDEV_EVENT_HGCM                       RT_BIT(1)
    59 #define VMMDEV_EVENT_DISPLAY_CHANGE_REQUEST     RT_BIT(2)
    60 #define VMMDEV_EVENT_JUDGE_CREDENTIALS          RT_BIT(3)
    61 #define VMMDEV_EVENT_RESTORED                   RT_BIT(4)
    62 
    6352
    6453#define VBOXGUEST_WAITEVENT_OK                  0
     
    111100} VMMDevCtlGuestFilterMask;
    112101
     102
     103/* From VMMDev.h: */
     104#define VMMDEV_VERSION                          0x00010004UL
     105
     106#define VMMDEV_EVENT_MOUSE_CAPABILITIES_CHANGED RT_BIT(0)
     107#define VMMDEV_EVENT_HGCM                       RT_BIT(1)
     108#define VMMDEV_EVENT_DISPLAY_CHANGE_REQUEST     RT_BIT(2)
     109#define VMMDEV_EVENT_JUDGE_CREDENTIALS          RT_BIT(3)
     110#define VMMDEV_EVENT_RESTORED                   RT_BIT(4)
     111
    113112#endif
    114113
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette