Commit Graph

15340 Commits

Author SHA1 Message Date
akallabeth
32994b02f5
Fix pf_server_new: pass own copy of proxyConfig (#7328)
* Fix pf_server_new: pass own copy of proxyConfig

The lifecycle of proxyConfig passed to pf_server_new is unknown,
so pass proxyServer->config copy to modules.

* Early free parsed proxyConfig
2021-10-06 09:17:59 +02:00
Armin Novak
b3209fe2b9 Fixed #7326: Ensure proper window size
When leaving fullscreen with enabled smart sizing the window size
did shrink due to first resizing the window, then enabling window
decorations and finally moving to the correct position.
2021-10-05 10:56:33 +02:00
Alexandru Bagu
7f7bf2d731 Remove passthrough channel name limit 2021-10-05 09:40:53 +02:00
Alexandru Bagu
1f4ae26a6f add missing filter type strings
* fixes crash that happens while debugging the proxy
2021-10-05 09:32:21 +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
e4cd8674d7
Win proxy fix (#7311)
* Do not change warning level for MSVC builds

* Fixed windows PDB paths.
2021-09-22 16:00:00 +02:00
Martin Fleisz
e7bfcc37fc core: Fix invalid memory access in local peer detection 2021-09-22 14:32:26 +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
1c84690c2f
Fixes from tests (#7308)
* Fixed memory leak in tls_verify_certificate

* Fixed missing NULL checks

* Fixed missing checks for FreeRDP_DeactivateClientDecoding

* Added WINPR_ASSERT for client common new/free

* Added /disable-output switch to deactivate client decoding

Allows low resource remote connections that do not require visual
feedback. (e.g. load testing/...)
2021-09-21 09:56:56 +02:00
akallabeth
7b7e2d6f32 Prefer constant division over multiplication for length checks 2021-09-21 08:55:22 +02:00
Jeremy Cross
6547db2f17 early bail from update_read_window_state_order when handling WINDOW_ORDER_FIELD_WND_RECTS breaks subsequent protocol parsing 2021-09-21 07:43:03 +02:00
Armin Novak
1ee8370f28 Fixed leak in TestPipeCreateNamedPipeOverlapped. 2021-09-20 10:59:59 +02:00
Armin Novak
aeb2415af9 Cleaned up NamedPipeOverlapped test. 2021-09-20 10:59:59 +02:00
Armin Novak
fceb108fc5 Fixed comments and duplicate checks. 2021-09-20 10:59:59 +02:00
Armin Novak
b05eb8d834 Fixed thread related changes:
* Fixed typo
* Fixed wrong #ifdef
2021-09-20 10:59:59 +02:00
Armin Novak
0ccebb2a0f Fixed missing NULL checks. 2021-09-20 10:59:59 +02:00
Armin Novak
cbd30544f8 Fix rdpsnd number of event handles 2021-09-20 10:59:59 +02:00
akallabeth
695e38398d Refactored proxy
* Removed unnecessary global data lists
* Improved error handling
* Do not initialize channel code in passthrough mode
2021-09-20 10:59:59 +02:00
akallabeth
3ce622b638 Fixed FreeRDP_WTS* failure handling 2021-09-20 10:59:59 +02:00
akallabeth
bc800175d1 Fixed proper reset ov member variable to NULL 2021-09-20 10:59:59 +02:00
akallabeth
bc80fe3580 Improved server accept log message 2021-09-20 10:59:59 +02:00
akallabeth
d1b58ab263 Refactored rdpRdp cleanup handling 2021-09-20 10:59:59 +02:00
akallabeth
6b24c2be10 Added WINPR_ASSERT and cleanup fixes in freerdp.c 2021-09-20 10:59:59 +02:00
akallabeth
c1e38b24a6 Replaced manual settings value allocation with setter 2021-09-20 10:59:59 +02:00
akallabeth
04a8ced567 Added WINPR_ASSERT and proper error reset in client.c 2021-09-20 10:59:59 +02:00
akallabeth
bfb9a89639 Loop data type fix in certificate.c 2021-09-20 10:59:59 +02:00
akallabeth
73223638dd WINPR_ASSERT in bulk.c 2021-09-20 10:59:59 +02:00
akallabeth
c2d126cdd8 Streamlined rdpCodec cleanup routines 2021-09-20 10:59:59 +02:00
akallabeth
ce8ef33ea4 Added WINPR_ASSERT in transport 2021-09-20 10:59:59 +02:00
akallabeth
75e6f443b5 Fixed possible leak in tls_prepare
If the function fails, the 'underlying' BIO was leaking as
tls_free did not clean it up if 'tls->bio' was not successfully
allocated.
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
akallabeth
ab0f3bb4ff Include winpr/config.h in freerdp/config.h 2021-09-20 10:59:59 +02:00
akallabeth
cb5ccec212 Cleaned up some possible race conditions with threads
* ExitThread no longer NORETURN, this eases handling of threads.
* Fixed a (rare) race condition when starting a thread
* Made global thread_list optional (you lose the exit code from
  ExitThread)
2021-09-20 10:59:59 +02:00
akallabeth
dc07b10d41 Cleaned up thread pool initialisation 2021-09-20 10:59:59 +02:00
akallabeth
47277a4504 Improved debug logging when operating on invalid handles.
* Added backtrace to log
2021-09-20 10:59:59 +02:00
akallabeth
b69156d79c Eliminated spammy log messages from backtrace functions 2021-09-20 10:59:59 +02:00
akallabeth
162227ce78 Cleaned up GetCombinedPath 2021-09-20 10:59:59 +02:00
akallabeth
76979a47fb Added new CMake option to dump event handles in use 2021-09-20 10:59:59 +02:00
akallabeth
53a52a055d Added missing WINPR_ASSERT to MessageQueue 2021-09-20 10:59:59 +02:00
akallabeth
d80b418bbc Added object copy support to queue
* Added object copy support to Queue_Enqueue
* Added Queue_Discard to clear the top of the queue
* Added some doxygen for queue functions.
2021-09-20 10:59:59 +02:00
Armin Novak
a8acd3eb6b Do not install *.so in -dev package. 2021-09-20 09:42:37 +02:00
Armin Novak
1d9e886a7f Fixed timezone detection on linux.
Fix originally proposed via IRC by myth0s
Original changeset at https://paste.debian.net/hidden/0a03314a/
2021-09-20 09:39:40 +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
Hans-Peter Jansen
1d8002f831 Improve fix 2021-09-20 08:13:22 +02:00
Hans-Peter Jansen
ab4b99ec2e Fix X11 floatbar: XGetWindowAttributes returns zero on error 2021-09-20 08:13:22 +02:00
akallabeth
8dc782d009 Fixed #7294: Spelling 2021-09-17 07:25:51 +02:00
akallabeth
41aaafef77 Added unicode input for xfreerdp 2021-09-17 07:21:45 +02:00