VirtualBox

Changeset 80468 in vbox for trunk/include/VBox/GuestHost


Ignore:
Timestamp:
Aug 28, 2019 9:57:23 AM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
132959
Message:

Shared Clipboard/URI: Made the event source and event IDs more non-deterministic.

File:
1 edited

Legend:

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

    r80444 r80468  
    110110} SHAREDCLIPBOARDEVENTPAYLOAD, *PSHAREDCLIPBOARDEVENTPAYLOAD;
    111111
     112/** Defines an event source ID. */
     113typedef uint16_t VBOXCLIPBOARDEVENTSOURCEID;
     114/** Defines a pointer to a event source ID. */
     115typedef VBOXCLIPBOARDEVENTSOURCEID *PVBOXCLIPBOARDEVENTSOURCEID;
     116
     117/** Defines an event ID. */
     118typedef uint16_t VBOXCLIPBOARDEVENTID;
     119/** Defines a pointer to a event source ID. */
     120typedef VBOXCLIPBOARDEVENTID *PVBOXCLIPBOARDEVENTID;
     121
     122/** Maximum number of concurrent Shared Clipboard transfers a VM can have.
     123 *  Number 0 always is reserved for the client itself. */
     124#define VBOX_SHARED_CLIPBOARD_MAX_TRANSFERS                   UINT16_MAX - 1
     125/** Maximum number of concurrent event sources. */
     126#define VBOX_SHARED_CLIPBOARD_MAX_EVENT_SOURCES               UINT16_MAX
     127/** Maximum number of concurrent events a single event source can have. */
     128#define VBOX_SHARED_CLIPBOARD_MAX_EVENTS                      UINT16_MAX
     129
    112130/**
    113131 * Structure for maintaining a Shared Clipboard event.
     
    118136    RTLISTNODE                   Node;
    119137    /** The event's ID, for self-reference. */
    120     uint16_t                     uID;
     138    VBOXCLIPBOARDEVENTID         uID;
    121139    /** Event semaphore for signalling the event. */
    122140    RTSEMEVENT                   hEventSem;
     
    134152{
    135153    /** The event source' ID. */
    136     uint16_t                 uID;
    137     /** Next upcoming event ID.
    138      *  0 is reserved for invalid event IDs. */
    139     uint16_t                 uEventIDNext;
     154    VBOXCLIPBOARDEVENTSOURCEID uID;
     155    /** Next upcoming event ID. */
     156    VBOXCLIPBOARDEVENTID       uEventIDNext;
    140157    /** List of events (PSHAREDCLIPBOARDEVENT). */
    141     RTLISTANCHOR             lstEvents;
     158    RTLISTANCHOR               lstEvents;
    142159} SHAREDCLIPBOARDEVENTSOURCE, *PSHAREDCLIPBOARDEVENTSOURCE;
    143160
     
    146163void SharedClipboardPayloadFree(PSHAREDCLIPBOARDEVENTPAYLOAD pPayload);
    147164
    148 int SharedClipboardEventSourceCreate(PSHAREDCLIPBOARDEVENTSOURCE pSource, uint16_t uID);
     165int SharedClipboardEventSourceCreate(PSHAREDCLIPBOARDEVENTSOURCE pSource, VBOXCLIPBOARDEVENTSOURCEID uID);
    149166void SharedClipboardEventSourceDestroy(PSHAREDCLIPBOARDEVENTSOURCE pSource);
    150167
    151 uint16_t SharedClipboardEventIDGenerate(PSHAREDCLIPBOARDEVENTSOURCE pSource);
    152 int SharedClipboardEventRegister(PSHAREDCLIPBOARDEVENTSOURCE pSource, uint16_t uID);
    153 int SharedClipboardEventUnregister(PSHAREDCLIPBOARDEVENTSOURCE pSource, uint16_t uID);
    154 int SharedClipboardEventWait(PSHAREDCLIPBOARDEVENTSOURCE pSource, uint16_t uID, RTMSINTERVAL uTimeoutMs,
     168VBOXCLIPBOARDEVENTID SharedClipboardEventIDGenerate(PSHAREDCLIPBOARDEVENTSOURCE pSource);
     169int SharedClipboardEventRegister(PSHAREDCLIPBOARDEVENTSOURCE pSource, VBOXCLIPBOARDEVENTID uID);
     170int SharedClipboardEventUnregister(PSHAREDCLIPBOARDEVENTSOURCE pSource, VBOXCLIPBOARDEVENTID uID);
     171int SharedClipboardEventWait(PSHAREDCLIPBOARDEVENTSOURCE pSource, VBOXCLIPBOARDEVENTID uID, RTMSINTERVAL uTimeoutMs,
    155172                             PSHAREDCLIPBOARDEVENTPAYLOAD* ppPayload);
    156 int SharedClipboardEventSignal(PSHAREDCLIPBOARDEVENTSOURCE pSource, uint16_t uID, PSHAREDCLIPBOARDEVENTPAYLOAD pPayload);
    157 void SharedClipboardEventPayloadDetach(PSHAREDCLIPBOARDEVENTSOURCE pSource, uint16_t uID);
     173int SharedClipboardEventSignal(PSHAREDCLIPBOARDEVENTSOURCE pSource, VBOXCLIPBOARDEVENTID uID, PSHAREDCLIPBOARDEVENTPAYLOAD pPayload);
     174void SharedClipboardEventPayloadDetach(PSHAREDCLIPBOARDEVENTSOURCE pSource, VBOXCLIPBOARDEVENTID uID);
    158175
    159176/**
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