chansrv: work on smartcard stability, handle multi threaded calls, app crashes, etc

This commit is contained in:
Jay Sorg
2013-12-21 19:16:08 -08:00
parent 6eab2ed11b
commit 1483c75911
5 changed files with 714 additions and 321 deletions
+15 -15
View File
@@ -110,42 +110,42 @@ int APP_CC scard_get_wait_objs(tbus *objs, int *count, int *timeout);
int APP_CC scard_check_wait_objs(void);
int APP_CC scard_init(void);
int APP_CC scard_deinit(void);
int APP_CC scard_send_establish_context(struct trans *con, int scope);
int APP_CC scard_send_release_context(struct trans *con, tui32 context);
int APP_CC scard_send_is_valid_context(struct trans *con, tui32 context);
int APP_CC scard_send_list_readers(struct trans *con, tui32 context,
int APP_CC scard_send_establish_context(void *user_data, int scope);
int APP_CC scard_send_release_context(void *user_data, tui32 context);
int APP_CC scard_send_is_valid_context(void *user_data, tui32 context);
int APP_CC scard_send_list_readers(void *user_data, tui32 context,
char *groups, int cchReaders, int wide);
int APP_CC scard_send_get_status_change(struct trans *con, tui32 context,
int APP_CC scard_send_get_status_change(void *user_data, tui32 context,
int wide, tui32 timeout,
tui32 num_readers, READER_STATE* rsa);
int APP_CC scard_send_connect(struct trans *con, tui32 context, int wide,
int APP_CC scard_send_connect(void *user_data, tui32 context, int wide,
READER_STATE* rs);
int APP_CC scard_send_reconnect(struct trans *con, tui32 context,
int APP_CC scard_send_reconnect(void *user_data, tui32 context,
tui32 sc_handle, READER_STATE* rs);
int APP_CC scard_send_begin_transaction(struct trans *con, tui32 sc_handle);
int APP_CC scard_send_end_transaction(struct trans *con, tui32 sc_handle,
int APP_CC scard_send_begin_transaction(void *user_data, tui32 sc_handle);
int APP_CC scard_send_end_transaction(void *user_data, tui32 sc_handle,
tui32 dwDisposition);
int APP_CC scard_send_status(struct trans *con, int wide, tui32 sc_handle,
int APP_CC scard_send_status(void *user_data, int wide, tui32 sc_handle,
int cchReaderLen, int cbAtrLen);
int APP_CC scard_send_disconnect(struct trans *con, tui32 context,
int APP_CC scard_send_disconnect(void *user_data, tui32 context,
tui32 sc_handle, int dwDisposition);
int APP_CC scard_send_transmit(struct trans *con, tui32 sc_handle,
int APP_CC scard_send_transmit(void *user_data, tui32 sc_handle,
char *send_data, int send_bytes, int recv_bytes,
struct xrdp_scard_io_request *send_ior,
struct xrdp_scard_io_request *recv_ior);
int APP_CC scard_send_control(struct trans *con, tui32 sc_handle,
int APP_CC scard_send_control(void *user_data, tui32 sc_handle,
char *send_data, int send_bytes,
int recv_bytes, int control_code);
int APP_CC scard_send_cancel(struct trans *con, tui32 context);
int APP_CC scard_send_cancel(void *user_data, tui32 context);
int APP_CC scard_send_get_attrib(struct trans *con, tui32 sc_handle,
int APP_CC scard_send_get_attrib(void *user_data, tui32 sc_handle,
READER_STATE* rs);
/*