akallabeth
b73ce8a9f6
Fixed warning in mac audin backend.
2021-11-25 12:25:18 +01:00
Armin Novak
e80c24e837
Fix printer backend reference count
2021-11-18 14:17:25 +01:00
Armin Novak
8c74de191c
Fix printer reference count
2021-11-16 08:27:24 +01:00
Armin Novak
239a3872d2
Fixed cups default printer.
2021-11-16 08:27:24 +01:00
Armin Novak
422b684957
Ensure default printer for windows backend.
2021-11-16 08:27:24 +01:00
Armin Novak
46d524cbc7
windows printer cleanup
2021-11-16 08:27:24 +01:00
David Fort
67986ea298
Fix compilation with mingw
...
This patch addresses some issues when compiling against mingw. With these changes
FreeRDP can be compiled out-of-the box on a Ubuntu 20.04.
2021-11-15 09:23:16 +01:00
akallabeth
5ed7c10840
Fixed RDPEI_PLUGIN source
...
Used the wrong pointer to cast to RDPEI_PLUGIN*, corrected that.
2021-11-08 12:49:13 +01:00
Alexandru Bagu
21ca4a009d
Urbrdc fix ( #7417 )
...
* fix libusb libusb_device usage (manually unref required usb devices, versus freeing all when we still hold references to the ones we want)
* disabled detach_kernel_driver & attach_kernel_driver on win32 since libusb does not support them
* fixed libusb async event handling
* add log for transfer request error
* Update libusb_udevice.c
* refactor code
2021-11-03 11:11:36 +01:00
Alexandru Bagu
3280363b66
fix call to localtime_s
2021-11-02 08:34:23 +01:00
Alexandru Bagu
a8cc80851f
fixes argument order for rdpdr_load_drive
2021-10-22 09:31:25 +02:00
Steve Pronovost
e452467cd3
Fix protocol violation in Display Control Virtual Channel Extension
...
Length field of DISPLAYCONTROL_HEADER must include the size of the header
itself. See MS-RDPEDISP 2.2.1.1 DISPLAYCONTROL_HEADER.
2021-10-21 13:11:21 +02:00
Steve Pronovost
bb7e4f220b
Add support for graphics redirection protocol
...
Add support for new graphics redirection protocol (aka VAIL) used by
WSLg. This protocol is currently being documented and the official
documentation will be posted in the near future.
2021-10-21 13:11:21 +02:00
Steve Pronovost
f6f4acc921
Added support for AUDIO_PLAYBACK_DVC
...
Support audio on dynamic channel. Please refer to MS-RDPEA.
2021-10-21 13:11:21 +02:00
Armin Novak
6e410e6dd4
Fixed broken message queue free function
2021-10-18 12:49:38 +02:00
Armin Novak
41d77cae46
Fixed /video buffer alignment, added assertions
2021-10-18 10:53:05 +02:00
Armin Novak
7d80c74e97
Cleaned up RDPDR channel interhitance
...
* All channels inheriting from RDPDR_DRIVE base struct
* Add functions to create/free a new device of a type
* Fixed settings array resize code, prevent 0 sizes
2021-10-18 09:21:02 +02:00
akallabeth
3ccb96d52f
Fixed #7350 : Warnings with Stream_StaticInit
...
* Properly initialize the stream buffer
* Add Stream_StaticConstInit accepting a const buffer
* Modify API to return a pointer to the stream initialized
2021-10-14 12:11:16 +02:00
akallabeth
834fdf0046
[audin] Always reset dsp_context before open ( #7342 )
2021-10-11 15:45:36 +02:00
Armin Novak
96cf17a45b
Replaced (IWTSPlugin*) casts with struct address return
2021-10-07 16:22:04 +02:00
Armin Novak
18a3fcf2fc
Updated wStream API and added torough checks
...
* Do length/capacity checks in every read/write/seek function
if WINPR_ASSERT is defined.
* Ensure s->pointer is valid, e.g. within s->buffer + s->capacity
(Stream_Rewind, Stream_Seek, ...)
* Add return values to Stream_Set* functions so inalid arguments
can be reported to the caller
* Deprecated problematic stream manipulation functions
(Stream_SetBuffer, Stream_SetPointer, Stream_SetCapacity)
* Ensure length/capacity functions never return a value larger
than the actual length/capacity
2021-10-06 09:49:07 +02:00
Simon Nivault
845947651e
Force one channel input fallback for audin
...
Windows winmm backend does not support stereo microphone properly.
Fall back to mono and ensure that fallback is used.
2021-09-30 11:15:24 +02:00
akallabeth
03a9ca80c8
Refactor proxy ( #7312 )
...
* Added hidden transport dump and replay options
* Added settings to enable transport dump and replay
* Added check in freerdp_connect to skip authentication on
dump replay
* Fixed proxy issues
* Proper shutdown handling
* Uninitialized variables
* Skip proxy-client channels, initialize from peer channels and
config
* Filter static channels like dynamic ones
* Added proxy module filtering from config data (channels, input, ...)
* Removed oboslete proxy decoding related files
* Added defines for RDPECAM channel
* Added proxy config options:
* VideoRedirection
* CameraRedirection
* Fixed duplicate channel free
2021-09-23 14:52:03 +02:00
akallabeth
e0a531f728
Channel fixes ( #7309 )
...
* Added missing CHANNEL_NAME defines.
* Fixed FreeRDP_ChannelDefArray setter
* Fixed code duplication due to merge error
* Added public function freerdp_channels_from_mcs
* Fixed const correctness in mcs
2021-09-22 14:27:21 +02:00
akallabeth
7b7e2d6f32
Prefer constant division over multiplication for length checks
2021-09-21 08:55:22 +02:00
Armin Novak
cbd30544f8
Fix rdpsnd number of event handles
2021-09-20 10:59:59 +02:00
akallabeth
5b78d02d5d
Fixed unchecked variable access
2021-09-20 10:59:59 +02:00
akallabeth
a3a935283b
Fixed invalid read in rdpdr
2021-09-20 10:59:59 +02:00
akallabeth
1ca7e1f7a0
Added option to disable graphics decoding in client code path
2021-09-20 10:59:59 +02:00
Pascal Nowack
b3ae8cec8d
rdpei/server: Fix PDU length for RDPINPUT_PROTOCOL_V300
...
When the server supports the protocol version RDPINPUT_PROTOCOL_V300,
the additional supportedFeatures field will be present.
The pduLength in the RDPINPUT_HEADER should, however, reflect this.
So, fix this error by writing the correct PDU length when the
supportedFeatures field is present.
2021-09-20 08:41:03 +02:00
akallabeth
00c083a854
Fixed compilation warnings.
2021-09-14 09:45:03 +02:00
akallabeth
1904020d7f
Some code cleanups and WINPR_ASSERT ( #7281 )
2021-09-10 09:06:35 +02:00
Armin Novak
673fb46836
Fixed uninitialized warnings
2021-09-10 08:16:25 +02:00
Armin Novak
0fe1e2359e
Fixed all reserved-id-macro warnings
2021-09-10 08:16:25 +02:00
Armin Novak
ba0da04217
Fixed compilation warnings and duplicate defines
2021-09-09 08:53:20 +02:00
Armin Novak
95ecc6929a
Refactored channel error handling
...
* Fix WINPR_ASSERT if a client can not allocate new resources,
terminated cleanly instead.
* Add WINPR_ASSERT for lots of channel arguments
2021-09-09 08:53:20 +02:00
Armin Novak
cde002f460
Cleaned up cliprdr
2021-09-09 08:53:20 +02:00
Armin Novak
f794a8c7d4
Cleaned up remdesk
2021-09-09 08:53:20 +02:00
Armin Novak
467f7c3f6a
Fixed proxy ulimit graceful client disconnect
2021-09-09 08:53:20 +02:00
Armin Novak
0f8c52b9ca
Fixed const warnings with argument parser
2021-09-09 08:53:20 +02:00
Armin Novak
4e44003832
Expose dynamic channel PDU types
2021-09-09 08:53:20 +02:00
Armin Novak
976c3c2ab9
Refactored proxy and proxy-modules:
...
* Split out proxy headers and moved to public API to allow external
modules to be built.
* Split proxy into proxy library and proxy binary. The library
can be used by other applications and provides a simple API
* Improved channel passthrough, now all channels including dynamic
channels work.
* Extended module API to hook more events, improved module samples
* Cleaned up proxy code, removed global static variables used,
added WINPR_ASSERT
2021-09-09 08:53:20 +02:00
akallabeth
732a4d3839
Ignore NULL pointer as rdpsnd_server_context_free argument
2021-09-06 10:11:14 +02:00
Armin Novak
413dcd3c28
Fixed RDPSND_CHANNEL_NAME
...
RDPSND channel is special, as it has many names.
(e.g. static channel, dynamic channel and UDP one.
Use RDPSND_CHANNEL_NAME to identify the module name instad of
RDPSND_DVC_CHANNEL_NAME
2021-08-25 13:40:47 +02:00
Armin Novak
054f0ea260
Use defines instad of channel names
2021-08-25 10:54:24 +02:00
Armin Novak
5afa592244
Fixed cast-qual warnings
2021-08-24 11:10:51 +02:00
Armin Novak
f515bd4560
Fixed shadowing and type errors
2021-08-24 10:45:57 +02:00
Hans-Peter Jansen
297f965052
Fix linking, if BUILTIN_CHANNELS switched off
...
If -DBUILTIN_CHANNELS=OFF is supplied to cmake, auxiliary channel modules
are built as plugins, that are loaded from $LIBDIR/freerdp as shared libs.
This patch fixes the linkage of these plugins by taking inter-channel dependencies
of this separation into account. If BUILTIN_CHANNELS=ON, these channel modules
are linked directly into the main modules. Therefore, the linking of the plugins
is conditioned accordingly.
2021-08-24 08:43:01 +02:00
Simon Nivault
e42696bb2e
Some fixes for audin redirection ( #7231 )
...
* Fixed research for native PCM format
* Fixed compatibility detection for resampling
* dsp: Makes channel mix and encoding process use separated buffers
* Give FramesPerPacket to freerdp_dsp_context_reset function
* dsp: Fix DVI_ADPCM codec by respecting the required packet size
* Forbid mono channel in macos
* Fix audin command line channel option
* Disable ADPCM codec as it does not work
* Refactor valid native codec research
* Native codec research: Try different channels number
* Fix dsp channel mix
* Fix dsp resample
2021-08-23 14:49:28 +02:00
Armin Novak
610396e197
Fixed compilation warnings
...
Try to get the number of warnings down
2021-08-02 10:28:06 +02:00
Armin Novak
6854c7da7e
Fixed windows audio recording issues:
...
1. Fix recording channels to mono
2. Fix alignment of PCM data to 2 bytes
2021-07-29 15:27:24 +02:00
Armin Novak
275f9ab2f6
Added listforeach wrapper
2021-07-29 15:09:53 +02:00
Armin Novak
8a74bdb371
Fixed cast warning
2021-07-29 15:09:53 +02:00
Armin Novak
4e3a7562af
Clarified log message for device redirection
2021-07-29 15:09:53 +02:00
Armin Novak
da57b0b91b
Fixed resource cleanup
2021-07-29 15:09:53 +02:00
Armin Novak
55592049dc
WINPR_ASSERT for drive redirection
2021-07-29 15:09:53 +02:00
Armin Novak
a788145519
Fixed wrong error message
2021-07-29 15:09:53 +02:00
akallabeth
7dfdd248ee
Monitor coordinates are exclusive ( #7145 )
...
* Monitor coordinates are exclusive
* Remove force override of shadow resolution.
The client might ignore the server requested values, in that case
retry
2021-07-07 11:54:01 +02:00
Martin Fleisz
9d031012be
smartcard: Fix length of output buffer in device control response
2021-07-07 11:48:56 +02:00
Martin Fleisz
6ecdd82e28
rdpdr: Fix length calculation for client name response
2021-07-07 11:48:56 +02:00
Martin Fleisz
8c0cf7cd4b
rdpsnd: Fix double frees in rdpsnd context cleanup
2021-07-07 11:10:04 +02:00
akallabeth
0ab809d696
Fixed WINPR_ASSERT statement ( #7148 )
2021-07-02 18:42:22 +02:00
akallabeth
a199d2a051
Added better logging and assertions for gfx
2021-07-02 09:53:24 +02:00
akallabeth
2101aadceb
Fixed missing assertions and default color depth
2021-07-02 09:53:24 +02:00
akallabeth
bd256b91bc
Fixed disabling of AVC444 mode if requested
2021-07-01 11:56:17 +02:00
Armin Novak
a7f7de549a
Added SuspendInput setting
...
Allows to disable all keyboard/mouse/multitouch input from the
client side.
2021-06-28 14:35:26 +02:00
akallabeth
0733dd3743
Fixed installation of FreeRDP-ClientTargets.cmake ( #7117 )
2021-06-24 11:21:44 +02:00
akallabeth
184506db4a
Fixed installation of FreeRDP-ClientTargets.cmake ( #7115 )
2021-06-24 10:02:02 +02:00
Armin Novak
34413d9480
Fix data write on usb channel
2021-06-23 12:05:11 +02:00
Armin Novak
b11ea98772
Fixed standalone issues with cmake
2021-06-22 09:43:23 +02:00
Armin Novak
8ef57bf296
Replaced CMAKE_[SOURCE|BINARY]_DIR with PROJECT_[SOURCE|BINARY]_DIR
...
Thanks @Pollux42 for the hint in #7096
2021-06-22 08:54:18 +02:00
akallabeth
b453d5e40e
Fixed rdtk, uwac and winpr standalone builds
2021-06-22 08:54:18 +02:00
Armin Novak
0355bbc51f
Added missing log mapping for TRANSFER_OUT_REQUEST
2021-06-21 13:27:39 +02:00
Simon Nivault
c40ca6bc28
Fixed win printer
2021-06-21 11:32:57 +02:00
Armin Novak
f03b074b01
Fixed warnings with missing prototypes
2021-06-18 11:32:16 +02:00
Armin Novak
8276c145e0
Fixed rdpdr related warnings
2021-06-18 11:32:16 +02:00
Armin Novak
4dfee30934
Fixed smartcard related warnings
2021-06-18 11:32:16 +02:00
Armin Novak
c4c5847f81
channels: Fixed warnings, added assertions
2021-06-18 11:32:16 +02:00
akallabeth
8b01c2f8ae
Fixed codql warning
2021-06-17 10:35:22 +02:00
akallabeth
8d82adb28a
Fixed warnings
2021-06-17 10:35:22 +02:00
Armin Novak
2e0d1cc33c
Fixed integer warnings, fixed data types
2021-06-17 10:35:22 +02:00
Armin Novak
4a6517757d
Fixed logging macro warnings
2021-06-17 10:35:22 +02:00
Armin Novak
5fb59a23a9
Fixed lots of compilation warnings and type mismatches
2021-06-16 15:21:56 +02:00
Armin Novak
3cf90a4572
Fixed va_arg uninitialized warnings
2021-06-16 15:21:56 +02:00
Armin Novak
19dd3f6703
Fixed compilation warnings
2021-06-16 14:26:06 +02:00
Armin Novak
ccfe0c129e
Removed checks already done by WINPR_ASSERT
2021-06-16 11:46:42 +02:00
Armin Novak
31862e60f9
Added missing return checks
2021-06-16 11:46:42 +02:00
Armin Novak
c2bef2bfa9
Fixed return value checks for ArrayList_Append and HashTable_Insert
2021-06-16 11:46:42 +02:00
Armin Novak
d6c84c28fb
Renamed ArrayList_Add to ArrayList_Append
...
* Do not break API silently
2021-06-16 11:46:42 +02:00
Armin Novak
a1c8e4cf85
Refactored ArrayList_Add to conform to other functions
2021-06-16 11:46:42 +02:00
Armin Novak
880c603c26
Renamed HashTable_Add to HashTable_Insert
...
* Since the changes break HashTable_Add rename it so that it will
not fail silently
2021-06-16 11:46:42 +02:00
Armin Novak
cb642699c8
Modified HashTable API to be opaque
...
* Reuse wObject function pointers
* Add missing getters/setters
* Clean up return types, const correctness of arguments
2021-06-16 11:46:42 +02:00
Armin Novak
d36d94766e
Replaced assert with WINPR_ASSERT
2021-06-14 09:37:07 +02:00
akallabeth
31fb2ddc1a
Fixed RDPEI orientation value passing ( #7069 )
2021-06-01 16:15:41 +02:00
Biswapriyo Nath
173ab04b59
Use same data types as calling function prototypes.
2021-05-31 13:38:19 +02:00
Biswapriyo Nath
4c9754b269
Read from QuadPart from LARGE_INTEGER variables.
2021-05-31 13:38:19 +02:00
David Fort
d76c8470b1
Merge pull request #7066 from akallabeth/rdpei_crash_fix
...
Stop rdpei thread before cleaning up listener
2021-05-31 13:19:44 +02:00
Armin Novak
7467f599b9
Stop rdpei thread before cleaning up listener
2021-05-31 11:44:34 +02:00
akallabeth
6b36c6d417
Replace fopen and path functions with wrappers ( #7043 )
...
Functions like fopen, PathFileExists, PathMakePath need to call
the wide character versions on windows for utf-8 support.
2021-05-31 11:42:03 +02:00
Marc-André Moreau
841d019565
fix broken channel include path
2021-05-31 11:10:14 +02:00
Armin Novak
51919af2d6
Add more information to urbdrc log entries
2021-05-28 09:39:34 +02:00
Armin Novak
268bc2e8ef
Updated RDPEI channel API
...
* Added new function pointers to cancel a pending operation
* Added new function pointers to send custom event flags
* Added exposed feature mask to disable channel features
2021-05-20 15:20:18 +02:00
akallabeth
566f47f63b
Fixed compilation warnings.
2021-05-11 08:32:18 +02:00
akallabeth
b494a193db
Refactored certificate API:
...
* Proper encapsulation
* known_hosts2 backend extended (storing PEM)
* New backend storing each host certificate in a file
2021-05-11 08:00:18 +02:00
akallabeth
ab49694101
Added new RDP file options
2021-05-11 07:59:05 +02:00
Ondrej Holy
892cbe3261
Fix various memory leaks reported by Coverity
...
Covscan report contains various memory leak defects which were marked
as important. I have spent some time analyzing them and although they
were marked as important, most of them are in error cases, so probably
nothing serious. Let's fix most of them anyway. The rest are false
positives, or too complicated to fix, or already fixed in master, or
simply I am unsure about them.
Relates: https://github.com/FreeRDP/FreeRDP/issues/6981
2021-04-27 14:25:20 +02:00
akallabeth
44e7531847
Improved RAIL order debug messages
2021-04-02 09:54:07 +02:00
sss
6b76ac9545
Revert "Revert "allow to use in single threaded mode" ( #6864 )"
...
This reverts commit f7465af44f
.
2021-03-26 11:50:45 +01:00
akallabeth
fab649a1b9
Fixed return length check for SCardGetAttrib
2021-03-20 14:31:56 +01:00
akallabeth
bb6c1ed8a4
Fixed #6882 : Use default output device on mac ( #6893 )
2021-03-12 11:17:37 +01:00
Armin Novak
61d380943d
Added bounds check in rdpgfx_recv_wire_to_surface_1_pdu
2021-03-12 10:52:04 +01:00
akallabeth
b8a8ae4622
Fixed mac issues with smartcard context cleanup ( #6890 )
2021-03-12 08:56:23 +01:00
Armin Novak
d039a1ac8f
Filter RDPDR types other than drives on windows hotplug
2021-03-09 13:58:28 +01:00
akallabeth
4599dc0a60
Check smartcard_convert_string_list for NULL string
...
In #6821 it has been reported that there are buggy smartcard
drivers that report a string size but fail to allocate the string
itself. This check avoids a crash with such input parameters
2021-03-09 10:20:42 +01:00
Denis
8ba1dc49da
fix formating with clang-format
2021-03-08 13:11:50 +01:00
Denis
b3a2042103
Add support for OpenBSD sndio
2021-03-08 13:11:50 +01:00
akallabeth
f7465af44f
Revert "allow to use in single threaded mode" ( #6864 )
...
This reverts commit bee2e1526d
.
2021-03-05 13:02:38 +01:00
akallabeth
d0dacf6336
Parse on a copy of the argument string for printer ( #6860 )
...
If done on original the wrong backend is loaded on autoreconnect
2021-03-04 15:49:05 +01:00
Armin Novak
c890db30c7
Fixed smartcard_convert_string_list with 0 length
2021-03-03 11:57:26 +01:00
Armin Novak
1cd97c3270
Added API check to allow compilation/run with mac os < 10.14
2021-03-02 10:03:41 +01:00
akallabeth
71c2c3102c
Fixed format string in smartcard_trace_state_return
2021-03-02 08:03:35 +01:00
akallabeth
f346793970
Refactored encoder functions to return changed areas
2021-03-01 11:52:07 +01:00
akallabeth
50acf72615
Refactored H264 encoding/decoding
...
Use YUV primitives now for all H264 operations
2021-03-01 11:52:07 +01:00
sss
6574fdf6e4
reverted changes from clang-format
2021-02-25 14:05:40 +01:00
Gluzskiy Alexandr
bee2e1526d
allow to use in single threaded mode
...
(some client side channels and all server side channels still need to be
ported to new api)
server: build fix, do not disable threads for rfx encoder
cliprdr client channel: implemented support for DisableThreads option
looks like thread does not make sense at all for this channel
do not initialize disabled image codecs (respect settings)
channels: client: rail: added support for DisableThreads setting
changed "BOOL DisableThreads" to "UINT32 ThreadingFlags"
dropped unnecessary apu changes
draft implementation of threading settings aware message handling api
for addins/channels
rail: use new messaging api
fixed memory leak
msgs handlers external api changes (as requested)
msgs_handlers: init fix
fixed memory leak
logic fix
resolved problems appeared after rebase to master, dropped unnecessary
changes
git clang-format origin/master
fixed TestFreeRDPCodecRemoteFX.c
"formatting, run `clang-format` please"
properly use new "rfx_context_new(BOOL, UINT32)" everywhere
passed Threading Flags to "rfx_context_new" where available
in older C standarts veriables declaration must be done before any code
requested changes
clang-format as requested
use broken signatures of standert C functions for m$ s**tos
clang-format
requested changes
requested changes
moved ThreadingFlags to stable api zone
define type for channel msg handler
typo fix
clang-format
build fix
us ThreadingFlags from server settings
git clang-format origin/master
clang-format
2021-02-25 14:05:40 +01:00
akallabeth
43311130a2
Fixed CodeQL warnings
2021-02-19 11:19:49 +01:00
akallabeth
59377fce5e
Fixed smartcard crash on error return (invalid length)
2021-02-18 16:49:19 +01:00
akallabeth
e2fd9db0b5
Added const to function arguments
2021-02-17 11:29:56 +01:00
Armin Novak
4b7208fb6e
Always return data on SCardGetStatusChange
...
If the call fails just return empty data for each reader.
2021-02-10 10:36:51 +01:00
akallabeth
bad20340cc
Fixed issue with GetAttr where the result buffer was not allocated
2021-02-10 10:36:51 +01:00
akallabeth
14d5ad0d79
Fixed GetAttrib return length
2021-02-10 10:36:51 +01:00
akallabeth
b0c11ebd91
Fixed smartcard_unpack_reader_state, allow empty names
2021-02-10 10:36:51 +01:00
akallabeth
8217f5a9e3
Fixed SCardTransmit return
2021-02-10 10:36:51 +01:00
akallabeth
f693a60ec2
Unified smartcard call data structs
2021-02-10 10:36:51 +01:00
akallabeth
6cf5ba4736
Unified smartcard handle converstion
2021-02-10 10:36:51 +01:00
akallabeth
09d2806ac6
Fixed various return values in case of result != SCARD_S_SUCCESS
2021-02-10 10:36:51 +01:00
akallabeth
5fc24ef408
Fixed GetAttrib call
2021-02-10 10:36:51 +01:00
akallabeth
2767940891
refactored smartcard allocations
2021-02-10 10:36:51 +01:00
akallabeth
b049265203
Fixed SCard debug WCHAR string lengths
2021-02-10 10:36:51 +01:00
Martin Fleisz
95b7f3b46d
Merge pull request #6762 from akallabeth/drive_hotplug_fix
...
Fixed drive hotplug path comparison.
2021-01-27 11:30:02 +01:00
Armin Novak
c7bf33aad0
Fixed drive hotplug path comparison.
2021-01-27 09:27:08 +01:00
akallabeth
082b4b59d3
Fixed SCardGetAttrib pbAttr=NULL argument
...
If fpbAttrIsNULL!=0 set pbAttr NULL on call to SCardGetAttrib
2021-01-26 13:33:27 +01:00
akallabeth
f3dad4106a
Fixed support for huge files in clipboard
2021-01-25 08:43:46 +01:00
Martin Fleisz
b092ab3b85
channels/smartcard: Fix race in channel cleanup
2021-01-22 09:49:56 +01:00
akallabeth
9e8d3fbbf5
Check drive to hotplug for already being redirected
...
some hotplug implementations report the same drive multiple times.
to avoid redirecting the same drive multiple times check if it is
already in the list before adding.
2021-01-15 10:41:12 +01:00
akallabeth
12427f006f
Fixed linking dependencies for client geometry channel
2020-12-08 14:01:06 +01:00
akallabeth
4d1a7cf5fa
Renamed RDPEI flags due to problems with windows headers
2020-11-30 13:54:33 +01:00
akallabeth
d9d22aa422
Fixed sound buffering issues with compressed formats
2020-11-26 15:26:35 +01:00
Armin Novak
d493cf6f07
Cleaned up rdpei channel, updated to current spec.
2020-11-23 10:29:47 +01:00
Martin Fleisz
a5fce9e64b
channels/audin: Request correct media type in audin channel on Mac
2020-11-20 15:37:19 +01:00
akallabeth
51811a369f
Fixed missing stream length checks.
2020-11-20 09:39:25 +01:00
akallabeth
d11422b6b8
Added missing include.
2020-11-18 07:18:25 +01:00
Martin Fleisz
c78e31e451
channel/rdpdr: Fix hotplug for drive redirection on Windows
...
The path was incorrectly cut of after the drive letter causing hot
plugged drives to show up empty and disconnecting the client if the
device was removed later on.
2020-11-13 12:26:29 +01:00
akallabeth
2e5280feec
Fixed possible out of bound access in usb channel.
2020-11-10 09:02:35 +01:00
akallabeth
66dc4cc9ee
Fixed compilation warnings.
2020-11-10 08:53:43 +01:00
akallabeth
7f1cca78aa
Clean up drdynvc channels porperly locked.
2020-11-06 13:38:47 +01:00
akallabeth
6e3c00725a
Cleaned up collections:
...
ArrayList, MessageQueue, Queue, PubSub, BipBuffer
ObjectPool and BufferPool
2020-11-06 12:30:13 +01:00
Martin Fleisz
80cba204c0
Merge pull request #6521 from akallabeth/mac_fixes
...
Mac fixes
2020-10-28 09:55:20 +01:00
akallabeth
6e5f5de439
Do not abort disc hotplug if no access to mount tab.
2020-10-27 15:45:56 +01:00
akallabeth
55b95769d0
Fixed #6518
2020-10-21 19:48:27 +02:00
Armin Novak
0e0eb5f41f
Added permission checks for mac audio backend.
2020-10-21 19:44:09 +02:00
akallabeth
e4243bb33c
Corrected clipboard capability mask
2020-10-02 13:17:00 +02:00
Ilya Shipitsin
b62da2cbcc
channels/disp/client/disp_main.c: fix possible null pointer dereference
...
found by cppcheck
channels/disp/client/disp_main.c:340:7: warning:
Either the condition 'if(disp&&disp->listener_callback)' is redundant or
there is possible null pointer dereference: disp. [nullPointerRedundantCheck]
2020-10-02 09:58:03 +02:00
akallabeth
f282c55c7a
Added clipboard CB_HUGE_FILE_SUPPORT_ENABLED flag
2020-09-29 09:03:49 +02:00
akallabeth
1546a8b655
Fixed naming of FILEDESCRIPTORW
2020-09-18 12:49:54 +02:00
Felix Deimel
19f74a2698
Fixes #5747 : Only activate sound output device ( #6467 )
...
* Fixes #5747 : Only activate sound output device
2020-09-08 10:55:49 +02:00
akallabeth
6f00308db7
Fixed short length for usb io control return.
2020-08-13 13:51:38 +02:00
Armin Novak
6ce0517593
Manually free up libusb transfer data to avoid double free
2020-08-12 10:34:58 +02:00
Armin Novak
81d59b2d47
Fixed double free on channel close in channel write.
2020-08-12 10:10:18 +02:00
Martin Fleisz
2d715e4681
Merge pull request #6429 from akallabeth/channel_init_check
...
Added duplicate initialization check for plugins.
2020-08-11 14:34:07 +02:00
Martin Fleisz
1e7330b861
Merge pull request #6363 from akallabeth/urbdrc_double_free_fix
...
[URBDRC] Added return checks for replaced HashTable with ArrayList
2020-08-11 14:33:17 +02:00
akallabeth
786f6bbfe8
Fixed missing async user data extraction from libusb transfer
2020-08-11 14:12:36 +02:00
Armin Novak
75aab487e2
Added duplicate initialization check for plugins.
2020-08-10 16:17:44 +02:00
Armin Novak
93ee13245c
Fixed urbdrc server notification of channel close
...
There was a recursion issue with usb device channel closing and
local redirected device removal.
If the local redirected device is removed due to hotplug events,
the device channel needs to be closed, which in turn checks if
the local device list contains the device. Ensure that the
channel close code is only executed when not called from the
channel side.
2020-08-10 13:40:41 +02:00
akallabeth
dbeaa614d6
Removed channel close in USB channel done after channel is freed
2020-08-10 13:34:30 +02:00
akallabeth
8c859575cf
Fixed access to user_data after free
2020-08-10 13:34:30 +02:00
akallabeth
54c92e78e6
Fixed invalid buffer length and duplicated write function.
2020-08-10 13:34:30 +02:00
akallabeth
e7533130a6
Fixed urbdrc arraylist locking
2020-08-10 13:34:30 +02:00
Armin Novak
28bc636d53
Unified streamID read/write
2020-08-10 13:34:30 +02:00
Armin Novak
3ebc71abf3
Replace wHashTable with wArrayList in USB channel
...
The streamID is not guaranteed to be uniqe, so add all transfers
to a list and remove by checking pointers instead of the streamID
2020-08-10 13:34:30 +02:00
Armin Novak
ea8f93441d
Added return checks for HashTable_Add
2020-08-10 13:34:30 +02:00
Armin Novak
57b405ca26
Fixed compilation warnings.
2020-08-10 12:14:11 +02:00
Alexandr
616af2d5b8
fixed build on freebsd ( #6395 )
...
* fixed build on freebsd
2020-07-27 11:36:24 +02:00
Zhu Qun-Ying
2ba7f9da1d
cliprdr_common.c: fix memory leak in certain error condition
2020-07-25 16:55:34 +02:00
Zhu Qun-Ying
2a286fbf65
Fixed error msg typo in ciprdr_main.c
2020-07-25 16:55:21 +02:00
Marco van Wieringen
9db147c317
Add support for getmntent support on Illumos
...
This implements reading mount entries on Solarish operating systems like
OpenIndiana etc using the somewhat different getmntent support available
there.
2020-07-24 09:16:46 +02:00
akallabeth
4039370064
Fixed input sanitation in rdpgfx_recv_solid_fill_pdu
...
The input rectangle must be checked for plausibility.
Thanks to Sunglin and HuanGMz of the Knownsec 404 security team and pangzi of pwnzen
2020-07-20 14:11:36 +02:00
Kobi
5667c12be5
Merge pull request #6360 from kubistika/proxy_rail_handshake_ex_flags_sync
...
server: proxy: rail: handshake ex flags sync
2020-07-07 15:54:08 +03:00
Kobi Mizrachi
004c2f49e4
rail: server: add API to set railHandshakeExflags
2020-07-07 15:31:20 +03:00
Armin Novak
8cee10319a
Fixed urbdrc device path
2020-07-07 10:43:08 +02:00
Armin Novak
6efc72707c
Fixed bDeviceClass check in udev_init
...
Use the proper constant 0xef (Miscellaneous) instead of
0xfe (Application Specific)
See https://www.usb.org/defined-class-codes
2020-07-07 10:43:08 +02:00
akallabeth
bc7d423c6c
Replaced malloc in urbdrc channel
2020-07-07 10:43:08 +02:00
akallabeth
804891c0e8
Fixed discrepancy in string descriptor default
2020-07-07 10:43:08 +02:00
akallabeth
37a5a7a157
Replaced memset in urbdrc
2020-07-07 10:43:08 +02:00
akallabeth
29e3b0ea51
Unified logging for urbdrc libusb wrapper
2020-07-07 10:43:08 +02:00
akallabeth
66e4eb628b
Initialize variable in func_instance_id_generate
2020-07-07 10:43:08 +02:00
akallabeth
8ee0fafa09
Improved error log for string descriptor read issues
2020-07-07 10:43:08 +02:00
akallabeth
2a493a58a8
Reverted check for short usb descriptor
2020-07-07 10:43:08 +02:00
akallabeth
2d95224488
Added compile time urbdrc debug option
2020-07-07 10:43:08 +02:00
akallabeth
fc8c07435f
Dump USB channel data with log-level trace
2020-07-07 10:43:08 +02:00
Kobi Mizrachi
ec06a98e84
rail: server: rename rail_send_pdu -> rail_server_send_pdu
2020-07-06 10:32:59 +03:00
Kobi Mizrachi
5438b94c97
rail_common.c: Fix rail_get_order_type_string
2020-07-06 08:46:14 +03:00
Kobi Mizrachi
c3b28e8bce
rail: server: mark rail_send_pdu as static function
2020-07-06 08:27:13 +03:00
akallabeth
b971c5c97f
Use CMake to detect availability of getlogin_r
2020-07-01 16:50:20 +02:00
akallabeth
caff01877d
Fixed fallback to getlogin for android
2020-06-22 12:09:36 +02:00
akallabeth
1c6a6923f8
Fixed broken const variable.
2020-06-22 11:51:39 +02:00
akallabeth
c3a1ed780c
Use localtime_s on windows
2020-06-22 11:51:38 +02:00
akallabeth
1a02af5a12
Fixed codition with side effects
2020-06-22 11:51:38 +02:00
akallabeth
36478d3d0b
Replaced getlogin with getlogin_r
2020-06-22 11:51:38 +02:00
akallabeth
240fdd07b1
Replaced localtime with localtime_r
2020-06-22 11:51:38 +02:00
Bernhard Miklautz
1628939227
fix [client channels]: move exported API calls to client/common
...
The functions mappedGeometryRef and mappedGeometryUnref are API
functions ([1]) but were implemented in the geometry channel.
In case FreeRDP was built with BUILTIN_CHANNELS=OFF those functions
weren't available globally but used by the video channel.
Now the functions are fixed part of the freerdp-client library and
therefore available for all channels.
[1] exported in freerdp/client/geometry.h
Fixes #6236
2020-06-17 12:59:41 +02:00
Martin Fleisz
982bc682b5
Merge pull request #6256 from akallabeth/usb_cancel_fix
...
Do not remove transfer data on usb cancel transfer
2020-06-16 11:05:24 +02:00
Kobi
67d4560e86
Merge pull request #6259 from kubistika/drdynvc_hotfix
...
drdynvc: client: fix #6252 use-after-free
2020-06-04 21:29:19 +03:00
akallabeth
5c0ccb7575
Fixed formatting.
2020-06-04 07:55:12 +02:00
Ondrej Holy
c03f68059d
smartcard: Teoretical fix of uninitialized values
...
This tries to fixes the following defects reported by covscan tool:
- channels/smartcard/client/smartcard_operations.c:958: uninit_use_in_call: Using uninitialized value "ret.cReaders" when calling "smartcard_pack_locate_cards_return".
- channels/smartcard/client/smartcard_operations.c:932: uninit_use_in_call: Using uninitialized value "ret.cReaders" when calling "smartcard_pack_locate_cards_return".
But I am not sure about it...
2020-06-04 07:55:12 +02:00
Ondrej Holy
7554154a04
smartcard: Fix usage of uninitialized values
...
This fixes the following defect reported by covscan tool:
- channels/smartcard/client/smartcard_pack.c:942: uninit_use_in_call: Using uninitialized value "tmp" when calling "ConvertFromUnicode".
- channels/smartcard/client/smartcard_pack.c:894: uninit_use_in_call: Using uninitialized value "tmp" when calling "ConvertFromUnicode".
- channels/smartcard/client/smartcard_pack.c:475: uninit_use_in_call: Using uninitialized value "tmp" when calling "ConvertFromUnicode".
2020-06-04 07:55:12 +02:00
Kubistika
6ed765c960
drdynvc: client: fix #6252 use-after-free
2020-06-03 19:47:40 +03:00
Armin Novak
5ec66cc6c7
Fixed sign compare warnings with constants.
2020-06-03 09:53:18 +02:00
Armin Novak
ef4de12887
Fixed double free in urb_isoch_transfer_cb
2020-06-03 08:37:45 +02:00
Armin Novak
a5e2d62e48
Do not remove transfer data on usb cancel transfer
2020-06-03 08:24:17 +02:00
Patrick Chin
5f788c65f4
Fix memory leaks in client/encomsp_main.c and client/remdesk_main.c
2020-06-02 09:50:07 +02:00
Florian Staudacher
d1dc2fb03d
report only actual bytes received, not allocated buffer size (interrupt produces data, timeout doesn't)
2020-06-02 09:21:30 +02:00
Florian Staudacher
03128d5154
only call 'libusb_set_interface_alt_setting' when value is changed
2020-05-29 10:48:23 +02:00
Armin Novak
539e3e9fc5
Fixed memory leak in rdpei
2020-05-25 08:43:03 +02:00
akallabeth
cac8c365f2
Reset pointer to NULL after free.
2020-05-20 15:10:08 +02:00
akallabeth
a1eb3e66b3
Clear dynamic channel lists on disconnect.
2020-05-20 15:10:08 +02:00
akallabeth
58ef235bc5
Removed unused variable warnings
2020-05-20 15:10:07 +02:00
akallabeth
9909ed57ae
Fixed rails debug string warnings.
2020-05-20 15:10:07 +02:00
akallabeth
b584d07734
Fixed #6197 : NULL check in urbdrc
2020-05-20 15:02:24 +02:00
Armin Novak
8cc950f2a5
Fixed #6195 : Wrong length read/write in rdpei
2020-05-20 15:02:24 +02:00
akallabeth
abf7c29910
Extend lifetime of streampool in drdynvc
...
The stream pool can not be released until all streams have been
returned. This might happen as late as channel termination, so
change the lifetime scope accordingly.
2020-05-18 16:57:02 +02:00
Vladyslav Hordiienko
15245c2abd
fix typo in GFX logs
2020-05-18 10:56:40 +02:00
akallabeth
6a811db69c
Fixed drdynvc_send stream release
2020-05-13 17:11:17 +02:00
akallabeth
64ad42b95b
Fixed DestroyListener arguments and call order
2020-05-13 17:11:17 +02:00
Martin Fleisz
c2f4b3b975
Merge pull request #6171 from akallabeth/printer_cups_ref_fix
...
Fixed #6157 : Reset cups instance on disconnect.
2020-05-12 12:50:49 +02:00
akallabeth
c6e37dce79
Fixed #6162 : Clipboard temporary path length limit
...
The limit of clipboard temporary paths is 260 '\0' terminated
wide characters. Fix the checks to enforce that properly.
2020-05-12 12:16:00 +02:00
akallabeth
2f5e5359f6
Destroy channel listeners on terminate
2020-05-12 11:40:42 +02:00
akallabeth
5b2a4434d8
drdynvc channel cleanup.
...
* Clean channel listeners on channel close
* Remove limit on listeners for channels
* Remove limit on channels
2020-05-12 11:40:42 +02:00
akallabeth
13906f3ec6
Fixed #6157 : Reset cups instance on disconnect.
2020-05-12 08:46:06 +02:00
David Fort
46c4b7bdc2
Merge pull request #6166 from akallabeth/mac_sound_objc_link
...
Fixed #6163 : Force linking to objective C runtime
2020-05-11 22:38:24 +02:00
akallabeth
eee1d7176b
Fixed #6163 : Force linking to objective C runtime
...
Sound channel requires the objective C runtime, force linking to
fix build issues on older mac os versions
2020-05-11 09:56:18 +02:00
akallabeth
feb7d4f362
Changed smartcard no reader log message level to info
2020-05-08 11:21:51 +02:00
akallabeth
c31eb24bae
Fixed wrong error return from drdynvc_write_data
...
When the channel was closed a wrong error code was returned.
2020-05-08 11:21:51 +02:00
akallabeth
52dd312e11
Fixed various input buffer length checks in URBDRC
...
Thanks to hac425 CVE-2020-11039
2020-05-08 11:04:03 +02:00
akallabeth
af79aafbba
Fixed int overflow in smartcard_ndr_read
...
Thanks to hac425
2020-05-08 11:04:03 +02:00
akallabeth
9f77fc3dd2
Fixed int overflow in msusb_mspipes_read
...
Thanks to hac425
2020-05-08 11:04:03 +02:00
akallabeth
8e9b0a625b
Fixed int overflow in printer_write_setting
...
Thanks to hac425
2020-05-08 11:04:03 +02:00
akallabeth
06c32f1700
Fixed int overflow in PresentationContext_new
...
Thanks to hac425 CVE-2020-11038
2020-05-08 11:04:03 +02:00
akallabeth
2215fef975
Fixed oob read in rdpsnd_recv_wave2_pdu
...
Check format index before using it.
Thanks to hac425 CVE-2020-11041
2020-05-06 13:31:57 +02:00
akallabeth
cbee45aace
Fixed clipboard 'called with invalid type' warning
2020-05-06 13:31:57 +02:00
akallabeth
8ec50b6cc1
Fix short format name configuration and format list return.
2020-05-06 13:31:57 +02:00
akallabeth
5305d62b72
Fix oob read in msusb_msconfig_read
2020-05-06 13:31:57 +02:00
akallabeth
6b485b146a
Fixed oob read in irp_write and similar
2020-05-06 13:31:57 +02:00
akallabeth
795842f409
Fixed oob read in parallel_process_irp_create
2020-05-06 13:31:57 +02:00
akallabeth
6efa8290d8
Fixed oob read in parallel_process_irp_read
2020-05-06 13:31:57 +02:00
akallabeth
917daa8b56
Fixed oob read in parallel_process_irp_write
2020-05-06 13:31:57 +02:00
akallabeth
b230ac98e9
Fixed oob read in cliprdr_read_format_list
2020-05-06 13:31:57 +02:00
akallabeth
8e1a1b4075
Fixed cliprdr_server_receive_capabilities
...
Thanks to hac425 CVE-2020-11017, CVE-2020-11018
2020-05-06 13:31:57 +02:00
Bernhard Miklautz
fd5bdee8b3
Merge pull request #6147 from akallabeth/rdpsnd_thread
...
Use dedicated sound decoder thread.
2020-05-06 13:19:29 +02:00
akallabeth
f016f1ec09
Create data copy in case of dynamic sound channel.
2020-05-05 17:03:14 +02:00
Bernhard Miklautz
ecc9f12733
Merge pull request #6140 from akallabeth/smartcard_silence
...
Silence SCARD_E_TIMEOUT warnings
2020-05-05 15:41:04 +02:00
Bernhard Miklautz
3e89574205
Merge pull request #6124 from akallabeth/speedup
...
Unify inline and some warning fixes
2020-05-05 15:34:38 +02:00
akallabeth
af554b5a54
Use dedicated sound decoder thread.
2020-05-05 14:25:54 +02:00
Armin Novak
e80316cf9a
Silence SCARD_E_TIMEOUT warnings
...
These occur quite often for status calls, so reduce log verbosity.
2020-05-04 17:32:55 +02:00
qarmin
fe8bad1698
Don't allow to overflow dev_array array
2020-05-01 20:34:59 +02:00
akallabeth
9d014fe1ea
Fixed compiler warnings for usb channel
2020-04-27 08:19:42 +02:00
Lukas Fink
0c27cecea4
Fixes null dereference bug
...
Avoids a null function pointer dereference that happened, when
freerdp_urbdrc_client_subsystem_entry failed before invoking
udevman_load_interface.
2020-04-26 19:09:13 +02:00
Lukas Fink
0cbff94aa9
Implemented udevman->hotplug_vid_pids as wArrayList
2020-04-26 19:09:13 +02:00
Lukas Fink
060253c9fa
Added ability to add usb devs via id and addr simultaneously
...
It is now possible to add usb devices both via vid+pid and via bus+addr
at the same time. To do this, the ids are directly
given to the corresponding command line options:
/usb🆔 <vid+pids>,addr:<bus+addrs>
The dev option still works like before: /usb:id,dev:<vid+pids> or
/usb:addr,dev:<bus+addrs>
2020-04-26 19:09:13 +02:00
Lukas Fink
0a5d0312d5
Added hotplug to /usb:id,dev option
...
Devices specified with the /usb:id,dev command line option are now
detected by the hotplug callback.
2020-04-26 19:09:13 +02:00
Lukas Fink
3d3cec4dc4
Fixed /usb:dev command line option
...
The /usb:dev command line option failed silently, because it tried to add the
devices before urbdrc gets initialized. This commit adds a new function
to udevman, that gets called when the urbdrc addin is initialized.
Registering of the given devices is now performed there.
2020-04-26 19:09:13 +02:00
Alex Wilson
40f23e2728
SCardReadCache/SCardWriteCache should actually cache data
...
Currently since the hash/keyCompare/keyClone members on the
context->cache were never being set, we were using the
HashTable_Pointer* variants, meaning that lookup always
failed (since we never ask for the same *pointer* twice).
This also revealed that the logic for autoallocate on these ops
was a bit backwards, and some error codes and support for the
"freshness" counter were missing.
In Win10 (at least with some card minidrivers) the freshness
counter is load-bearing and smartcard login won't work without
implementing a very basic version of it.
2020-04-21 08:11:54 +02:00
akallabeth
c6666731d2
Removed casts in udevman_parse_device_id_addr
2020-04-21 08:05:06 +02:00
Lukas Fink
be884c2bf6
Refactored parsing of usb dev: command line option
...
Refactored urbdrc_udevman_register_devices with its helper functions,
because the old implementation was a bit quirky. Removed a unsafe
strcpy, that led to a buffer overflow when given misonstructed command
line options. Doing something like "/usb:id,dev🔢 1234##abcd:abcd"
won't work anymore, too.
2020-04-21 08:05:06 +02:00
David Fort
7733fe7a8a
Merge pull request #6060 from akallabeth/warnings
...
Fix some compiler warnings
2020-04-16 10:54:43 +02:00
akallabeth
6b66aa71fb
Fixi #6086 : smartcard filter early abort.
...
Do not abort before incrementing read position.
2020-04-14 19:04:11 +02:00
Armin Novak
9a60d2feb0
Fixed cups httpConnectEncrypt deprecation warning.
2020-04-11 09:41:08 +02:00
jacobopantoja
0f8437d1d8
Restrict USBDK to Windows builds
...
This commit restricts ebdaea6f3b
to just Win32 builds
2020-04-11 09:04:29 +02:00
akallabeth
aa39e08c29
Fixed URBDRC DEVICE_ADD_FLAG definitions
2020-04-10 14:16:19 +02:00
akallabeth
42d40261c5
Fixed return type for subsystem entry
2020-04-10 14:11:15 +02:00
akallabeth
de7ea07a3d
Fixed URBDRC parsing error reported in #6024 .
2020-04-09 18:00:51 +02:00
Alex Wilson
c6e675bfb7
Always copy null terminator when filtering smartcard list
2020-04-09 10:44:25 +02:00
Martin Fleisz
99786970a3
Merge pull request #5884 from akallabeth/smartcard_ndr_strict
...
Smartcard tighter input validation
2020-03-31 08:34:04 +02:00
akallabeth
2749de506c
Added missing context and handle read.
2020-03-30 11:07:47 +02:00
Armin Novak
f360d445e2
Pack smartcard channel structs to 1 byte alignment
2020-03-27 18:24:25 +01:00
akallabeth
ac4ec690c9
Removed a few magic numbers.
2020-03-27 15:03:59 +01:00
akallabeth
80177efe69
Fixed typos, make status comparisons explicit.
2020-03-27 14:49:09 +01:00
Armin Novak
c406f7a972
Fixed misleading log message.
2020-03-10 14:05:10 +01:00
Armin Novak
b40762c542
Removed unused function
2020-03-10 14:04:53 +01:00
Armin Novak
cb9e7fda32
Removed unused function.
2020-03-10 14:04:53 +01:00
Armin Novak
c58db76e4c
Fixed return check for usbdk backend.
2020-03-09 16:40:07 +01:00
Armin Novak
4692f00864
Removed unnecessary cast.
2020-03-09 16:40:07 +01:00
Kobi Mizrachi
929457db4c
egfx: client: add missing NULL checks
2020-03-09 08:28:40 +01:00
Armin Novak
5690780bdd
[RDPEGFX] checks for cache import, prevent 0 size allocations
2020-03-06 12:28:21 +01:00
Armin Novak
95522923ba
Move libusb hotplug registration to polling thread.
...
* libusb polling thread now is responsible for hotplug registration
and removal as well as cleanup.
* Only register hotplug callback on systems with support.
2020-03-06 12:07:22 +01:00
Armin Novak
ebdaea6f3b
enable usbdk on windows.
2020-03-06 12:07:22 +01:00
Armin Novak
e867ad3c9d
Fixed compilation issues against libusb on windows
2020-03-06 12:07:22 +01:00
Armin Novak
35d7e896ae
Fix GFX cache eviction, use 1 based indexing.
2020-03-04 11:01:23 +01:00
Martin Fleisz
6942669f32
Merge pull request #5941 from akallabeth/clang_fixes
...
Fixed clang scanbuild warnings.
2020-03-04 09:34:51 +01:00
Martin Fleisz
174832150e
Merge pull request #5932 from nfedera/fix_gfx_bitmapcache_indexing
...
Fix RDPEGFX bitmap cache indexing
2020-03-04 09:31:52 +01:00
Armin Novak
1fd51d9183
Fixed clang scanbuild warnings.
2020-03-04 09:17:35 +01:00
Norbert Federa
17e0d25104
dynvc/client: fix and improve channel closing code
...
- fixed and consolitate the duplicated code for sending the
CLOSE_REQUEST_PDU to the server into dvcman_close_channel
- call dvcman_close_channel if a dynamic channel plugin fails
to process the received channel data
- rdpegfx: don't try to remove a non-existing cache entry,
return an error instead which now will close the channel, as
expected by Microsoft's windows protocols test suite
2020-03-04 08:03:56 +01:00
Armin Novak
34498d4064
URBDRC: Only mark closed if control is closed.
2020-03-03 11:15:34 +01:00
Armin Novak
30990089b8
Implemented del_device by vid/pid
2020-03-02 11:40:05 +01:00
Armin Novak
1b1ab01e43
Cleaned up USB redirection
...
* Removed obsolete searchman
* Unified device add and virtual channel add
* Unified device id generation
2020-03-02 11:40:05 +01:00
Armin Novak
acb77391a2
Fix #5910 : USB hotplug added device wrong
...
When a USB device was added via hotplug add_device was called
with wrong arguments.
2020-03-02 11:40:05 +01:00
Norbert Federa
39e12990e8
rdpegfx: rename MaxCacheSlot to MaxCacheSlots
...
Although Microsoft uses 1-based numbering on the wire for indexing the
GFX bitmap cache entries, the code in FreeRDP uses 0-based numbering and
therefore the name MaxCacheSlots is less confusing.
2020-03-02 09:55:25 +01:00
Norbert Federa
f4d5ec776f
rdpegfx: use 1-based indexing for bitmap cache
...
Weird but Microsoft uses 1-based indexing in the RDPGFX bitmap
cache PDU's.
This does not seem to be documented but can be deducted from the
RDP client test code in Microsoft's "Windows Protocol Test Suites"
GitHub repository and the observation that mstsc aborts with a
protocol error if the cacheSlot index value 0 is used in e.g. a
GFX surface to cache PDU.
2020-03-02 09:55:25 +01:00
Armin Novak
2968e41409
Fixed missing boundary checks in smartcard_array_dump
2020-03-02 09:01:39 +01:00
Martin Fleisz
3318d1574f
Fix possible NULL pointer access crash
2020-02-28 12:53:39 +01:00
Armin Novak
4eb4f58fbb
Updated CMake channel detection
...
* Now both, dynamic and static channel entries can be defined by
a single channel.
* Added better logging to distinguish between static and dynamic
channel messages.
2020-02-28 12:53:39 +01:00
Martin Fleisz
da354feed0
Add dynamic channel part for rdpsnd channel
2020-02-28 12:53:39 +01:00
Martin Fleisz
347055492e
Merge pull request #5920 from akallabeth/rdpsnd_crash_fix
...
Fix #5885 : Check for division by zero
2020-02-28 11:50:40 +01:00
Armin Novak
5e4603d0b7
Fix #5885 : Check for division by zero
2020-02-27 13:56:53 +01:00
Armin Novak
95bf87a063
Replaced CMake list find with loop to fix build issues.
2020-02-27 11:18:54 +01:00
Martin Fleisz
f484b20787
Merge pull request #5907 from akallabeth/cmake_channel_dependency_fix
...
Cmake channel dependency fix
2020-02-26 16:18:46 +01:00
Armin Novak
829497b313
Made CHANNEL_TSMF optional and deprecated.
2020-02-26 13:56:43 +01:00
Armin Novak
53c15e3e90
Deactivate USB redirection for IOS and ANDROID by default.
2020-02-26 13:53:25 +01:00
Armin Novak
d8c3ccb375
drdynvc: reorder filepaths when adding channels
2020-02-26 10:19:12 +01:00
Armin Novak
d633195879
Promoted usb, printer and smartcard dependencies to recommended
2020-02-25 17:36:17 +01:00
Armin Novak
00f5f014c6
Fixed CMake channel dependencies for variables.
2020-02-25 16:56:42 +01:00
Armin Novak
0154d3ceb8
audin pulse log states by name
2020-02-25 14:57:42 +01:00
Armin Novak
451c4ddee6
Passing on error code from irp_free
2020-02-21 11:31:21 +01:00
Armin Novak
30db616cec
Added a free function to erase streams not processed.
...
When shutting down the streams still in the queue were not properly
freed.
2020-02-21 11:31:15 +01:00
Armin Novak
bef8dda5e1
Fixed data length for list reader group return.
2020-02-20 15:35:11 +01:00
Armin Novak
5ab0716d7b
SCardListReadersW return length is in bytes, not char.
2020-02-20 15:24:03 +01:00
Armin Novak
fd89ff6913
Fixed some conversion warnings.
2020-02-20 14:40:19 +01:00
Armin Novak
9b5f1ab384
Beautify smartcard log.
2020-02-20 13:59:28 +01:00
Armin Novak
893d08d653
Decreased smartcard log verbosity.
2020-02-20 13:59:28 +01:00
Armin Novak
a8e8351c1d
Removed duplicated copyright claim
2020-02-20 13:59:28 +01:00
Armin Novak
f885476423
Fixed 8bit and 16bit return string sizes.
2020-02-20 13:59:28 +01:00
Armin Novak
ef93109f42
Fixes for GetAttrib and some refactroing
...
* Fix accidental buffer free before transfer
* Refactored code to eliminate a bunch of warnings
* Updated copyright headers
2020-02-20 13:59:28 +01:00
Armin Novak
fe61eab88c
Fixed SCardReadCache autoallocate handling.
2020-02-20 13:59:28 +01:00
Armin Novak
04f0e679f7
Fixed NDR pointer handling for smartcard data.
2020-02-20 13:59:28 +01:00
Armin Novak
436b68e416
Fixed #5895 : cast warnings.
2020-02-19 10:21:43 +01:00
Armin Novak
f77b3daaa0
Fix channel linking for built in channels
2020-02-18 11:14:05 +01:00
Armin Novak
f933cafa93
Added some callbacks to dynamic channel
...
* Allow listener removal of channel during runtime
* Allow retrieval of channel name
2020-02-18 11:14:05 +01:00
Vic Lee
25eb6b6cdd
rdpsnd: implement buffer overrun detection.
2020-02-14 20:49:18 +08:00
Martin Fleisz
e304428a5f
Merge pull request #5857 from akallabeth/scanbuild_fixes
...
Scanbuild fixes
2020-02-12 10:16:54 +01:00
Armin Novak
b004e01fc8
Exporting URBDRC symbols used by helper library
...
When building the usb channel with different shared libraries some
necessary symbols were not exported.
2020-02-11 12:42:45 +01:00
David Fort
7c26d7d9ad
Merge pull request #5875 from akallabeth/smartcard_missing_null_check
...
Fix #5847 : Missing length check to trace smartcard buffers.
2020-02-10 14:57:46 +01:00
Armin Novak
11d3ea3b43
Fix #5847 : Missing length check to trace smartcard buffers.
2020-02-10 14:28:38 +01:00
Martin Fleisz
ebe0fc59b5
Merge pull request #5865 from akallabeth/write_cancelled_leak
...
Fix #5852 : handle CHANNEL_EVENT_WRITE_CANCELLED
2020-02-10 12:08:55 +01:00
Martin Fleisz
1366abfbff
Merge pull request #5869 from llyzs/winmm_fixes
...
rdpsnd/winmm: fix some memory issues.
2020-02-10 10:40:55 +01:00
David Fort
245fc6014d
Merge pull request #5830 from akallabeth/smartcard_updates
...
Smartcard updates
2020-02-07 14:11:00 +01:00
Vic Lee
847fe0f919
rdpsnd/winmm: fix some memory issues.
2020-02-04 17:56:45 +08:00
Armin Novak
d2aef75004
Fix #5852 : handle CHANNEL_EVENT_WRITE_CANCELLED
...
When channels are cleaned up OpenHandle is most of the time
already 0. Ignore the argument checks for
CHANNEL_EVENT_WRITE_CANCELLED and CHANNEL_EVENT_WRITE_COMPLETE
only check where actually required (CHANNEL_EVENT_DATA_RECEIVED)
2020-01-29 08:52:25 +01:00
Armin Novak
11f2532242
Added unified NDR pointer reading.
2020-01-24 13:52:43 +01:00
Armin Novak
7b50ed887e
Fixed missing length checks for smartcard IRP read.
2020-01-24 13:23:40 +01:00
Armin Novak
9128e441c6
Fixed rdpei unused function warning.
2020-01-23 10:50:37 +01:00