1 |
/* -*- c-basic-offset: 8 -*- |
/* -*- c-basic-offset: 8 -*- |
2 |
rdesktop: A Remote Desktop Protocol client. |
rdesktop: A Remote Desktop Protocol client. |
3 |
Copyright (C) Matthew Chapman 1999-2007 |
Copyright (C) Matthew Chapman 1999-2008 |
4 |
|
|
5 |
This program is free software; you can redistribute it and/or modify |
This program is free software; you can redistribute it and/or modify |
6 |
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
429 |
|
|
430 |
if (length && (length / 2) < 256) |
if (length && (length / 2) < 256) |
431 |
{ |
{ |
432 |
rdp_in_unistr(s, filename, length); |
rdp_in_unistr(s, filename, sizeof(filename), length); |
433 |
convert_to_unix_filename(filename); |
convert_to_unix_filename(filename); |
434 |
} |
} |
435 |
else |
else |
622 |
in_uint8s(s, 0x17); |
in_uint8s(s, 0x17); |
623 |
if (length && length < 2 * 255) |
if (length && length < 2 * 255) |
624 |
{ |
{ |
625 |
rdp_in_unistr(s, filename, length); |
rdp_in_unistr(s, filename, sizeof(filename), |
626 |
|
length); |
627 |
convert_to_unix_filename(filename); |
convert_to_unix_filename(filename); |
628 |
} |
} |
629 |
else |
else |
646 |
|
|
647 |
in_uint32_le(s, info_level); /* notify mask */ |
in_uint32_le(s, info_level); /* notify mask */ |
648 |
|
|
|
g_notify_stamp = True; |
|
|
|
|
649 |
status = disk_create_notify(file, info_level); |
status = disk_create_notify(file, info_level); |
650 |
result = 0; |
result = 0; |
651 |
|
|
685 |
out.data = out.p = buffer; |
out.data = out.p = buffer; |
686 |
out.size = sizeof(buffer); |
out.size = sizeof(buffer); |
687 |
|
|
|
DEBUG_SCARD(("[SMART-CARD TRACE]\n")); |
|
|
DEBUG_SCARD(("device 0x%.8x\n", device)); |
|
|
DEBUG_SCARD(("file 0x%.8x\n", file)); |
|
|
DEBUG_SCARD(("id 0x%.8x\n", id)); |
|
688 |
#ifdef WITH_SCARD |
#ifdef WITH_SCARD |
689 |
scardSetInfo(device, id, bytes_out + 0x14); |
scardSetInfo(device, id, bytes_out + 0x14); |
690 |
#endif |
#endif |
691 |
status = fns->device_control(file, request, s, &out); |
status = fns->device_control(file, request, s, &out); |
692 |
result = buffer_len = out.p - out.data; |
result = buffer_len = out.p - out.data; |
693 |
|
|
|
DEBUG_SCARD(("[SMART-CARD TRACE] OUT 0x%.8x\n", status)); |
|
|
|
|
694 |
/* Serial SERIAL_WAIT_ON_MASK */ |
/* Serial SERIAL_WAIT_ON_MASK */ |
695 |
if (status == RD_STATUS_PENDING) |
if (status == RD_STATUS_PENDING) |
696 |
{ |
{ |