FreeRDP
smartcard_pack.c File Reference
#include <winpr/crt.h>
#include <winpr/print.h>
#include "smartcard_pack.h"

Macros

#define smartcard_unpack_redir_scard_context(smartcard, s, context, index)
 
#define smartcard_unpack_redir_scard_handle(smartcard, s, context, index)
 
#define smartcard_ndr_pointer_read(s, index, ptr)   smartcard_ndr_pointer_read_((s), (index), (ptr), __FILE__, __FUNCTION__, __LINE__)
 

Enumerations

enum  ndr_ptr_t { NDR_PTR_FULL, NDR_PTR_SIMPLE, NDR_PTR_FIXED }
 

Functions

static LONG smartcard_unpack_redir_scard_context_ (SMARTCARD_DEVICE *smartcard, wStream *s, REDIR_SCARDCONTEXT *context, UINT32 *index, const char *file, const char *function, int line)
 
static LONG smartcard_pack_redir_scard_context (SMARTCARD_DEVICE *smartcard, wStream *s, const REDIR_SCARDCONTEXT *context, DWORD *index)
 
static LONG smartcard_unpack_redir_scard_handle_ (SMARTCARD_DEVICE *smartcard, wStream *s, REDIR_SCARDHANDLE *handle, UINT32 *index, const char *file, const char *function, int line)
 
static LONG smartcard_pack_redir_scard_handle (SMARTCARD_DEVICE *smartcard, wStream *s, const REDIR_SCARDHANDLE *handle, DWORD *index)
 
static LONG smartcard_unpack_redir_scard_context_ref (SMARTCARD_DEVICE *smartcard, wStream *s, REDIR_SCARDCONTEXT *context)
 
static LONG smartcard_pack_redir_scard_context_ref (SMARTCARD_DEVICE *smartcard, wStream *s, const REDIR_SCARDCONTEXT *context)
 
static LONG smartcard_unpack_redir_scard_handle_ref (SMARTCARD_DEVICE *smartcard, wStream *s, REDIR_SCARDHANDLE *handle)
 
static LONG smartcard_pack_redir_scard_handle_ref (SMARTCARD_DEVICE *smartcard, wStream *s, const REDIR_SCARDHANDLE *handle)
 
static BOOL smartcard_ndr_pointer_read_ (wStream *s, UINT32 *index, UINT32 *ptr, const char *file, const char *fkt, int line)
 
static LONG smartcard_ndr_read (wStream *s, BYTE **data, size_t min, size_t elementSize, ndr_ptr_t type)
 
static BOOL smartcard_ndr_pointer_write (wStream *s, UINT32 *index, DWORD length)
 
static LONG smartcard_ndr_write (wStream *s, const BYTE *data, UINT32 size, UINT32 elementSize, ndr_ptr_t type)
 
static LONG smartcard_ndr_write_state (wStream *s, const ReaderState_Return *data, UINT32 size, ndr_ptr_t type)
 
static LONG smartcard_ndr_read_atrmask (wStream *s, LocateCards_ATRMask **data, size_t min, ndr_ptr_t type)
 
static LONG smartcard_ndr_read_fixed_string_a (wStream *s, CHAR **data, size_t min, ndr_ptr_t type)
 
static LONG smartcard_ndr_read_fixed_string_w (wStream *s, WCHAR **data, size_t min, ndr_ptr_t type)
 
static LONG smartcard_ndr_read_a (wStream *s, CHAR **data, ndr_ptr_t type)
 
static LONG smartcard_ndr_read_w (wStream *s, WCHAR **data, ndr_ptr_t type)
 
static LONG smartcard_ndr_read_u (wStream *s, UUID **data)
 
static char * smartcard_convert_string_list (const void *in, size_t bytes, BOOL unicode)
 
static char * smartcard_msz_dump_a (const char *msz, size_t len, char *buffer, size_t bufferLen)
 
static char * smartcard_msz_dump_w (const WCHAR *msz, size_t len, char *buffer, size_t bufferLen)
 
static char * smartcard_array_dump (const void *pd, size_t len, char *buffer, size_t bufferLen)
 
static void smartcard_log_redir_handle (const char *tag, const REDIR_SCARDHANDLE *pHandle)
 
static void smartcard_log_context (const char *tag, const REDIR_SCARDCONTEXT *phContext)
 
static void smartcard_trace_context_and_string_call_a (const char *name, const REDIR_SCARDCONTEXT *phContext, const CHAR *sz)
 
static void smartcard_trace_context_and_string_call_w (const char *name, const REDIR_SCARDCONTEXT *phContext, const WCHAR *sz)
 
static void smartcard_trace_context_call (SMARTCARD_DEVICE *smartcard, const Context_Call *call, const char *name)
 
static void smartcard_trace_list_reader_groups_call (SMARTCARD_DEVICE *smartcard, const ListReaderGroups_Call *call, BOOL unicode)
 
static void smartcard_trace_get_status_change_w_call (SMARTCARD_DEVICE *smartcard, const GetStatusChangeW_Call *call)
 
static void smartcard_trace_list_reader_groups_return (SMARTCARD_DEVICE *smartcard, const ListReaderGroups_Return *ret, BOOL unicode)
 
static void smartcard_trace_list_readers_call (SMARTCARD_DEVICE *smartcard, const ListReaders_Call *call, BOOL unicode)
 
static void smartcard_trace_locate_cards_by_atr_a_call (SMARTCARD_DEVICE *smartcard, const LocateCardsByATRA_Call *call)
 
static void smartcard_trace_locate_cards_a_call (SMARTCARD_DEVICE *smartcard, const LocateCardsA_Call *call)
 
static void smartcard_trace_locate_cards_return (SMARTCARD_DEVICE *smartcard, const LocateCards_Return *ret)
 
static void smartcard_trace_get_reader_icon_return (SMARTCARD_DEVICE *smartcard, const GetReaderIcon_Return *ret)
 
static void smartcard_trace_get_transmit_count_return (SMARTCARD_DEVICE *smartcard, const GetTransmitCount_Return *ret)
 
static void smartcard_trace_read_cache_return (SMARTCARD_DEVICE *smartcard, const ReadCache_Return *ret)
 
static void smartcard_trace_locate_cards_w_call (SMARTCARD_DEVICE *smartcard, const LocateCardsW_Call *call)
 
static void smartcard_trace_list_readers_return (SMARTCARD_DEVICE *smartcard, const ListReaders_Return *ret, BOOL unicode)
 
static void smartcard_trace_get_status_change_return (SMARTCARD_DEVICE *smartcard, const GetStatusChange_Return *ret, BOOL unicode)
 
static void smartcard_trace_context_and_two_strings_a_call (SMARTCARD_DEVICE *smartcard, const ContextAndTwoStringA_Call *call)
 
static void smartcard_trace_context_and_two_strings_w_call (SMARTCARD_DEVICE *smartcard, const ContextAndTwoStringW_Call *call)
 
static void smartcard_trace_get_transmit_count_call (SMARTCARD_DEVICE *smartcard, const GetTransmitCount_Call *call)
 
static void smartcard_trace_write_cache_a_call (SMARTCARD_DEVICE *smartcard, const WriteCacheA_Call *call)
 
static void smartcard_trace_write_cache_w_call (SMARTCARD_DEVICE *smartcard, const WriteCacheW_Call *call)
 
static void smartcard_trace_read_cache_a_call (SMARTCARD_DEVICE *smartcard, const ReadCacheA_Call *call)
 
static void smartcard_trace_read_cache_w_call (SMARTCARD_DEVICE *smartcard, const ReadCacheW_Call *call)
 
static void smartcard_trace_transmit_call (SMARTCARD_DEVICE *smartcard, const Transmit_Call *call)
 
static void smartcard_trace_locate_cards_by_atr_w_call (SMARTCARD_DEVICE *smartcard, const LocateCardsByATRW_Call *call)
 
static void smartcard_trace_transmit_return (SMARTCARD_DEVICE *smartcard, const Transmit_Return *ret)
 
static void smartcard_trace_control_return (SMARTCARD_DEVICE *smartcard, const Control_Return *ret)
 
static void smartcard_trace_control_call (SMARTCARD_DEVICE *smartcard, const Control_Call *call)
 
static void smartcard_trace_set_attrib_call (SMARTCARD_DEVICE *smartcard, const SetAttrib_Call *call)
 
static void smartcard_trace_get_attrib_return (SMARTCARD_DEVICE *smartcard, const GetAttrib_Return *ret, DWORD dwAttrId)
 
static void smartcard_trace_get_attrib_call (SMARTCARD_DEVICE *smartcard, const GetAttrib_Call *call)
 
static void smartcard_trace_status_call (SMARTCARD_DEVICE *smartcard, const Status_Call *call, BOOL unicode)
 
static void smartcard_trace_status_return (SMARTCARD_DEVICE *smartcard, const Status_Return *ret, BOOL unicode)
 
static void smartcard_trace_state_return (SMARTCARD_DEVICE *smartcard, const State_Return *ret)
 
static void smartcard_trace_reconnect_return (SMARTCARD_DEVICE *smartcard, const Reconnect_Return *ret)
 
static void smartcard_trace_connect_a_call (SMARTCARD_DEVICE *smartcard, const ConnectA_Call *call)
 
static void smartcard_trace_connect_w_call (SMARTCARD_DEVICE *smartcard, const ConnectW_Call *call)
 
static void smartcard_trace_hcard_and_disposition_call (SMARTCARD_DEVICE *smartcard, const HCardAndDisposition_Call *call, const char *name)
 
static void smartcard_trace_establish_context_call (SMARTCARD_DEVICE *smartcard, const EstablishContext_Call *call)
 
static void smartcard_trace_establish_context_return (SMARTCARD_DEVICE *smartcard, const EstablishContext_Return *ret)
 
void smartcard_trace_long_return (SMARTCARD_DEVICE *smartcard, const Long_Return *ret, const char *name)
 
static void smartcard_trace_connect_return (SMARTCARD_DEVICE *smartcard, const Connect_Return *ret)
 
static void smartcard_trace_reconnect_call (SMARTCARD_DEVICE *smartcard, const Reconnect_Call *call)
 
static void smartcard_trace_device_type_id_return (SMARTCARD_DEVICE *smartcard, const GetDeviceTypeId_Return *ret)
 
static LONG smartcard_unpack_common_context_and_string_a (SMARTCARD_DEVICE *smartcard, wStream *s, REDIR_SCARDCONTEXT *phContext, CHAR **pszReaderName)
 
static LONG smartcard_unpack_common_context_and_string_w (SMARTCARD_DEVICE *smartcard, wStream *s, REDIR_SCARDCONTEXT *phContext, WCHAR **pszReaderName)
 
LONG smartcard_unpack_common_type_header (SMARTCARD_DEVICE *smartcard, wStream *s)
 
void smartcard_pack_common_type_header (SMARTCARD_DEVICE *smartcard, wStream *s)
 
LONG smartcard_unpack_private_type_header (SMARTCARD_DEVICE *smartcard, wStream *s)
 
void smartcard_pack_private_type_header (SMARTCARD_DEVICE *smartcard, wStream *s, UINT32 objectBufferLength)
 
LONG smartcard_unpack_read_size_align (SMARTCARD_DEVICE *smartcard, wStream *s, size_t size, UINT32 alignment)
 
LONG smartcard_pack_write_size_align (SMARTCARD_DEVICE *smartcard, wStream *s, size_t size, UINT32 alignment)
 
SCARDCONTEXT smartcard_scard_context_native_from_redir (SMARTCARD_DEVICE *smartcard, REDIR_SCARDCONTEXT *context)
 
void smartcard_scard_context_native_to_redir (SMARTCARD_DEVICE *smartcard, REDIR_SCARDCONTEXT *context, SCARDCONTEXT hContext)
 
SCARDHANDLE smartcard_scard_handle_native_from_redir (SMARTCARD_DEVICE *smartcard, REDIR_SCARDHANDLE *handle)
 
void smartcard_scard_handle_native_to_redir (SMARTCARD_DEVICE *smartcard, REDIR_SCARDHANDLE *handle, SCARDHANDLE hCard)
 
LONG smartcard_unpack_establish_context_call (SMARTCARD_DEVICE *smartcard, wStream *s, EstablishContext_Call *call)
 
LONG smartcard_pack_establish_context_return (SMARTCARD_DEVICE *smartcard, wStream *s, const EstablishContext_Return *ret)
 
LONG smartcard_unpack_context_call (SMARTCARD_DEVICE *smartcard, wStream *s, Context_Call *call, const char *name)
 
LONG smartcard_unpack_list_reader_groups_call (SMARTCARD_DEVICE *smartcard, wStream *s, ListReaderGroups_Call *call, BOOL unicode)
 
LONG smartcard_pack_list_reader_groups_return (SMARTCARD_DEVICE *smartcard, wStream *s, const ListReaderGroups_Return *ret, BOOL unicode)
 
LONG smartcard_unpack_list_readers_call (SMARTCARD_DEVICE *smartcard, wStream *s, ListReaders_Call *call, BOOL unicode)
 
LONG smartcard_pack_list_readers_return (SMARTCARD_DEVICE *smartcard, wStream *s, const ListReaders_Return *ret, BOOL unicode)
 
static LONG smartcard_unpack_connect_common (SMARTCARD_DEVICE *smartcard, wStream *s, Connect_Common_Call *common, UINT32 *index)
 
LONG smartcard_unpack_connect_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, ConnectA_Call *call)
 
LONG smartcard_unpack_connect_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, ConnectW_Call *call)
 
LONG smartcard_pack_connect_return (SMARTCARD_DEVICE *smartcard, wStream *s, const Connect_Return *ret)
 
LONG smartcard_unpack_reconnect_call (SMARTCARD_DEVICE *smartcard, wStream *s, Reconnect_Call *call)
 
LONG smartcard_pack_reconnect_return (SMARTCARD_DEVICE *smartcard, wStream *s, const Reconnect_Return *ret)
 
LONG smartcard_unpack_hcard_and_disposition_call (SMARTCARD_DEVICE *smartcard, wStream *s, HCardAndDisposition_Call *call, const char *name)
 
static void smartcard_trace_get_status_change_a_call (SMARTCARD_DEVICE *smartcard, const GetStatusChangeA_Call *call)
 
static LONG smartcard_unpack_reader_state_a (wStream *s, LPSCARD_READERSTATEA *ppcReaders, UINT32 cReaders, UINT32 *ptrIndex)
 
static LONG smartcard_unpack_reader_state_w (wStream *s, LPSCARD_READERSTATEW *ppcReaders, UINT32 cReaders, UINT32 *ptrIndex)
 
LONG smartcard_unpack_get_status_change_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, GetStatusChangeA_Call *call)
 
LONG smartcard_unpack_get_status_change_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, GetStatusChangeW_Call *call)
 
LONG smartcard_pack_get_status_change_return (SMARTCARD_DEVICE *smartcard, wStream *s, const GetStatusChange_Return *ret, BOOL unicode)
 
LONG smartcard_unpack_state_call (SMARTCARD_DEVICE *smartcard, wStream *s, State_Call *call)
 
LONG smartcard_pack_state_return (SMARTCARD_DEVICE *smartcard, wStream *s, const State_Return *ret)
 
LONG smartcard_unpack_status_call (SMARTCARD_DEVICE *smartcard, wStream *s, Status_Call *call, BOOL unicode)
 
LONG smartcard_pack_status_return (SMARTCARD_DEVICE *smartcard, wStream *s, const Status_Return *ret, BOOL unicode)
 
LONG smartcard_unpack_get_attrib_call (SMARTCARD_DEVICE *smartcard, wStream *s, GetAttrib_Call *call)
 
LONG smartcard_pack_get_attrib_return (SMARTCARD_DEVICE *smartcard, wStream *s, const GetAttrib_Return *ret, DWORD dwAttrId, DWORD cbAttrCallLen)
 
LONG smartcard_unpack_control_call (SMARTCARD_DEVICE *smartcard, wStream *s, Control_Call *call)
 
LONG smartcard_pack_control_return (SMARTCARD_DEVICE *smartcard, wStream *s, const Control_Return *ret)
 
LONG smartcard_unpack_transmit_call (SMARTCARD_DEVICE *smartcard, wStream *s, Transmit_Call *call)
 
LONG smartcard_pack_transmit_return (SMARTCARD_DEVICE *smartcard, wStream *s, const Transmit_Return *ret)
 
LONG smartcard_unpack_locate_cards_by_atr_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, LocateCardsByATRA_Call *call)
 
LONG smartcard_unpack_context_and_two_strings_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, ContextAndTwoStringA_Call *call)
 
LONG smartcard_unpack_context_and_two_strings_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, ContextAndTwoStringW_Call *call)
 
LONG smartcard_unpack_locate_cards_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, LocateCardsA_Call *call)
 
LONG smartcard_unpack_locate_cards_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, LocateCardsW_Call *call)
 
LONG smartcard_unpack_set_attrib_call (SMARTCARD_DEVICE *smartcard, wStream *s, SetAttrib_Call *call)
 
LONG smartcard_unpack_locate_cards_by_atr_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, LocateCardsByATRW_Call *call)
 
LONG smartcard_unpack_read_cache_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, ReadCacheA_Call *call)
 
LONG smartcard_unpack_read_cache_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, ReadCacheW_Call *call)
 
LONG smartcard_unpack_write_cache_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, WriteCacheA_Call *call)
 
LONG smartcard_unpack_write_cache_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, WriteCacheW_Call *call)
 
LONG smartcard_unpack_get_transmit_count_call (SMARTCARD_DEVICE *smartcard, wStream *s, GetTransmitCount_Call *call)
 
LONG smartcard_unpack_get_reader_icon_call (SMARTCARD_DEVICE *smartcard, wStream *s, GetReaderIcon_Call *call)
 
LONG smartcard_unpack_context_and_string_a_call (SMARTCARD_DEVICE *smartcard, wStream *s, ContextAndStringA_Call *call)
 
LONG smartcard_unpack_context_and_string_w_call (SMARTCARD_DEVICE *smartcard, wStream *s, ContextAndStringW_Call *call)
 
LONG smartcard_unpack_get_device_type_id_call (SMARTCARD_DEVICE *smartcard, wStream *s, GetDeviceTypeId_Call *call)
 
LONG smartcard_pack_device_type_id_return (SMARTCARD_DEVICE *smartcard, wStream *s, const GetDeviceTypeId_Return *ret)
 
LONG smartcard_pack_locate_cards_return (SMARTCARD_DEVICE *smartcard, wStream *s, const LocateCards_Return *ret)
 
LONG smartcard_pack_get_reader_icon_return (SMARTCARD_DEVICE *smartcard, wStream *s, const GetReaderIcon_Return *ret)
 
LONG smartcard_pack_get_transmit_count_return (SMARTCARD_DEVICE *smartcard, wStream *s, const GetTransmitCount_Return *ret)
 
LONG smartcard_pack_read_cache_return (SMARTCARD_DEVICE *smartcard, wStream *s, const ReadCache_Return *ret)
 

Variables

static const DWORD g_LogLevel = WLOG_DEBUG
 

Macro Definition Documentation

◆ smartcard_ndr_pointer_read

#define smartcard_ndr_pointer_read (   s,
  index,
  ptr 
)    smartcard_ndr_pointer_read_((s), (index), (ptr), __FILE__, __FUNCTION__, __LINE__)

◆ smartcard_unpack_redir_scard_context

#define smartcard_unpack_redir_scard_context (   smartcard,
  s,
  context,
  index 
)
Value:
smartcard_unpack_redir_scard_context_((smartcard), (s), (context), (index), __FILE__, \
__FUNCTION__, __LINE__)

◆ smartcard_unpack_redir_scard_handle

#define smartcard_unpack_redir_scard_handle (   smartcard,
  s,
  context,
  index 
)
Value:
smartcard_unpack_redir_scard_handle_((smartcard), (s), (context), (index), __FILE__, \
__FUNCTION__, __LINE__)

Enumeration Type Documentation

◆ ndr_ptr_t

enum ndr_ptr_t
Enumerator
NDR_PTR_FULL 
NDR_PTR_SIMPLE 
NDR_PTR_FIXED 

Function Documentation

◆ smartcard_array_dump()

static char* smartcard_array_dump ( const void *  pd,
size_t  len,
char *  buffer,
size_t  bufferLen 
)
static
Here is the caller graph for this function:

◆ smartcard_convert_string_list()

static char* smartcard_convert_string_list ( const void *  in,
size_t  bytes,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_log_context()

static void smartcard_log_context ( const char *  tag,
const REDIR_SCARDCONTEXT *  phContext 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_log_redir_handle()

static void smartcard_log_redir_handle ( const char *  tag,
const REDIR_SCARDHANDLE *  pHandle 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_msz_dump_a()

static char* smartcard_msz_dump_a ( const char *  msz,
size_t  len,
char *  buffer,
size_t  bufferLen 
)
static
Here is the caller graph for this function:

◆ smartcard_msz_dump_w()

static char* smartcard_msz_dump_w ( const WCHAR *  msz,
size_t  len,
char *  buffer,
size_t  bufferLen 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_pointer_read_()

static BOOL smartcard_ndr_pointer_read_ ( wStream *  s,
UINT32 *  index,
UINT32 *  ptr,
const char *  file,
const char *  fkt,
int  line 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_pointer_write()

static BOOL smartcard_ndr_pointer_write ( wStream *  s,
UINT32 *  index,
DWORD  length 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read()

static LONG smartcard_ndr_read ( wStream *  s,
BYTE **  data,
size_t  min,
size_t  elementSize,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read_a()

static LONG smartcard_ndr_read_a ( wStream *  s,
CHAR **  data,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read_atrmask()

static LONG smartcard_ndr_read_atrmask ( wStream *  s,
LocateCards_ATRMask **  data,
size_t  min,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read_fixed_string_a()

static LONG smartcard_ndr_read_fixed_string_a ( wStream *  s,
CHAR **  data,
size_t  min,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read_fixed_string_w()

static LONG smartcard_ndr_read_fixed_string_w ( wStream *  s,
WCHAR **  data,
size_t  min,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read_u()

static LONG smartcard_ndr_read_u ( wStream *  s,
UUID **  data 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_read_w()

static LONG smartcard_ndr_read_w ( wStream *  s,
WCHAR **  data,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_write()

static LONG smartcard_ndr_write ( wStream *  s,
const BYTE data,
UINT32  size,
UINT32  elementSize,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_ndr_write_state()

static LONG smartcard_ndr_write_state ( wStream *  s,
const ReaderState_Return *  data,
UINT32  size,
ndr_ptr_t  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_common_type_header()

void smartcard_pack_common_type_header ( SMARTCARD_DEVICE *  smartcard,
wStream *  s 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_connect_return()

LONG smartcard_pack_connect_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const Connect_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_control_return()

LONG smartcard_pack_control_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const Control_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_device_type_id_return()

LONG smartcard_pack_device_type_id_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const GetDeviceTypeId_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_establish_context_return()

LONG smartcard_pack_establish_context_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const EstablishContext_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_get_attrib_return()

LONG smartcard_pack_get_attrib_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const GetAttrib_Return *  ret,
DWORD  dwAttrId,
DWORD  cbAttrCallLen 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_get_reader_icon_return()

LONG smartcard_pack_get_reader_icon_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const GetReaderIcon_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_get_status_change_return()

LONG smartcard_pack_get_status_change_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const GetStatusChange_Return *  ret,
BOOL  unicode 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_get_transmit_count_return()

LONG smartcard_pack_get_transmit_count_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const GetTransmitCount_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_list_reader_groups_return()

LONG smartcard_pack_list_reader_groups_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const ListReaderGroups_Return *  ret,
BOOL  unicode 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_list_readers_return()

LONG smartcard_pack_list_readers_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const ListReaders_Return *  ret,
BOOL  unicode 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_locate_cards_return()

LONG smartcard_pack_locate_cards_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const LocateCards_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_private_type_header()

void smartcard_pack_private_type_header ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
UINT32  objectBufferLength 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_read_cache_return()

LONG smartcard_pack_read_cache_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const ReadCache_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_reconnect_return()

LONG smartcard_pack_reconnect_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const Reconnect_Return ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_redir_scard_context()

LONG smartcard_pack_redir_scard_context ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const REDIR_SCARDCONTEXT *  context,
DWORD *  index 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_redir_scard_context_ref()

LONG smartcard_pack_redir_scard_context_ref ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const REDIR_SCARDCONTEXT *  context 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_redir_scard_handle()

LONG smartcard_pack_redir_scard_handle ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const REDIR_SCARDHANDLE *  handle,
DWORD *  index 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_redir_scard_handle_ref()

LONG smartcard_pack_redir_scard_handle_ref ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const REDIR_SCARDHANDLE *  handle 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_state_return()

LONG smartcard_pack_state_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const State_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_status_return()

LONG smartcard_pack_status_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const Status_Return *  ret,
BOOL  unicode 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_transmit_return()

LONG smartcard_pack_transmit_return ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
const Transmit_Return *  ret 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_pack_write_size_align()

LONG smartcard_pack_write_size_align ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
size_t  size,
UINT32  alignment 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_scard_context_native_from_redir()

SCARDCONTEXT smartcard_scard_context_native_from_redir ( SMARTCARD_DEVICE *  smartcard,
REDIR_SCARDCONTEXT *  context 
)
Here is the caller graph for this function:

◆ smartcard_scard_context_native_to_redir()

void smartcard_scard_context_native_to_redir ( SMARTCARD_DEVICE *  smartcard,
REDIR_SCARDCONTEXT *  context,
SCARDCONTEXT  hContext 
)
Here is the caller graph for this function:

◆ smartcard_scard_handle_native_from_redir()

SCARDHANDLE smartcard_scard_handle_native_from_redir ( SMARTCARD_DEVICE *  smartcard,
REDIR_SCARDHANDLE *  handle 
)
Here is the caller graph for this function:

◆ smartcard_scard_handle_native_to_redir()

void smartcard_scard_handle_native_to_redir ( SMARTCARD_DEVICE *  smartcard,
REDIR_SCARDHANDLE *  handle,
SCARDHANDLE  hCard 
)
Here is the caller graph for this function:

◆ smartcard_trace_connect_a_call()

static void smartcard_trace_connect_a_call ( SMARTCARD_DEVICE *  smartcard,
const ConnectA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_connect_return()

static void smartcard_trace_connect_return ( SMARTCARD_DEVICE *  smartcard,
const Connect_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_connect_w_call()

static void smartcard_trace_connect_w_call ( SMARTCARD_DEVICE *  smartcard,
const ConnectW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_context_and_string_call_a()

static void smartcard_trace_context_and_string_call_a ( const char *  name,
const REDIR_SCARDCONTEXT *  phContext,
const CHAR *  sz 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_context_and_string_call_w()

static void smartcard_trace_context_and_string_call_w ( const char *  name,
const REDIR_SCARDCONTEXT *  phContext,
const WCHAR *  sz 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_context_and_two_strings_a_call()

static void smartcard_trace_context_and_two_strings_a_call ( SMARTCARD_DEVICE *  smartcard,
const ContextAndTwoStringA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_context_and_two_strings_w_call()

static void smartcard_trace_context_and_two_strings_w_call ( SMARTCARD_DEVICE *  smartcard,
const ContextAndTwoStringW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_context_call()

static void smartcard_trace_context_call ( SMARTCARD_DEVICE *  smartcard,
const Context_Call *  call,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_control_call()

static void smartcard_trace_control_call ( SMARTCARD_DEVICE *  smartcard,
const Control_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_control_return()

static void smartcard_trace_control_return ( SMARTCARD_DEVICE *  smartcard,
const Control_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_device_type_id_return()

static void smartcard_trace_device_type_id_return ( SMARTCARD_DEVICE *  smartcard,
const GetDeviceTypeId_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_establish_context_call()

static void smartcard_trace_establish_context_call ( SMARTCARD_DEVICE *  smartcard,
const EstablishContext_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_establish_context_return()

static void smartcard_trace_establish_context_return ( SMARTCARD_DEVICE *  smartcard,
const EstablishContext_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_attrib_call()

static void smartcard_trace_get_attrib_call ( SMARTCARD_DEVICE *  smartcard,
const GetAttrib_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_attrib_return()

static void smartcard_trace_get_attrib_return ( SMARTCARD_DEVICE *  smartcard,
const GetAttrib_Return *  ret,
DWORD  dwAttrId 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_reader_icon_return()

static void smartcard_trace_get_reader_icon_return ( SMARTCARD_DEVICE *  smartcard,
const GetReaderIcon_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_status_change_a_call()

static void smartcard_trace_get_status_change_a_call ( SMARTCARD_DEVICE *  smartcard,
const GetStatusChangeA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_status_change_return()

static void smartcard_trace_get_status_change_return ( SMARTCARD_DEVICE *  smartcard,
const GetStatusChange_Return *  ret,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_status_change_w_call()

static void smartcard_trace_get_status_change_w_call ( SMARTCARD_DEVICE *  smartcard,
const GetStatusChangeW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_transmit_count_call()

static void smartcard_trace_get_transmit_count_call ( SMARTCARD_DEVICE *  smartcard,
const GetTransmitCount_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_get_transmit_count_return()

static void smartcard_trace_get_transmit_count_return ( SMARTCARD_DEVICE *  smartcard,
const GetTransmitCount_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_hcard_and_disposition_call()

static void smartcard_trace_hcard_and_disposition_call ( SMARTCARD_DEVICE *  smartcard,
const HCardAndDisposition_Call *  call,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_list_reader_groups_call()

static void smartcard_trace_list_reader_groups_call ( SMARTCARD_DEVICE *  smartcard,
const ListReaderGroups_Call *  call,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_list_reader_groups_return()

static void smartcard_trace_list_reader_groups_return ( SMARTCARD_DEVICE *  smartcard,
const ListReaderGroups_Return *  ret,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_list_readers_call()

static void smartcard_trace_list_readers_call ( SMARTCARD_DEVICE *  smartcard,
const ListReaders_Call *  call,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_list_readers_return()

static void smartcard_trace_list_readers_return ( SMARTCARD_DEVICE *  smartcard,
const ListReaders_Return *  ret,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_locate_cards_a_call()

static void smartcard_trace_locate_cards_a_call ( SMARTCARD_DEVICE *  smartcard,
const LocateCardsA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_locate_cards_by_atr_a_call()

static void smartcard_trace_locate_cards_by_atr_a_call ( SMARTCARD_DEVICE *  smartcard,
const LocateCardsByATRA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_locate_cards_by_atr_w_call()

static void smartcard_trace_locate_cards_by_atr_w_call ( SMARTCARD_DEVICE *  smartcard,
const LocateCardsByATRW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_locate_cards_return()

static void smartcard_trace_locate_cards_return ( SMARTCARD_DEVICE *  smartcard,
const LocateCards_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_locate_cards_w_call()

static void smartcard_trace_locate_cards_w_call ( SMARTCARD_DEVICE *  smartcard,
const LocateCardsW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_long_return()

void smartcard_trace_long_return ( SMARTCARD_DEVICE *  smartcard,
const Long_Return *  ret,
const char *  name 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_read_cache_a_call()

static void smartcard_trace_read_cache_a_call ( SMARTCARD_DEVICE *  smartcard,
const ReadCacheA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_read_cache_return()

static void smartcard_trace_read_cache_return ( SMARTCARD_DEVICE *  smartcard,
const ReadCache_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_read_cache_w_call()

static void smartcard_trace_read_cache_w_call ( SMARTCARD_DEVICE *  smartcard,
const ReadCacheW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_reconnect_call()

static void smartcard_trace_reconnect_call ( SMARTCARD_DEVICE *  smartcard,
const Reconnect_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_reconnect_return()

static void smartcard_trace_reconnect_return ( SMARTCARD_DEVICE *  smartcard,
const Reconnect_Return ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_set_attrib_call()

static void smartcard_trace_set_attrib_call ( SMARTCARD_DEVICE *  smartcard,
const SetAttrib_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_state_return()

static void smartcard_trace_state_return ( SMARTCARD_DEVICE *  smartcard,
const State_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_status_call()

static void smartcard_trace_status_call ( SMARTCARD_DEVICE *  smartcard,
const Status_Call *  call,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_status_return()

static void smartcard_trace_status_return ( SMARTCARD_DEVICE *  smartcard,
const Status_Return *  ret,
BOOL  unicode 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_transmit_call()

static void smartcard_trace_transmit_call ( SMARTCARD_DEVICE *  smartcard,
const Transmit_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_transmit_return()

static void smartcard_trace_transmit_return ( SMARTCARD_DEVICE *  smartcard,
const Transmit_Return *  ret 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_write_cache_a_call()

static void smartcard_trace_write_cache_a_call ( SMARTCARD_DEVICE *  smartcard,
const WriteCacheA_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_trace_write_cache_w_call()

static void smartcard_trace_write_cache_w_call ( SMARTCARD_DEVICE *  smartcard,
const WriteCacheW_Call *  call 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_common_context_and_string_a()

static LONG smartcard_unpack_common_context_and_string_a ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
REDIR_SCARDCONTEXT *  phContext,
CHAR **  pszReaderName 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_common_context_and_string_w()

static LONG smartcard_unpack_common_context_and_string_w ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
REDIR_SCARDCONTEXT *  phContext,
WCHAR **  pszReaderName 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_common_type_header()

LONG smartcard_unpack_common_type_header ( SMARTCARD_DEVICE *  smartcard,
wStream *  s 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_connect_a_call()

LONG smartcard_unpack_connect_a_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
ConnectA_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_connect_common()

static LONG smartcard_unpack_connect_common ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
Connect_Common_Call *  common,
UINT32 *  index 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_connect_w_call()

LONG smartcard_unpack_connect_w_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
ConnectW_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_context_and_string_a_call()

LONG smartcard_unpack_context_and_string_a_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
ContextAndStringA_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_context_and_string_w_call()

LONG smartcard_unpack_context_and_string_w_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
ContextAndStringW_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_context_and_two_strings_a_call()

LONG smartcard_unpack_context_and_two_strings_a_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
ContextAndTwoStringA_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_context_and_two_strings_w_call()

LONG smartcard_unpack_context_and_two_strings_w_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
ContextAndTwoStringW_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_context_call()

LONG smartcard_unpack_context_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
Context_Call *  call,
const char *  name 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_control_call()

LONG smartcard_unpack_control_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
Control_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_establish_context_call()

LONG smartcard_unpack_establish_context_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
EstablishContext_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_get_attrib_call()

LONG smartcard_unpack_get_attrib_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
GetAttrib_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_get_device_type_id_call()

LONG smartcard_unpack_get_device_type_id_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
GetDeviceTypeId_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_get_reader_icon_call()

LONG smartcard_unpack_get_reader_icon_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
GetReaderIcon_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_get_status_change_a_call()

LONG smartcard_unpack_get_status_change_a_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
GetStatusChangeA_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_get_status_change_w_call()

LONG smartcard_unpack_get_status_change_w_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
GetStatusChangeW_Call *  call 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smartcard_unpack_get_transmit_count_call()

LONG smartcard_unpack_get_transmit_count_call ( SMARTCARD_DEVICE *  smartcard,
wStream *  s,
GetTransmitCount_Call *  call 
)
Here is the call graph for this function: