[includes] add missing c++ guards
This commit is contained in:
parent
adce7378c3
commit
b342194d4b
@ -27,4 +27,11 @@
|
|||||||
|
|
||||||
#define ECHO_DVC_CHANNEL_NAME "ECHO"
|
#define ECHO_DVC_CHANNEL_NAME "ECHO"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_CHANNEL_ECHO_H */
|
#endif /* FREERDP_CHANNEL_ECHO_H */
|
||||||
|
@ -25,4 +25,11 @@
|
|||||||
|
|
||||||
#define CHANNELS_TAG(tag) FREERDP_TAG("channels.") tag
|
#define CHANNELS_TAG(tag) FREERDP_TAG("channels.") tag
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_UTILS_DEBUG_H */
|
#endif /* FREERDP_UTILS_DEBUG_H */
|
||||||
|
@ -27,4 +27,12 @@
|
|||||||
|
|
||||||
#define RDP2TCP_DVC_CHANNEL_NAME "rdp2tcp"
|
#define RDP2TCP_DVC_CHANNEL_NAME "rdp2tcp"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_CHANNEL_RDP2TCP_H */
|
#endif /* FREERDP_CHANNEL_RDP2TCP_H */
|
||||||
|
@ -27,33 +27,38 @@
|
|||||||
#define RDPECAM_DVC_CHANNEL_NAME "rdpecam"
|
#define RDPECAM_DVC_CHANNEL_NAME "rdpecam"
|
||||||
#define RDPECAM_CONTROL_DVC_CHANNEL_NAME "RDCamera_Device_Enumerator"
|
#define RDPECAM_CONTROL_DVC_CHANNEL_NAME "RDCamera_Device_Enumerator"
|
||||||
|
|
||||||
typedef enum
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
{
|
{
|
||||||
CAM_MSG_ID_SuccessResponse = 0x01,
|
#endif
|
||||||
CAM_MSG_ID_ErrorResponse = 0x02,
|
|
||||||
CAM_MSG_ID_SelectVersionRequest = 0x03,
|
typedef enum
|
||||||
CAM_MSG_ID_SelectVersionResponse = 0x04,
|
{
|
||||||
CAM_MSG_ID_DeviceAddedNotification = 0x05,
|
CAM_MSG_ID_SuccessResponse = 0x01,
|
||||||
CAM_MSG_ID_DeviceRemovedNotification = 0x06,
|
CAM_MSG_ID_ErrorResponse = 0x02,
|
||||||
CAM_MSG_ID_ActivateDeviceRequest = 0x07,
|
CAM_MSG_ID_SelectVersionRequest = 0x03,
|
||||||
CAM_MSG_ID_DeactivateDeviceRequest = 0x08,
|
CAM_MSG_ID_SelectVersionResponse = 0x04,
|
||||||
CAM_MSG_ID_StreamListRequest = 0x09,
|
CAM_MSG_ID_DeviceAddedNotification = 0x05,
|
||||||
CAM_MSG_ID_StreamListResponse = 0x0A,
|
CAM_MSG_ID_DeviceRemovedNotification = 0x06,
|
||||||
CAM_MSG_ID_MediaTypeListRequest = 0x0B,
|
CAM_MSG_ID_ActivateDeviceRequest = 0x07,
|
||||||
CAM_MSG_ID_MediaTypeListResponse = 0x0C,
|
CAM_MSG_ID_DeactivateDeviceRequest = 0x08,
|
||||||
CAM_MSG_ID_CurrentMediaTypeRequest = 0x0D,
|
CAM_MSG_ID_StreamListRequest = 0x09,
|
||||||
CAM_MSG_ID_CurrentMediaTypeResponse = 0x0E,
|
CAM_MSG_ID_StreamListResponse = 0x0A,
|
||||||
CAM_MSG_ID_StartStreamsRequest = 0x0F,
|
CAM_MSG_ID_MediaTypeListRequest = 0x0B,
|
||||||
CAM_MSG_ID_StopStreamsRequest = 0x10,
|
CAM_MSG_ID_MediaTypeListResponse = 0x0C,
|
||||||
CAM_MSG_ID_SampleRequest = 0x11,
|
CAM_MSG_ID_CurrentMediaTypeRequest = 0x0D,
|
||||||
CAM_MSG_ID_SampleResponse = 0x12,
|
CAM_MSG_ID_CurrentMediaTypeResponse = 0x0E,
|
||||||
CAM_MSG_ID_SampleErrorResponse = 0x13,
|
CAM_MSG_ID_StartStreamsRequest = 0x0F,
|
||||||
CAM_MSG_ID_PropertyListRequest = 0x14,
|
CAM_MSG_ID_StopStreamsRequest = 0x10,
|
||||||
CAM_MSG_ID_PropertyListResponse = 0x15,
|
CAM_MSG_ID_SampleRequest = 0x11,
|
||||||
CAM_MSG_ID_PropertyValueRequest = 0x16,
|
CAM_MSG_ID_SampleResponse = 0x12,
|
||||||
CAM_MSG_ID_PropertyValueResponse = 0x17,
|
CAM_MSG_ID_SampleErrorResponse = 0x13,
|
||||||
CAM_MSG_ID_SetPropertyValueRequest = 0x18,
|
CAM_MSG_ID_PropertyListRequest = 0x14,
|
||||||
} CAM_MSG_ID;
|
CAM_MSG_ID_PropertyListResponse = 0x15,
|
||||||
|
CAM_MSG_ID_PropertyValueRequest = 0x16,
|
||||||
|
CAM_MSG_ID_PropertyValueResponse = 0x17,
|
||||||
|
CAM_MSG_ID_SetPropertyValueRequest = 0x18,
|
||||||
|
} CAM_MSG_ID;
|
||||||
|
|
||||||
#define CAM_HEADER_SIZE 2
|
#define CAM_HEADER_SIZE 2
|
||||||
|
|
||||||
@ -333,4 +338,7 @@ typedef struct
|
|||||||
CAM_PROPERTY_VALUE PropertyValue;
|
CAM_PROPERTY_VALUE PropertyValue;
|
||||||
} CAM_SET_PROPERTY_VALUE_REQUEST;
|
} CAM_SET_PROPERTY_VALUE_REQUEST;
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_CHANNEL_RDPECAM_H */
|
#endif /* FREERDP_CHANNEL_RDPECAM_H */
|
||||||
|
@ -26,23 +26,27 @@
|
|||||||
|
|
||||||
#define RDPGFX_DVC_CHANNEL_NAME "Microsoft::Windows::RDS::Graphics"
|
#define RDPGFX_DVC_CHANNEL_NAME "Microsoft::Windows::RDS::Graphics"
|
||||||
|
|
||||||
/**
|
#ifdef __cplusplus
|
||||||
* Common Data Types
|
extern "C"
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
{
|
||||||
UINT16 x;
|
#endif
|
||||||
UINT16 y;
|
/**
|
||||||
} RDPGFX_POINT16;
|
* Common Data Types
|
||||||
|
*/
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
BYTE B;
|
UINT16 x;
|
||||||
BYTE G;
|
UINT16 y;
|
||||||
BYTE R;
|
} RDPGFX_POINT16;
|
||||||
BYTE XA;
|
|
||||||
} RDPGFX_COLOR32;
|
typedef struct
|
||||||
|
{
|
||||||
|
BYTE B;
|
||||||
|
BYTE G;
|
||||||
|
BYTE R;
|
||||||
|
BYTE XA;
|
||||||
|
} RDPGFX_COLOR32;
|
||||||
|
|
||||||
#define GFX_PIXEL_FORMAT_XRGB_8888 0x20
|
#define GFX_PIXEL_FORMAT_XRGB_8888 0x20
|
||||||
#define GFX_PIXEL_FORMAT_ARGB_8888 0x21
|
#define GFX_PIXEL_FORMAT_ARGB_8888 0x21
|
||||||
@ -398,4 +402,7 @@ typedef struct
|
|||||||
UINT16 timeDiffEDR;
|
UINT16 timeDiffEDR;
|
||||||
} RDPGFX_QOE_FRAME_ACKNOWLEDGE_PDU;
|
} RDPGFX_QOE_FRAME_ACKNOWLEDGE_PDU;
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_CHANNEL_RDPGFX_H */
|
#endif /* FREERDP_CHANNEL_RDPGFX_H */
|
||||||
|
@ -24,18 +24,27 @@
|
|||||||
#include <freerdp/client/geometry.h>
|
#include <freerdp/client/geometry.h>
|
||||||
#include <freerdp/client/video.h>
|
#include <freerdp/client/video.h>
|
||||||
|
|
||||||
typedef struct s_gdiVideoContext gdiVideoContext;
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
FREERDP_API void gdi_video_geometry_init(rdpGdi* gdi, GeometryClientContext* geom);
|
typedef struct s_gdiVideoContext gdiVideoContext;
|
||||||
FREERDP_API void gdi_video_geometry_uninit(rdpGdi* gdi, GeometryClientContext* geom);
|
|
||||||
|
|
||||||
FREERDP_API void gdi_video_control_init(rdpGdi* gdi, VideoClientContext* video);
|
FREERDP_API void gdi_video_geometry_init(rdpGdi* gdi, GeometryClientContext* geom);
|
||||||
FREERDP_API void gdi_video_control_uninit(rdpGdi* gdi, VideoClientContext* video);
|
FREERDP_API void gdi_video_geometry_uninit(rdpGdi* gdi, GeometryClientContext* geom);
|
||||||
|
|
||||||
FREERDP_API void gdi_video_data_init(rdpGdi* gdi, VideoClientContext* video);
|
FREERDP_API void gdi_video_control_init(rdpGdi* gdi, VideoClientContext* video);
|
||||||
FREERDP_API void gdi_video_data_uninit(rdpGdi* gdi, VideoClientContext* context);
|
FREERDP_API void gdi_video_control_uninit(rdpGdi* gdi, VideoClientContext* video);
|
||||||
|
|
||||||
FREERDP_API gdiVideoContext* gdi_video_new(rdpGdi* gdi);
|
FREERDP_API void gdi_video_data_init(rdpGdi* gdi, VideoClientContext* video);
|
||||||
FREERDP_API void gdi_video_free(gdiVideoContext* context);
|
FREERDP_API void gdi_video_data_uninit(rdpGdi* gdi, VideoClientContext* context);
|
||||||
|
|
||||||
|
FREERDP_API gdiVideoContext* gdi_video_new(rdpGdi* gdi);
|
||||||
|
FREERDP_API void gdi_video_free(gdiVideoContext* context);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* FREERDP_GDI_VIDEO_H_ */
|
#endif /* FREERDP_GDI_VIDEO_H_ */
|
||||||
|
@ -33,22 +33,29 @@
|
|||||||
|
|
||||||
typedef struct s_scard_call_context scard_call_context;
|
typedef struct s_scard_call_context scard_call_context;
|
||||||
|
|
||||||
FREERDP_API scard_call_context* smartcard_call_context_new(const rdpSettings* settings);
|
#ifdef __cplusplus
|
||||||
FREERDP_API void smartcard_call_context_free(scard_call_context* ctx);
|
extern "C"
|
||||||
FREERDP_API BOOL smartcard_call_context_signal_stop(scard_call_context* ctx, BOOL reset);
|
{
|
||||||
FREERDP_API BOOL smartcard_call_context_add(scard_call_context* ctx, const char* name);
|
#endif
|
||||||
FREERDP_API BOOL smartcard_call_cancel_context(scard_call_context* ctx, SCARDCONTEXT context);
|
FREERDP_API scard_call_context* smartcard_call_context_new(const rdpSettings* settings);
|
||||||
FREERDP_API BOOL smartcard_call_cancel_all_context(scard_call_context* ctx);
|
FREERDP_API void smartcard_call_context_free(scard_call_context* ctx);
|
||||||
FREERDP_API BOOL smartcard_call_release_context(scard_call_context* ctx, SCARDCONTEXT context);
|
FREERDP_API BOOL smartcard_call_context_signal_stop(scard_call_context* ctx, BOOL reset);
|
||||||
FREERDP_API BOOL smartcard_call_is_configured(scard_call_context* ctx);
|
FREERDP_API BOOL smartcard_call_context_add(scard_call_context* ctx, const char* name);
|
||||||
|
FREERDP_API BOOL smartcard_call_cancel_context(scard_call_context* ctx, SCARDCONTEXT context);
|
||||||
|
FREERDP_API BOOL smartcard_call_cancel_all_context(scard_call_context* ctx);
|
||||||
|
FREERDP_API BOOL smartcard_call_release_context(scard_call_context* ctx, SCARDCONTEXT context);
|
||||||
|
FREERDP_API BOOL smartcard_call_is_configured(scard_call_context* ctx);
|
||||||
|
|
||||||
FREERDP_API BOOL smarcard_call_set_callbacks(scard_call_context* ctx, void* userdata,
|
FREERDP_API BOOL smarcard_call_set_callbacks(scard_call_context* ctx, void* userdata,
|
||||||
void* (*fn_new)(void*, SCARDCONTEXT),
|
void* (*fn_new)(void*, SCARDCONTEXT),
|
||||||
void (*fn_free)(void*));
|
void (*fn_free)(void*));
|
||||||
FREERDP_API void* smartcard_call_get_context(scard_call_context* ctx, SCARDCONTEXT hContext);
|
FREERDP_API void* smartcard_call_get_context(scard_call_context* ctx, SCARDCONTEXT hContext);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_irp_device_control_call(scard_call_context* context, wStream* out,
|
FREERDP_API LONG smartcard_irp_device_control_call(scard_call_context* context, wStream* out,
|
||||||
UINT32* pIoStatus,
|
UINT32* pIoStatus,
|
||||||
SMARTCARD_OPERATION* operation);
|
SMARTCARD_OPERATION* operation);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_CHANNEL_SMARTCARD_CALL_H */
|
#endif /* FREERDP_CHANNEL_SMARTCARD_CALL_H */
|
||||||
|
@ -30,59 +30,67 @@
|
|||||||
#include <freerdp/api.h>
|
#include <freerdp/api.h>
|
||||||
#include <freerdp/channels/scard.h>
|
#include <freerdp/channels/scard.h>
|
||||||
|
|
||||||
typedef struct
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
{
|
{
|
||||||
union
|
#endif
|
||||||
|
typedef struct
|
||||||
{
|
{
|
||||||
Handles_Call handles;
|
union
|
||||||
Long_Call lng;
|
{
|
||||||
Context_Call context;
|
Handles_Call handles;
|
||||||
ContextAndStringA_Call contextAndStringA;
|
Long_Call lng;
|
||||||
ContextAndStringW_Call contextAndStringW;
|
Context_Call context;
|
||||||
ContextAndTwoStringA_Call contextAndTwoStringA;
|
ContextAndStringA_Call contextAndStringA;
|
||||||
ContextAndTwoStringW_Call contextAndTwoStringW;
|
ContextAndStringW_Call contextAndStringW;
|
||||||
EstablishContext_Call establishContext;
|
ContextAndTwoStringA_Call contextAndTwoStringA;
|
||||||
ListReaderGroups_Call listReaderGroups;
|
ContextAndTwoStringW_Call contextAndTwoStringW;
|
||||||
ListReaders_Call listReaders;
|
EstablishContext_Call establishContext;
|
||||||
GetStatusChangeA_Call getStatusChangeA;
|
ListReaderGroups_Call listReaderGroups;
|
||||||
LocateCardsA_Call locateCardsA;
|
ListReaders_Call listReaders;
|
||||||
LocateCardsW_Call locateCardsW;
|
GetStatusChangeA_Call getStatusChangeA;
|
||||||
LocateCards_ATRMask locateCardsATRMask;
|
LocateCardsA_Call locateCardsA;
|
||||||
LocateCardsByATRA_Call locateCardsByATRA;
|
LocateCardsW_Call locateCardsW;
|
||||||
LocateCardsByATRW_Call locateCardsByATRW;
|
LocateCards_ATRMask locateCardsATRMask;
|
||||||
GetStatusChangeW_Call getStatusChangeW;
|
LocateCardsByATRA_Call locateCardsByATRA;
|
||||||
GetReaderIcon_Call getReaderIcon;
|
LocateCardsByATRW_Call locateCardsByATRW;
|
||||||
GetDeviceTypeId_Call getDeviceTypeId;
|
GetStatusChangeW_Call getStatusChangeW;
|
||||||
Connect_Common_Call connect;
|
GetReaderIcon_Call getReaderIcon;
|
||||||
ConnectA_Call connectA;
|
GetDeviceTypeId_Call getDeviceTypeId;
|
||||||
ConnectW_Call connectW;
|
Connect_Common_Call connect;
|
||||||
Reconnect_Call reconnect;
|
ConnectA_Call connectA;
|
||||||
HCardAndDisposition_Call hCardAndDisposition;
|
ConnectW_Call connectW;
|
||||||
State_Call state;
|
Reconnect_Call reconnect;
|
||||||
Status_Call status;
|
HCardAndDisposition_Call hCardAndDisposition;
|
||||||
SCardIO_Request scardIO;
|
State_Call state;
|
||||||
Transmit_Call transmit;
|
Status_Call status;
|
||||||
GetTransmitCount_Call getTransmitCount;
|
SCardIO_Request scardIO;
|
||||||
Control_Call control;
|
Transmit_Call transmit;
|
||||||
GetAttrib_Call getAttrib;
|
GetTransmitCount_Call getTransmitCount;
|
||||||
SetAttrib_Call setAttrib;
|
Control_Call control;
|
||||||
ReadCache_Common readCache;
|
GetAttrib_Call getAttrib;
|
||||||
ReadCacheA_Call readCacheA;
|
SetAttrib_Call setAttrib;
|
||||||
ReadCacheW_Call readCacheW;
|
ReadCache_Common readCache;
|
||||||
WriteCache_Common writeCache;
|
ReadCacheA_Call readCacheA;
|
||||||
WriteCacheA_Call writeCacheA;
|
ReadCacheW_Call readCacheW;
|
||||||
WriteCacheW_Call writeCacheW;
|
WriteCache_Common writeCache;
|
||||||
} call;
|
WriteCacheA_Call writeCacheA;
|
||||||
UINT32 ioControlCode;
|
WriteCacheW_Call writeCacheW;
|
||||||
UINT32 completionID;
|
} call;
|
||||||
UINT32 deviceID;
|
UINT32 ioControlCode;
|
||||||
SCARDCONTEXT hContext;
|
UINT32 completionID;
|
||||||
SCARDHANDLE hCard;
|
UINT32 deviceID;
|
||||||
const char* ioControlCodeName;
|
SCARDCONTEXT hContext;
|
||||||
} SMARTCARD_OPERATION;
|
SCARDHANDLE hCard;
|
||||||
|
const char* ioControlCodeName;
|
||||||
|
} SMARTCARD_OPERATION;
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_irp_device_control_decode(wStream* s, UINT32 CompletionId, UINT32 FileId,
|
FREERDP_API LONG smartcard_irp_device_control_decode(wStream* s, UINT32 CompletionId,
|
||||||
SMARTCARD_OPERATION* operation);
|
UINT32 FileId,
|
||||||
FREERDP_API void smartcard_operation_free(SMARTCARD_OPERATION* op, BOOL allocated);
|
SMARTCARD_OPERATION* operation);
|
||||||
|
FREERDP_API void smartcard_operation_free(SMARTCARD_OPERATION* op, BOOL allocated);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* FREERDP_CHANNEL_SMARTCARD_CLIENT_OPERATIONS_H */
|
#endif /* FREERDP_CHANNEL_SMARTCARD_CLIENT_OPERATIONS_H */
|
||||||
|
@ -34,135 +34,153 @@
|
|||||||
#define SMARTCARD_COMMON_TYPE_HEADER_LENGTH 8
|
#define SMARTCARD_COMMON_TYPE_HEADER_LENGTH 8
|
||||||
#define SMARTCARD_PRIVATE_TYPE_HEADER_LENGTH 8
|
#define SMARTCARD_PRIVATE_TYPE_HEADER_LENGTH 8
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_write_size_align(wStream* s, size_t size, UINT32 alignment);
|
#ifdef __cplusplus
|
||||||
FREERDP_API LONG smartcard_unpack_read_size_align(wStream* s, size_t size, UINT32 alignment);
|
extern "C"
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
FREERDP_API SCARDCONTEXT smartcard_scard_context_native_from_redir(REDIR_SCARDCONTEXT* context);
|
FREERDP_API LONG smartcard_pack_write_size_align(wStream* s, size_t size, UINT32 alignment);
|
||||||
FREERDP_API void smartcard_scard_context_native_to_redir(REDIR_SCARDCONTEXT* context,
|
FREERDP_API LONG smartcard_unpack_read_size_align(wStream* s, size_t size, UINT32 alignment);
|
||||||
SCARDCONTEXT hContext);
|
|
||||||
|
|
||||||
FREERDP_API SCARDHANDLE smartcard_scard_handle_native_from_redir(REDIR_SCARDHANDLE* handle);
|
FREERDP_API SCARDCONTEXT smartcard_scard_context_native_from_redir(REDIR_SCARDCONTEXT* context);
|
||||||
FREERDP_API void smartcard_scard_handle_native_to_redir(REDIR_SCARDHANDLE* handle,
|
FREERDP_API void smartcard_scard_context_native_to_redir(REDIR_SCARDCONTEXT* context,
|
||||||
SCARDHANDLE hCard);
|
SCARDCONTEXT hContext);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_common_type_header(wStream* s);
|
FREERDP_API SCARDHANDLE smartcard_scard_handle_native_from_redir(REDIR_SCARDHANDLE* handle);
|
||||||
FREERDP_API void smartcard_pack_common_type_header(wStream* s);
|
FREERDP_API void smartcard_scard_handle_native_to_redir(REDIR_SCARDHANDLE* handle,
|
||||||
|
SCARDHANDLE hCard);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_private_type_header(wStream* s);
|
FREERDP_API LONG smartcard_unpack_common_type_header(wStream* s);
|
||||||
FREERDP_API void smartcard_pack_private_type_header(wStream* s, UINT32 objectBufferLength);
|
FREERDP_API void smartcard_pack_common_type_header(wStream* s);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_establish_context_call(wStream* s, EstablishContext_Call* call);
|
FREERDP_API LONG smartcard_unpack_private_type_header(wStream* s);
|
||||||
|
FREERDP_API void smartcard_pack_private_type_header(wStream* s, UINT32 objectBufferLength);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_establish_context_return(wStream* s,
|
FREERDP_API LONG smartcard_unpack_establish_context_call(wStream* s,
|
||||||
const EstablishContext_Return* ret);
|
EstablishContext_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_context_call(wStream* s, Context_Call* call, const char* name);
|
FREERDP_API LONG smartcard_pack_establish_context_return(wStream* s,
|
||||||
|
const EstablishContext_Return* ret);
|
||||||
|
|
||||||
FREERDP_API void smartcard_trace_long_return(const Long_Return* ret, const char* name);
|
FREERDP_API LONG smartcard_unpack_context_call(wStream* s, Context_Call* call,
|
||||||
|
const char* name);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_list_reader_groups_call(wStream* s, ListReaderGroups_Call* call,
|
FREERDP_API void smartcard_trace_long_return(const Long_Return* ret, const char* name);
|
||||||
BOOL unicode);
|
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_list_reader_groups_return(wStream* s,
|
FREERDP_API LONG smartcard_unpack_list_reader_groups_call(wStream* s,
|
||||||
const ListReaderGroups_Return* ret,
|
ListReaderGroups_Call* call,
|
||||||
BOOL unicode);
|
BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_list_readers_call(wStream* s, ListReaders_Call* call,
|
FREERDP_API LONG smartcard_pack_list_reader_groups_return(wStream* s,
|
||||||
BOOL unicode);
|
const ListReaderGroups_Return* ret,
|
||||||
|
BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_list_readers_return(wStream* s, const ListReaders_Return* ret,
|
FREERDP_API LONG smartcard_unpack_list_readers_call(wStream* s, ListReaders_Call* call,
|
||||||
BOOL unicode);
|
BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_context_and_two_strings_a_call(wStream* s,
|
FREERDP_API LONG smartcard_pack_list_readers_return(wStream* s, const ListReaders_Return* ret,
|
||||||
ContextAndTwoStringA_Call* call);
|
BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_context_and_two_strings_w_call(wStream* s,
|
FREERDP_API LONG
|
||||||
ContextAndTwoStringW_Call* call);
|
smartcard_unpack_context_and_two_strings_a_call(wStream* s, ContextAndTwoStringA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_context_and_string_a_call(wStream* s,
|
FREERDP_API LONG
|
||||||
ContextAndStringA_Call* call);
|
smartcard_unpack_context_and_two_strings_w_call(wStream* s, ContextAndTwoStringW_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_context_and_string_w_call(wStream* s,
|
FREERDP_API LONG smartcard_unpack_context_and_string_a_call(wStream* s,
|
||||||
ContextAndStringW_Call* call);
|
ContextAndStringA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_locate_cards_a_call(wStream* s, LocateCardsA_Call* call);
|
FREERDP_API LONG smartcard_unpack_context_and_string_w_call(wStream* s,
|
||||||
|
ContextAndStringW_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_locate_cards_return(wStream* s, const LocateCards_Return* ret);
|
FREERDP_API LONG smartcard_unpack_locate_cards_a_call(wStream* s, LocateCardsA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_locate_cards_w_call(wStream* s, LocateCardsW_Call* call);
|
FREERDP_API LONG smartcard_pack_locate_cards_return(wStream* s, const LocateCards_Return* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_locate_cards_w_return(wStream* s, const LocateCardsW_Call* ret);
|
FREERDP_API LONG smartcard_unpack_locate_cards_w_call(wStream* s, LocateCardsW_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_connect_a_call(wStream* s, ConnectA_Call* call);
|
FREERDP_API LONG smartcard_pack_locate_cards_w_return(wStream* s, const LocateCardsW_Call* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_connect_w_call(wStream* s, ConnectW_Call* call);
|
FREERDP_API LONG smartcard_unpack_connect_a_call(wStream* s, ConnectA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_connect_return(wStream* s, const Connect_Return* ret);
|
FREERDP_API LONG smartcard_unpack_connect_w_call(wStream* s, ConnectW_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_reconnect_call(wStream* s, Reconnect_Call* call);
|
FREERDP_API LONG smartcard_pack_connect_return(wStream* s, const Connect_Return* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_reconnect_return(wStream* s, const Reconnect_Return* ret);
|
FREERDP_API LONG smartcard_unpack_reconnect_call(wStream* s, Reconnect_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_hcard_and_disposition_call(wStream* s,
|
FREERDP_API LONG smartcard_pack_reconnect_return(wStream* s, const Reconnect_Return* ret);
|
||||||
HCardAndDisposition_Call* call,
|
|
||||||
const char* name);
|
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_get_status_change_a_call(wStream* s, GetStatusChangeA_Call* call);
|
FREERDP_API LONG smartcard_unpack_hcard_and_disposition_call(wStream* s,
|
||||||
|
HCardAndDisposition_Call* call,
|
||||||
|
const char* name);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_get_status_change_w_call(wStream* s, GetStatusChangeW_Call* call);
|
FREERDP_API LONG smartcard_unpack_get_status_change_a_call(wStream* s,
|
||||||
|
GetStatusChangeA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_get_status_change_return(wStream* s,
|
FREERDP_API LONG smartcard_unpack_get_status_change_w_call(wStream* s,
|
||||||
const GetStatusChange_Return* ret,
|
GetStatusChangeW_Call* call);
|
||||||
BOOL unicode);
|
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_state_call(wStream* s, State_Call* call);
|
FREERDP_API LONG smartcard_pack_get_status_change_return(wStream* s,
|
||||||
FREERDP_API LONG smartcard_pack_state_return(wStream* s, const State_Return* ret);
|
const GetStatusChange_Return* ret,
|
||||||
|
BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_status_call(wStream* s, Status_Call* call, BOOL unicode);
|
FREERDP_API LONG smartcard_unpack_state_call(wStream* s, State_Call* call);
|
||||||
|
FREERDP_API LONG smartcard_pack_state_return(wStream* s, const State_Return* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_status_return(wStream* s, const Status_Return* ret, BOOL unicode);
|
FREERDP_API LONG smartcard_unpack_status_call(wStream* s, Status_Call* call, BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_get_attrib_call(wStream* s, GetAttrib_Call* call);
|
FREERDP_API LONG smartcard_pack_status_return(wStream* s, const Status_Return* ret,
|
||||||
|
BOOL unicode);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_get_attrib_return(wStream* s, const GetAttrib_Return* ret,
|
FREERDP_API LONG smartcard_unpack_get_attrib_call(wStream* s, GetAttrib_Call* call);
|
||||||
DWORD dwAttrId, DWORD cbAttrCallLen);
|
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_set_attrib_call(wStream* s, SetAttrib_Call* call);
|
FREERDP_API LONG smartcard_pack_get_attrib_return(wStream* s, const GetAttrib_Return* ret,
|
||||||
|
DWORD dwAttrId, DWORD cbAttrCallLen);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_control_call(wStream* s, Control_Call* call);
|
FREERDP_API LONG smartcard_unpack_set_attrib_call(wStream* s, SetAttrib_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_control_return(wStream* s, const Control_Return* ret);
|
FREERDP_API LONG smartcard_unpack_control_call(wStream* s, Control_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_transmit_call(wStream* s, Transmit_Call* call);
|
FREERDP_API LONG smartcard_pack_control_return(wStream* s, const Control_Return* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_transmit_return(wStream* s, const Transmit_Return* ret);
|
FREERDP_API LONG smartcard_unpack_transmit_call(wStream* s, Transmit_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_locate_cards_by_atr_a_call(wStream* s,
|
FREERDP_API LONG smartcard_pack_transmit_return(wStream* s, const Transmit_Return* ret);
|
||||||
LocateCardsByATRA_Call* call);
|
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_locate_cards_by_atr_w_call(wStream* s,
|
FREERDP_API LONG smartcard_unpack_locate_cards_by_atr_a_call(wStream* s,
|
||||||
LocateCardsByATRW_Call* call);
|
LocateCardsByATRA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_read_cache_a_call(wStream* s, ReadCacheA_Call* call);
|
FREERDP_API LONG smartcard_unpack_locate_cards_by_atr_w_call(wStream* s,
|
||||||
|
LocateCardsByATRW_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_read_cache_w_call(wStream* s, ReadCacheW_Call* call);
|
FREERDP_API LONG smartcard_unpack_read_cache_a_call(wStream* s, ReadCacheA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_read_cache_return(wStream* s, const ReadCache_Return* ret);
|
FREERDP_API LONG smartcard_unpack_read_cache_w_call(wStream* s, ReadCacheW_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_write_cache_a_call(wStream* s, WriteCacheA_Call* call);
|
FREERDP_API LONG smartcard_pack_read_cache_return(wStream* s, const ReadCache_Return* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_write_cache_w_call(wStream* s, WriteCacheW_Call* call);
|
FREERDP_API LONG smartcard_unpack_write_cache_a_call(wStream* s, WriteCacheA_Call* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_get_transmit_count_call(wStream* s, GetTransmitCount_Call* call);
|
FREERDP_API LONG smartcard_unpack_write_cache_w_call(wStream* s, WriteCacheW_Call* call);
|
||||||
FREERDP_API LONG smartcard_pack_get_transmit_count_return(wStream* s,
|
|
||||||
const GetTransmitCount_Return* call);
|
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_get_reader_icon_call(wStream* s, GetReaderIcon_Call* call);
|
FREERDP_API LONG smartcard_unpack_get_transmit_count_call(wStream* s,
|
||||||
FREERDP_API LONG smartcard_pack_get_reader_icon_return(wStream* s, const GetReaderIcon_Return* ret);
|
GetTransmitCount_Call* call);
|
||||||
|
FREERDP_API LONG smartcard_pack_get_transmit_count_return(wStream* s,
|
||||||
|
const GetTransmitCount_Return* call);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_unpack_get_device_type_id_call(wStream* s, GetDeviceTypeId_Call* call);
|
FREERDP_API LONG smartcard_unpack_get_reader_icon_call(wStream* s, GetReaderIcon_Call* call);
|
||||||
|
FREERDP_API LONG smartcard_pack_get_reader_icon_return(wStream* s,
|
||||||
|
const GetReaderIcon_Return* ret);
|
||||||
|
|
||||||
FREERDP_API LONG smartcard_pack_device_type_id_return(wStream* s,
|
FREERDP_API LONG smartcard_unpack_get_device_type_id_call(wStream* s,
|
||||||
const GetDeviceTypeId_Return* ret);
|
GetDeviceTypeId_Call* call);
|
||||||
|
|
||||||
|
FREERDP_API LONG smartcard_pack_device_type_id_return(wStream* s,
|
||||||
|
const GetDeviceTypeId_Return* ret);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* FREERDP_CHANNEL_SMARTCARD_CLIENT_PACK_H */
|
#endif /* FREERDP_CHANNEL_SMARTCARD_CLIENT_PACK_H */
|
||||||
|
@ -23,31 +23,40 @@
|
|||||||
#include <freerdp/settings.h>
|
#include <freerdp/settings.h>
|
||||||
#include <freerdp/crypto/certificate.h>
|
#include <freerdp/crypto/certificate.h>
|
||||||
|
|
||||||
typedef struct SmartcardKeyInfo_st SmartcardKeyInfo;
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
typedef struct SmartcardCertInfo_st
|
|
||||||
{
|
{
|
||||||
LPWSTR csp;
|
#endif
|
||||||
LPWSTR reader;
|
|
||||||
rdpCertificate* certificate;
|
|
||||||
char* pkinitArgs;
|
|
||||||
UINT32 slotId;
|
|
||||||
char* keyName;
|
|
||||||
WCHAR* containerName;
|
|
||||||
char* upn;
|
|
||||||
char* userHint;
|
|
||||||
char* domainHint;
|
|
||||||
char* subject;
|
|
||||||
char* issuer;
|
|
||||||
BYTE sha1Hash[20];
|
|
||||||
SmartcardKeyInfo* key_info;
|
|
||||||
} SmartcardCertInfo;
|
|
||||||
|
|
||||||
FREERDP_API BOOL smartcard_enumerateCerts(const rdpSettings* settings, SmartcardCertInfo*** scCerts,
|
typedef struct SmartcardKeyInfo_st SmartcardKeyInfo;
|
||||||
size_t* retCount, BOOL gateway);
|
|
||||||
FREERDP_API BOOL smartcard_getCert(const rdpContext* context, SmartcardCertInfo** cert,
|
|
||||||
BOOL gateway);
|
|
||||||
FREERDP_API void smartcardCertInfo_Free(SmartcardCertInfo* pscCert);
|
|
||||||
FREERDP_API void smartcardCertList_Free(SmartcardCertInfo** pscCert, size_t count);
|
|
||||||
|
|
||||||
|
typedef struct SmartcardCertInfo_st
|
||||||
|
{
|
||||||
|
LPWSTR csp;
|
||||||
|
LPWSTR reader;
|
||||||
|
rdpCertificate* certificate;
|
||||||
|
char* pkinitArgs;
|
||||||
|
UINT32 slotId;
|
||||||
|
char* keyName;
|
||||||
|
WCHAR* containerName;
|
||||||
|
char* upn;
|
||||||
|
char* userHint;
|
||||||
|
char* domainHint;
|
||||||
|
char* subject;
|
||||||
|
char* issuer;
|
||||||
|
BYTE sha1Hash[20];
|
||||||
|
SmartcardKeyInfo* key_info;
|
||||||
|
} SmartcardCertInfo;
|
||||||
|
|
||||||
|
FREERDP_API BOOL smartcard_enumerateCerts(const rdpSettings* settings,
|
||||||
|
SmartcardCertInfo*** scCerts, size_t* retCount,
|
||||||
|
BOOL gateway);
|
||||||
|
FREERDP_API BOOL smartcard_getCert(const rdpContext* context, SmartcardCertInfo** cert,
|
||||||
|
BOOL gateway);
|
||||||
|
FREERDP_API void smartcardCertInfo_Free(SmartcardCertInfo* pscCert);
|
||||||
|
FREERDP_API void smartcardCertList_Free(SmartcardCertInfo** pscCert, size_t count);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif /* LIBFREERDP_CORE_SMARTCARDLOGON_H */
|
#endif /* LIBFREERDP_CORE_SMARTCARDLOGON_H */
|
||||||
|
Loading…
Reference in New Issue
Block a user