diff options
author | Laxmikant Rashinkar <LK.Rashinkar@gmail.com> | 2013-09-25 18:54:16 -0700 |
---|---|---|
committer | Laxmikant Rashinkar <LK.Rashinkar@gmail.com> | 2013-09-25 18:54:16 -0700 |
commit | 5e005bf26ce965350cac7f942678031d5482d867 (patch) | |
tree | 705b0caeda414ad90ecda9f1d0de00251036b939 /sesman/chansrv/smartcard.c | |
parent | 52fb1f9854eec37d57f9a7a91dfce48ae9774dd5 (diff) | |
parent | 1afb67850157392e2d8c35857388d515ddcdf0b4 (diff) | |
download | xrdp-proprietary-5e005bf26ce965350cac7f942678031d5482d867.tar.gz xrdp-proprietary-5e005bf26ce965350cac7f942678031d5482d867.zip |
Merge branch 'master' of github.com:neutrinolabs/xrdp
Diffstat (limited to 'sesman/chansrv/smartcard.c')
-rw-r--r-- | sesman/chansrv/smartcard.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sesman/chansrv/smartcard.c b/sesman/chansrv/smartcard.c index d5ebea2c..9d55807d 100644 --- a/sesman/chansrv/smartcard.c +++ b/sesman/chansrv/smartcard.c @@ -1307,6 +1307,8 @@ scard_send_Connect(IRP* irp, tui32 context, int wide, READER_STATE* rs) /* insert reader name */ num_chars = g_mbstowcs(w_reader_name, rs->reader_name, 99); + xstream_wr_u32_le(s, 0); + xstream_wr_u32_le(s, 0); xstream_wr_u32_le(s, num_chars); if (wide) { @@ -1322,6 +1324,7 @@ scard_send_Connect(IRP* irp, tui32 context, int wide, READER_STATE* rs) xstream_wr_u8(s, w_reader_name[index]); } } + align_s(s, 4); /* insert context */ xstream_wr_u32_le(s, 4); @@ -2058,6 +2061,7 @@ scard_handle_Connect_Return(struct stream *s, IRP *irp, tui32 IoStatus) { tui32 len; + struct trans *con; log_debug("entered"); @@ -2077,7 +2081,9 @@ scard_handle_Connect_Return(struct stream *s, IRP *irp, /* get OutputBufferLen */ xstream_rd_u32_le(s, len); - + con = (struct trans *) (irp->user_data); + scard_function_connect_return(con, s, len); + devredir_irp_delete(irp); log_debug("leaving"); } |