VirtualBox

Changeset 81346 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Oct 18, 2019 10:40:15 AM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
134059
Message:

Shared Clipboard/Transfers: Made the context ID 64-bit wide.

Location:
trunk/include/VBox
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/GuestHost/SharedClipboard.h

    r81223 r81346  
    115115typedef SHCLEVENTSOURCEID *PSHCLEVENTSOURCEID;
    116116
     117/** Defines a session ID. */
     118typedef uint16_t     SHCLSESSIONID;
     119/** Defines a pointer to a session ID. */
     120typedef SHCLSESSIONID *PSHCLSESSIONID;
    117121/** Defines an event ID. */
    118122typedef uint32_t     SHCLEVENTID;
     
    121125
    122126/** Maximum number of concurrent Shared Clipboard client sessions a VM can have. */
    123 #define VBOX_SHCL_MAX_SESSIONS                   32
     127#define VBOX_SHCL_MAX_SESSIONS                   UINT16_MAX
    124128/** Maximum number of concurrent Shared Clipboard transfers a single
    125129 *  client can have. */
    126 #define VBOX_SHCL_MAX_TRANSFERS                  _2K
     130#define VBOX_SHCL_MAX_TRANSFERS                  UINT16_MAX
    127131/** Maximum number of events a single Shared Clipboard transfer can have. */
    128 #define VBOX_SHCL_MAX_EVENTS                     _64K
    129 
    130 /**
    131  * Creates a context ID out of a client ID, a transfer ID and a count.
     132#define VBOX_SHCL_MAX_EVENTS                     UINT32_MAX
     133
     134/**
     135 * Creates a context ID out of a client ID, a transfer ID and a count (can be an event ID).
    132136 */
    133137#define VBOX_SHCL_CONTEXTID_MAKE(uSessionID, uTransferID, uEventID) \
    134     (  (uint32_t)((uSessionID)  &   0x1f) << 27 \
    135      | (uint32_t)((uTransferID) &  0x7ff) << 16 \
    136      | (uint32_t)((uEventID)    & 0xffff)      \
     138    (  (uint64_t)((uSessionID)  & 0xffff) << 48 \
     139     | (uint64_t)((uTransferID) & 0xffff) << 32 \
     140     | (uint32_t)((uEventID)    & 0xffffffff) \
    137141    )
    138142/** Creates a context ID out of a session ID. */
    139143#define VBOX_SHCL_CONTEXTID_MAKE_SESSION(uSessionID) \
    140     ((uint32_t)((uSessionID) & 0x1f) << 27)
     144    ((uint32_t)((uSessionID) & 0xffff) << 48)
    141145/** Gets the session ID out of a context ID. */
    142146#define VBOX_SHCL_CONTEXTID_GET_SESSION(uContextID) \
    143     (((uContextID) >> 27) & 0x1f)
     147    (((uContextID) >> 48) & 0xffff)
    144148/** Gets the transfer ID out of a context ID. */
    145149#define VBOX_SHCL_CONTEXTID_GET_TRANSFER(uContextID) \
    146     (((uContextID) >> 16) & 0x7ff)
     150    (((uContextID) >> 32) & 0xffff)
    147151/** Gets the transfer event out of a context ID. */
    148152#define VBOX_SHCL_CONTEXTID_GET_EVENT(uContextID) \
    149     ((uContextID) & 0xffff)
     153    ((uContextID) & 0xffffffff)
    150154
    151155/**
  • trunk/include/VBox/HostServices/VBoxClipboardSvc.h

    r81286 r81346  
    301301        struct
    302302        {
    303             /** uint32_t, in: Context ID. */
     303            /** uint64_t, in: Context ID. */
    304304            HGCMFunctionParameter uContext;
    305305            /** uint32_t, out:  VBOX_SHCL_FMT_*. */
     
    318318    VBGLIOCHGCMCALL hdr;
    319319
    320     /** uint32_t, out: Context ID. */
     320    /** uint64_t, out: Context ID. */
    321321    HGCMFunctionParameter uContext;
    322322    /** uint32_t, out: Requested format to read data in. */
     
    366366        struct
    367367        {
    368             /** uint32_t, out: Context ID. */
     368            /** uint64_t, out: Context ID. */
    369369            HGCMFunctionParameter uContext;
    370370            /** uint32_t, out: Requested format to read data in. */
     
    387387    VBGLIOCHGCMCALL hdr;
    388388
    389     /** uint32_t, out: Context ID. */
     389    /** uint64_t, out: Context ID. */
    390390    HGCMFunctionParameter uContext;
    391391    /** uint32_t, out: Direction of transfer; of type SHCLTRANSFERDIR_. */
     
    444444    VBGLIOCHGCMCALL hdr;
    445445
    446     /** uint32_t, in: Context ID. */
     446    /** uint64_t, in: Context ID. */
    447447    HGCMFunctionParameter uContext;
    448448    /** uint32_t, in: Transfer status of type SHCLTRANSFERSTATUS. */
     
    476476    VBGLIOCHGCMCALL hdr;
    477477
    478     /** uint32_t, out: Context ID. */
     478    /** uint64_t, out: Context ID. */
    479479    HGCMFunctionParameter uContext;
    480480    /** uint32_t, out: Message type of type VBOX_SHCL_REPLYMSGTYPE_XXX. */
     
    515515typedef struct _VBoxShClRootListParms
    516516{
    517     /** uint32_t, in: Context ID. s*/
     517    /** uint64_t, in: Context ID. */
    518518    HGCMFunctionParameter uContext;
    519519    /** uint32_t, in: Roots listing flags; unused at the moment. */
     
    553553typedef struct _VBoxShClRootListEntryParms
    554554{
    555     /** uint32_t, in: Context ID. */
     555    /** uint64_t, in: Context ID. */
    556556    HGCMFunctionParameter uContext;
    557557    /** uint32_t, in: VBOX_SHCL_INFO_FLAG_XXX. */
     
    602602    VBGLIOCHGCMCALL hdr;
    603603
    604     /** uint32_t, in: Context ID. */
     604    /** uint64_t, in: Context ID. */
    605605    HGCMFunctionParameter uContext;
    606606    /** uint32_t, in: Listing flags (see VBOX_SHCL_LIST_FLAG_XXX). */
     
    627627    VBGLIOCHGCMCALL hdr;
    628628
    629     /** uint32_t, in/out: Context ID. */
     629    /** uint64_t, in/out: Context ID. */
    630630    HGCMFunctionParameter uContext;
    631631    /** uint64_t, in: List handle. */
     
    637637typedef struct _VBoxShClListHdrReqParms
    638638{
    639     /** uint32_t, in: Context ID. */
     639    /** uint64_t, in: Context ID. */
    640640    HGCMFunctionParameter uContext;
    641641    /** uint64_t, in: List handle. */
     
    677677typedef struct _VBoxShClListEntryReqParms
    678678{
    679     /** uint32_t, in: Context ID. */
     679    /** uint64_t, in: Context ID. */
    680680    HGCMFunctionParameter uContext;
    681681    /** uint64_t, in: List handle. */
     
    724724    VBGLIOCHGCMCALL hdr;
    725725
    726     /** uint32_t, in/out: Context ID. */
     726    /** uint64_t, in/out: Context ID. */
    727727    HGCMFunctionParameter uContext;
    728728    /** uint64_t, in/out: Object handle. */
     
    745745    VBGLIOCHGCMCALL hdr;
    746746
    747     /** uint32_t, in/out: Context ID. */
     747    /** uint64_t, in/out: Context ID. */
    748748    HGCMFunctionParameter uContext;
    749749    /** uint64_t, in: SHCLOBJHANDLE of object to close. */
     
    758758typedef struct _VBoxShClObjReadReqParms
    759759{
    760     /** uint32_t, in: Context ID. */
     760    /** uint64_t, in: Context ID. */
    761761    HGCMFunctionParameter uContext;
    762762    /** uint64_t, in: SHCLOBJHANDLE of object to write to. */
     
    791791    VBGLIOCHGCMCALL hdr;
    792792
    793     /** uint32_t, in/out: Context ID. */
     793    /** uint64_t, in/out: Context ID. */
    794794    HGCMFunctionParameter uContext;
    795795    /** uint64_t, in/out: SHCLOBJHANDLE of object to write to. */
     
    819819    VBGLIOCHGCMCALL hdr;
    820820
    821     /** uint32_t, in: Context ID. */
     821    /** uint64_t, in: Context ID. */
    822822    HGCMFunctionParameter uContext;
    823823    /** uint32_t, in: The error code (IPRT-style). */
  • trunk/include/VBox/VBoxGuestLib.h

    r81025 r81346  
    604604    uint32_t                  uClientID;
    605605    /** IN/OUT: Context ID to retrieve or to use. */
    606     uint32_t                  uContextID;
     606    uint64_t                  uContextID;
    607607    /** IN: Protocol version to use. */
    608608    uint32_t                  uProtocolVer;
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