mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-14 00:14:11 +09:00
Merge pull request #12311 from akallabeth/winpr-attr-nodiscard-fkt-ptr
Winpr attr nodiscard fkt ptr
This commit is contained in:
@@ -185,20 +185,20 @@ extern "C"
|
||||
rdpContext* context; /* 0 */
|
||||
UINT32 paddingA[16 - 1]; /* 1 */
|
||||
|
||||
pCreateOffscreenBitmap CreateOffscreenBitmap; /* 16 */
|
||||
pSwitchSurface SwitchSurface; /* 17 */
|
||||
pCreateNineGridBitmap CreateNineGridBitmap; /* 18 */
|
||||
pFrameMarker FrameMarker; /* 19 */
|
||||
pStreamBitmapFirst StreamBitmapFirst; /* 20 */
|
||||
pStreamBitmapNext StreamBitmapNext; /* 21 */
|
||||
pDrawGdiPlusFirst DrawGdiPlusFirst; /* 22 */
|
||||
pDrawGdiPlusNext DrawGdiPlusNext; /* 23 */
|
||||
pDrawGdiPlusEnd DrawGdiPlusEnd; /* 24 */
|
||||
pDrawGdiPlusCacheFirst DrawGdiPlusCacheFirst; /* 25 */
|
||||
pDrawGdiPlusCacheNext DrawGdiPlusCacheNext; /* 26 */
|
||||
pDrawGdiPlusCacheEnd DrawGdiPlusCacheEnd; /* 27 */
|
||||
/* Statistics callback */
|
||||
pDrawOrderInfo DrawOrderInfo; /* 28 */
|
||||
WINPR_ATTR_NODISCARD pCreateOffscreenBitmap CreateOffscreenBitmap; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pSwitchSurface SwitchSurface; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pCreateNineGridBitmap CreateNineGridBitmap; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pFrameMarker FrameMarker; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pStreamBitmapFirst StreamBitmapFirst; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pStreamBitmapNext StreamBitmapNext; /* 21 */
|
||||
WINPR_ATTR_NODISCARD pDrawGdiPlusFirst DrawGdiPlusFirst; /* 22 */
|
||||
WINPR_ATTR_NODISCARD pDrawGdiPlusNext DrawGdiPlusNext; /* 23 */
|
||||
WINPR_ATTR_NODISCARD pDrawGdiPlusEnd DrawGdiPlusEnd; /* 24 */
|
||||
WINPR_ATTR_NODISCARD pDrawGdiPlusCacheFirst DrawGdiPlusCacheFirst; /* 25 */
|
||||
WINPR_ATTR_NODISCARD pDrawGdiPlusCacheNext DrawGdiPlusCacheNext; /* 26 */
|
||||
WINPR_ATTR_NODISCARD pDrawGdiPlusCacheEnd DrawGdiPlusCacheEnd; /* 27 */
|
||||
/* Statistics callback */
|
||||
WINPR_ATTR_NODISCARD pDrawOrderInfo DrawOrderInfo; /* 28 */
|
||||
UINT32 paddingB[32 - 29]; /* 29 */
|
||||
};
|
||||
typedef struct rdp_altsec_update rdpAltSecUpdate;
|
||||
|
||||
@@ -120,19 +120,23 @@ extern "C"
|
||||
ALIGN64 wLog* log; /* 11 */
|
||||
UINT64 paddingA[16 - 12]; /* 12 */
|
||||
|
||||
ALIGN64 pRTTMeasureRequest RTTMeasureRequest; /* 16 */
|
||||
ALIGN64 pRTTMeasureResponse RTTMeasureResponse; /* 17 */
|
||||
ALIGN64 pBandwidthMeasureStart BandwidthMeasureStart; /* 18 */
|
||||
ALIGN64 pBandwidthMeasurePayload BandwidthMeasurePayload; /* 19 */
|
||||
ALIGN64 pBandwidthMeasureStop BandwidthMeasureStop; /* 20 */
|
||||
ALIGN64 pBandwidthMeasureResults BandwidthMeasureResults; /* 21 */
|
||||
ALIGN64 pNetworkCharacteristicsResult NetworkCharacteristicsResult; /* 22 */
|
||||
ALIGN64 pClientBandwidthMeasureResult ClientBandwidthMeasureResult; /* 23 */
|
||||
ALIGN64 pNetworkCharacteristicsSync NetworkCharacteristicsSync; /* 24 */
|
||||
ALIGN64 pRxTxReceived RequestReceived; /* 25 */
|
||||
ALIGN64 pRxTxReceived ResponseReceived; /* 26 */
|
||||
ALIGN64 pOnConnectTimeAutoDetect OnConnectTimeAutoDetectBegin; /* 27 */
|
||||
ALIGN64 pOnConnectTimeAutoDetect OnConnectTimeAutoDetectProgress; /* 28 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pRTTMeasureRequest RTTMeasureRequest; /* 16 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pRTTMeasureResponse RTTMeasureResponse; /* 17 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pBandwidthMeasureStart BandwidthMeasureStart; /* 18 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pBandwidthMeasurePayload BandwidthMeasurePayload; /* 19 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pBandwidthMeasureStop BandwidthMeasureStop; /* 20 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pBandwidthMeasureResults BandwidthMeasureResults; /* 21 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pNetworkCharacteristicsResult
|
||||
NetworkCharacteristicsResult; /* 22 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pClientBandwidthMeasureResult
|
||||
ClientBandwidthMeasureResult; /* 23 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pNetworkCharacteristicsSync
|
||||
NetworkCharacteristicsSync; /* 24 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pRxTxReceived RequestReceived; /* 25 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pRxTxReceived ResponseReceived; /* 26 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pOnConnectTimeAutoDetect OnConnectTimeAutoDetectBegin; /* 27 */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pOnConnectTimeAutoDetect
|
||||
OnConnectTimeAutoDetectProgress; /* 28 */
|
||||
UINT64 paddingB[32 - 29]; /* 29 */
|
||||
};
|
||||
FREERDP_API rdpAutoDetect* autodetect_get(rdpContext* context);
|
||||
|
||||
@@ -325,7 +325,7 @@ typedef struct S_IRP IRP;
|
||||
typedef struct S_DEVMAN DEVMAN;
|
||||
|
||||
typedef UINT (*pcCustomComponentRequest)(DEVICE* device, UINT16 component, UINT16 packetId,
|
||||
wStream* s);
|
||||
wStream* s);
|
||||
typedef UINT (*pcIRPRequest)(DEVICE* device, IRP* irp);
|
||||
typedef UINT (*pcInitDevice)(DEVICE* device);
|
||||
typedef UINT (*pcFreeDevice)(DEVICE* device);
|
||||
@@ -338,9 +338,9 @@ struct S_DEVICE
|
||||
const char* name;
|
||||
wStream* data;
|
||||
|
||||
pcCustomComponentRequest CustomComponentRequest;
|
||||
pcIRPRequest IRPRequest;
|
||||
pcInitDevice Init;
|
||||
WINPR_ATTR_NODISCARD pcCustomComponentRequest CustomComponentRequest;
|
||||
WINPR_ATTR_NODISCARD pcIRPRequest IRPRequest;
|
||||
WINPR_ATTR_NODISCARD pcInitDevice Init;
|
||||
pcFreeDevice Free;
|
||||
};
|
||||
|
||||
@@ -361,7 +361,7 @@ struct S_IRP
|
||||
NTSTATUS IoStatus;
|
||||
wStream* output;
|
||||
|
||||
pcIRPResponse Complete;
|
||||
WINPR_ATTR_NODISCARD pcIRPResponse Complete;
|
||||
pcIRPResponse Discard;
|
||||
|
||||
HANDLE thread;
|
||||
@@ -381,7 +381,7 @@ typedef struct
|
||||
{
|
||||
DEVMAN* devman;
|
||||
|
||||
pcRegisterDevice RegisterDevice;
|
||||
WINPR_ATTR_NODISCARD pcRegisterDevice RegisterDevice;
|
||||
RDPDR_DEVICE* device;
|
||||
rdpContext* rdpcontext;
|
||||
} DEVICE_SERVICE_ENTRY_POINTS;
|
||||
|
||||
@@ -72,14 +72,14 @@ extern "C"
|
||||
|
||||
rdpSettings* settings;
|
||||
|
||||
pRdpGlobalInit GlobalInit;
|
||||
WINPR_ATTR_NODISCARD pRdpGlobalInit GlobalInit;
|
||||
pRdpGlobalUninit GlobalUninit;
|
||||
|
||||
DWORD ContextSize;
|
||||
pRdpClientNew ClientNew;
|
||||
WINPR_ATTR_NODISCARD pRdpClientNew ClientNew;
|
||||
pRdpClientFree ClientFree;
|
||||
|
||||
pRdpClientStart ClientStart;
|
||||
WINPR_ATTR_NODISCARD pRdpClientStart ClientStart;
|
||||
pRdpClientStop ClientStop;
|
||||
};
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcAInputSendInputEvent AInputSendInputEvent;
|
||||
WINPR_ATTR_NODISCARD pcAInputSendInputEvent AInputSendInputEvent;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -43,25 +43,27 @@ extern "C"
|
||||
typedef struct s_IAudinDevice IAudinDevice;
|
||||
struct s_IAudinDevice
|
||||
{
|
||||
UINT (*Open)(IAudinDevice* devplugin, AudinReceive receive, void* userData);
|
||||
BOOL (*FormatSupported)(IAudinDevice* devplugin, const AUDIO_FORMAT* format);
|
||||
UINT(*SetFormat)
|
||||
(IAudinDevice* devplugin, const AUDIO_FORMAT* format, UINT32 FramesPerPacket);
|
||||
UINT (*Close)(IAudinDevice* devplugin);
|
||||
UINT (*Free)(IAudinDevice* devplugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*Open)(IAudinDevice* devplugin, AudinReceive receive,
|
||||
void* userData);
|
||||
WINPR_ATTR_NODISCARD BOOL (*FormatSupported)(IAudinDevice* devplugin,
|
||||
const AUDIO_FORMAT* format);
|
||||
WINPR_ATTR_NODISCARD UINT (*SetFormat)(IAudinDevice* devplugin, const AUDIO_FORMAT* format,
|
||||
UINT32 FramesPerPacket);
|
||||
WINPR_ATTR_NODISCARD UINT (*Close)(IAudinDevice* devplugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*Free)(IAudinDevice* devplugin);
|
||||
};
|
||||
|
||||
#define AUDIN_DEVICE_EXPORT_FUNC_NAME "freerdp_audin_client_subsystem_entry"
|
||||
|
||||
typedef UINT (*PREGISTERAUDINDEVICE)(IWTSPlugin* plugin, IAudinDevice* device);
|
||||
typedef UINT (*PREGISTERAUDINDEVICE)(IWTSPlugin* plugin, IAudinDevice* device);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
IWTSPlugin* plugin;
|
||||
PREGISTERAUDINDEVICE pRegisterAudinDevice;
|
||||
const ADDIN_ARGV* args;
|
||||
rdpContext* rdpcontext;
|
||||
} FREERDP_AUDIN_DEVICE_ENTRY_POINTS;
|
||||
typedef struct
|
||||
{
|
||||
IWTSPlugin* plugin;
|
||||
WINPR_ATTR_NODISCARD PREGISTERAUDINDEVICE pRegisterAudinDevice;
|
||||
const ADDIN_ARGV* args;
|
||||
rdpContext* rdpcontext;
|
||||
} FREERDP_AUDIN_DEVICE_ENTRY_POINTS;
|
||||
typedef FREERDP_AUDIN_DEVICE_ENTRY_POINTS* PFREERDP_AUDIN_DEVICE_ENTRY_POINTS;
|
||||
|
||||
typedef UINT(VCAPITYPE* PFREERDP_AUDIN_DEVICE_ENTRY)(
|
||||
|
||||
@@ -85,26 +85,26 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcCliprdrServerCapabilities ServerCapabilities;
|
||||
pcCliprdrClientCapabilities ClientCapabilities;
|
||||
pcCliprdrMonitorReady MonitorReady;
|
||||
pcCliprdrTempDirectory TempDirectory;
|
||||
pcCliprdrClientFormatList ClientFormatList;
|
||||
pcCliprdrServerFormatList ServerFormatList;
|
||||
pcCliprdrClientFormatListResponse ClientFormatListResponse;
|
||||
pcCliprdrServerFormatListResponse ServerFormatListResponse;
|
||||
pcCliprdrClientLockClipboardData ClientLockClipboardData;
|
||||
pcCliprdrServerLockClipboardData ServerLockClipboardData;
|
||||
pcCliprdrClientUnlockClipboardData ClientUnlockClipboardData;
|
||||
pcCliprdrServerUnlockClipboardData ServerUnlockClipboardData;
|
||||
pcCliprdrClientFormatDataRequest ClientFormatDataRequest;
|
||||
pcCliprdrServerFormatDataRequest ServerFormatDataRequest;
|
||||
pcCliprdrClientFormatDataResponse ClientFormatDataResponse;
|
||||
pcCliprdrServerFormatDataResponse ServerFormatDataResponse;
|
||||
pcCliprdrClientFileContentsRequest ClientFileContentsRequest;
|
||||
pcCliprdrServerFileContentsRequest ServerFileContentsRequest;
|
||||
pcCliprdrClientFileContentsResponse ClientFileContentsResponse;
|
||||
pcCliprdrServerFileContentsResponse ServerFileContentsResponse;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerCapabilities ServerCapabilities;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientCapabilities ClientCapabilities;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrMonitorReady MonitorReady;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrTempDirectory TempDirectory;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientFormatList ClientFormatList;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerFormatList ServerFormatList;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientFormatListResponse ClientFormatListResponse;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerFormatListResponse ServerFormatListResponse;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientLockClipboardData ClientLockClipboardData;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerLockClipboardData ServerLockClipboardData;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientUnlockClipboardData ClientUnlockClipboardData;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerUnlockClipboardData ServerUnlockClipboardData;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientFormatDataRequest ClientFormatDataRequest;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerFormatDataRequest ServerFormatDataRequest;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientFormatDataResponse ClientFormatDataResponse;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerFormatDataResponse ServerFormatDataResponse;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientFileContentsRequest ClientFileContentsRequest;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerFileContentsRequest ServerFileContentsRequest;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrClientFileContentsResponse ClientFileContentsResponse;
|
||||
WINPR_ATTR_NODISCARD pcCliprdrServerFileContentsResponse ServerFileContentsResponse;
|
||||
|
||||
UINT32 lastRequestedFormatId;
|
||||
rdpContext* rdpcontext;
|
||||
|
||||
@@ -41,8 +41,8 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcDispCaps DisplayControlCaps;
|
||||
pcDispSendMonitorLayout SendMonitorLayout;
|
||||
WINPR_ATTR_NODISCARD pcDispCaps DisplayControlCaps;
|
||||
WINPR_ATTR_NODISCARD pcDispSendMonitorLayout SendMonitorLayout;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
#ifndef FREERDP_CHANNEL_DRDYNVC_CLIENT_DRDYNVC_H
|
||||
#define FREERDP_CHANNEL_DRDYNVC_CLIENT_DRDYNVC_H
|
||||
|
||||
#include <winpr/wtypes.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
@@ -48,11 +50,11 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcDrdynvcGetVersion GetVersion;
|
||||
pcDrdynvcOnChannelConnected OnChannelConnected;
|
||||
pcDrdynvcOnChannelDisconnected OnChannelDisconnected;
|
||||
pcDrdynvcOnChannelAttached OnChannelAttached;
|
||||
pcDrdynvcOnChannelDetached OnChannelDetached;
|
||||
WINPR_ATTR_NODISCARD pcDrdynvcGetVersion GetVersion;
|
||||
WINPR_ATTR_NODISCARD pcDrdynvcOnChannelConnected OnChannelConnected;
|
||||
WINPR_ATTR_NODISCARD pcDrdynvcOnChannelDisconnected OnChannelDisconnected;
|
||||
WINPR_ATTR_NODISCARD pcDrdynvcOnChannelAttached OnChannelAttached;
|
||||
WINPR_ATTR_NODISCARD pcDrdynvcOnChannelDetached OnChannelDetached;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -66,17 +66,17 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcEncomspFilterUpdated FilterUpdated;
|
||||
pcEncomspApplicationCreated ApplicationCreated;
|
||||
pcEncomspApplicationRemoved ApplicationRemoved;
|
||||
pcEncomspWindowCreated WindowCreated;
|
||||
pcEncomspWindowRemoved WindowRemoved;
|
||||
pcEncomspShowWindow ShowWindow;
|
||||
pcEncomspParticipantCreated ParticipantCreated;
|
||||
pcEncomspParticipantRemoved ParticipantRemoved;
|
||||
pcEncomspChangeParticipantControlLevel ChangeParticipantControlLevel;
|
||||
pcEncomspGraphicsStreamPaused GraphicsStreamPaused;
|
||||
pcEncomspGraphicsStreamResumed GraphicsStreamResumed;
|
||||
WINPR_ATTR_NODISCARD pcEncomspFilterUpdated FilterUpdated;
|
||||
WINPR_ATTR_NODISCARD pcEncomspApplicationCreated ApplicationCreated;
|
||||
WINPR_ATTR_NODISCARD pcEncomspApplicationRemoved ApplicationRemoved;
|
||||
WINPR_ATTR_NODISCARD pcEncomspWindowCreated WindowCreated;
|
||||
WINPR_ATTR_NODISCARD pcEncomspWindowRemoved WindowRemoved;
|
||||
WINPR_ATTR_NODISCARD pcEncomspShowWindow ShowWindow;
|
||||
WINPR_ATTR_NODISCARD pcEncomspParticipantCreated ParticipantCreated;
|
||||
WINPR_ATTR_NODISCARD pcEncomspParticipantRemoved ParticipantRemoved;
|
||||
WINPR_ATTR_NODISCARD pcEncomspChangeParticipantControlLevel ChangeParticipantControlLevel;
|
||||
WINPR_ATTR_NODISCARD pcEncomspGraphicsStreamPaused GraphicsStreamPaused;
|
||||
WINPR_ATTR_NODISCARD pcEncomspGraphicsStreamResumed GraphicsStreamResumed;
|
||||
|
||||
UINT32 participantId;
|
||||
};
|
||||
|
||||
@@ -51,8 +51,8 @@ extern "C"
|
||||
FREERDP_RGNDATA geometry;
|
||||
|
||||
void* custom;
|
||||
pcMappedGeometryUpdate MappedGeometryUpdate;
|
||||
pcMappedGeometryClear MappedGeometryClear;
|
||||
WINPR_ATTR_NODISCARD pcMappedGeometryUpdate MappedGeometryUpdate;
|
||||
WINPR_ATTR_NODISCARD pcMappedGeometryClear MappedGeometryClear;
|
||||
};
|
||||
|
||||
/** @brief the geometry context for client channel */
|
||||
@@ -62,7 +62,7 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcMappedGeometryAdded MappedGeometryAdded;
|
||||
WINPR_ATTR_NODISCARD pcMappedGeometryAdded MappedGeometryAdded;
|
||||
UINT32 remoteVersion;
|
||||
};
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@ extern "C"
|
||||
*
|
||||
* \return \b CHANNEL_RC_OK for success, an appropriate error otherwise.
|
||||
*/
|
||||
pcLocationStart LocationStart;
|
||||
WINPR_ATTR_NODISCARD pcLocationStart LocationStart;
|
||||
|
||||
/**! \brief stop location services on client
|
||||
*
|
||||
@@ -66,7 +66,7 @@ extern "C"
|
||||
*
|
||||
* \return \b CHANNEL_RC_OK for success, an appropriate error otherwise.
|
||||
*/
|
||||
pcLocationStop LocationStop;
|
||||
WINPR_ATTR_NODISCARD pcLocationStop LocationStop;
|
||||
|
||||
/**! \brief Send a location update.
|
||||
*
|
||||
@@ -97,7 +97,7 @@ extern "C"
|
||||
*
|
||||
* return \b CHANNEL_RC_OK for success, an appropriate error otherwise.
|
||||
*/
|
||||
pcLocationSend LocationSend;
|
||||
WINPR_ATTR_NODISCARD pcLocationSend LocationSend;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -44,9 +44,9 @@ extern "C"
|
||||
|
||||
struct rdp_printer_driver
|
||||
{
|
||||
pcEnumPrinters EnumPrinters;
|
||||
WINPR_ATTR_NODISCARD pcEnumPrinters EnumPrinters;
|
||||
pcReleaseEnumPrinters ReleaseEnumPrinters;
|
||||
pcGetPrinter GetPrinter;
|
||||
WINPR_ATTR_NODISCARD pcGetPrinter GetPrinter;
|
||||
|
||||
pcReferencePrinterDriver AddRef;
|
||||
pcReferencePrinterDriver ReleaseRef;
|
||||
@@ -64,8 +64,8 @@ extern "C"
|
||||
|
||||
size_t references;
|
||||
rdpPrinterDriver* backend;
|
||||
pcCreatePrintJob CreatePrintJob;
|
||||
pcFindPrintJob FindPrintJob;
|
||||
WINPR_ATTR_NODISCARD pcCreatePrintJob CreatePrintJob;
|
||||
WINPR_ATTR_NODISCARD pcFindPrintJob FindPrintJob;
|
||||
pcReferencePrinter AddRef;
|
||||
pcReferencePrinter ReleaseRef;
|
||||
};
|
||||
@@ -78,7 +78,7 @@ extern "C"
|
||||
UINT32 id;
|
||||
rdpPrinter* printer;
|
||||
|
||||
pcWritePrintJob Write;
|
||||
WINPR_ATTR_NODISCARD pcWritePrintJob Write;
|
||||
pcClosePrintJob Close;
|
||||
};
|
||||
|
||||
|
||||
@@ -101,37 +101,37 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcRailClientExecute ClientExecute;
|
||||
pcRailClientActivate ClientActivate;
|
||||
pcRailClientSystemParam ClientSystemParam;
|
||||
pcRailServerSystemParam ServerSystemParam;
|
||||
pcRailClientSystemCommand ClientSystemCommand;
|
||||
pcRailClientHandshake ClientHandshake;
|
||||
pcRailServerHandshake ServerHandshake;
|
||||
pcRailServerHandshakeEx ServerHandshakeEx;
|
||||
pcRailClientNotifyEvent ClientNotifyEvent;
|
||||
pcRailClientWindowMove ClientWindowMove;
|
||||
pcRailServerLocalMoveSize ServerLocalMoveSize;
|
||||
pcRailServerMinMaxInfo ServerMinMaxInfo;
|
||||
pcRailClientInformation ClientInformation;
|
||||
pcRailClientSystemMenu ClientSystemMenu;
|
||||
pcRailServerTaskBarInfo ServerTaskBarInfo;
|
||||
pcRailClientLanguageBarInfo ClientLanguageBarInfo;
|
||||
pcRailServerLanguageBarInfo ServerLanguageBarInfo;
|
||||
pcRailClientLanguageIMEInfo ClientLanguageIMEInfo;
|
||||
pcRailServerExecuteResult ServerExecuteResult;
|
||||
pcRailClientGetAppIdRequest ClientGetAppIdRequest;
|
||||
pcRailServerGetAppIdResponse ServerGetAppIdResponse;
|
||||
pcRailServerZOrderSync ServerZOrderSync;
|
||||
pcRailClientCloak ClientCloak;
|
||||
pcRailServerCloak ServerCloak;
|
||||
pcRailServerPowerDisplayRequest ServerPowerDisplayRequest;
|
||||
pcRailClientSnapArrange ClientSnapArrange;
|
||||
pcRailServerGetAppidResponseExtended ServerGetAppidResponseExtended;
|
||||
pcRailClientCompartmentInfo ClientCompartmentInfo;
|
||||
pcRailOnOpen OnOpen;
|
||||
pcRailClientTextScale ClientTextScale;
|
||||
pcRailClientCaretBlinkRate ClientCaretBlinkRate;
|
||||
WINPR_ATTR_NODISCARD pcRailClientExecute ClientExecute;
|
||||
WINPR_ATTR_NODISCARD pcRailClientActivate ClientActivate;
|
||||
WINPR_ATTR_NODISCARD pcRailClientSystemParam ClientSystemParam;
|
||||
WINPR_ATTR_NODISCARD pcRailServerSystemParam ServerSystemParam;
|
||||
WINPR_ATTR_NODISCARD pcRailClientSystemCommand ClientSystemCommand;
|
||||
WINPR_ATTR_NODISCARD pcRailClientHandshake ClientHandshake;
|
||||
WINPR_ATTR_NODISCARD pcRailServerHandshake ServerHandshake;
|
||||
WINPR_ATTR_NODISCARD pcRailServerHandshakeEx ServerHandshakeEx;
|
||||
WINPR_ATTR_NODISCARD pcRailClientNotifyEvent ClientNotifyEvent;
|
||||
WINPR_ATTR_NODISCARD pcRailClientWindowMove ClientWindowMove;
|
||||
WINPR_ATTR_NODISCARD pcRailServerLocalMoveSize ServerLocalMoveSize;
|
||||
WINPR_ATTR_NODISCARD pcRailServerMinMaxInfo ServerMinMaxInfo;
|
||||
WINPR_ATTR_NODISCARD pcRailClientInformation ClientInformation;
|
||||
WINPR_ATTR_NODISCARD pcRailClientSystemMenu ClientSystemMenu;
|
||||
WINPR_ATTR_NODISCARD pcRailServerTaskBarInfo ServerTaskBarInfo;
|
||||
WINPR_ATTR_NODISCARD pcRailClientLanguageBarInfo ClientLanguageBarInfo;
|
||||
WINPR_ATTR_NODISCARD pcRailServerLanguageBarInfo ServerLanguageBarInfo;
|
||||
WINPR_ATTR_NODISCARD pcRailClientLanguageIMEInfo ClientLanguageIMEInfo;
|
||||
WINPR_ATTR_NODISCARD pcRailServerExecuteResult ServerExecuteResult;
|
||||
WINPR_ATTR_NODISCARD pcRailClientGetAppIdRequest ClientGetAppIdRequest;
|
||||
WINPR_ATTR_NODISCARD pcRailServerGetAppIdResponse ServerGetAppIdResponse;
|
||||
WINPR_ATTR_NODISCARD pcRailServerZOrderSync ServerZOrderSync;
|
||||
WINPR_ATTR_NODISCARD pcRailClientCloak ClientCloak;
|
||||
WINPR_ATTR_NODISCARD pcRailServerCloak ServerCloak;
|
||||
WINPR_ATTR_NODISCARD pcRailServerPowerDisplayRequest ServerPowerDisplayRequest;
|
||||
WINPR_ATTR_NODISCARD pcRailClientSnapArrange ClientSnapArrange;
|
||||
WINPR_ATTR_NODISCARD pcRailServerGetAppidResponseExtended ServerGetAppidResponseExtended;
|
||||
WINPR_ATTR_NODISCARD pcRailClientCompartmentInfo ClientCompartmentInfo;
|
||||
WINPR_ATTR_NODISCARD pcRailOnOpen OnOpen;
|
||||
WINPR_ATTR_NODISCARD pcRailClientTextScale ClientTextScale;
|
||||
WINPR_ATTR_NODISCARD pcRailClientCaretBlinkRate ClientCaretBlinkRate;
|
||||
};
|
||||
|
||||
FREERDP_API UINT client_rail_server_start_cmd(RailClientContext* context);
|
||||
|
||||
@@ -86,9 +86,9 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcRdpdrRegisterDevice RdpdrRegisterDevice;
|
||||
pcRdpdrUnregisterDevice RdpdrUnregisterDevice;
|
||||
pcRdpdrHotplugDevice RdpdrHotplugDevice;
|
||||
WINPR_ATTR_NODISCARD pcRdpdrRegisterDevice RdpdrRegisterDevice;
|
||||
WINPR_ATTR_NODISCARD pcRdpdrUnregisterDevice RdpdrUnregisterDevice;
|
||||
WINPR_ATTR_NODISCARD pcRdpdrHotplugDevice RdpdrHotplugDevice;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -71,34 +71,34 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcRdpeiGetVersion GetVersion;
|
||||
pcRdpeiGetFeatures GetFeatures;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiGetVersion GetVersion;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiGetFeatures GetFeatures;
|
||||
|
||||
pcRdpeiAddContact AddContact;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiAddContact AddContact;
|
||||
|
||||
pcRdpeiTouchEvent TouchBegin;
|
||||
pcRdpeiTouchEvent TouchUpdate;
|
||||
pcRdpeiTouchEvent TouchEnd;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiTouchEvent TouchBegin;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiTouchEvent TouchUpdate;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiTouchEvent TouchEnd;
|
||||
|
||||
pcRdpeiAddPen AddPen;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiAddPen AddPen;
|
||||
|
||||
pcRdpeiPen PenBegin;
|
||||
pcRdpeiPen PenUpdate;
|
||||
pcRdpeiPen PenEnd;
|
||||
pcRdpeiPen PenHoverBegin;
|
||||
pcRdpeiPen PenHoverUpdate;
|
||||
pcRdpeiPen PenHoverCancel;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenBegin;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenUpdate;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenEnd;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenHoverBegin;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenHoverUpdate;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenHoverCancel;
|
||||
|
||||
pcRdpeiSuspendTouch SuspendTouch;
|
||||
pcRdpeiResumeTouch ResumeTouch;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiSuspendTouch SuspendTouch;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiResumeTouch ResumeTouch;
|
||||
|
||||
pcRdpeiTouchEvent TouchCancel;
|
||||
pcRdpeiTouchRawEvent TouchRawEvent;
|
||||
pcRdpeiTouchRawEventVA TouchRawEventVA;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiTouchEvent TouchCancel;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiTouchRawEvent TouchRawEvent;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiTouchRawEventVA TouchRawEventVA;
|
||||
|
||||
pcRdpeiPen PenCancel;
|
||||
pcRdpeiPenRawEvent PenRawEvent;
|
||||
pcRdpeiPenRawEventVA PenRawEventVA;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPen PenCancel;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPenRawEvent PenRawEvent;
|
||||
WINPR_ATTR_NODISCARD pcRdpeiPenRawEventVA PenRawEventVA;
|
||||
|
||||
UINT32 clientFeaturesMask;
|
||||
};
|
||||
|
||||
@@ -125,52 +125,52 @@ extern "C"
|
||||
void* custom;
|
||||
|
||||
/* Implementations require locking */
|
||||
pcRdpgfxResetGraphics ResetGraphics;
|
||||
pcRdpgfxStartFrame StartFrame;
|
||||
pcRdpgfxEndFrame EndFrame;
|
||||
pcRdpgfxSurfaceCommand SurfaceCommand;
|
||||
pcRdpgfxDeleteEncodingContext DeleteEncodingContext;
|
||||
pcRdpgfxCreateSurface CreateSurface;
|
||||
pcRdpgfxDeleteSurface DeleteSurface;
|
||||
pcRdpgfxSolidFill SolidFill;
|
||||
pcRdpgfxSurfaceToSurface SurfaceToSurface;
|
||||
pcRdpgfxSurfaceToCache SurfaceToCache;
|
||||
pcRdpgfxCacheToSurface CacheToSurface;
|
||||
pcRdpgfxCacheImportOffer CacheImportOffer;
|
||||
pcRdpgfxCacheImportReply CacheImportReply;
|
||||
pcRdpgfxImportCacheEntry ImportCacheEntry;
|
||||
pcRdpgfxExportCacheEntry ExportCacheEntry;
|
||||
pcRdpgfxEvictCacheEntry EvictCacheEntry;
|
||||
pcRdpgfxMapSurfaceToOutput MapSurfaceToOutput;
|
||||
pcRdpgfxMapSurfaceToScaledOutput MapSurfaceToScaledOutput;
|
||||
pcRdpgfxMapSurfaceToWindow MapSurfaceToWindow;
|
||||
pcRdpgfxMapSurfaceToScaledWindow MapSurfaceToScaledWindow;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxResetGraphics ResetGraphics;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxStartFrame StartFrame;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxEndFrame EndFrame;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxSurfaceCommand SurfaceCommand;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxDeleteEncodingContext DeleteEncodingContext;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxCreateSurface CreateSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxDeleteSurface DeleteSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxSolidFill SolidFill;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxSurfaceToSurface SurfaceToSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxSurfaceToCache SurfaceToCache;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxCacheToSurface CacheToSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxCacheImportOffer CacheImportOffer;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxCacheImportReply CacheImportReply;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxImportCacheEntry ImportCacheEntry;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxExportCacheEntry ExportCacheEntry;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxEvictCacheEntry EvictCacheEntry;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxMapSurfaceToOutput MapSurfaceToOutput;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxMapSurfaceToScaledOutput MapSurfaceToScaledOutput;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxMapSurfaceToWindow MapSurfaceToWindow;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxMapSurfaceToScaledWindow MapSurfaceToScaledWindow;
|
||||
|
||||
pcRdpgfxGetSurfaceIds GetSurfaceIds;
|
||||
pcRdpgfxSetSurfaceData SetSurfaceData;
|
||||
pcRdpgfxGetSurfaceData GetSurfaceData;
|
||||
pcRdpgfxSetCacheSlotData SetCacheSlotData;
|
||||
pcRdpgfxGetCacheSlotData GetCacheSlotData;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxGetSurfaceIds GetSurfaceIds;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxSetSurfaceData SetSurfaceData;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxGetSurfaceData GetSurfaceData;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxSetCacheSlotData SetCacheSlotData;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxGetCacheSlotData GetCacheSlotData;
|
||||
|
||||
/* Proxy callbacks */
|
||||
pcRdpgfxOnOpen OnOpen;
|
||||
pcRdpgfxOnClose OnClose;
|
||||
pcRdpgfxCapsAdvertise CapsAdvertise;
|
||||
pcRdpgfxCapsConfirm CapsConfirm;
|
||||
pcRdpgfxFrameAcknowledge FrameAcknowledge;
|
||||
pcRdpgfxQoeFrameAcknowledge QoeFrameAcknowledge;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxOnOpen OnOpen;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxOnClose OnClose;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxCapsAdvertise CapsAdvertise;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxCapsConfirm CapsConfirm;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxFrameAcknowledge FrameAcknowledge;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxQoeFrameAcknowledge QoeFrameAcknowledge;
|
||||
|
||||
/* No locking required */
|
||||
pcRdpgfxUpdateSurfaces UpdateSurfaces;
|
||||
pcRdpgfxUpdateSurfaceArea UpdateSurfaceArea;
|
||||
pcRdpgfxUpdateWindowFromSurface UpdateWindowFromSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxUpdateSurfaces UpdateSurfaces;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxUpdateSurfaceArea UpdateSurfaceArea;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxUpdateWindowFromSurface UpdateWindowFromSurface;
|
||||
|
||||
/* These callbacks allow creating/destroying a window directly
|
||||
* mapped to a surface.
|
||||
* NOTE: The surface is already locked.
|
||||
*/
|
||||
pcRdpgfxMapWindowForSurface MapWindowForSurface;
|
||||
pcRdpgfxUnmapWindowForSurface UnmapWindowForSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxMapWindowForSurface MapWindowForSurface;
|
||||
WINPR_ATTR_NODISCARD pcRdpgfxUnmapWindowForSurface UnmapWindowForSurface;
|
||||
|
||||
CRITICAL_SECTION mux;
|
||||
rdpCodecs* codecs;
|
||||
|
||||
@@ -55,17 +55,17 @@ extern "C"
|
||||
{
|
||||
rdpsndPlugin* rdpsnd;
|
||||
|
||||
pcFormatSupported FormatSupported;
|
||||
pcOpen Open;
|
||||
pcGetVolume GetVolume;
|
||||
pcSetVolume SetVolume;
|
||||
pcPlay Play;
|
||||
WINPR_ATTR_NODISCARD pcFormatSupported FormatSupported;
|
||||
WINPR_ATTR_NODISCARD pcOpen Open;
|
||||
WINPR_ATTR_NODISCARD pcGetVolume GetVolume;
|
||||
WINPR_ATTR_NODISCARD pcSetVolume SetVolume;
|
||||
WINPR_ATTR_NODISCARD pcPlay Play;
|
||||
pcStart Start; /* Deprecated, unused. */
|
||||
pcClose Close;
|
||||
pcFree Free;
|
||||
pcDefaultFormat DefaultFormat;
|
||||
pcServerFormatAnnounce ServerFormatAnnounce;
|
||||
pcPlayEx PlayEx;
|
||||
WINPR_ATTR_NODISCARD pcDefaultFormat DefaultFormat;
|
||||
WINPR_ATTR_NODISCARD pcServerFormatAnnounce ServerFormatAnnounce;
|
||||
WINPR_ATTR_NODISCARD pcPlayEx PlayEx;
|
||||
};
|
||||
|
||||
#define RDPSND_DEVICE_EXPORT_FUNC_NAME "freerdp_rdpsnd_client_subsystem_entry"
|
||||
|
||||
@@ -69,7 +69,7 @@ extern "C"
|
||||
void* handle;
|
||||
void* custom;
|
||||
|
||||
pcTsmfFrameEvent FrameEvent;
|
||||
WINPR_ATTR_NODISCARD pcTsmfFrameEvent FrameEvent;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -58,8 +58,8 @@ extern "C"
|
||||
|
||||
pcVideoSetGeometry setGeometry;
|
||||
pcVideoTimer timer;
|
||||
pcVideoCreateSurface createSurface;
|
||||
pcVideoShowSurface showSurface;
|
||||
WINPR_ATTR_NODISCARD pcVideoCreateSurface createSurface;
|
||||
WINPR_ATTR_NODISCARD pcVideoShowSurface showSurface;
|
||||
pcVideoDeleteSurface deleteSurface;
|
||||
};
|
||||
|
||||
|
||||
@@ -73,7 +73,8 @@ extern "C"
|
||||
struct s_IWTSListener
|
||||
{
|
||||
/* Retrieves the listener-specific configuration. */
|
||||
UINT (*GetConfiguration)(IWTSListener* pListener, void** ppPropertyBag);
|
||||
WINPR_ATTR_NODISCARD UINT (*GetConfiguration)(IWTSListener* pListener,
|
||||
void** ppPropertyBag);
|
||||
|
||||
void* pInterface;
|
||||
};
|
||||
@@ -81,45 +82,47 @@ extern "C"
|
||||
struct s_IWTSVirtualChannel
|
||||
{
|
||||
/* Starts a write request on the channel. */
|
||||
UINT(*Write)
|
||||
(IWTSVirtualChannel* pChannel, ULONG cbSize, const BYTE* pBuffer, void* pReserved);
|
||||
WINPR_ATTR_NODISCARD UINT (*Write)(IWTSVirtualChannel* pChannel, ULONG cbSize,
|
||||
const BYTE* pBuffer, void* pReserved);
|
||||
/* Closes the channel. */
|
||||
UINT (*Close)(IWTSVirtualChannel* pChannel);
|
||||
WINPR_ATTR_NODISCARD UINT (*Close)(IWTSVirtualChannel* pChannel);
|
||||
};
|
||||
|
||||
struct s_IWTSVirtualChannelManager
|
||||
{
|
||||
/* Returns an instance of a listener object that listens on a specific
|
||||
endpoint, or creates a static channel. */
|
||||
UINT(*CreateListener)
|
||||
(IWTSVirtualChannelManager* pChannelMgr, const char* pszChannelName, ULONG ulFlags,
|
||||
IWTSListenerCallback* pListenerCallback, IWTSListener** ppListener);
|
||||
WINPR_ATTR_NODISCARD UINT (*CreateListener)(IWTSVirtualChannelManager* pChannelMgr,
|
||||
const char* pszChannelName, ULONG ulFlags,
|
||||
IWTSListenerCallback* pListenerCallback,
|
||||
IWTSListener** ppListener);
|
||||
/* Find the channel or ID to send data to a specific endpoint. */
|
||||
UINT32 (*GetChannelId)(IWTSVirtualChannel* channel);
|
||||
IWTSVirtualChannel* (*FindChannelById)(IWTSVirtualChannelManager* pChannelMgr,
|
||||
UINT32 ChannelId);
|
||||
const char* (*GetChannelName)(IWTSVirtualChannel* channel);
|
||||
WINPR_ATTR_NODISCARD UINT32 (*GetChannelId)(IWTSVirtualChannel* channel);
|
||||
WINPR_ATTR_NODISCARD IWTSVirtualChannel* (*FindChannelById)(
|
||||
IWTSVirtualChannelManager* pChannelMgr, UINT32 ChannelId);
|
||||
WINPR_ATTR_NODISCARD const char* (*GetChannelName)(IWTSVirtualChannel* channel);
|
||||
UINT (*DestroyListener)(IWTSVirtualChannelManager* pChannelMgr, IWTSListener* ppListener);
|
||||
};
|
||||
|
||||
struct s_IWTSPlugin
|
||||
{
|
||||
/* Used for the first call that is made from the client to the plug-in. */
|
||||
UINT (*Initialize)(IWTSPlugin* pPlugin, IWTSVirtualChannelManager* pChannelMgr);
|
||||
WINPR_ATTR_NODISCARD UINT (*Initialize)(IWTSPlugin* pPlugin,
|
||||
IWTSVirtualChannelManager* pChannelMgr);
|
||||
/* Notifies the plug-in that the Remote Desktop Connection (RDC) client
|
||||
has successfully connected to the Remote Desktop Session Host (RD
|
||||
Session Host) server. */
|
||||
UINT (*Connected)(IWTSPlugin* pPlugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*Connected)(IWTSPlugin* pPlugin);
|
||||
/* Notifies the plug-in that the Remote Desktop Connection (RDC) client
|
||||
has disconnected from the RD Session Host server. */
|
||||
UINT (*Disconnected)(IWTSPlugin* pPlugin, DWORD dwDisconnectCode);
|
||||
WINPR_ATTR_NODISCARD UINT (*Disconnected)(IWTSPlugin* pPlugin, DWORD dwDisconnectCode);
|
||||
/* Notifies the plug-in that the Remote Desktop Connection (RDC) client
|
||||
has terminated. */
|
||||
UINT (*Terminated)(IWTSPlugin* pPlugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*Terminated)(IWTSPlugin* pPlugin);
|
||||
|
||||
UINT (*Attached)(IWTSPlugin* pPlugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*Attached)(IWTSPlugin* pPlugin);
|
||||
|
||||
UINT (*Detached)(IWTSPlugin* pPlugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*Detached)(IWTSPlugin* pPlugin);
|
||||
|
||||
/* Extended */
|
||||
|
||||
@@ -130,24 +133,25 @@ extern "C"
|
||||
{
|
||||
/* Accepts or denies a connection request for an incoming connection to
|
||||
the associated listener. */
|
||||
UINT(*OnNewChannelConnection)
|
||||
(IWTSListenerCallback* pListenerCallback, IWTSVirtualChannel* pChannel, BYTE* Data,
|
||||
BOOL* pbAccept, IWTSVirtualChannelCallback** ppCallback);
|
||||
WINPR_ATTR_NODISCARD
|
||||
UINT (*OnNewChannelConnection)(IWTSListenerCallback* pListenerCallback,
|
||||
IWTSVirtualChannel* pChannel, BYTE* Data, BOOL* pbAccept,
|
||||
IWTSVirtualChannelCallback** ppCallback);
|
||||
|
||||
void* pInterface;
|
||||
};
|
||||
|
||||
struct s_IWTSVirtualChannelCallback
|
||||
{
|
||||
UINT(*OnDataReceived)
|
||||
(IWTSVirtualChannelCallback* pChannelCallback,
|
||||
wStream* data); /**< Notifies the user about data that is being received. */
|
||||
UINT(*OnOpen)
|
||||
(IWTSVirtualChannelCallback*
|
||||
pChannelCallback); /**< Notifies the user that the channel has been opened. */
|
||||
UINT(*OnClose)
|
||||
(IWTSVirtualChannelCallback*
|
||||
pChannelCallback); /**< Notifies the user that the channel has been closed. */
|
||||
WINPR_ATTR_NODISCARD UINT (*OnDataReceived)(
|
||||
IWTSVirtualChannelCallback* pChannelCallback,
|
||||
wStream* data); /**< Notifies the user about data that is being received. */
|
||||
WINPR_ATTR_NODISCARD UINT (*OnOpen)(
|
||||
IWTSVirtualChannelCallback*
|
||||
pChannelCallback); /**< Notifies the user that the channel has been opened. */
|
||||
WINPR_ATTR_NODISCARD UINT (*OnClose)(
|
||||
IWTSVirtualChannelCallback*
|
||||
pChannelCallback); /**< Notifies the user that the channel has been closed. */
|
||||
|
||||
void* pInterface;
|
||||
};
|
||||
@@ -159,15 +163,15 @@ extern "C"
|
||||
typedef struct S_IDRDYNVC_ENTRY_POINTS IDRDYNVC_ENTRY_POINTS;
|
||||
struct S_IDRDYNVC_ENTRY_POINTS
|
||||
{
|
||||
UINT(*RegisterPlugin)
|
||||
(IDRDYNVC_ENTRY_POINTS* pEntryPoints, const char* name, IWTSPlugin* pPlugin);
|
||||
WINPR_ATTR_NODISCARD UINT (*RegisterPlugin)(IDRDYNVC_ENTRY_POINTS* pEntryPoints,
|
||||
const char* name, IWTSPlugin* pPlugin);
|
||||
IWTSPlugin* (*GetPlugin)(IDRDYNVC_ENTRY_POINTS* pEntryPoints, const char* name);
|
||||
const ADDIN_ARGV* (*GetPluginData)(IDRDYNVC_ENTRY_POINTS* pEntryPoints);
|
||||
rdpSettings* (*GetRdpSettings)(IDRDYNVC_ENTRY_POINTS* pEntryPoints);
|
||||
rdpContext* (*GetRdpContext)(IDRDYNVC_ENTRY_POINTS* pEntryPoints);
|
||||
WINPR_ATTR_NODISCARD rdpSettings* (*GetRdpSettings)(IDRDYNVC_ENTRY_POINTS* pEntryPoints);
|
||||
WINPR_ATTR_NODISCARD rdpContext* (*GetRdpContext)(IDRDYNVC_ENTRY_POINTS* pEntryPoints);
|
||||
};
|
||||
|
||||
typedef UINT(VCAPITYPE* PDVC_PLUGIN_ENTRY)(IDRDYNVC_ENTRY_POINTS*);
|
||||
typedef WINPR_ATTR_NODISCARD UINT(VCAPITYPE* PDVC_PLUGIN_ENTRY)(IDRDYNVC_ENTRY_POINTS*);
|
||||
|
||||
void* get_callback_by_name(const char* name, void** context);
|
||||
void add_callback_by_name(const char* name, void* fkt, void* context);
|
||||
|
||||
@@ -35,29 +35,32 @@ extern "C"
|
||||
struct rdp_ext_plugin
|
||||
{
|
||||
void* ext;
|
||||
int (*init)(rdpExtPlugin* plugin, freerdp* instance);
|
||||
int (*uninit)(rdpExtPlugin* plugin, freerdp* instance);
|
||||
WINPR_ATTR_NODISCARD int (*init)(rdpExtPlugin* plugin, freerdp* instance);
|
||||
WINPR_ATTR_NODISCARD int (*uninit)(rdpExtPlugin* plugin, freerdp* instance);
|
||||
};
|
||||
|
||||
typedef UINT32(FREERDP_CC* PFREERDP_EXTENSION_HOOK)(rdpExtPlugin* plugin, freerdp* instance);
|
||||
typedef WINPR_ATTR_NODISCARD UINT32(FREERDP_CC* PFREERDP_EXTENSION_HOOK)(rdpExtPlugin* plugin,
|
||||
freerdp* instance);
|
||||
|
||||
typedef UINT32(FREERDP_CC* PREGISTEREXTENSION)(rdpExtPlugin* plugin);
|
||||
typedef UINT32(FREERDP_CC* PREGISTERPRECONNECTHOOK)(rdpExtPlugin* plugin,
|
||||
PFREERDP_EXTENSION_HOOK hook);
|
||||
typedef UINT32(FREERDP_CC* PREGISTERPOSTCONNECTHOOK)(rdpExtPlugin* plugin,
|
||||
PFREERDP_EXTENSION_HOOK hook);
|
||||
typedef WINPR_ATTR_NODISCARD UINT32(FREERDP_CC* PREGISTEREXTENSION)(rdpExtPlugin* plugin);
|
||||
typedef WINPR_ATTR_NODISCARD
|
||||
UINT32(FREERDP_CC* PREGISTERPRECONNECTHOOK)(rdpExtPlugin* plugin, PFREERDP_EXTENSION_HOOK hook);
|
||||
typedef WINPR_ATTR_NODISCARD
|
||||
UINT32(FREERDP_CC* PREGISTERPOSTCONNECTHOOK)(rdpExtPlugin* plugin,
|
||||
PFREERDP_EXTENSION_HOOK hook);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
void* ext; /* Reference to internal instance */
|
||||
PREGISTEREXTENSION pRegisterExtension;
|
||||
PREGISTERPRECONNECTHOOK pRegisterPreConnectHook;
|
||||
PREGISTERPOSTCONNECTHOOK pRegisterPostConnectHook;
|
||||
WINPR_ATTR_NODISCARD PREGISTEREXTENSION pRegisterExtension;
|
||||
WINPR_ATTR_NODISCARD PREGISTERPRECONNECTHOOK pRegisterPreConnectHook;
|
||||
WINPR_ATTR_NODISCARD PREGISTERPOSTCONNECTHOOK pRegisterPostConnectHook;
|
||||
void* data;
|
||||
} FREERDP_EXTENSION_ENTRY_POINTS;
|
||||
typedef FREERDP_EXTENSION_ENTRY_POINTS* PFREERDP_EXTENSION_ENTRY_POINTS;
|
||||
|
||||
typedef int(FREERDP_CC* PFREERDP_EXTENSION_ENTRY)(PFREERDP_EXTENSION_ENTRY_POINTS pEntryPoints);
|
||||
typedef WINPR_ATTR_NODISCARD int(FREERDP_CC* PFREERDP_EXTENSION_ENTRY)(
|
||||
PFREERDP_EXTENSION_ENTRY_POINTS pEntryPoints);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -477,7 +477,7 @@ owned by rdpRdp */
|
||||
additional information after that.
|
||||
*/
|
||||
|
||||
ALIGN64 pContextNew
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pContextNew
|
||||
ContextNew; /**< (offset 33)
|
||||
Callback for context allocation
|
||||
Can be set before calling freerdp_context_new() to have it executed after
|
||||
@@ -492,36 +492,37 @@ owned by rdpRdp */
|
||||
|
||||
ALIGN64 UINT ConnectionCallbackState; /* 47 */
|
||||
|
||||
ALIGN64 pConnectCallback
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pConnectCallback
|
||||
PreConnect; /**< (offset 48)
|
||||
Callback for pre-connect operations.
|
||||
Can be set before calling freerdp_connect() to have it executed before the
|
||||
actual connection happens. Must be set to NULL if not needed. */
|
||||
|
||||
ALIGN64 pConnectCallback
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pConnectCallback
|
||||
PostConnect; /**< (offset 49)
|
||||
Callback for post-connect operations.
|
||||
Can be set before calling freerdp_connect() to have it executed after the
|
||||
actual connection has succeeded. Must be set to NULL if not needed. */
|
||||
|
||||
ALIGN64 pAuthenticate Authenticate; /**< (offset 50)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pAuthenticate Authenticate; /**< (offset 50)
|
||||
Callback for authentication.
|
||||
It is used to get the username/password when it was not
|
||||
provided at connection time. */
|
||||
#if defined(WITH_FREERDP_DEPRECATED)
|
||||
WINPR_DEPRECATED_VAR("Use VerifyCertificateEx or VerifyX509Certificate instead",
|
||||
ALIGN64 pVerifyCertificate VerifyCertificate;) /**< (offset 51) */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pVerifyCertificate
|
||||
VerifyCertificate;) /**< (offset 51) */
|
||||
WINPR_DEPRECATED_VAR("Use VerifyChangedCertificateEx or VerifyX509Certificate instead",
|
||||
ALIGN64 pVerifyChangedCertificate
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pVerifyChangedCertificate
|
||||
VerifyChangedCertificate;) /**< (offset 52) */
|
||||
#else
|
||||
ALIGN64 UINT64 reserved[2];
|
||||
#endif
|
||||
ALIGN64 pVerifyX509Certificate
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pVerifyX509Certificate
|
||||
VerifyX509Certificate; /**< (offset 53) Callback for X509 certificate verification
|
||||
(PEM format) */
|
||||
|
||||
ALIGN64 pLogonErrorInfo
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pLogonErrorInfo
|
||||
LogonErrorInfo; /**< (offset 54) Callback for logon error info, important for logon
|
||||
system messages with RemoteApp */
|
||||
|
||||
@@ -534,22 +535,22 @@ owned by rdpRdp */
|
||||
channels.
|
||||
*/
|
||||
|
||||
ALIGN64 pAuthenticate GatewayAuthenticate; /**< (offset 56)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pAuthenticate GatewayAuthenticate; /**< (offset 56)
|
||||
Callback for gateway authentication.
|
||||
It is used to get the username/password when it was not
|
||||
provided at connection time. */
|
||||
|
||||
ALIGN64 pPresentGatewayMessage PresentGatewayMessage; /**< (offset 57)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pPresentGatewayMessage PresentGatewayMessage; /**< (offset 57)
|
||||
Callback for gateway consent messages.
|
||||
It is used to present consent messages to the user. */
|
||||
|
||||
ALIGN64 pConnectCallback Redirect; /**< (offset 58)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pConnectCallback Redirect; /**< (offset 58)
|
||||
Callback for redirect operations.
|
||||
Can be set after
|
||||
rdp_client_disconnect_and_clear and applying redirection settings but before
|
||||
rdp_client_connect() to have it executed after the actual connection has
|
||||
succeeded. Must be set to NULL if not needed. */
|
||||
ALIGN64 pConnectCallback
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pConnectCallback
|
||||
LoadChannels; /**< (offset 59)
|
||||
* callback for loading channel configuration. Might be called multiple
|
||||
* times when redirection occurs. */
|
||||
@@ -563,46 +564,47 @@ owned by rdpRdp */
|
||||
*/
|
||||
UINT64 paddingD[64 - 61]; /* 61 */
|
||||
|
||||
ALIGN64 pSendChannelData
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pSendChannelData
|
||||
SendChannelData; /* (offset 64)
|
||||
Callback for sending data to a channel.
|
||||
By default, it is set by freerdp_new() to freerdp_send_channel_data(), which
|
||||
eventually calls freerdp_channel_send() */
|
||||
ALIGN64 pReceiveChannelData
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pReceiveChannelData
|
||||
ReceiveChannelData; /* (offset 65)
|
||||
Callback for receiving data from a channel.
|
||||
This is called by freerdp_channel_process() (if not NULL).
|
||||
Clients will typically use a function that calls freerdp_channels_data()
|
||||
to perform the needed tasks. */
|
||||
|
||||
ALIGN64 pVerifyCertificateEx
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pVerifyCertificateEx
|
||||
VerifyCertificateEx; /**< (offset 66)
|
||||
Callback for certificate validation.
|
||||
Used to verify that an unknown certificate is trusted. */
|
||||
ALIGN64 pVerifyChangedCertificateEx
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pVerifyChangedCertificateEx
|
||||
VerifyChangedCertificateEx; /**< (offset 67)
|
||||
Callback for changed certificate validation.
|
||||
Used when a certificate differs from stored fingerprint. */
|
||||
ALIGN64 pSendChannelPacket
|
||||
SendChannelPacket; /* (offset 68)
|
||||
* Callback for sending RAW data to a channel. In contrast to
|
||||
* SendChannelData data fragmentation is up to the user and this
|
||||
* function sends data as is with the provided flags.
|
||||
*/
|
||||
ALIGN64 pAuthenticateEx AuthenticateEx; /**< (offset 69)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pSendChannelPacket
|
||||
SendChannelPacket; /* (offset 68)
|
||||
* Callback for sending RAW data to a channel. In contrast to
|
||||
* SendChannelData data fragmentation is up to the user and this
|
||||
* function sends data as is with the provided flags.
|
||||
*/
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pAuthenticateEx AuthenticateEx; /**< (offset 69)
|
||||
Callback for authentication.
|
||||
It is used to get the username/password. The reason
|
||||
argument tells why it was called. */
|
||||
ALIGN64 pChooseSmartcard
|
||||
ChooseSmartcard; /* (offset 70)
|
||||
Callback for choosing a smartcard for logon.
|
||||
Used when multiple smartcards are available. Returns an index into a list
|
||||
of SmartcardCertInfo pointers */
|
||||
ALIGN64 pGetAccessToken GetAccessToken; /* (offset 71)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pChooseSmartcard
|
||||
ChooseSmartcard; /* (offset 70)
|
||||
Callback for choosing a smartcard for logon.
|
||||
Used when multiple smartcards are available. Returns an index into a list
|
||||
of SmartcardCertInfo pointers */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pGetAccessToken GetAccessToken; /* (offset 71)
|
||||
Callback for obtaining an access token
|
||||
for \b AccessTokenType authentication */
|
||||
ALIGN64 pRetryDialog RetryDialog; /* (offset 72) Callback for displaying a dialog in case of
|
||||
something needs a retry */
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pRetryDialog
|
||||
RetryDialog; /* (offset 72) Callback for displaying a dialog in case of
|
||||
something needs a retry */
|
||||
UINT64 paddingE[80 - 73]; /* 73 */
|
||||
};
|
||||
|
||||
|
||||
@@ -47,11 +47,11 @@ extern "C"
|
||||
struct rdp_bitmap
|
||||
{
|
||||
size_t size; /* 0 */
|
||||
pBitmap_New New; /* 1 */
|
||||
pBitmap_Free Free; /* 2 */
|
||||
pBitmap_Paint Paint; /* 3 */
|
||||
pBitmap_Decompress Decompress; /* 4 */
|
||||
pBitmap_SetSurface SetSurface; /* 5 */
|
||||
WINPR_ATTR_NODISCARD pBitmap_New New; /* 1 */
|
||||
pBitmap_Free Free; /* 2 */
|
||||
WINPR_ATTR_NODISCARD pBitmap_Paint Paint; /* 3 */
|
||||
WINPR_ATTR_NODISCARD pBitmap_Decompress Decompress; /* 4 */
|
||||
WINPR_ATTR_NODISCARD pBitmap_SetSurface SetSurface; /* 5 */
|
||||
UINT32 paddingA[16 - 6]; /* 6 */
|
||||
|
||||
UINT32 left; /* 16 */
|
||||
@@ -89,12 +89,12 @@ extern "C"
|
||||
struct rdp_pointer
|
||||
{
|
||||
size_t size; /* 0 */
|
||||
pPointer_New New; /* 1 */
|
||||
WINPR_ATTR_NODISCARD pPointer_New New; /* 1 */
|
||||
pPointer_Free Free; /* 2 */
|
||||
pPointer_Set Set; /* 3 */
|
||||
pPointer_SetNull SetNull; /* 4*/
|
||||
pPointer_SetDefault SetDefault; /* 5 */
|
||||
pPointer_SetPosition SetPosition; /* 6 */
|
||||
WINPR_ATTR_NODISCARD pPointer_Set Set; /* 3 */
|
||||
WINPR_ATTR_NODISCARD pPointer_SetNull SetNull; /* 4*/
|
||||
WINPR_ATTR_NODISCARD pPointer_SetDefault SetDefault; /* 5 */
|
||||
WINPR_ATTR_NODISCARD pPointer_SetPosition SetPosition; /* 6 */
|
||||
UINT32 paddingA[16 - 7]; /* 7 */
|
||||
|
||||
UINT32 xPos; /* 16 */
|
||||
@@ -127,12 +127,12 @@ extern "C"
|
||||
struct rdp_glyph
|
||||
{
|
||||
size_t size; /* 0 */
|
||||
pGlyph_New New; /* 1 */
|
||||
WINPR_ATTR_NODISCARD pGlyph_New New; /* 1 */
|
||||
pGlyph_Free Free; /* 2 */
|
||||
pGlyph_Draw Draw; /* 3 */
|
||||
pGlyph_BeginDraw BeginDraw; /* 4 */
|
||||
pGlyph_EndDraw EndDraw; /* 5 */
|
||||
pGlyph_SetBounds SetBounds; /* 6 */
|
||||
WINPR_ATTR_NODISCARD pGlyph_Draw Draw; /* 3 */
|
||||
WINPR_ATTR_NODISCARD pGlyph_BeginDraw BeginDraw; /* 4 */
|
||||
WINPR_ATTR_NODISCARD pGlyph_EndDraw EndDraw; /* 5 */
|
||||
WINPR_ATTR_NODISCARD pGlyph_SetBounds SetBounds; /* 6 */
|
||||
UINT32 paddingA[16 - 7]; /* 7 */
|
||||
|
||||
INT32 x; /* 16 */
|
||||
|
||||
@@ -34,7 +34,7 @@ extern "C"
|
||||
|
||||
struct rdp_heartbeat
|
||||
{
|
||||
pServerHeartbeat ServerHeartbeat;
|
||||
WINPR_ATTR_NODISCARD pServerHeartbeat ServerHeartbeat;
|
||||
};
|
||||
|
||||
FREERDP_API BOOL freerdp_heartbeat_send_heartbeat_pdu(freerdp_peer* peer, BYTE period,
|
||||
|
||||
@@ -90,15 +90,15 @@ extern "C"
|
||||
void* param1; /* 1 */
|
||||
UINT32 paddingA[16 - 2]; /* 2 */
|
||||
|
||||
pSynchronizeEvent SynchronizeEvent; /* 16 */
|
||||
pKeyboardEvent KeyboardEvent; /* 17 */
|
||||
pUnicodeKeyboardEvent UnicodeKeyboardEvent; /* 18 */
|
||||
pMouseEvent MouseEvent; /* 19 */
|
||||
pExtendedMouseEvent ExtendedMouseEvent; /* 20 */
|
||||
pFocusInEvent FocusInEvent; /*21 */
|
||||
pKeyboardPauseEvent KeyboardPauseEvent; /* 22 */
|
||||
pRelMouseEvent RelMouseEvent; /* 23 */
|
||||
pQoEEvent QoEEvent; /* 24 */
|
||||
WINPR_ATTR_NODISCARD pSynchronizeEvent SynchronizeEvent; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pKeyboardEvent KeyboardEvent; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pUnicodeKeyboardEvent UnicodeKeyboardEvent; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pMouseEvent MouseEvent; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pExtendedMouseEvent ExtendedMouseEvent; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pFocusInEvent FocusInEvent; /*21 */
|
||||
WINPR_ATTR_NODISCARD pKeyboardPauseEvent KeyboardPauseEvent; /* 22 */
|
||||
WINPR_ATTR_NODISCARD pRelMouseEvent RelMouseEvent; /* 23 */
|
||||
WINPR_ATTR_NODISCARD pQoEEvent QoEEvent; /* 24 */
|
||||
|
||||
UINT32 paddingB[32 - 25]; /* 25 */
|
||||
};
|
||||
|
||||
@@ -56,22 +56,22 @@ extern "C"
|
||||
void* param3;
|
||||
void* param4;
|
||||
|
||||
psListenerOpen Open;
|
||||
psListenerOpenLocal OpenLocal;
|
||||
WINPR_ATTR_NODISCARD psListenerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psListenerOpenLocal OpenLocal;
|
||||
#if defined(WITH_FREERDP_DEPRECATED)
|
||||
WINPR_DEPRECATED_VAR("Use rdp_freerdp_listener::GetEventHandles instead",
|
||||
psListenerGetFileDescriptor GetFileDescriptor;)
|
||||
WINPR_ATTR_NODISCARD psListenerGetFileDescriptor GetFileDescriptor;)
|
||||
#else
|
||||
void* reserved;
|
||||
#endif
|
||||
psListenerGetEventHandles GetEventHandles;
|
||||
psListenerCheckFileDescriptor CheckFileDescriptor;
|
||||
WINPR_ATTR_NODISCARD psListenerGetEventHandles GetEventHandles;
|
||||
WINPR_ATTR_NODISCARD psListenerCheckFileDescriptor CheckFileDescriptor;
|
||||
psListenerClose Close;
|
||||
|
||||
psPeerAccepted PeerAccepted;
|
||||
psListenerOpenFromSocket OpenFromSocket;
|
||||
WINPR_ATTR_NODISCARD psPeerAccepted PeerAccepted;
|
||||
WINPR_ATTR_NODISCARD psListenerOpenFromSocket OpenFromSocket;
|
||||
|
||||
psListenerCheckFileDescriptor CheckPeerAcceptRestrictions;
|
||||
WINPR_ATTR_NODISCARD psListenerCheckFileDescriptor CheckPeerAcceptRestrictions;
|
||||
};
|
||||
|
||||
FREERDP_API void freerdp_listener_free(freerdp_listener* instance);
|
||||
|
||||
@@ -140,38 +140,39 @@ extern "C"
|
||||
|
||||
ALIGN64 void* ContextExtra;
|
||||
ALIGN64 size_t ContextSize;
|
||||
ALIGN64 psPeerContextNew ContextNew;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerContextNew ContextNew;
|
||||
ALIGN64 psPeerContextFree ContextFree;
|
||||
|
||||
ALIGN64 psPeerInitialize Initialize;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerInitialize Initialize;
|
||||
#if defined(WITH_FREERDP_DEPRECATED)
|
||||
WINPR_DEPRECATED_VAR("Use freerdp_peer::GetEventHandle instead",
|
||||
ALIGN64 psPeerGetFileDescriptor GetFileDescriptor;)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerGetFileDescriptor
|
||||
GetFileDescriptor;)
|
||||
#else
|
||||
UINT64 reserved;
|
||||
#endif
|
||||
ALIGN64 psPeerGetEventHandle GetEventHandle;
|
||||
ALIGN64 psPeerGetReceiveEventHandle GetReceiveEventHandle;
|
||||
ALIGN64 psPeerCheckFileDescriptor CheckFileDescriptor;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerGetEventHandle GetEventHandle;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerGetReceiveEventHandle GetReceiveEventHandle;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerCheckFileDescriptor CheckFileDescriptor;
|
||||
ALIGN64 psPeerClose Close;
|
||||
ALIGN64 psPeerDisconnect Disconnect;
|
||||
|
||||
ALIGN64 psPeerCapabilities Capabilities;
|
||||
ALIGN64 psPeerPostConnect PostConnect;
|
||||
ALIGN64 psPeerActivate Activate;
|
||||
ALIGN64 psPeerLogon Logon;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerCapabilities Capabilities;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerPostConnect PostConnect;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerActivate Activate;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerLogon Logon;
|
||||
|
||||
ALIGN64 psPeerSendServerRedirection SendServerRedirection;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerSendServerRedirection SendServerRedirection;
|
||||
|
||||
ALIGN64 psPeerSendChannelData SendChannelData;
|
||||
ALIGN64 psPeerReceiveChannelData ReceiveChannelData;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerSendChannelData SendChannelData;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerReceiveChannelData ReceiveChannelData;
|
||||
|
||||
ALIGN64 psPeerVirtualChannelOpen VirtualChannelOpen;
|
||||
ALIGN64 psPeerVirtualChannelClose VirtualChannelClose;
|
||||
ALIGN64 psPeerVirtualChannelRead VirtualChannelRead;
|
||||
ALIGN64 psPeerVirtualChannelWrite VirtualChannelWrite;
|
||||
ALIGN64 psPeerVirtualChannelGetData VirtualChannelGetData;
|
||||
ALIGN64 psPeerVirtualChannelSetData VirtualChannelSetData;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerVirtualChannelOpen VirtualChannelOpen;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerVirtualChannelClose VirtualChannelClose;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerVirtualChannelRead VirtualChannelRead;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerVirtualChannelWrite VirtualChannelWrite;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerVirtualChannelGetData VirtualChannelGetData;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerVirtualChannelSetData VirtualChannelSetData;
|
||||
|
||||
ALIGN64 int pId;
|
||||
ALIGN64 UINT32 ack_frame_id;
|
||||
@@ -181,21 +182,21 @@ extern "C"
|
||||
ALIGN64 BOOL authenticated;
|
||||
ALIGN64 SEC_WINNT_AUTH_IDENTITY identity;
|
||||
|
||||
ALIGN64 psPeerIsWriteBlocked IsWriteBlocked;
|
||||
ALIGN64 psPeerDrainOutputBuffer DrainOutputBuffer;
|
||||
ALIGN64 psPeerHasMoreToRead HasMoreToRead;
|
||||
ALIGN64 psPeerGetEventHandles GetEventHandles;
|
||||
ALIGN64 psPeerAdjustMonitorsLayout AdjustMonitorsLayout;
|
||||
ALIGN64 psPeerClientCapabilities ClientCapabilities;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerIsWriteBlocked IsWriteBlocked;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerDrainOutputBuffer DrainOutputBuffer;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerHasMoreToRead HasMoreToRead;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerGetEventHandles GetEventHandles;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerAdjustMonitorsLayout AdjustMonitorsLayout;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerClientCapabilities ClientCapabilities;
|
||||
#if defined(WITH_FREERDP_DEPRECATED)
|
||||
WINPR_DEPRECATED_VAR("Use freerdp_peer::SspiNtlmHashCallback instead",
|
||||
ALIGN64 psPeerComputeNtlmHash ComputeNtlmHash;)
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerComputeNtlmHash ComputeNtlmHash;)
|
||||
#else
|
||||
UINT64 reserved2;
|
||||
#endif
|
||||
ALIGN64 psPeerLicenseCallback LicenseCallback;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerLicenseCallback LicenseCallback;
|
||||
|
||||
ALIGN64 psPeerSendChannelPacket SendChannelPacket;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerSendChannelPacket SendChannelPacket;
|
||||
|
||||
/**
|
||||
* @brief SetState Function pointer allowing to manually set the state of the
|
||||
@@ -207,15 +208,15 @@ extern "C"
|
||||
*
|
||||
* \note Must be called after \b Initialize as that also modifies the state.
|
||||
*/
|
||||
ALIGN64 psPeerSetState SetState;
|
||||
ALIGN64 psPeerReachedState ReachedState;
|
||||
ALIGN64 psSspiNtlmHashCallback SspiNtlmHashCallback;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerSetState SetState;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerReachedState ReachedState;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psSspiNtlmHashCallback SspiNtlmHashCallback;
|
||||
/**
|
||||
* @brief RemoteCredentials Function pointer that will be called when remote
|
||||
* credentials guard are used by the peer and we receive the logonCreds (kerberos)
|
||||
* and supplementary creds (NTLM).
|
||||
*/
|
||||
ALIGN64 psPeerRemoteCredentials RemoteCredentials;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD psPeerRemoteCredentials RemoteCredentials;
|
||||
};
|
||||
|
||||
FREERDP_API void freerdp_peer_context_free(freerdp_peer* client);
|
||||
|
||||
@@ -101,12 +101,12 @@ extern "C"
|
||||
rdpContext* context; /* 0 */
|
||||
UINT32 paddingA[16 - 1]; /* 1 */
|
||||
|
||||
pPointerPosition PointerPosition; /* 16 */
|
||||
pPointerSystem PointerSystem; /* 17 */
|
||||
pPointerColor PointerColor; /* 18 */
|
||||
pPointerNew PointerNew; /* 19 */
|
||||
pPointerCached PointerCached; /* 20 */
|
||||
pPointerLarge PointerLarge; /* 21 */
|
||||
WINPR_ATTR_NODISCARD pPointerPosition PointerPosition; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pPointerSystem PointerSystem; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pPointerColor PointerColor; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pPointerNew PointerNew; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pPointerCached PointerCached; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pPointerLarge PointerLarge; /* 21 */
|
||||
UINT32 paddingB[32 - 22]; /* 22 */
|
||||
};
|
||||
typedef struct rdp_pointer_update rdpPointerUpdate;
|
||||
|
||||
@@ -423,9 +423,9 @@ typedef BOOL (*pMultiDstBlt)(rdpContext* context, const MULTI_DSTBLT_ORDER* mult
|
||||
typedef BOOL (*pMultiPatBlt)(rdpContext* context, const MULTI_PATBLT_ORDER* multi_patblt);
|
||||
typedef BOOL (*pMultiScrBlt)(rdpContext* context, const MULTI_SCRBLT_ORDER* multi_scrblt);
|
||||
typedef BOOL (*pMultiOpaqueRect)(rdpContext* context,
|
||||
const MULTI_OPAQUE_RECT_ORDER* multi_opaque_rect);
|
||||
const MULTI_OPAQUE_RECT_ORDER* multi_opaque_rect);
|
||||
typedef BOOL (*pMultiDrawNineGrid)(rdpContext* context,
|
||||
const MULTI_DRAW_NINE_GRID_ORDER* multi_draw_nine_grid);
|
||||
const MULTI_DRAW_NINE_GRID_ORDER* multi_draw_nine_grid);
|
||||
typedef BOOL (*pLineTo)(rdpContext* context, const LINE_TO_ORDER* line_to);
|
||||
typedef BOOL (*pPolyline)(rdpContext* context, const POLYLINE_ORDER* polyline);
|
||||
typedef BOOL (*pMemBlt)(rdpContext* context, MEMBLT_ORDER* memblt);
|
||||
@@ -439,37 +439,37 @@ typedef BOOL (*pPolygonCB)(rdpContext* context, POLYGON_CB_ORDER* polygon_cb);
|
||||
typedef BOOL (*pEllipseSC)(rdpContext* context, const ELLIPSE_SC_ORDER* ellipse_sc);
|
||||
typedef BOOL (*pEllipseCB)(rdpContext* context, const ELLIPSE_CB_ORDER* ellipse_cb);
|
||||
typedef BOOL (*pOrderInfo)(rdpContext* context, const ORDER_INFO* order_info,
|
||||
const char* order_name);
|
||||
const char* order_name);
|
||||
|
||||
struct rdp_primary_update
|
||||
{
|
||||
rdpContext* context; /* 0 */
|
||||
UINT32 paddingA[16 - 1]; /* 1 */
|
||||
|
||||
pDstBlt DstBlt; /* 16 */
|
||||
pPatBlt PatBlt; /* 17 */
|
||||
pScrBlt ScrBlt; /* 18 */
|
||||
pOpaqueRect OpaqueRect; /* 19 */
|
||||
pDrawNineGrid DrawNineGrid; /* 20 */
|
||||
pMultiDstBlt MultiDstBlt; /* 21 */
|
||||
pMultiPatBlt MultiPatBlt; /* 22 */
|
||||
pMultiScrBlt MultiScrBlt; /* 23 */
|
||||
pMultiOpaqueRect MultiOpaqueRect; /* 24 */
|
||||
pMultiDrawNineGrid MultiDrawNineGrid; /* 25 */
|
||||
pLineTo LineTo; /* 26 */
|
||||
pPolyline Polyline; /* 27 */
|
||||
pMemBlt MemBlt; /* 28 */
|
||||
pMem3Blt Mem3Blt; /* 29 */
|
||||
pSaveBitmap SaveBitmap; /* 30 */
|
||||
pGlyphIndex GlyphIndex; /* 31 */
|
||||
pFastIndex FastIndex; /* 32 */
|
||||
pFastGlyph FastGlyph; /* 33 */
|
||||
pPolygonSC PolygonSC; /* 34 */
|
||||
pPolygonCB PolygonCB; /* 35 */
|
||||
pEllipseSC EllipseSC; /* 36 */
|
||||
pEllipseCB EllipseCB; /* 37 */
|
||||
/* Statistics callback */
|
||||
pOrderInfo OrderInfo; /* 38 */
|
||||
WINPR_ATTR_NODISCARD pDstBlt DstBlt; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pPatBlt PatBlt; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pScrBlt ScrBlt; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pOpaqueRect OpaqueRect; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pDrawNineGrid DrawNineGrid; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pMultiDstBlt MultiDstBlt; /* 21 */
|
||||
WINPR_ATTR_NODISCARD pMultiPatBlt MultiPatBlt; /* 22 */
|
||||
WINPR_ATTR_NODISCARD pMultiScrBlt MultiScrBlt; /* 23 */
|
||||
WINPR_ATTR_NODISCARD pMultiOpaqueRect MultiOpaqueRect; /* 24 */
|
||||
WINPR_ATTR_NODISCARD pMultiDrawNineGrid MultiDrawNineGrid; /* 25 */
|
||||
WINPR_ATTR_NODISCARD pLineTo LineTo; /* 26 */
|
||||
WINPR_ATTR_NODISCARD pPolyline Polyline; /* 27 */
|
||||
WINPR_ATTR_NODISCARD pMemBlt MemBlt; /* 28 */
|
||||
WINPR_ATTR_NODISCARD pMem3Blt Mem3Blt; /* 29 */
|
||||
WINPR_ATTR_NODISCARD pSaveBitmap SaveBitmap; /* 30 */
|
||||
WINPR_ATTR_NODISCARD pGlyphIndex GlyphIndex; /* 31 */
|
||||
WINPR_ATTR_NODISCARD pFastIndex FastIndex; /* 32 */
|
||||
WINPR_ATTR_NODISCARD pFastGlyph FastGlyph; /* 33 */
|
||||
WINPR_ATTR_NODISCARD pPolygonSC PolygonSC; /* 34 */
|
||||
WINPR_ATTR_NODISCARD pPolygonCB PolygonCB; /* 35 */
|
||||
WINPR_ATTR_NODISCARD pEllipseSC EllipseSC; /* 36 */
|
||||
WINPR_ATTR_NODISCARD pEllipseCB EllipseCB; /* 37 */
|
||||
/* Statistics callback */
|
||||
WINPR_ATTR_NODISCARD pOrderInfo OrderInfo; /* 38 */
|
||||
UINT32 paddingB[48 - 39]; /* 39 */
|
||||
};
|
||||
typedef struct rdp_primary_update rdpPrimaryUpdate;
|
||||
|
||||
@@ -254,44 +254,44 @@ typedef fn_orC_32u_t __orC_32u_t;
|
||||
typedef struct
|
||||
{
|
||||
/* Memory-to-memory copy routines */
|
||||
fn_copy_t copy; /* memcpy/memmove, basically */
|
||||
fn_copy_8u_t copy_8u; /* more strongly typed */
|
||||
fn_copy_8u_AC4r_t copy_8u_AC4r; /* pixel copy function */
|
||||
/* Memory setting routines */
|
||||
fn_set_8u_t set_8u; /* memset, basically */
|
||||
fn_set_32s_t set_32s;
|
||||
fn_set_32u_t set_32u;
|
||||
fn_zero_t zero; /* bzero or faster */
|
||||
/* Arithmetic functions */
|
||||
fn_add_16s_t add_16s;
|
||||
WINPR_ATTR_NODISCARD fn_copy_t copy; /* memcpy/memmove, basically */
|
||||
WINPR_ATTR_NODISCARD fn_copy_8u_t copy_8u; /* more strongly typed */
|
||||
WINPR_ATTR_NODISCARD fn_copy_8u_AC4r_t copy_8u_AC4r; /* pixel copy function */
|
||||
/* Memory setting routines */
|
||||
WINPR_ATTR_NODISCARD fn_set_8u_t set_8u; /* memset, basically */
|
||||
WINPR_ATTR_NODISCARD fn_set_32s_t set_32s;
|
||||
WINPR_ATTR_NODISCARD fn_set_32u_t set_32u;
|
||||
WINPR_ATTR_NODISCARD fn_zero_t zero; /* bzero or faster */
|
||||
/* Arithmetic functions */
|
||||
WINPR_ATTR_NODISCARD fn_add_16s_t add_16s;
|
||||
/* And/or */
|
||||
fn_andC_32u_t andC_32u;
|
||||
fn_orC_32u_t orC_32u;
|
||||
WINPR_ATTR_NODISCARD fn_andC_32u_t andC_32u;
|
||||
WINPR_ATTR_NODISCARD fn_orC_32u_t orC_32u;
|
||||
/* Shifts */
|
||||
fn_lShiftC_16s_t lShiftC_16s;
|
||||
fn_lShiftC_16u_t lShiftC_16u;
|
||||
fn_rShiftC_16s_t rShiftC_16s;
|
||||
fn_rShiftC_16u_t rShiftC_16u;
|
||||
fn_shiftC_16s_t shiftC_16s;
|
||||
fn_shiftC_16u_t shiftC_16u;
|
||||
WINPR_ATTR_NODISCARD fn_lShiftC_16s_t lShiftC_16s;
|
||||
WINPR_ATTR_NODISCARD fn_lShiftC_16u_t lShiftC_16u;
|
||||
WINPR_ATTR_NODISCARD fn_rShiftC_16s_t rShiftC_16s;
|
||||
WINPR_ATTR_NODISCARD fn_rShiftC_16u_t rShiftC_16u;
|
||||
WINPR_ATTR_NODISCARD fn_shiftC_16s_t shiftC_16s;
|
||||
WINPR_ATTR_NODISCARD fn_shiftC_16u_t shiftC_16u;
|
||||
/* Alpha Composition */
|
||||
fn_alphaComp_argb_t alphaComp_argb;
|
||||
WINPR_ATTR_NODISCARD fn_alphaComp_argb_t alphaComp_argb;
|
||||
/* Sign */
|
||||
fn_sign_16s_t sign_16s;
|
||||
WINPR_ATTR_NODISCARD fn_sign_16s_t sign_16s;
|
||||
/* Color conversions */
|
||||
fn_yCbCrToRGB_16s8u_P3AC4R_t yCbCrToRGB_16s8u_P3AC4R;
|
||||
fn_yCbCrToRGB_16s16s_P3P3_t yCbCrToRGB_16s16s_P3P3;
|
||||
fn_RGBToYCbCr_16s16s_P3P3_t RGBToYCbCr_16s16s_P3P3;
|
||||
fn_RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R;
|
||||
fn_YCoCgToRGB_8u_AC4R_t YCoCgToRGB_8u_AC4R;
|
||||
fn_YUV420ToRGB_8u_P3AC4R_t YUV420ToRGB_8u_P3AC4R;
|
||||
fn_RGBToYUV420_8u_P3AC4R_t RGBToYUV420_8u_P3AC4R;
|
||||
fn_RGBToYUV444_8u_P3AC4R_t RGBToYUV444_8u_P3AC4R;
|
||||
fn_YUV420CombineToYUV444_t YUV420CombineToYUV444;
|
||||
fn_YUV444SplitToYUV420_t YUV444SplitToYUV420;
|
||||
fn_YUV444ToRGB_8u_P3AC4R_t YUV444ToRGB_8u_P3AC4R;
|
||||
fn_RGBToAVC444YUV_t RGBToAVC444YUV;
|
||||
fn_RGBToAVC444YUV_t RGBToAVC444YUVv2;
|
||||
WINPR_ATTR_NODISCARD fn_yCbCrToRGB_16s8u_P3AC4R_t yCbCrToRGB_16s8u_P3AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_yCbCrToRGB_16s16s_P3P3_t yCbCrToRGB_16s16s_P3P3;
|
||||
WINPR_ATTR_NODISCARD fn_RGBToYCbCr_16s16s_P3P3_t RGBToYCbCr_16s16s_P3P3;
|
||||
WINPR_ATTR_NODISCARD fn_RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_YCoCgToRGB_8u_AC4R_t YCoCgToRGB_8u_AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_YUV420ToRGB_8u_P3AC4R_t YUV420ToRGB_8u_P3AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_RGBToYUV420_8u_P3AC4R_t RGBToYUV420_8u_P3AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_RGBToYUV444_8u_P3AC4R_t RGBToYUV444_8u_P3AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_YUV420CombineToYUV444_t YUV420CombineToYUV444;
|
||||
WINPR_ATTR_NODISCARD fn_YUV444SplitToYUV420_t YUV444SplitToYUV420;
|
||||
WINPR_ATTR_NODISCARD fn_YUV444ToRGB_8u_P3AC4R_t YUV444ToRGB_8u_P3AC4R;
|
||||
WINPR_ATTR_NODISCARD fn_RGBToAVC444YUV_t RGBToAVC444YUV;
|
||||
WINPR_ATTR_NODISCARD fn_RGBToAVC444YUV_t RGBToAVC444YUVv2;
|
||||
/* flags */
|
||||
DWORD flags;
|
||||
primitives_uninit_t uninit;
|
||||
@@ -299,9 +299,9 @@ typedef struct
|
||||
/** \brief Do vecotor addition, store result in both input buffers
|
||||
* pSrcDst1 = pSrcDst2 = pSrcDst1 + pSrcDst2
|
||||
*/
|
||||
fn_add_16s_inplace_t add_16s_inplace; /** @since version 3.6.0 */
|
||||
fn_lShiftC_16s_inplace_t lShiftC_16s_inplace; /** @since version 3.6.0 */
|
||||
fn_copy_no_overlap_t copy_no_overlap; /** @since version 3.6.0 */
|
||||
WINPR_ATTR_NODISCARD fn_add_16s_inplace_t add_16s_inplace; /** @since version 3.6.0 */
|
||||
WINPR_ATTR_NODISCARD fn_lShiftC_16s_inplace_t lShiftC_16s_inplace; /** @since version 3.6.0 */
|
||||
WINPR_ATTR_NODISCARD fn_copy_no_overlap_t copy_no_overlap; /** @since version 3.6.0 */
|
||||
} primitives_t;
|
||||
|
||||
typedef enum
|
||||
|
||||
@@ -164,28 +164,28 @@ typedef BOOL (*pCacheBitmap)(rdpContext* context, const CACHE_BITMAP_ORDER* cach
|
||||
typedef BOOL (*pCacheBitmapV2)(rdpContext* context, CACHE_BITMAP_V2_ORDER* cache_bitmap_v2_order);
|
||||
typedef BOOL (*pCacheBitmapV3)(rdpContext* context, CACHE_BITMAP_V3_ORDER* cache_bitmap_v3_order);
|
||||
typedef BOOL (*pCacheColorTable)(rdpContext* context,
|
||||
const CACHE_COLOR_TABLE_ORDER* cache_color_table_order);
|
||||
const CACHE_COLOR_TABLE_ORDER* cache_color_table_order);
|
||||
typedef BOOL (*pCacheGlyph)(rdpContext* context, const CACHE_GLYPH_ORDER* cache_glyph_order);
|
||||
typedef BOOL (*pCacheGlyphV2)(rdpContext* context,
|
||||
const CACHE_GLYPH_V2_ORDER* cache_glyph_v2_order);
|
||||
const CACHE_GLYPH_V2_ORDER* cache_glyph_v2_order);
|
||||
typedef BOOL (*pCacheBrush)(rdpContext* context, const CACHE_BRUSH_ORDER* cache_brush_order);
|
||||
typedef BOOL (*pCacheOrderInfo)(rdpContext* context, INT16 orderLength, UINT16 extraFlags,
|
||||
UINT8 orderType, const char* orderName);
|
||||
UINT8 orderType, const char* orderName);
|
||||
|
||||
struct rdp_secondary_update
|
||||
{
|
||||
rdpContext* context; /* 0 */
|
||||
UINT32 paddingA[16 - 1]; /* 1 */
|
||||
|
||||
pCacheBitmap CacheBitmap; /* 16 */
|
||||
pCacheBitmapV2 CacheBitmapV2; /* 17 */
|
||||
pCacheBitmapV3 CacheBitmapV3; /* 18 */
|
||||
pCacheColorTable CacheColorTable; /* 19 */
|
||||
pCacheGlyph CacheGlyph; /* 20 */
|
||||
pCacheGlyphV2 CacheGlyphV2; /* 21 */
|
||||
pCacheBrush CacheBrush; /* 22 */
|
||||
/* Statistics callback */
|
||||
pCacheOrderInfo CacheOrderInfo; /* 23 */
|
||||
WINPR_ATTR_NODISCARD pCacheBitmap CacheBitmap; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pCacheBitmapV2 CacheBitmapV2; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pCacheBitmapV3 CacheBitmapV3; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pCacheColorTable CacheColorTable; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pCacheGlyph CacheGlyph; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pCacheGlyphV2 CacheGlyphV2; /* 21 */
|
||||
WINPR_ATTR_NODISCARD pCacheBrush CacheBrush; /* 22 */
|
||||
/* Statistics callback */
|
||||
WINPR_ATTR_NODISCARD pCacheOrderInfo CacheOrderInfo; /* 23 */
|
||||
UINT32 paddingE[32 - 24]; /* 24 */
|
||||
};
|
||||
typedef struct rdp_secondary_update rdpSecondaryUpdate;
|
||||
|
||||
@@ -65,7 +65,7 @@ extern "C"
|
||||
/**
|
||||
* Open the ainput channel.
|
||||
*/
|
||||
psAInputServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psAInputServerOpen Open;
|
||||
|
||||
/**
|
||||
* Optional: Set thread handling.
|
||||
@@ -74,42 +74,42 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psAInputServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psAInputServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* @brief Poll When externalThread=TRUE call periodically from your main loop.
|
||||
* if externalThread=FALSE do not call.
|
||||
*/
|
||||
psAInputServerPoll Poll;
|
||||
WINPR_ATTR_NODISCARD psAInputServerPoll Poll;
|
||||
|
||||
/**
|
||||
* @brief Poll When externalThread=TRUE call to get a handle to wait for events.
|
||||
* Will return FALSE until the handle is available.
|
||||
*/
|
||||
psAInputServerChannelHandle ChannelHandle;
|
||||
WINPR_ATTR_NODISCARD psAInputServerChannelHandle ChannelHandle;
|
||||
|
||||
/**
|
||||
* Close the ainput channel.
|
||||
*/
|
||||
psAInputServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psAInputServerClose Close;
|
||||
/**
|
||||
* Status of the ainput channel.
|
||||
*/
|
||||
psAInputServerIsOpen IsOpen;
|
||||
WINPR_ATTR_NODISCARD psAInputServerIsOpen IsOpen;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Receive ainput mouse event PDU.
|
||||
*/
|
||||
psAInputServerMouseEvent MouseEvent;
|
||||
WINPR_ATTR_NODISCARD psAInputServerMouseEvent MouseEvent;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psAInputChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psAInputChannelIdAssigned ChannelIdAssigned;
|
||||
};
|
||||
|
||||
FREERDP_API void ainput_server_context_free(ainput_server_context* context);
|
||||
|
||||
@@ -76,17 +76,17 @@ extern "C"
|
||||
/**
|
||||
* Open the audio input channel.
|
||||
*/
|
||||
psAudinServerChannelOpen Open;
|
||||
WINPR_ATTR_NODISCARD psAudinServerChannelOpen Open;
|
||||
|
||||
/**
|
||||
* Check, whether the audio input channel thread was created
|
||||
*/
|
||||
psAudinServerChannelIsOpen IsOpen;
|
||||
WINPR_ATTR_NODISCARD psAudinServerChannelIsOpen IsOpen;
|
||||
|
||||
/**
|
||||
* Close the audio input channel.
|
||||
*/
|
||||
psAudinServerChannelClose Close;
|
||||
WINPR_ATTR_NODISCARD psAudinServerChannelClose Close;
|
||||
|
||||
/**
|
||||
* For the following server to client PDUs,
|
||||
@@ -96,59 +96,59 @@ extern "C"
|
||||
/**
|
||||
* Send a Version PDU.
|
||||
*/
|
||||
psAudinServerVersion SendVersion;
|
||||
WINPR_ATTR_NODISCARD psAudinServerVersion SendVersion;
|
||||
|
||||
/**
|
||||
* Send a Sound Formats PDU.
|
||||
*/
|
||||
psAudinServerFormats SendFormats;
|
||||
WINPR_ATTR_NODISCARD psAudinServerFormats SendFormats;
|
||||
|
||||
/**
|
||||
* Send an Open PDU.
|
||||
*/
|
||||
psAudinServerOpen SendOpen;
|
||||
WINPR_ATTR_NODISCARD psAudinServerOpen SendOpen;
|
||||
|
||||
/**
|
||||
* Send a Format Change PDU.
|
||||
*/
|
||||
psAudinServerFormatChange SendFormatChange;
|
||||
WINPR_ATTR_NODISCARD psAudinServerFormatChange SendFormatChange;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psAudinServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psAudinServerChannelIdAssigned ChannelIdAssigned;
|
||||
|
||||
/*
|
||||
* Callback for the Version PDU.
|
||||
*/
|
||||
psAudinServerVersion ReceiveVersion;
|
||||
WINPR_ATTR_NODISCARD psAudinServerVersion ReceiveVersion;
|
||||
|
||||
/*
|
||||
* Callback for the Sound Formats PDU.
|
||||
*/
|
||||
psAudinServerFormats ReceiveFormats;
|
||||
WINPR_ATTR_NODISCARD psAudinServerFormats ReceiveFormats;
|
||||
|
||||
/*
|
||||
* Callback for the Open Reply PDU.
|
||||
*/
|
||||
psAudinServerOpenReply OpenReply;
|
||||
WINPR_ATTR_NODISCARD psAudinServerOpenReply OpenReply;
|
||||
|
||||
/*
|
||||
* Callback for the Incoming Data PDU.
|
||||
*/
|
||||
psAudinServerIncomingData IncomingData;
|
||||
WINPR_ATTR_NODISCARD psAudinServerIncomingData IncomingData;
|
||||
|
||||
/*
|
||||
* Callback for the Data PDU.
|
||||
*/
|
||||
psAudinServerData Data;
|
||||
WINPR_ATTR_NODISCARD psAudinServerData Data;
|
||||
|
||||
/*
|
||||
* Callback for the Format Change PDU.
|
||||
*/
|
||||
psAudinServerFormatChange ReceiveFormatChange;
|
||||
WINPR_ATTR_NODISCARD psAudinServerFormatChange ReceiveFormatChange;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -100,33 +100,33 @@ extern "C"
|
||||
BOOL fileClipNoFilePaths;
|
||||
BOOL canLockClipData;
|
||||
|
||||
psCliprdrOpen Open;
|
||||
WINPR_ATTR_NODISCARD psCliprdrOpen Open;
|
||||
psCliprdrClose Close;
|
||||
psCliprdrStart Start;
|
||||
WINPR_ATTR_NODISCARD psCliprdrStart Start;
|
||||
psCliprdrStop Stop;
|
||||
psCliprdrGetEventHandle GetEventHandle;
|
||||
psCliprdrCheckEventHandle CheckEventHandle;
|
||||
WINPR_ATTR_NODISCARD psCliprdrGetEventHandle GetEventHandle;
|
||||
WINPR_ATTR_NODISCARD psCliprdrCheckEventHandle CheckEventHandle;
|
||||
|
||||
psCliprdrServerCapabilities ServerCapabilities;
|
||||
psCliprdrClientCapabilities ClientCapabilities;
|
||||
psCliprdrMonitorReady MonitorReady;
|
||||
psCliprdrTempDirectory TempDirectory;
|
||||
psCliprdrClientFormatList ClientFormatList;
|
||||
psCliprdrServerFormatList ServerFormatList;
|
||||
psCliprdrClientFormatListResponse ClientFormatListResponse;
|
||||
psCliprdrServerFormatListResponse ServerFormatListResponse;
|
||||
psCliprdrClientLockClipboardData ClientLockClipboardData;
|
||||
psCliprdrServerLockClipboardData ServerLockClipboardData;
|
||||
psCliprdrClientUnlockClipboardData ClientUnlockClipboardData;
|
||||
psCliprdrServerUnlockClipboardData ServerUnlockClipboardData;
|
||||
psCliprdrClientFormatDataRequest ClientFormatDataRequest;
|
||||
psCliprdrServerFormatDataRequest ServerFormatDataRequest;
|
||||
psCliprdrClientFormatDataResponse ClientFormatDataResponse;
|
||||
psCliprdrServerFormatDataResponse ServerFormatDataResponse;
|
||||
psCliprdrClientFileContentsRequest ClientFileContentsRequest;
|
||||
psCliprdrServerFileContentsRequest ServerFileContentsRequest;
|
||||
psCliprdrClientFileContentsResponse ClientFileContentsResponse;
|
||||
psCliprdrServerFileContentsResponse ServerFileContentsResponse;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerCapabilities ServerCapabilities;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientCapabilities ClientCapabilities;
|
||||
WINPR_ATTR_NODISCARD psCliprdrMonitorReady MonitorReady;
|
||||
WINPR_ATTR_NODISCARD psCliprdrTempDirectory TempDirectory;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientFormatList ClientFormatList;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerFormatList ServerFormatList;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientFormatListResponse ClientFormatListResponse;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerFormatListResponse ServerFormatListResponse;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientLockClipboardData ClientLockClipboardData;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerLockClipboardData ServerLockClipboardData;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientUnlockClipboardData ClientUnlockClipboardData;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerUnlockClipboardData ServerUnlockClipboardData;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientFormatDataRequest ClientFormatDataRequest;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerFormatDataRequest ServerFormatDataRequest;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientFormatDataResponse ClientFormatDataResponse;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerFormatDataResponse ServerFormatDataResponse;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientFileContentsRequest ClientFileContentsRequest;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerFileContentsRequest ServerFileContentsRequest;
|
||||
WINPR_ATTR_NODISCARD psCliprdrClientFileContentsResponse ClientFileContentsResponse;
|
||||
WINPR_ATTR_NODISCARD psCliprdrServerFileContentsResponse ServerFileContentsResponse;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
BOOL autoInitializationSequence;
|
||||
|
||||
@@ -51,11 +51,11 @@ extern "C"
|
||||
UINT32 MaxMonitorAreaFactorA;
|
||||
UINT32 MaxMonitorAreaFactorB;
|
||||
|
||||
psDispOpen Open;
|
||||
psDispClose Close;
|
||||
WINPR_ATTR_NODISCARD psDispOpen Open;
|
||||
WINPR_ATTR_NODISCARD psDispClose Close;
|
||||
|
||||
psDispMonitorLayout DispMonitorLayout;
|
||||
psDispCaps DisplayControlCaps;
|
||||
WINPR_ATTR_NODISCARD psDispMonitorLayout DispMonitorLayout;
|
||||
WINPR_ATTR_NODISCARD psDispCaps DisplayControlCaps;
|
||||
|
||||
DispServerPrivate* priv;
|
||||
rdpContext* rdpcontext;
|
||||
@@ -63,7 +63,7 @@ extern "C"
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psDispChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psDispChannelIdAssigned ChannelIdAssigned;
|
||||
};
|
||||
|
||||
FREERDP_API void disp_server_context_free(DispServerContext* context);
|
||||
|
||||
@@ -45,7 +45,7 @@ extern "C"
|
||||
{
|
||||
HANDLE vcm;
|
||||
|
||||
psDrdynvcStart Start;
|
||||
WINPR_ATTR_NODISCARD psDrdynvcStart Start;
|
||||
psDrdynvcStop Stop;
|
||||
|
||||
DrdynvcServerPrivate* priv;
|
||||
|
||||
@@ -62,25 +62,25 @@ extern "C"
|
||||
/**
|
||||
* Open the echo channel.
|
||||
*/
|
||||
psEchoServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psEchoServerOpen Open;
|
||||
/**
|
||||
* Close the echo channel.
|
||||
*/
|
||||
psEchoServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psEchoServerClose Close;
|
||||
/**
|
||||
* Send echo request PDU.
|
||||
*/
|
||||
psEchoServerRequest Request;
|
||||
WINPR_ATTR_NODISCARD psEchoServerRequest Request;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
/**
|
||||
* Indicate whether the channel is opened successfully.
|
||||
*/
|
||||
psEchoServerOpenResult OpenResult;
|
||||
WINPR_ATTR_NODISCARD psEchoServerOpenResult OpenResult;
|
||||
/**
|
||||
* Receive echo response PDU.
|
||||
*/
|
||||
psEchoServerResponse Response;
|
||||
WINPR_ATTR_NODISCARD psEchoServerResponse Response;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
|
||||
|
||||
@@ -72,20 +72,20 @@ extern "C"
|
||||
HANDLE vcm;
|
||||
void* custom;
|
||||
|
||||
psEncomspStart Start;
|
||||
WINPR_ATTR_NODISCARD psEncomspStart Start;
|
||||
psEncomspStop Stop;
|
||||
|
||||
psEncomspFilterUpdated FilterUpdated;
|
||||
psEncomspApplicationCreated ApplicationCreated;
|
||||
psEncomspApplicationRemoved ApplicationRemoved;
|
||||
psEncomspWindowCreated WindowCreated;
|
||||
psEncomspWindowRemoved WindowRemoved;
|
||||
psEncomspShowWindow ShowWindow;
|
||||
psEncomspParticipantCreated ParticipantCreated;
|
||||
psEncomspParticipantRemoved ParticipantRemoved;
|
||||
psEncomspChangeParticipantControlLevel ChangeParticipantControlLevel;
|
||||
psEncomspGraphicsStreamPaused GraphicsStreamPaused;
|
||||
psEncomspGraphicsStreamResumed GraphicsStreamResumed;
|
||||
WINPR_ATTR_NODISCARD psEncomspFilterUpdated FilterUpdated;
|
||||
WINPR_ATTR_NODISCARD psEncomspApplicationCreated ApplicationCreated;
|
||||
WINPR_ATTR_NODISCARD psEncomspApplicationRemoved ApplicationRemoved;
|
||||
WINPR_ATTR_NODISCARD psEncomspWindowCreated WindowCreated;
|
||||
WINPR_ATTR_NODISCARD psEncomspWindowRemoved WindowRemoved;
|
||||
WINPR_ATTR_NODISCARD psEncomspShowWindow ShowWindow;
|
||||
WINPR_ATTR_NODISCARD psEncomspParticipantCreated ParticipantCreated;
|
||||
WINPR_ATTR_NODISCARD psEncomspParticipantRemoved ParticipantRemoved;
|
||||
WINPR_ATTR_NODISCARD psEncomspChangeParticipantControlLevel ChangeParticipantControlLevel;
|
||||
WINPR_ATTR_NODISCARD psEncomspGraphicsStreamPaused GraphicsStreamPaused;
|
||||
WINPR_ATTR_NODISCARD psEncomspGraphicsStreamResumed GraphicsStreamResumed;
|
||||
|
||||
EncomspServerPrivate* priv;
|
||||
|
||||
|
||||
@@ -67,24 +67,26 @@ extern "C"
|
||||
void* custom;
|
||||
HANDLE vcm;
|
||||
|
||||
psGfxRedirOpen Open;
|
||||
psGfxRedirClose Close;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirOpen Open;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirClose Close;
|
||||
|
||||
psGfxRedirError Error;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirError Error;
|
||||
|
||||
psGfxRedirGraphicsRedirectionLegacyCaps GraphicsRedirectionLegacyCaps;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirGraphicsRedirectionLegacyCaps GraphicsRedirectionLegacyCaps;
|
||||
|
||||
psGfxRedirGraphicsRedirectionCapsAdvertise GraphicsRedirectionCapsAdvertise;
|
||||
psGfxRedirGraphicsRedirectionCapsConfirm GraphicsRedirectionCapsConfirm;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirGraphicsRedirectionCapsAdvertise
|
||||
GraphicsRedirectionCapsAdvertise;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirGraphicsRedirectionCapsConfirm
|
||||
GraphicsRedirectionCapsConfirm;
|
||||
|
||||
psGfxRedirOpenPool OpenPool;
|
||||
psGfxRedirClosePool ClosePool;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirOpenPool OpenPool;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirClosePool ClosePool;
|
||||
|
||||
psGfxRedirCreateBuffer CreateBuffer;
|
||||
psGfxRedirDestroyBuffer DestroyBuffer;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirCreateBuffer CreateBuffer;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirDestroyBuffer DestroyBuffer;
|
||||
|
||||
psGfxRedirPresentBuffer PresentBuffer;
|
||||
psGfxRedirPresentBufferAck PresentBufferAck;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirPresentBuffer PresentBuffer;
|
||||
WINPR_ATTR_NODISCARD psGfxRedirPresentBufferAck PresentBufferAck;
|
||||
|
||||
GfxRedirServerPrivate* priv;
|
||||
rdpContext* rdpcontext;
|
||||
|
||||
@@ -68,64 +68,64 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psLocationServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psLocationServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* Open the location channel.
|
||||
*/
|
||||
psLocationServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psLocationServerOpen Open;
|
||||
|
||||
/**
|
||||
* Close the location channel.
|
||||
*/
|
||||
psLocationServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psLocationServerClose Close;
|
||||
|
||||
/**
|
||||
* Poll
|
||||
* When externalThread=TRUE, call Poll() periodically from your main loop.
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psLocationServerPoll Poll;
|
||||
WINPR_ATTR_NODISCARD psLocationServerPoll Poll;
|
||||
|
||||
/**
|
||||
* Retrieve the channel handle for use in conjunction with Poll().
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psLocationServerChannelHandle ChannelHandle;
|
||||
WINPR_ATTR_NODISCARD psLocationServerChannelHandle ChannelHandle;
|
||||
|
||||
/* All PDUs sent by the server don't require the header to be set */
|
||||
|
||||
/*
|
||||
* Send a ServerReady PDU.
|
||||
*/
|
||||
psLocationServerServerReady ServerReady;
|
||||
WINPR_ATTR_NODISCARD psLocationServerServerReady ServerReady;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psLocationServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psLocationServerChannelIdAssigned ChannelIdAssigned;
|
||||
|
||||
/**
|
||||
* Callback for the ClientReady PDU.
|
||||
*/
|
||||
psLocationServerClientReady ClientReady;
|
||||
WINPR_ATTR_NODISCARD psLocationServerClientReady ClientReady;
|
||||
|
||||
/**
|
||||
* Callback for the BaseLocation3D PDU.
|
||||
*/
|
||||
psLocationServerBaseLocation3D BaseLocation3D;
|
||||
WINPR_ATTR_NODISCARD psLocationServerBaseLocation3D BaseLocation3D;
|
||||
|
||||
/**
|
||||
* Callback for the Location2DDelta PDU.
|
||||
*/
|
||||
psLocationServerLocation2DDelta Location2DDelta;
|
||||
WINPR_ATTR_NODISCARD psLocationServerLocation2DDelta Location2DDelta;
|
||||
|
||||
/**
|
||||
* Callback for the Location3DDelta PDU.
|
||||
*/
|
||||
psLocationServerLocation3DDelta Location3DDelta;
|
||||
WINPR_ATTR_NODISCARD psLocationServerLocation3DDelta Location3DDelta;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -63,8 +63,8 @@ extern "C"
|
||||
UINT32 front_channel_id;
|
||||
UINT32 back_channel_id;
|
||||
pf_utils_channel_mode channelMode;
|
||||
proxyChannelDataFn onFrontData;
|
||||
proxyChannelDataFn onBackData;
|
||||
WINPR_ATTR_NODISCARD proxyChannelDataFn onFrontData;
|
||||
WINPR_ATTR_NODISCARD proxyChannelDataFn onBackData;
|
||||
proxyChannelContextDtor contextDtor;
|
||||
void* context;
|
||||
};
|
||||
@@ -120,7 +120,8 @@ extern "C"
|
||||
|
||||
pReceiveChannelData client_receive_channel_data_original;
|
||||
wQueue* cached_server_channel_data;
|
||||
BOOL (*sendChannelData)(pClientContext* pc, const proxyChannelDataEventInfo* ev);
|
||||
WINPR_ATTR_NODISCARD BOOL (*sendChannelData)(pClientContext* pc,
|
||||
const proxyChannelDataEventInfo* ev);
|
||||
|
||||
/* X509 specific */
|
||||
char* remote_hostname;
|
||||
|
||||
@@ -65,52 +65,54 @@ extern "C"
|
||||
|
||||
UINT64 reserved1[32 - 2]; /* 2-32 */
|
||||
|
||||
BOOL (*PluginUnload)(proxyPlugin* plugin); /* 33 */
|
||||
WINPR_ATTR_NODISCARD BOOL (*PluginUnload)(proxyPlugin* plugin); /* 33 */
|
||||
UINT64 reserved2[66 - 34]; /* 34 - 65 */
|
||||
|
||||
/* proxy hooks. a module can set these function pointers to register hooks */
|
||||
proxyHookFn ClientInitConnect; /* 66 custom=rdpContext* */
|
||||
proxyHookFn ClientUninitConnect; /* 67 custom=rdpContext* */
|
||||
proxyHookFn ClientPreConnect; /* 68 custom=rdpContext* */
|
||||
proxyHookFn ClientPostConnect; /* 69 custom=rdpContext* */
|
||||
proxyHookFn ClientPostDisconnect; /* 70 custom=rdpContext* */
|
||||
proxyHookFn ClientX509Certificate; /* 71 custom=rdpContext* */
|
||||
proxyHookFn ClientLoginFailure; /* 72 custom=rdpContext* */
|
||||
proxyHookFn ClientEndPaint; /* 73 custom=rdpContext* */
|
||||
proxyHookFn ClientRedirect; /* 74 custom=rdpContext* */
|
||||
proxyHookFn ClientLoadChannels; /* 75 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientInitConnect; /* 66 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientUninitConnect; /* 67 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientPreConnect; /* 68 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientPostConnect; /* 69 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientPostDisconnect; /* 70 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientX509Certificate; /* 71 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientLoginFailure; /* 72 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientEndPaint; /* 73 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientRedirect; /* 74 custom=rdpContext* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ClientLoadChannels; /* 75 custom=rdpContext* */
|
||||
UINT64 reserved3[96 - 76]; /* 76-95 */
|
||||
|
||||
proxyHookFn ServerPostConnect; /* 96 custom=freerdp_peer* */
|
||||
proxyHookFn ServerPeerActivate; /* 97 custom=freerdp_peer* */
|
||||
proxyHookFn ServerChannelsInit; /* 98 custom=freerdp_peer* */
|
||||
proxyHookFn ServerChannelsFree; /* 99 custom=freerdp_peer* */
|
||||
proxyHookFn ServerSessionEnd; /* 100 custom=freerdp_peer* */
|
||||
proxyHookFn ServerSessionInitialize; /* 101 custom=freerdp_peer* */
|
||||
proxyHookFn ServerSessionStarted; /* 102 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerPostConnect; /* 96 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerPeerActivate; /* 97 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerChannelsInit; /* 98 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerChannelsFree; /* 99 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerSessionEnd; /* 100 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerSessionInitialize; /* 101 custom=freerdp_peer* */
|
||||
WINPR_ATTR_NODISCARD proxyHookFn ServerSessionStarted; /* 102 custom=freerdp_peer* */
|
||||
|
||||
UINT64 reserved4[128 - 103]; /* 103 - 127 */
|
||||
|
||||
/* proxy filters. a module can set these function pointers to register filters */
|
||||
proxyFilterFn KeyboardEvent; /* 128 */
|
||||
proxyFilterFn MouseEvent; /* 129 */
|
||||
proxyFilterFn ClientChannelData; /* 130 passthrough channels data */
|
||||
proxyFilterFn ServerChannelData; /* 131 passthrough channels data */
|
||||
proxyFilterFn DynamicChannelCreate; /* 132 passthrough drdynvc channel create data */
|
||||
proxyFilterFn ServerFetchTargetAddr; /* 133 */
|
||||
proxyFilterFn ServerPeerLogon; /* 134 */
|
||||
proxyFilterFn ChannelCreate; /* 135 passthrough drdynvc channel create data */
|
||||
proxyFilterFn UnicodeEvent; /* 136 */
|
||||
proxyFilterFn MouseExEvent; /* 137 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn KeyboardEvent; /* 128 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn MouseEvent; /* 129 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn ClientChannelData; /* 130 passthrough channels data */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn ServerChannelData; /* 131 passthrough channels data */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn
|
||||
DynamicChannelCreate; /* 132 passthrough drdynvc channel create data */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn ServerFetchTargetAddr; /* 133 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn ServerPeerLogon; /* 134 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn
|
||||
ChannelCreate; /* 135 passthrough drdynvc channel create data */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn UnicodeEvent; /* 136 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn MouseExEvent; /* 137 */
|
||||
|
||||
/* proxy dynamic channel filters:
|
||||
*
|
||||
* - a function that returns the list of channels to intercept
|
||||
* - a function to call with the data received
|
||||
*/
|
||||
proxyFilterFn DynChannelToIntercept; /* 138 */
|
||||
proxyFilterFn DynChannelIntercept; /* 139 */
|
||||
proxyFilterFn StaticChannelToIntercept; /* 140 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn DynChannelToIntercept; /* 138 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn DynChannelIntercept; /* 139 */
|
||||
WINPR_ATTR_NODISCARD proxyFilterFn StaticChannelToIntercept; /* 140 */
|
||||
UINT64 reserved5[160 - 141]; /* 141-159 */
|
||||
|
||||
/* Runtime data fields */
|
||||
@@ -134,13 +136,16 @@ extern "C"
|
||||
struct proxy_plugins_manager
|
||||
{
|
||||
/* 0 used for registering a fresh new proxy plugin. */
|
||||
BOOL (*RegisterPlugin)(struct proxy_plugins_manager* mgr, const proxyPlugin* plugin);
|
||||
WINPR_ATTR_NODISCARD BOOL (*RegisterPlugin)(struct proxy_plugins_manager* mgr,
|
||||
const proxyPlugin* plugin);
|
||||
|
||||
/* 1 used for setting plugin's per-session info. */
|
||||
BOOL (*SetPluginData)(struct proxy_plugins_manager* mgr, const char*, proxyData*, void*);
|
||||
WINPR_ATTR_NODISCARD BOOL (*SetPluginData)(struct proxy_plugins_manager* mgr, const char*,
|
||||
proxyData*, void*);
|
||||
|
||||
/* 2 used for getting plugin's per-session info. */
|
||||
void* (*GetPluginData)(struct proxy_plugins_manager* mgr, const char*, proxyData*);
|
||||
WINPR_ATTR_NODISCARD void* (*GetPluginData)(struct proxy_plugins_manager* mgr, const char*,
|
||||
proxyData*);
|
||||
|
||||
/* 3 used for aborting a session. */
|
||||
void (*AbortConnect)(struct proxy_plugins_manager* mgr, proxyData*);
|
||||
@@ -148,7 +153,8 @@ extern "C"
|
||||
UINT64 reserved[128 - 4]; /* 4-127 reserved fields */
|
||||
};
|
||||
|
||||
typedef BOOL (*proxyModuleEntryPoint)(proxyPluginsManager* plugins_manager, void* userdata);
|
||||
typedef WINPR_ATTR_NODISCARD BOOL (*proxyModuleEntryPoint)(proxyPluginsManager* plugins_manager,
|
||||
void* userdata);
|
||||
|
||||
/* filter events parameters */
|
||||
#define WINPR_PACK_PUSH
|
||||
|
||||
@@ -101,42 +101,42 @@ extern "C"
|
||||
HANDLE vcm;
|
||||
void* custom;
|
||||
|
||||
psRailStart Start;
|
||||
WINPR_ATTR_NODISCARD psRailStart Start;
|
||||
psRailStop Stop;
|
||||
|
||||
/* Callbacks from client */
|
||||
psRailClientHandshake ClientHandshake;
|
||||
psRailClientClientStatus ClientClientStatus;
|
||||
psRailClientExec ClientExec;
|
||||
psRailClientSysparam ClientSysparam;
|
||||
psRailClientActivate ClientActivate;
|
||||
psRailClientSysmenu ClientSysmenu;
|
||||
psRailClientSyscommand ClientSyscommand;
|
||||
psRailClientNotifyEvent ClientNotifyEvent;
|
||||
psRailClientGetAppidReq ClientGetAppidReq;
|
||||
psRailClientWindowMove ClientWindowMove;
|
||||
psRailClientSnapArrange ClientSnapArrange;
|
||||
psRailClientLangbarInfo ClientLangbarInfo;
|
||||
psRailClientLanguageImeInfo ClientLanguageImeInfo;
|
||||
psRailClientCompartmentInfo ClientCompartmentInfo;
|
||||
psRailClientCloak ClientCloak;
|
||||
psRailClientTextScale ClientTextScale;
|
||||
psRailClientCaretBlinkRate ClientCaretBlinkRate;
|
||||
WINPR_ATTR_NODISCARD psRailClientHandshake ClientHandshake;
|
||||
WINPR_ATTR_NODISCARD psRailClientClientStatus ClientClientStatus;
|
||||
WINPR_ATTR_NODISCARD psRailClientExec ClientExec;
|
||||
WINPR_ATTR_NODISCARD psRailClientSysparam ClientSysparam;
|
||||
WINPR_ATTR_NODISCARD psRailClientActivate ClientActivate;
|
||||
WINPR_ATTR_NODISCARD psRailClientSysmenu ClientSysmenu;
|
||||
WINPR_ATTR_NODISCARD psRailClientSyscommand ClientSyscommand;
|
||||
WINPR_ATTR_NODISCARD psRailClientNotifyEvent ClientNotifyEvent;
|
||||
WINPR_ATTR_NODISCARD psRailClientGetAppidReq ClientGetAppidReq;
|
||||
WINPR_ATTR_NODISCARD psRailClientWindowMove ClientWindowMove;
|
||||
WINPR_ATTR_NODISCARD psRailClientSnapArrange ClientSnapArrange;
|
||||
WINPR_ATTR_NODISCARD psRailClientLangbarInfo ClientLangbarInfo;
|
||||
WINPR_ATTR_NODISCARD psRailClientLanguageImeInfo ClientLanguageImeInfo;
|
||||
WINPR_ATTR_NODISCARD psRailClientCompartmentInfo ClientCompartmentInfo;
|
||||
WINPR_ATTR_NODISCARD psRailClientCloak ClientCloak;
|
||||
WINPR_ATTR_NODISCARD psRailClientTextScale ClientTextScale;
|
||||
WINPR_ATTR_NODISCARD psRailClientCaretBlinkRate ClientCaretBlinkRate;
|
||||
|
||||
/* Methods for sending server side messages */
|
||||
psRailServerHandshake ServerHandshake;
|
||||
psRailServerHandshakeEx ServerHandshakeEx;
|
||||
psRailServerSysparam ServerSysparam;
|
||||
psRailServerLocalMoveSize ServerLocalMoveSize;
|
||||
psRailServerMinMaxInfo ServerMinMaxInfo;
|
||||
psRailServerTaskbarInfo ServerTaskbarInfo;
|
||||
psRailServerLangbarInfo ServerLangbarInfo;
|
||||
psRailServerExecResult ServerExecResult;
|
||||
psRailServerZOrderSync ServerZOrderSync;
|
||||
psRailServerCloak ServerCloak;
|
||||
psRailServerPowerDisplayRequest ServerPowerDisplayRequest;
|
||||
psRailServerGetAppidResp ServerGetAppidResp;
|
||||
psRailServerGetAppidRespEx ServerGetAppidRespEx;
|
||||
WINPR_ATTR_NODISCARD psRailServerHandshake ServerHandshake;
|
||||
WINPR_ATTR_NODISCARD psRailServerHandshakeEx ServerHandshakeEx;
|
||||
WINPR_ATTR_NODISCARD psRailServerSysparam ServerSysparam;
|
||||
WINPR_ATTR_NODISCARD psRailServerLocalMoveSize ServerLocalMoveSize;
|
||||
WINPR_ATTR_NODISCARD psRailServerMinMaxInfo ServerMinMaxInfo;
|
||||
WINPR_ATTR_NODISCARD psRailServerTaskbarInfo ServerTaskbarInfo;
|
||||
WINPR_ATTR_NODISCARD psRailServerLangbarInfo ServerLangbarInfo;
|
||||
WINPR_ATTR_NODISCARD psRailServerExecResult ServerExecResult;
|
||||
WINPR_ATTR_NODISCARD psRailServerZOrderSync ServerZOrderSync;
|
||||
WINPR_ATTR_NODISCARD psRailServerCloak ServerCloak;
|
||||
WINPR_ATTR_NODISCARD psRailServerPowerDisplayRequest ServerPowerDisplayRequest;
|
||||
WINPR_ATTR_NODISCARD psRailServerGetAppidResp ServerGetAppidResp;
|
||||
WINPR_ATTR_NODISCARD psRailServerGetAppidRespEx ServerGetAppidRespEx;
|
||||
|
||||
RailServerPrivate* priv;
|
||||
rdpContext* rdpcontext;
|
||||
|
||||
@@ -72,40 +72,40 @@ typedef UINT (*psRdpdrStart)(RdpdrServerContext* context);
|
||||
typedef UINT (*psRdpdrStop)(RdpdrServerContext* context);
|
||||
|
||||
typedef UINT (*psRdpdrCapablityPDU)(RdpdrServerContext* context,
|
||||
const RDPDR_CAPABILITY_HEADER* header, size_t size,
|
||||
const BYTE* data);
|
||||
const RDPDR_CAPABILITY_HEADER* header, size_t size,
|
||||
const BYTE* data);
|
||||
typedef UINT (*psRdpdrReceivePDU)(RdpdrServerContext* context, const RDPDR_HEADER* header,
|
||||
UINT error);
|
||||
UINT error);
|
||||
typedef UINT (*psRdpdrReceiveAnnounceResponse)(RdpdrServerContext* context, UINT16 VersionMajor,
|
||||
UINT16 VersionMinor, UINT32 ClientId);
|
||||
UINT16 VersionMinor, UINT32 ClientId);
|
||||
typedef UINT (*psRdpdrSendServerAnnounce)(RdpdrServerContext* context);
|
||||
typedef UINT (*psRdpdrReceiveDeviceAnnounce)(RdpdrServerContext* context,
|
||||
const RdpdrDevice* device);
|
||||
const RdpdrDevice* device);
|
||||
typedef UINT (*psRdpdrReceiveDeviceRemove)(RdpdrServerContext* context, UINT32 deviceId,
|
||||
const RdpdrDevice* device);
|
||||
const RdpdrDevice* device);
|
||||
typedef UINT (*psRdpdrReceiveClientNameRequest)(RdpdrServerContext* context, size_t ComputerNameLen,
|
||||
const char* name);
|
||||
const char* name);
|
||||
|
||||
typedef UINT (*psRdpdrDriveCreateDirectory)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, const char* path);
|
||||
UINT32 deviceId, const char* path);
|
||||
typedef UINT (*psRdpdrDriveDeleteDirectory)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, const char* path);
|
||||
UINT32 deviceId, const char* path);
|
||||
typedef UINT (*psRdpdrDriveQueryDirectory)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, const char* path);
|
||||
UINT32 deviceId, const char* path);
|
||||
typedef UINT (*psRdpdrDriveOpenFile)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, const char* path, UINT32 desiredAccess,
|
||||
UINT32 createDisposition);
|
||||
UINT32 deviceId, const char* path, UINT32 desiredAccess,
|
||||
UINT32 createDisposition);
|
||||
typedef UINT (*psRdpdrDriveReadFile)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, UINT32 fileId, UINT32 length, UINT32 offset);
|
||||
UINT32 deviceId, UINT32 fileId, UINT32 length, UINT32 offset);
|
||||
typedef UINT (*psRdpdrDriveWriteFile)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, UINT32 fileId, const char* buffer,
|
||||
UINT32 length, UINT32 offset);
|
||||
UINT32 deviceId, UINT32 fileId, const char* buffer,
|
||||
UINT32 length, UINT32 offset);
|
||||
typedef UINT (*psRdpdrDriveCloseFile)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, UINT32 fileId);
|
||||
UINT32 deviceId, UINT32 fileId);
|
||||
typedef UINT (*psRdpdrDriveDeleteFile)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, const char* path);
|
||||
UINT32 deviceId, const char* path);
|
||||
typedef UINT (*psRdpdrDriveRenameFile)(RdpdrServerContext* context, void* callbackData,
|
||||
UINT32 deviceId, const char* oldPath, const char* newPath);
|
||||
UINT32 deviceId, const char* oldPath, const char* newPath);
|
||||
|
||||
typedef void (*psRdpdrOnDriveCreateDirectoryComplete)(RdpdrServerContext* context,
|
||||
void* callbackData, UINT32 ioStatus);
|
||||
@@ -134,7 +134,7 @@ struct s_rdpdr_server_context
|
||||
{
|
||||
HANDLE vcm;
|
||||
|
||||
psRdpdrStart Start;
|
||||
WINPR_ATTR_NODISCARD psRdpdrStart Start;
|
||||
psRdpdrStop Stop;
|
||||
|
||||
RdpdrServerPrivate* priv;
|
||||
@@ -152,37 +152,40 @@ struct s_rdpdr_server_context
|
||||
UINT16 supported;
|
||||
|
||||
/*** RDPDR message intercept callbacks */
|
||||
psRdpdrCapablityPDU ReceiveCaps; /**< Called for each received capability */
|
||||
psRdpdrCapablityPDU SendCaps; /**< Called for each capability to be sent */
|
||||
psRdpdrReceivePDU ReceivePDU; /**< Called after a RDPDR pdu was received and parsed */
|
||||
psRdpdrSendServerAnnounce
|
||||
SendServerAnnounce; /**< Called before the server sends the announce message */
|
||||
psRdpdrReceiveAnnounceResponse
|
||||
ReceiveAnnounceResponse; /**< Called after the client announce response is received */
|
||||
psRdpdrReceiveClientNameRequest
|
||||
ReceiveClientNameRequest; /**< Called after a client name request is received */
|
||||
psRdpdrReceiveDeviceAnnounce
|
||||
ReceiveDeviceAnnounce; /** < Called after a new device request was received but before the
|
||||
device is added */
|
||||
psRdpdrReceiveDeviceRemove ReceiveDeviceRemove; /**< Called after a new device request was
|
||||
received, but before it is removed */
|
||||
WINPR_ATTR_NODISCARD psRdpdrCapablityPDU
|
||||
ReceiveCaps; /**< Called for each received capability */
|
||||
WINPR_ATTR_NODISCARD psRdpdrCapablityPDU SendCaps; /**< Called for each capability to be sent */
|
||||
WINPR_ATTR_NODISCARD psRdpdrReceivePDU
|
||||
ReceivePDU; /**< Called after a RDPDR pdu was received and parsed */
|
||||
WINPR_ATTR_NODISCARD psRdpdrSendServerAnnounce
|
||||
SendServerAnnounce; /**< Called before the server sends the announce message */
|
||||
WINPR_ATTR_NODISCARD psRdpdrReceiveAnnounceResponse
|
||||
ReceiveAnnounceResponse; /**< Called after the client announce response is received */
|
||||
WINPR_ATTR_NODISCARD psRdpdrReceiveClientNameRequest
|
||||
ReceiveClientNameRequest; /**< Called after a client name request is received */
|
||||
WINPR_ATTR_NODISCARD psRdpdrReceiveDeviceAnnounce
|
||||
ReceiveDeviceAnnounce; /** < Called after a new device request was received but before the
|
||||
device is added */
|
||||
WINPR_ATTR_NODISCARD psRdpdrReceiveDeviceRemove
|
||||
ReceiveDeviceRemove; /**< Called after a new device request was
|
||||
received, but before it is removed */
|
||||
|
||||
/*** Drive APIs called by the server. ***/
|
||||
psRdpdrDriveCreateDirectory DriveCreateDirectory;
|
||||
psRdpdrDriveDeleteDirectory DriveDeleteDirectory;
|
||||
psRdpdrDriveQueryDirectory DriveQueryDirectory;
|
||||
psRdpdrDriveOpenFile DriveOpenFile;
|
||||
psRdpdrDriveReadFile DriveReadFile;
|
||||
psRdpdrDriveWriteFile DriveWriteFile;
|
||||
psRdpdrDriveCloseFile DriveCloseFile;
|
||||
psRdpdrDriveDeleteFile DriveDeleteFile;
|
||||
psRdpdrDriveRenameFile DriveRenameFile;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveCreateDirectory DriveCreateDirectory;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveDeleteDirectory DriveDeleteDirectory;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveQueryDirectory DriveQueryDirectory;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveOpenFile DriveOpenFile;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveReadFile DriveReadFile;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveWriteFile DriveWriteFile;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveCloseFile DriveCloseFile;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveDeleteFile DriveDeleteFile;
|
||||
WINPR_ATTR_NODISCARD psRdpdrDriveRenameFile DriveRenameFile;
|
||||
|
||||
/*** Drive callbacks registered by the server. ***/
|
||||
psRdpdrOnDeviceCreate OnDriveCreate; /**< Called for devices of type \b RDPDR_DTYP_FILESYSTEM
|
||||
after \b ReceiveDeviceAnnounce */
|
||||
psRdpdrOnDeviceDelete OnDriveDelete; /**< Called for devices of type \b RDPDR_DTYP_FILESYSTEM
|
||||
after \b ReceiveDeviceRemove */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceCreate OnDriveCreate; /**< Called for devices of type \b
|
||||
RDPDR_DTYP_FILESYSTEM after \b ReceiveDeviceAnnounce */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceDelete OnDriveDelete; /**< Called for devices of type \b
|
||||
RDPDR_DTYP_FILESYSTEM after \b ReceiveDeviceRemove */
|
||||
psRdpdrOnDriveCreateDirectoryComplete OnDriveCreateDirectoryComplete;
|
||||
psRdpdrOnDriveDeleteDirectoryComplete OnDriveDeleteDirectoryComplete;
|
||||
psRdpdrOnDriveQueryDirectoryComplete OnDriveQueryDirectoryComplete;
|
||||
@@ -194,28 +197,29 @@ struct s_rdpdr_server_context
|
||||
psRdpdrOnDriveRenameFileComplete OnDriveRenameFileComplete;
|
||||
|
||||
/*** Serial Port callbacks registered by the server. ***/
|
||||
psRdpdrOnDeviceCreate OnSerialPortCreate; /**< Called for devices of type \b RDPDR_DTYP_SERIAL
|
||||
after \b ReceiveDeviceAnnounce */
|
||||
psRdpdrOnDeviceDelete OnSerialPortDelete; /**< Called for devices of type \b RDPDR_DTYP_SERIAL
|
||||
after \b ReceiveDeviceRemove */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceCreate OnSerialPortCreate; /**< Called for devices of type
|
||||
\b RDPDR_DTYP_SERIAL after \b ReceiveDeviceAnnounce */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceDelete OnSerialPortDelete; /**< Called for devices of type
|
||||
\b RDPDR_DTYP_SERIAL after \b ReceiveDeviceRemove */
|
||||
|
||||
/*** Parallel Port callbacks registered by the server. ***/
|
||||
psRdpdrOnDeviceCreate OnParallelPortCreate; /**< Called for devices of type \b
|
||||
RDPDR_DTYP_PARALLEL after \b ReceiveDeviceAnnounce */
|
||||
psRdpdrOnDeviceDelete OnParallelPortDelete; /**< Called for devices of type \b
|
||||
RDPDR_DTYP_PARALLEL after \b ReceiveDeviceRemove */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceCreate OnParallelPortCreate; /**< Called for devices of type
|
||||
\b RDPDR_DTYP_PARALLEL after \b ReceiveDeviceAnnounce */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceDelete OnParallelPortDelete; /**< Called for devices of type
|
||||
\b RDPDR_DTYP_PARALLEL after \b ReceiveDeviceRemove */
|
||||
|
||||
/*** Printer callbacks registered by the server. ***/
|
||||
psRdpdrOnDeviceCreate OnPrinterCreate; /**< Called for devices of type RDPDR_DTYP_PRINT after \b
|
||||
ReceiveDeviceAnnounce */
|
||||
psRdpdrOnDeviceDelete OnPrinterDelete; /**< Called for devices of type RDPDR_DTYP_PRINT after \b
|
||||
ReceiveDeviceRemove */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceCreate OnPrinterCreate; /**< Called for devices of type
|
||||
RDPDR_DTYP_PRINT after \b ReceiveDeviceAnnounce */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceDelete OnPrinterDelete; /**< Called for devices of type
|
||||
RDPDR_DTYP_PRINT after \b ReceiveDeviceRemove */
|
||||
|
||||
/*** Smartcard callbacks registered by the server. ***/
|
||||
psRdpdrOnDeviceCreate OnSmartcardCreate; /**< Called for devices of type RDPDR_DTYP_SMARTCARD
|
||||
after \b ReceiveDeviceAnnounce */
|
||||
psRdpdrOnDeviceDelete OnSmartcardDelete; /**< Called for devices of type RDPDR_DTYP_SMARTCARD
|
||||
after \b ReceiveDeviceRemove */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceCreate
|
||||
OnSmartcardCreate; /**< Called for devices of type RDPDR_DTYP_SMARTCARD
|
||||
after \b ReceiveDeviceAnnounce */
|
||||
WINPR_ATTR_NODISCARD psRdpdrOnDeviceDelete OnSmartcardDelete; /**< Called for devices of type
|
||||
RDPDR_DTYP_SMARTCARD after \b ReceiveDeviceRemove */
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -70,57 +70,59 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psCamDevEnumServerServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* Open the camera device enumerator channel.
|
||||
*/
|
||||
psCamDevEnumServerServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerOpen Open;
|
||||
|
||||
/**
|
||||
* Close the camera device enumerator channel.
|
||||
*/
|
||||
psCamDevEnumServerServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerClose Close;
|
||||
|
||||
/**
|
||||
* Poll
|
||||
* When externalThread=TRUE, call Poll() periodically from your main loop.
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psCamDevEnumServerServerPoll Poll;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerPoll Poll;
|
||||
|
||||
/**
|
||||
* Retrieve the channel handle for use in conjunction with Poll().
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psCamDevEnumServerServerChannelHandle ChannelHandle;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerChannelHandle ChannelHandle;
|
||||
|
||||
/*
|
||||
* Send a Select Version Response PDU.
|
||||
*/
|
||||
psCamDevEnumServerServerSelectVersionResponse SelectVersionResponse;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerSelectVersionResponse SelectVersionResponse;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psCamDevEnumServerServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerChannelIdAssigned ChannelIdAssigned;
|
||||
|
||||
/**
|
||||
* Callback for the Select Version Request PDU.
|
||||
*/
|
||||
psCamDevEnumServerServerSelectVersionRequest SelectVersionRequest;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerSelectVersionRequest SelectVersionRequest;
|
||||
|
||||
/**
|
||||
* Callback for the Device Added Notification PDU.
|
||||
*/
|
||||
psCamDevEnumServerServerDeviceAddedNotification DeviceAddedNotification;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerDeviceAddedNotification
|
||||
DeviceAddedNotification;
|
||||
|
||||
/**
|
||||
* Callback for the Device Removed Notification PDU.
|
||||
*/
|
||||
psCamDevEnumServerServerDeviceRemovedNotification DeviceRemovedNotification;
|
||||
WINPR_ATTR_NODISCARD psCamDevEnumServerServerDeviceRemovedNotification
|
||||
DeviceRemovedNotification;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -132,30 +132,30 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psCameraDeviceServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* Open the camera device channel.
|
||||
*/
|
||||
psCameraDeviceServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerOpen Open;
|
||||
|
||||
/**
|
||||
* Close the camera device channel.
|
||||
*/
|
||||
psCameraDeviceServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerClose Close;
|
||||
|
||||
/**
|
||||
* Poll
|
||||
* When externalThread=TRUE, call Poll() periodically from your main loop.
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psCameraDeviceServerPoll Poll;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerPoll Poll;
|
||||
|
||||
/**
|
||||
* Retrieve the channel handle for use in conjunction with Poll().
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psCameraDeviceServerChannelHandle ChannelHandle;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerChannelHandle ChannelHandle;
|
||||
|
||||
/**
|
||||
* For the following server to client PDUs,
|
||||
@@ -165,109 +165,109 @@ extern "C"
|
||||
/**
|
||||
* Send a Activate Device Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerActivateDeviceRequest ActivateDeviceRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerActivateDeviceRequest ActivateDeviceRequest;
|
||||
|
||||
/**
|
||||
* Send a Deactivate Device Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerDeactivateDeviceRequest DeactivateDeviceRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerDeactivateDeviceRequest DeactivateDeviceRequest;
|
||||
|
||||
/**
|
||||
* Send a Stream List Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerStreamListRequest StreamListRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerStreamListRequest StreamListRequest;
|
||||
|
||||
/**
|
||||
* Send a Media Type List Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerMediaTypeListRequest MediaTypeListRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerMediaTypeListRequest MediaTypeListRequest;
|
||||
|
||||
/**
|
||||
* Send a Current Media Type Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerCurrentMediaTypeRequest CurrentMediaTypeRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerCurrentMediaTypeRequest CurrentMediaTypeRequest;
|
||||
|
||||
/**
|
||||
* Send a Start Streams Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerStartStreamsRequest StartStreamsRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerStartStreamsRequest StartStreamsRequest;
|
||||
|
||||
/**
|
||||
* Send a Stop Streams Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerStopStreamsRequest StopStreamsRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerStopStreamsRequest StopStreamsRequest;
|
||||
|
||||
/**
|
||||
* Send a Sample Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerSampleRequest SampleRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerSampleRequest SampleRequest;
|
||||
|
||||
/**
|
||||
* Send a Property List Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerPropertyListRequest PropertyListRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerPropertyListRequest PropertyListRequest;
|
||||
|
||||
/**
|
||||
* Send a Property Value Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerPropertyValueRequest PropertyValueRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerPropertyValueRequest PropertyValueRequest;
|
||||
|
||||
/**
|
||||
* Send a Set Property Value Request PDU.
|
||||
*/
|
||||
psCameraDeviceServerSetPropertyValueRequest SetPropertyValueRequest;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerSetPropertyValueRequest SetPropertyValueRequest;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psCameraDeviceServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerChannelIdAssigned ChannelIdAssigned;
|
||||
|
||||
/**
|
||||
* Callback for the Success Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerSuccessResponse SuccessResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerSuccessResponse SuccessResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Error Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerErrorResponse ErrorResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerErrorResponse ErrorResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Stream List Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerStreamListResponse StreamListResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerStreamListResponse StreamListResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Media Type List Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerMediaTypeListResponse MediaTypeListResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerMediaTypeListResponse MediaTypeListResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Current Media Type Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerCurrentMediaTypeResponse CurrentMediaTypeResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerCurrentMediaTypeResponse CurrentMediaTypeResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Sample Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerSampleResponse SampleResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerSampleResponse SampleResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Sample Error Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerSampleErrorResponse SampleErrorResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerSampleErrorResponse SampleErrorResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Property List Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerPropertyListResponse PropertyListResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerPropertyListResponse PropertyListResponse;
|
||||
|
||||
/**
|
||||
* Callback for the Property Value Response PDU.
|
||||
*/
|
||||
psCameraDeviceServerPropertyValueResponse PropertyValueResponse;
|
||||
WINPR_ATTR_NODISCARD psCameraDeviceServerPropertyValueResponse PropertyValueResponse;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -48,17 +48,20 @@ extern "C"
|
||||
UINT32 protocolFlags;
|
||||
|
||||
/** callbacks that can be set by the user */
|
||||
UINT (*onClientReady)(RdpeiServerContext* context);
|
||||
UINT (*onTouchEvent)(RdpeiServerContext* context, const RDPINPUT_TOUCH_EVENT* touchEvent);
|
||||
UINT (*onPenEvent)(RdpeiServerContext* context, const RDPINPUT_PEN_EVENT* penEvent);
|
||||
UINT (*onTouchReleased)(RdpeiServerContext* context, BYTE contactId);
|
||||
WINPR_ATTR_NODISCARD UINT (*onClientReady)(RdpeiServerContext* context);
|
||||
WINPR_ATTR_NODISCARD UINT (*onTouchEvent)(RdpeiServerContext* context,
|
||||
const RDPINPUT_TOUCH_EVENT* touchEvent);
|
||||
WINPR_ATTR_NODISCARD UINT (*onPenEvent)(RdpeiServerContext* context,
|
||||
const RDPINPUT_PEN_EVENT* penEvent);
|
||||
WINPR_ATTR_NODISCARD UINT (*onTouchReleased)(RdpeiServerContext* context, BYTE contactId);
|
||||
|
||||
void* user_data; /* user data, useful for callbacks */
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
BOOL (*onChannelIdAssigned)(RdpeiServerContext* context, UINT32 channelId);
|
||||
WINPR_ATTR_NODISCARD BOOL (*onChannelIdAssigned)(RdpeiServerContext* context,
|
||||
UINT32 channelId);
|
||||
|
||||
/*** APIs called by the server. ***/
|
||||
|
||||
@@ -66,13 +69,13 @@ extern "C"
|
||||
* Open the input channel.
|
||||
* @since version 3.15.0
|
||||
*/
|
||||
psRdpeiServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psRdpeiServerOpen Open;
|
||||
|
||||
/**
|
||||
* Close the input channel.
|
||||
* @since version 3.15.0
|
||||
*/
|
||||
psRdpeiServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psRdpeiServerClose Close;
|
||||
};
|
||||
|
||||
FREERDP_API void rdpei_server_context_free(RdpeiServerContext* context);
|
||||
|
||||
@@ -68,54 +68,54 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psMouseCursorServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* Open the mouse cursor channel.
|
||||
*/
|
||||
psMouseCursorServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerOpen Open;
|
||||
|
||||
/**
|
||||
* Close the mouse cursor channel.
|
||||
*/
|
||||
psMouseCursorServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerClose Close;
|
||||
|
||||
/**
|
||||
* Poll
|
||||
* When externalThread=TRUE, call Poll() periodically from your main loop.
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psMouseCursorServerPoll Poll;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerPoll Poll;
|
||||
|
||||
/**
|
||||
* Retrieve the channel handle for use in conjunction with Poll().
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psMouseCursorServerChannelHandle ChannelHandle;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerChannelHandle ChannelHandle;
|
||||
|
||||
/* All PDUs sent by the server don't require the pduType to be set */
|
||||
|
||||
/*
|
||||
* Send a CapsConfirm PDU.
|
||||
*/
|
||||
psMouseCursorServerCapsConfirm CapsConfirm;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerCapsConfirm CapsConfirm;
|
||||
|
||||
/*
|
||||
* Send a MouseptrUpdate PDU.
|
||||
*/
|
||||
psMouseCursorServerMouseptrUpdate MouseptrUpdate;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerMouseptrUpdate MouseptrUpdate;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psMouseCursorServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerChannelIdAssigned ChannelIdAssigned;
|
||||
|
||||
/**
|
||||
* Callback for the CapsAdvertise PDU.
|
||||
*/
|
||||
psMouseCursorServerCapsAdvertise CapsAdvertise;
|
||||
WINPR_ATTR_NODISCARD psMouseCursorServerCapsAdvertise CapsAdvertise;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -95,32 +95,32 @@ extern "C"
|
||||
HANDLE vcm;
|
||||
void* custom;
|
||||
|
||||
psRdpgfxServerOpen Open;
|
||||
psRdpgfxServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxServerClose Close;
|
||||
|
||||
psRdpgfxResetGraphics ResetGraphics;
|
||||
psRdpgfxStartFrame StartFrame;
|
||||
psRdpgfxEndFrame EndFrame;
|
||||
psRdpgfxSurfaceCommand SurfaceCommand;
|
||||
psRdpgfxSurfaceFrameCommand SurfaceFrameCommand;
|
||||
psRdpgfxDeleteEncodingContext DeleteEncodingContext;
|
||||
psRdpgfxCreateSurface CreateSurface;
|
||||
psRdpgfxDeleteSurface DeleteSurface;
|
||||
psRdpgfxSolidFill SolidFill;
|
||||
psRdpgfxSurfaceToSurface SurfaceToSurface;
|
||||
psRdpgfxSurfaceToCache SurfaceToCache;
|
||||
psRdpgfxCacheToSurface CacheToSurface;
|
||||
psRdpgfxCacheImportOffer CacheImportOffer;
|
||||
psRdpgfxCacheImportReply CacheImportReply;
|
||||
psRdpgfxEvictCacheEntry EvictCacheEntry;
|
||||
psRdpgfxMapSurfaceToOutput MapSurfaceToOutput;
|
||||
psRdpgfxMapSurfaceToWindow MapSurfaceToWindow;
|
||||
psRdpgfxMapSurfaceToScaledOutput MapSurfaceToScaledOutput;
|
||||
psRdpgfxMapSurfaceToScaledWindow MapSurfaceToScaledWindow;
|
||||
psRdpgfxCapsAdvertise CapsAdvertise;
|
||||
psRdpgfxCapsConfirm CapsConfirm;
|
||||
psRdpgfxFrameAcknowledge FrameAcknowledge;
|
||||
psRdpgfxQoeFrameAcknowledge QoeFrameAcknowledge;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxResetGraphics ResetGraphics;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxStartFrame StartFrame;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxEndFrame EndFrame;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxSurfaceCommand SurfaceCommand;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxSurfaceFrameCommand SurfaceFrameCommand;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxDeleteEncodingContext DeleteEncodingContext;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxCreateSurface CreateSurface;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxDeleteSurface DeleteSurface;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxSolidFill SolidFill;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxSurfaceToSurface SurfaceToSurface;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxSurfaceToCache SurfaceToCache;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxCacheToSurface CacheToSurface;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxCacheImportOffer CacheImportOffer;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxCacheImportReply CacheImportReply;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxEvictCacheEntry EvictCacheEntry;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxMapSurfaceToOutput MapSurfaceToOutput;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxMapSurfaceToWindow MapSurfaceToWindow;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxMapSurfaceToScaledOutput MapSurfaceToScaledOutput;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxMapSurfaceToScaledWindow MapSurfaceToScaledWindow;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxCapsAdvertise CapsAdvertise;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxCapsConfirm CapsConfirm;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxFrameAcknowledge FrameAcknowledge;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxQoeFrameAcknowledge QoeFrameAcknowledge;
|
||||
|
||||
RdpgfxServerPrivate* priv;
|
||||
rdpContext* rdpcontext;
|
||||
@@ -128,7 +128,7 @@ extern "C"
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
*/
|
||||
psRdpgfxServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxServerChannelIdAssigned ChannelIdAssigned;
|
||||
/**
|
||||
* Optional: Set thread handling.
|
||||
* When externalThread=TRUE, the application is responsible to call
|
||||
@@ -136,7 +136,7 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psRdpgfxServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psRdpgfxServerInitialize Initialize;
|
||||
};
|
||||
|
||||
FREERDP_API void rdpgfx_server_context_free(RdpgfxServerContext* context);
|
||||
|
||||
@@ -64,7 +64,7 @@ extern "C"
|
||||
{
|
||||
HANDLE vcm;
|
||||
|
||||
psRdpsndStart Start;
|
||||
WINPR_ATTR_NODISCARD psRdpsndStart Start;
|
||||
psRdpsndStop Stop;
|
||||
|
||||
RdpsndServerPrivate* priv;
|
||||
@@ -99,27 +99,27 @@ extern "C"
|
||||
* whether the initialization succeed. If not, the "Activated" callback
|
||||
* will not be called and the server must not call any API on this context.
|
||||
*/
|
||||
psRdpsndServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* Choose the audio format to be sent. The index argument is an index into
|
||||
* the client_formats array and must be smaller than num_client_formats.
|
||||
*/
|
||||
psRdpsndServerSelectFormat SelectFormat;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerSelectFormat SelectFormat;
|
||||
/**
|
||||
* Send audio samples. Actually bytes in the buffer must be:
|
||||
* nframes * src_format.nBitsPerSample * src_format.nChannels / 8
|
||||
*/
|
||||
psRdpsndServerSendSamples SendSamples;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerSendSamples SendSamples;
|
||||
|
||||
/**
|
||||
* Called when block confirm is received from the client
|
||||
*/
|
||||
psRdpsndServerConfirmBlock ConfirmBlock;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerConfirmBlock ConfirmBlock;
|
||||
/**
|
||||
* Set the volume level of the client. Valid range is between 0 and 0xFFFF.
|
||||
*/
|
||||
psRdpsndServerSetVolume SetVolume;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerSetVolume SetVolume;
|
||||
/**
|
||||
* Close the audio stream.
|
||||
*/
|
||||
@@ -155,28 +155,28 @@ extern "C"
|
||||
* opening the channel.
|
||||
* Also used to restart the protocol after sending the Close PDU.
|
||||
*/
|
||||
psRdpsndServerSendFormats SendFormats;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerSendFormats SendFormats;
|
||||
/**
|
||||
* Send Training PDU.
|
||||
*/
|
||||
psRdpsndServerTraining Training;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerTraining Training;
|
||||
|
||||
/**
|
||||
* Send encoded audio samples using a Wave2 PDU.
|
||||
* When successful, the block_no member is incremented.
|
||||
*/
|
||||
psRdpsndServerSendSamples2 SendSamples2;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerSendSamples2 SendSamples2;
|
||||
|
||||
/**
|
||||
* Called when a TrainingConfirm PDU is received from the client.
|
||||
*/
|
||||
psRdpsndServerTrainingConfirm TrainingConfirm;
|
||||
WINPR_ATTR_NODISCARD psRdpsndServerTrainingConfirm TrainingConfirm;
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned.
|
||||
* Only called, when use_dynamic_virtual_channel=TRUE.
|
||||
*/
|
||||
psRdpsndChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psRdpsndChannelIdAssigned ChannelIdAssigned;
|
||||
|
||||
UINT16 udpPort; /** @since version 3.14.0 */
|
||||
UINT8 lastblock; /** @since version 3.14.0 */
|
||||
|
||||
@@ -48,7 +48,7 @@ extern "C"
|
||||
HANDLE vcm;
|
||||
void* custom;
|
||||
|
||||
psRemdeskStart Start;
|
||||
WINPR_ATTR_NODISCARD psRemdeskStart Start;
|
||||
psRemdeskStop Stop;
|
||||
|
||||
RemdeskServerPrivate* priv;
|
||||
|
||||
@@ -200,16 +200,16 @@ extern "C"
|
||||
|
||||
struct S_RDP_SHADOW_ENTRY_POINTS
|
||||
{
|
||||
pfnShadowSubsystemNew New;
|
||||
WINPR_ATTR_NODISCARD pfnShadowSubsystemNew New;
|
||||
pfnShadowSubsystemFree Free;
|
||||
|
||||
pfnShadowSubsystemInit Init;
|
||||
WINPR_ATTR_NODISCARD pfnShadowSubsystemInit Init;
|
||||
pfnShadowSubsystemUninit Uninit;
|
||||
|
||||
pfnShadowSubsystemStart Start;
|
||||
WINPR_ATTR_NODISCARD pfnShadowSubsystemStart Start;
|
||||
pfnShadowSubsystemStop Stop;
|
||||
|
||||
pfnShadowEnumMonitors EnumMonitors;
|
||||
WINPR_ATTR_NODISCARD pfnShadowEnumMonitors EnumMonitors;
|
||||
};
|
||||
|
||||
struct rdp_shadow_subsystem
|
||||
@@ -236,21 +236,21 @@ extern "C"
|
||||
AUDIO_FORMAT* audinFormats;
|
||||
size_t nAudinFormats;
|
||||
|
||||
pfnShadowSynchronizeEvent SynchronizeEvent;
|
||||
pfnShadowKeyboardEvent KeyboardEvent;
|
||||
pfnShadowUnicodeKeyboardEvent UnicodeKeyboardEvent;
|
||||
pfnShadowMouseEvent MouseEvent;
|
||||
pfnShadowExtendedMouseEvent ExtendedMouseEvent;
|
||||
pfnShadowChannelAudinServerReceiveSamples AudinServerReceiveSamples;
|
||||
WINPR_ATTR_NODISCARD pfnShadowSynchronizeEvent SynchronizeEvent;
|
||||
WINPR_ATTR_NODISCARD pfnShadowKeyboardEvent KeyboardEvent;
|
||||
WINPR_ATTR_NODISCARD pfnShadowUnicodeKeyboardEvent UnicodeKeyboardEvent;
|
||||
WINPR_ATTR_NODISCARD pfnShadowMouseEvent MouseEvent;
|
||||
WINPR_ATTR_NODISCARD pfnShadowExtendedMouseEvent ExtendedMouseEvent;
|
||||
WINPR_ATTR_NODISCARD pfnShadowChannelAudinServerReceiveSamples AudinServerReceiveSamples;
|
||||
|
||||
pfnShadowAuthenticate Authenticate;
|
||||
pfnShadowClientConnect ClientConnect;
|
||||
WINPR_ATTR_NODISCARD pfnShadowAuthenticate Authenticate;
|
||||
WINPR_ATTR_NODISCARD pfnShadowClientConnect ClientConnect;
|
||||
pfnShadowClientDisconnect ClientDisconnect;
|
||||
pfnShadowClientCapabilities ClientCapabilities;
|
||||
WINPR_ATTR_NODISCARD pfnShadowClientCapabilities ClientCapabilities;
|
||||
|
||||
rdpShadowServer* server;
|
||||
|
||||
pfnShadowRelMouseEvent RelMouseEvent; /** @since version 3.15.0 */
|
||||
WINPR_ATTR_NODISCARD pfnShadowRelMouseEvent RelMouseEvent; /** @since version 3.15.0 */
|
||||
};
|
||||
|
||||
/* Definition of message between subsystem and clients */
|
||||
|
||||
@@ -60,41 +60,41 @@ extern "C"
|
||||
*
|
||||
* Defaults to externalThread=FALSE
|
||||
*/
|
||||
psTelemetryServerInitialize Initialize;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerInitialize Initialize;
|
||||
|
||||
/**
|
||||
* Open the telemetry channel.
|
||||
*/
|
||||
psTelemetryServerOpen Open;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerOpen Open;
|
||||
|
||||
/**
|
||||
* Close the telemetry channel.
|
||||
*/
|
||||
psTelemetryServerClose Close;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerClose Close;
|
||||
|
||||
/**
|
||||
* Poll
|
||||
* When externalThread=TRUE, call Poll() periodically from your main loop.
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psTelemetryServerPoll Poll;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerPoll Poll;
|
||||
|
||||
/**
|
||||
* Retrieve the channel handle for use in conjunction with Poll().
|
||||
* If externalThread=FALSE do not call.
|
||||
*/
|
||||
psTelemetryServerChannelHandle ChannelHandle;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerChannelHandle ChannelHandle;
|
||||
|
||||
/*** Callbacks registered by the server. ***/
|
||||
|
||||
/**
|
||||
* Callback, when the channel got its id assigned
|
||||
*/
|
||||
psTelemetryServerChannelIdAssigned ChannelIdAssigned;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerChannelIdAssigned ChannelIdAssigned;
|
||||
/**
|
||||
* Callback for the RDP Telemetry PDU.
|
||||
*/
|
||||
psTelemetryServerRdpTelemetry RdpTelemetry;
|
||||
WINPR_ATTR_NODISCARD psTelemetryServerRdpTelemetry RdpTelemetry;
|
||||
|
||||
rdpContext* rdpcontext;
|
||||
};
|
||||
|
||||
@@ -43,10 +43,10 @@ extern "C"
|
||||
{
|
||||
UINT32 cbSize;
|
||||
UINT32 protocolVersion;
|
||||
PVIRTUALCHANNELINIT pVirtualChannelInit;
|
||||
PVIRTUALCHANNELOPEN pVirtualChannelOpen;
|
||||
PVIRTUALCHANNELCLOSE pVirtualChannelClose;
|
||||
PVIRTUALCHANNELWRITE pVirtualChannelWrite;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELINIT pVirtualChannelInit;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELOPEN pVirtualChannelOpen;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELCLOSE pVirtualChannelClose;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELWRITE pVirtualChannelWrite;
|
||||
|
||||
/* Extended Fields */
|
||||
UINT32 MagicNumber; /* identifies FreeRDP */
|
||||
@@ -60,10 +60,10 @@ extern "C"
|
||||
{
|
||||
UINT32 cbSize;
|
||||
UINT32 protocolVersion;
|
||||
PVIRTUALCHANNELINITEX pVirtualChannelInitEx;
|
||||
PVIRTUALCHANNELOPENEX pVirtualChannelOpenEx;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELINITEX pVirtualChannelInitEx;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELOPENEX pVirtualChannelOpenEx;
|
||||
PVIRTUALCHANNELCLOSEEX pVirtualChannelCloseEx;
|
||||
PVIRTUALCHANNELWRITEEX pVirtualChannelWriteEx;
|
||||
WINPR_ATTR_NODISCARD PVIRTUALCHANNELWRITEEX pVirtualChannelWriteEx;
|
||||
|
||||
/* Extended Fields */
|
||||
UINT32 MagicNumber; /* identifies FreeRDP */
|
||||
|
||||
@@ -68,11 +68,11 @@ extern "C"
|
||||
typedef struct
|
||||
{
|
||||
ALIGN64 void* userContext;
|
||||
ALIGN64 pTransportLayerRead Read;
|
||||
ALIGN64 pTransportLayerWrite Write;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pTransportLayerRead Read;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pTransportLayerWrite Write;
|
||||
ALIGN64 pTransportLayerFkt Close;
|
||||
ALIGN64 pTransportLayerWait Wait;
|
||||
ALIGN64 pTransportLayerGetEvent GetEvent;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pTransportLayerWait Wait;
|
||||
ALIGN64 WINPR_ATTR_NODISCARD pTransportLayerGetEvent GetEvent;
|
||||
UINT64 reserved[64 - 6]; /* Reserve some space for ABI compatibility */
|
||||
} rdpTransportLayer;
|
||||
|
||||
@@ -110,18 +110,18 @@ extern "C"
|
||||
|
||||
struct rdp_transport_io
|
||||
{
|
||||
pTCPConnect TCPConnect;
|
||||
pTransportFkt TLSConnect;
|
||||
pTransportFkt TLSAccept;
|
||||
pTransportAttach TransportAttach;
|
||||
pTransportFkt TransportDisconnect;
|
||||
pTransportRWFkt ReadPdu; /* Reads a whole PDU from the transport */
|
||||
pTransportRWFkt WritePdu; /* Writes a whole PDU to the transport */
|
||||
pTransportRead ReadBytes; /* Reads up to a requested amount of bytes */
|
||||
pTransportGetPublicKey GetPublicKey; /** @since version 3.2.0 */
|
||||
pTransportSetBlockingMode SetBlockingMode; /** @since version 3.3.0 */
|
||||
pTransportConnectLayer ConnectLayer; /** @since 3.9.0 */
|
||||
pTransportAttachLayer AttachLayer; /** @since 3.9.0 */
|
||||
WINPR_ATTR_NODISCARD pTCPConnect TCPConnect;
|
||||
WINPR_ATTR_NODISCARD pTransportFkt TLSConnect;
|
||||
WINPR_ATTR_NODISCARD pTransportFkt TLSAccept;
|
||||
WINPR_ATTR_NODISCARD pTransportAttach TransportAttach;
|
||||
WINPR_ATTR_NODISCARD pTransportFkt TransportDisconnect;
|
||||
WINPR_ATTR_NODISCARD pTransportRWFkt ReadPdu; /* Reads a whole PDU from the transport */
|
||||
WINPR_ATTR_NODISCARD pTransportRWFkt WritePdu; /* Writes a whole PDU to the transport */
|
||||
WINPR_ATTR_NODISCARD pTransportRead ReadBytes; /* Reads up to a requested amount of bytes */
|
||||
WINPR_ATTR_NODISCARD pTransportGetPublicKey GetPublicKey; /** @since version 3.2.0 */
|
||||
WINPR_ATTR_NODISCARD pTransportSetBlockingMode SetBlockingMode; /** @since version 3.3.0 */
|
||||
WINPR_ATTR_NODISCARD pTransportConnectLayer ConnectLayer; /** @since 3.9.0 */
|
||||
WINPR_ATTR_NODISCARD pTransportAttachLayer AttachLayer; /** @since 3.9.0 */
|
||||
UINT64 reserved[64 - 12]; /* Reserve some space for ABI compatibility */
|
||||
};
|
||||
typedef struct rdp_transport_io rdpTransportIo;
|
||||
|
||||
@@ -202,16 +202,16 @@ extern "C"
|
||||
rdpContext* context; /* 0 */
|
||||
UINT32 paddingA[16 - 1]; /* 1 */
|
||||
|
||||
pBeginPaint BeginPaint; /* 16 */
|
||||
pEndPaint EndPaint; /* 17 */
|
||||
pSetBounds SetBounds; /* 18 */
|
||||
pSynchronize Synchronize; /* 19 */
|
||||
pDesktopResize DesktopResize; /* 20 */
|
||||
pBitmapUpdate BitmapUpdate; /* 21 */
|
||||
pPalette Palette; /* 22 */
|
||||
pPlaySound PlaySound; /* 23 */
|
||||
pSetKeyboardIndicators SetKeyboardIndicators; /* 24 */
|
||||
pSetKeyboardImeStatus SetKeyboardImeStatus; /* 25 */
|
||||
WINPR_ATTR_NODISCARD pBeginPaint BeginPaint; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pEndPaint EndPaint; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pSetBounds SetBounds; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pSynchronize Synchronize; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pDesktopResize DesktopResize; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pBitmapUpdate BitmapUpdate; /* 21 */
|
||||
WINPR_ATTR_NODISCARD pPalette Palette; /* 22 */
|
||||
WINPR_ATTR_NODISCARD pPlaySound PlaySound; /* 23 */
|
||||
WINPR_ATTR_NODISCARD pSetKeyboardIndicators SetKeyboardIndicators; /* 24 */
|
||||
WINPR_ATTR_NODISCARD pSetKeyboardImeStatus SetKeyboardImeStatus; /* 25 */
|
||||
UINT32 paddingB[32 - 26]; /* 26 */
|
||||
|
||||
rdpPointerUpdate* pointer; /* 32 */
|
||||
@@ -226,13 +226,13 @@ extern "C"
|
||||
pRemoteMonitors RemoteMonitors; /* 50 */
|
||||
UINT32 paddingD[64 - 51]; /* 51 */
|
||||
|
||||
pSurfaceCommand SurfaceCommand; /* 64 */
|
||||
pSurfaceBits SurfaceBits; /* 65 */
|
||||
pSurfaceFrameMarker SurfaceFrameMarker; /* 66 */
|
||||
pSurfaceFrameBits SurfaceFrameBits; /* 67 */
|
||||
pSurfaceFrameAcknowledge SurfaceFrameAcknowledge; /* 68 */
|
||||
pSaveSessionInfo SaveSessionInfo; /* 69 */
|
||||
pServerStatusInfo ServerStatusInfo; /* 70 */
|
||||
WINPR_ATTR_NODISCARD pSurfaceCommand SurfaceCommand; /* 64 */
|
||||
WINPR_ATTR_NODISCARD pSurfaceBits SurfaceBits; /* 65 */
|
||||
WINPR_ATTR_NODISCARD pSurfaceFrameMarker SurfaceFrameMarker; /* 66 */
|
||||
WINPR_ATTR_NODISCARD pSurfaceFrameBits SurfaceFrameBits; /* 67 */
|
||||
WINPR_ATTR_NODISCARD pSurfaceFrameAcknowledge SurfaceFrameAcknowledge; /* 68 */
|
||||
WINPR_ATTR_NODISCARD pSaveSessionInfo SaveSessionInfo; /* 69 */
|
||||
WINPR_ATTR_NODISCARD pServerStatusInfo ServerStatusInfo; /* 70 */
|
||||
/* if autoCalculateBitmapData is set to TRUE, the server automatically
|
||||
* fills BITMAP_DATA struct members: flags, cbCompMainBodySize and cbCompFirstRowSize.
|
||||
*/
|
||||
|
||||
@@ -277,16 +277,16 @@ extern "C"
|
||||
rdpContext* context; /* 0 */
|
||||
UINT32 paddingA[16 - 1]; /* 1 */
|
||||
|
||||
pWindowCreate WindowCreate; /* 16 */
|
||||
pWindowUpdate WindowUpdate; /* 17 */
|
||||
pWindowIcon WindowIcon; /* 18 */
|
||||
pWindowCachedIcon WindowCachedIcon; /* 19 */
|
||||
pWindowDelete WindowDelete; /* 20 */
|
||||
pNotifyIconCreate NotifyIconCreate; /* 21 */
|
||||
pNotifyIconUpdate NotifyIconUpdate; /* 22 */
|
||||
pNotifyIconDelete NotifyIconDelete; /* 23 */
|
||||
pMonitoredDesktop MonitoredDesktop; /* 24 */
|
||||
pNonMonitoredDesktop NonMonitoredDesktop; /* 25 */
|
||||
WINPR_ATTR_NODISCARD pWindowCreate WindowCreate; /* 16 */
|
||||
WINPR_ATTR_NODISCARD pWindowUpdate WindowUpdate; /* 17 */
|
||||
WINPR_ATTR_NODISCARD pWindowIcon WindowIcon; /* 18 */
|
||||
WINPR_ATTR_NODISCARD pWindowCachedIcon WindowCachedIcon; /* 19 */
|
||||
WINPR_ATTR_NODISCARD pWindowDelete WindowDelete; /* 20 */
|
||||
WINPR_ATTR_NODISCARD pNotifyIconCreate NotifyIconCreate; /* 21 */
|
||||
WINPR_ATTR_NODISCARD pNotifyIconUpdate NotifyIconUpdate; /* 22 */
|
||||
WINPR_ATTR_NODISCARD pNotifyIconDelete NotifyIconDelete; /* 23 */
|
||||
WINPR_ATTR_NODISCARD pMonitoredDesktop MonitoredDesktop; /* 24 */
|
||||
WINPR_ATTR_NODISCARD pNonMonitoredDesktop NonMonitoredDesktop; /* 25 */
|
||||
UINT32 paddingB[32 - 26]; /* 26 */
|
||||
};
|
||||
typedef struct rdp_window_update rdpWindowUpdate;
|
||||
|
||||
Reference in New Issue
Block a user