VirtualBox

Changeset 6422 in vbox for trunk/include


Ignore:
Timestamp:
Jan 21, 2008 6:11:53 PM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
27388
Message:

Outlined how to handle the requests on solaris.

File:
1 edited

Legend:

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

    r6419 r6422  
    952952#endif
    953953
     954/** Ring-3 request wrapper for big requests.
     955 *
     956 * This is necessary because the ioctl number scheme on many Unixy OSes (esp. Solaris)
     957 * only allows a relatively small size to be encoded into the request. So, for big
     958 * request this generic form is used instead. */
     959typedef struct VBGLBIGREQ
     960{
     961    /** Magic value (VBGLBIGREQ_MAGIC). */
     962    uint32_t    u32Magic;
     963    /** The size of the data buffer. */
     964    uint32_t    cbData;
     965    /** The user address of the data buffer. */
     966    RTR3PTR     pvDataR3;
     967} VBGLBIGREQ;
     968/** Pointer to a request wrapper for solaris guests. */
     969typedef VBGLBIGREQ *PVBGLBIGREQ;
     970/** Pointer to a const request wrapper for solaris guests. */
     971typedef const VBGLBIGREQ *PCVBGLBIGREQ;
     972
     973/** The VBGLBIGREQ::u32Magic value (Ryuu Murakami). */
     974#define VBGLBIGREQ_MAGIC                            0x19520219
     975
     976
    954977#if defined(RT_OS_WINDOWS)
    955978# define IOCTL_CODE(DeviceType, Function, Method, Access, DataSize_ignored) \
     
    976999#elif defined(RT_OS_SOLARIS)
    9771000# include <sys/ioccom.h>
     1001#if 0
     1002# define VBOXGUEST_IOCTL_CODE(Function, Size)   _IOWRN('V', (Function) | VBOXGUEST_IOCTL_FLAG, sizeof(VBGLBIGREQ))
     1003# define VBOXGUEST_IOCTL_CODE_FAST(Function)    _IO(  'V', (Function) | VBOXGUEST_IOCTL_FLAG)
     1004#else
    9781005# define VBOXGUEST_IOCTL_CODE(Function, Size)   _IOWRN('V', (Function) | VBOXGUEST_IOCTL_FLAG, (Size))
    9791006# define VBOXGUEST_IOCTL_CODE_FAST(Function)    _IO(  'V', (Function) | VBOXGUEST_IOCTL_FLAG)
     
    9821009# define VBOXGUEST_IOCTL_SIZE(Code)             (((Code) >> 16) & IOCPARM_MASK)
    9831010# define VBOXGUEST_IOCTL_NUMBER(Code)           ((Code) & IOCPARM_MASK)
     1011#endif
    9841012
    9851013#elif 0 /* BSD style - needs some adjusting _IORW takes a type and not a size. */
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