Martin Fleisz [Tue, 24 Mar 2020 11:16:08 +0000 (12:16 +0100)]
Merge pull request #5987 from akallabeth/manual_ack_timeout
Add option to adjust the tcp ack timeout
akallabeth [Mon, 23 Mar 2020 07:51:35 +0000 (08:51 +0100)]
Add option to adjust the tcp ack timeout
On high latency links the default of 9 second timeout might be too
strict. Adjusting this for all users will result in a long time
for connections to fail, so let these with high latency links
adjust the value manually.
akallabeth [Wed, 18 Mar 2020 15:36:23 +0000 (16:36 +0100)]
Initialize KeyboardHook with define instead of magic number
akallabeth [Wed, 18 Mar 2020 12:59:43 +0000 (13:59 +0100)]
Allow externally supplied FREERDP_INSTALL_PREFIX
Kobi Mizrachi [Thu, 12 Mar 2020 06:43:00 +0000 (08:43 +0200)]
server: proxy: fix wrong log level used in pf_modules_run_filter
Kobi Mizrachi [Thu, 12 Mar 2020 06:42:13 +0000 (08:42 +0200)]
server: proxy: removed unnecessary cast after #5955
Kobi Mizrachi [Thu, 12 Mar 2020 06:41:07 +0000 (08:41 +0200)]
server: proxy: use config path from argv if provided
Martin Fleisz [Tue, 10 Mar 2020 15:03:54 +0000 (16:03 +0100)]
Merge pull request #5943 from akallabeth/x11_lock
X11 lock recursion checks
Armin Novak [Tue, 10 Mar 2020 09:52:28 +0000 (10:52 +0100)]
Fixed length checks for compressed rdp data.
Armin Novak [Tue, 10 Mar 2020 09:46:13 +0000 (10:46 +0100)]
Cleaned up bulk_compress/decompress, prettified log.
Armin Novak [Tue, 10 Mar 2020 09:32:41 +0000 (10:32 +0100)]
Fixed misleading log message.
Armin Novak [Tue, 10 Mar 2020 09:31:41 +0000 (10:31 +0100)]
Refactored bulk compression
* Arguments now opaque
* Removed internal functions from external interface
Armin Novak [Tue, 10 Mar 2020 12:37:57 +0000 (13:37 +0100)]
Removed unused function
Armin Novak [Tue, 10 Mar 2020 12:37:12 +0000 (13:37 +0100)]
Silenced warning due to missing debug define guard.
Armin Novak [Tue, 10 Mar 2020 12:36:41 +0000 (13:36 +0100)]
Silenced warning due to missing define guard.
Armin Novak [Tue, 10 Mar 2020 12:36:12 +0000 (13:36 +0100)]
Removed unused function
Armin Novak [Tue, 10 Mar 2020 12:36:04 +0000 (13:36 +0100)]
Removed unused function
Armin Novak [Tue, 10 Mar 2020 12:35:54 +0000 (13:35 +0100)]
Removed unused function
Armin Novak [Tue, 10 Mar 2020 12:35:45 +0000 (13:35 +0100)]
Removed unused function
Armin Novak [Tue, 10 Mar 2020 12:35:26 +0000 (13:35 +0100)]
Removed unused function
Armin Novak [Tue, 10 Mar 2020 12:35:00 +0000 (13:35 +0100)]
Removed unused function.
Armin Novak [Tue, 10 Mar 2020 12:34:13 +0000 (13:34 +0100)]
Using bsearch to get ntstatus string.
Armin Novak [Tue, 10 Mar 2020 12:32:37 +0000 (13:32 +0100)]
Silenced warning due to missing debug define guard.
Armin Novak [Tue, 10 Mar 2020 12:02:39 +0000 (13:02 +0100)]
Removed unused functions / files
Armin Novak [Mon, 9 Mar 2020 09:58:02 +0000 (10:58 +0100)]
Unify pReceiveChannelData and psPeerReceiveChannelData
Fix definitions of the two function pointers.
Use and definition did not match, fix that.
Will create warnings in external projects
Armin Novak [Mon, 9 Mar 2020 09:33:58 +0000 (10:33 +0100)]
Fixed misinterpretation of SendChannelData
SendChannelData was defined with a return value of type int, but
used as BOOL everywhere. Fix the definition to match use.
Armin Novak [Mon, 9 Mar 2020 20:54:34 +0000 (21:54 +0100)]
Fix tpkt header length checks for encrypted packets
If securityFlag SEC_ENCRYPT is set, remove the encryption headers from
the TPKT header length on comparison.
Martin Fleisz [Tue, 10 Mar 2020 09:14:28 +0000 (10:14 +0100)]
Merge pull request #5963 from akallabeth/fixes
Fixes some warnings and checks
Armin Novak [Tue, 10 Mar 2020 07:59:11 +0000 (08:59 +0100)]
Default to positive return for missing callbacks
When using +async-update, default to positive return if some
client callback is not implemented.
Armin Novak [Tue, 10 Mar 2020 07:50:55 +0000 (08:50 +0100)]
Fixed broken NULL check.
Armin Novak [Mon, 9 Mar 2020 15:22:29 +0000 (16:22 +0100)]
Fixed return check for usbdk backend.
Armin Novak [Mon, 9 Mar 2020 15:21:43 +0000 (16:21 +0100)]
Removed unnecessary cast.
David Fort [Mon, 9 Mar 2020 14:35:55 +0000 (15:35 +0100)]
Merge pull request #5958 from akallabeth/usb_win_fixes
Fixed missing config include.
Armin Novak [Mon, 9 Mar 2020 13:57:20 +0000 (14:57 +0100)]
Fixed missing config include.
Martin Fleisz [Mon, 9 Mar 2020 12:24:53 +0000 (13:24 +0100)]
Merge pull request #5957 from akallabeth/cmake_libusb
Added libusb detection for windows.
Armin Novak [Mon, 9 Mar 2020 11:43:42 +0000 (12:43 +0100)]
Added libusb detection for windows.
Martin Fleisz [Mon, 9 Mar 2020 09:01:31 +0000 (10:01 +0100)]
Merge pull request #5954 from akallabeth/server_config_options
Server config options
Armin Novak [Mon, 9 Mar 2020 08:14:50 +0000 (09:14 +0100)]
Default proxy modules to OFF
The proxy module sample is c++ 11 which some older build targets
do not like. Deactivate this by default.
Armin Novak [Mon, 9 Mar 2020 08:03:19 +0000 (09:03 +0100)]
Set C++ standard for proxy demo target
Armin Novak [Mon, 9 Mar 2020 07:48:57 +0000 (08:48 +0100)]
CMake options to compile without proxy or shadow
* Added WITH_SHADOW (default ON) to compile without shadow server
* Added WITH_PROXY (default ON) to compile without proxy server
Kobi Mizrachi [Sun, 1 Mar 2020 11:43:09 +0000 (13:43 +0200)]
egfx: client: add missing NULL checks
Armin Novak [Fri, 6 Mar 2020 10:07:01 +0000 (11:07 +0100)]
[RDPEGFX] checks for cache import, prevent 0 size allocations
Armin Novak [Fri, 6 Mar 2020 08:00:12 +0000 (09:00 +0100)]
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.
Armin Novak [Thu, 5 Mar 2020 15:51:01 +0000 (16:51 +0100)]
enable usbdk on windows.
Armin Novak [Thu, 5 Mar 2020 15:40:01 +0000 (16:40 +0100)]
Fixed compilation issues against libusb on windows
Armin Novak [Fri, 6 Mar 2020 09:06:36 +0000 (10:06 +0100)]
Fixed strncmp, use _strnicmp
Armin Novak [Tue, 18 Feb 2020 12:22:04 +0000 (13:22 +0100)]
Fixed memory leak in tls_get_channel_bindings
Armin Novak [Wed, 12 Feb 2020 12:47:35 +0000 (13:47 +0100)]
Added raw function wrapping X509_digest
Armin Novak [Wed, 12 Feb 2020 12:27:30 +0000 (13:27 +0100)]
Added winpr_md_type_from_string and winpr_md_type_to_string
Armin Novak [Wed, 12 Feb 2020 12:17:42 +0000 (13:17 +0100)]
Let ssl backend handle hash checks.
Armin Novak [Wed, 12 Feb 2020 12:17:18 +0000 (13:17 +0100)]
Added sha3 hashes for openssl.
Armin Novak [Wed, 12 Feb 2020 11:03:43 +0000 (12:03 +0100)]
Added new option /cert that unifies all.
* The mess with /cert-tofu, /cert-ignore et al is now unified in
a single option.
* Added the option to add fingerprint:<hash>:<hex string> multiple
times to /cert to build a list of accepted certificate
fingerprints
* Added a deprecation warning to older /cert-* options
Armin Novak [Wed, 12 Feb 2020 11:01:50 +0000 (12:01 +0100)]
Check cert against CertificateAcceptedFingerprints
CertificateAcceptedFingerprints may contain a list of certificate
hashes and the corresponding fingerprint.
If one of the hashes matches consider the certificate accepted.
Armin Novak [Wed, 12 Feb 2020 11:01:27 +0000 (12:01 +0100)]
Added CertificateAcceptedFingerprints to settings
Armin Novak [Wed, 12 Feb 2020 10:55:47 +0000 (11:55 +0100)]
Added missing WINPR_*_DIGEST_LENGTH definitions.
Armin Novak [Thu, 5 Mar 2020 10:27:33 +0000 (11:27 +0100)]
Consume all TPKT data reading new/upgrade license
Armin Novak [Thu, 5 Mar 2020 10:18:43 +0000 (11:18 +0100)]
rdp_recv_tpkt_pdu verbose debug parsing issues
Print out parsing issues found in MCS Channel 1003 parsing.
Armin Novak [Thu, 5 Mar 2020 10:16:56 +0000 (11:16 +0100)]
tpkt_ensure_stream_consumed now more verbose.
tpkt_ensure_stream_consumed now writes the function it was called
from to the log. This should help identify areas the check failed.
Martin Fleisz [Thu, 5 Mar 2020 07:26:34 +0000 (08:26 +0100)]
Merge pull request #5944 from akallabeth/fragmented_packet_length_check_fix
Fragmented packet length check fix
Armin Novak [Wed, 4 Mar 2020 10:33:06 +0000 (11:33 +0100)]
Modified xf_lock_x11 and xf_unlock_x11, allow recusive
The X11 locking routines did not handle multiple locks from the same
thread well. This pr fixes that.
Armin Novak [Wed, 4 Mar 2020 13:59:27 +0000 (14:59 +0100)]
Added clarifications in freerdp_channel_process
Armin Novak [Wed, 4 Mar 2020 13:52:19 +0000 (14:52 +0100)]
Fixed arguments for peer->ReceiveChannelData
Armin Novak [Wed, 4 Mar 2020 13:42:42 +0000 (14:42 +0100)]
Fixed conversion and return checks.
* Fix some missing argument checks for function pointer implementations
* Fix broken return value check for client->SendChannelData
* Updated const correctness for function pointer implementations
Armin Novak [Wed, 4 Mar 2020 13:34:28 +0000 (14:34 +0100)]
Fixed function pointer const correctness.
Armin Novak [Wed, 4 Mar 2020 13:26:41 +0000 (14:26 +0100)]
Fixed freerdp_channel_process length checks
Fragmented data was not handled properly.
Armin Novak [Wed, 4 Mar 2020 13:23:17 +0000 (14:23 +0100)]
Added freerdp_channels_data argument checks.
Norbert Federa [Wed, 4 Mar 2020 10:41:01 +0000 (11:41 +0100)]
Merge pull request #5942 from akallabeth/gfx_cache_evict
Fix GFX cache eviction, use 1 based indexing.
Armin Novak [Wed, 4 Mar 2020 10:00:54 +0000 (11:00 +0100)]
Fix GFX cache eviction, use 1 based indexing.
Armin Novak [Thu, 27 Feb 2020 08:02:41 +0000 (09:02 +0100)]
X11 XEvent handling use const arguments
Armin Novak [Thu, 27 Feb 2020 07:51:14 +0000 (08:51 +0100)]
X11 XEvent disp refactored to use const arguments
Armin Novak [Thu, 27 Feb 2020 07:50:04 +0000 (08:50 +0100)]
X11 XEvent refactored input
* Use proper types and const arguments where appropriate
Armin Novak [Thu, 27 Feb 2020 07:42:14 +0000 (08:42 +0100)]
X11 XEvent refactored floatbar
* Use const event pointers of correct type where appropriate
Armin Novak [Thu, 27 Feb 2020 07:28:52 +0000 (08:28 +0100)]
X11 XEvent clipboard processing cleanup
* Use const X*Event where possible
* Helper functions use the actual type as argument
Armin Novak [Thu, 27 Feb 2020 07:27:56 +0000 (08:27 +0100)]
X11: Lock display during event processing
* Added a X11 lock debug messages for incorrect locking.
* Lock X11 display during XEvent processing
Martin Fleisz [Wed, 4 Mar 2020 08:36:49 +0000 (09:36 +0100)]
Merge pull request #5939 from akallabeth/scaling_patch
Reverted minimum scaling diff
Martin Fleisz [Wed, 4 Mar 2020 08:34:51 +0000 (09:34 +0100)]
Merge pull request #5941 from akallabeth/clang_fixes
Fixed clang scanbuild warnings.
Martin Fleisz [Wed, 4 Mar 2020 08:31:52 +0000 (09:31 +0100)]
Merge pull request #5932 from nfedera/fix_gfx_bitmapcache_indexing
Fix RDPEGFX bitmap cache indexing
Armin Novak [Wed, 4 Mar 2020 08:15:31 +0000 (09:15 +0100)]
Fixed clang scanbuild warnings.
David Fort [Wed, 4 Mar 2020 07:45:47 +0000 (08:45 +0100)]
Merge pull request #5940 from akallabeth/pretty_print_signals
Improve signal handler printout.
Armin Novak [Wed, 4 Mar 2020 07:22:31 +0000 (08:22 +0100)]
Improve signal handler printout.
Norbert Federa [Tue, 3 Mar 2020 17:18:00 +0000 (18:18 +0100)]
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
Armin Novak [Wed, 4 Mar 2020 07:00:54 +0000 (08:00 +0100)]
Reverted minimum scaling diff
Revert to the diff value from @volth
Norbert Federa [Tue, 3 Mar 2020 12:26:16 +0000 (13:26 +0100)]
Merge pull request #5935 from akallabeth/shadow_server_mstsc_fix
Fixed shadow server with mstsc as client.
Armin Novak [Tue, 3 Mar 2020 12:10:24 +0000 (13:10 +0100)]
Fixed reading suppress output pdu
Optional rectangle must be read from PDU
Armin Novak [Tue, 3 Mar 2020 12:02:22 +0000 (13:02 +0100)]
Removed function pointer casts for shadow.
Armin Novak [Tue, 3 Mar 2020 11:27:01 +0000 (12:27 +0100)]
Fixed shadow server with mstsc as client.
Norbert Federa [Tue, 3 Mar 2020 10:27:06 +0000 (11:27 +0100)]
Merge pull request #5934 from akallabeth/urbdrc_close_fix
URBDRC: Only mark closed if control is closed.
Armin Novak [Tue, 3 Mar 2020 10:09:27 +0000 (11:09 +0100)]
URBDRC: Only mark closed if control is closed.
David Fort [Tue, 3 Mar 2020 08:18:27 +0000 (09:18 +0100)]
Merge pull request #5933 from akallabeth/autodetect_consume_stream
Consume stream data in autoconnect
Armin Novak [Mon, 2 Mar 2020 12:54:10 +0000 (13:54 +0100)]
Consume stream data in autoconnect
TPKT checks failed due to payload data not consumed in autodetect.
xie.kunming [Sun, 1 Mar 2020 08:48:36 +0000 (16:48 +0800)]
wf_cliprdr.c forget OleUninitialize if create_cliprdr_window failed
Armin Novak [Fri, 21 Feb 2020 08:17:00 +0000 (09:17 +0100)]
Fixed tpkt header length checks.
TPKT header length and consumption of data was not consistently
checked. This adds checks after each packet processed and fixes
any inconsistencies found.
Armin Novak [Thu, 20 Feb 2020 09:38:04 +0000 (10:38 +0100)]
Fixed warnings in capabilities.c
Armin Novak [Thu, 20 Feb 2020 07:40:47 +0000 (08:40 +0100)]
Fixed compiler warnings in info.c
Armin Novak [Thu, 20 Feb 2020 07:22:19 +0000 (08:22 +0100)]
Added tpkt header length plausibility checks.
Armin Novak [Thu, 20 Feb 2020 07:07:35 +0000 (08:07 +0100)]
Added fallbacks for primitives auto detection.
When using primitives auto detection it was possible that no
primitive implementation was chosen at all.
This now skips broken implementations and falls back to generic
primitives if no other implementation does work.
Armin Novak [Wed, 19 Feb 2020 16:00:36 +0000 (17:00 +0100)]
Check length of TPKT header for plausibility.
Armin Novak [Mon, 2 Mar 2020 07:40:40 +0000 (08:40 +0100)]
Implemented del_device by vid/pid
Armin Novak [Fri, 28 Feb 2020 12:45:26 +0000 (13:45 +0100)]
Cleaned up USB redirection
* Removed obsolete searchman
* Unified device add and virtual channel add
* Unified device id generation
Armin Novak [Wed, 26 Feb 2020 11:24:25 +0000 (12:24 +0100)]
Fix #5910: USB hotplug added device wrong
When a USB device was added via hotplug add_device was called
with wrong arguments.