66 |
extern FILEINFO g_fileinfo[]; |
extern FILEINFO g_fileinfo[]; |
67 |
extern BOOL g_notify_stamp; |
extern BOOL g_notify_stamp; |
68 |
|
|
|
#ifdef WITH_SCARD |
|
|
VCHANNEL *rdpdr_channel; |
|
|
#else |
|
69 |
static VCHANNEL *rdpdr_channel; |
static VCHANNEL *rdpdr_channel; |
|
#endif |
|
70 |
|
|
71 |
/* If select() times out, the request for the device with handle g_min_timeout_fd is aborted */ |
/* If select() times out, the request for the device with handle g_min_timeout_fd is aborted */ |
72 |
NTHANDLE g_min_timeout_fd; |
NTHANDLE g_min_timeout_fd; |
319 |
uint8 magic[4] = "rDCI"; |
uint8 magic[4] = "rDCI"; |
320 |
STREAM s; |
STREAM s; |
321 |
|
|
322 |
|
#ifdef WITH_SCARD |
323 |
|
scard_lock(SCARD_LOCK_RDPDR); |
324 |
|
#endif |
325 |
s = channel_init(rdpdr_channel, 20 + length); |
s = channel_init(rdpdr_channel, 20 + length); |
326 |
out_uint8a(s, magic, 4); |
out_uint8a(s, magic, 4); |
327 |
out_uint32_le(s, device); |
out_uint32_le(s, device); |
336 |
/* hexdump(s->channel_hdr + 8, s->end - s->channel_hdr - 8); */ |
/* hexdump(s->channel_hdr + 8, s->end - s->channel_hdr - 8); */ |
337 |
#endif |
#endif |
338 |
channel_send(s, rdpdr_channel); |
channel_send(s, rdpdr_channel); |
339 |
|
#ifdef WITH_SCARD |
340 |
|
scard_unlock(SCARD_LOCK_RDPDR); |
341 |
|
#endif |
342 |
} |
} |
343 |
|
|
344 |
static void |
static void |