Ian Weir
aa4c3dfb8a
Add exit codes for more errors
2021-10-11 08:27:41 +02:00
Armin Novak
96cf17a45b
Replaced (IWTSPlugin*) casts with struct address return
2021-10-07 16:22:04 +02:00
akallabeth
6ac4cad8dd
Settings fixes ( #7335 )
...
* Fix temporary settings allocation for command line
Detection of legacy command line requires a temporary settings
struct. This was previously manyally allocated instead of using
freerdp_settings_new and freerdp_settings_free.
* Fixed CommandLineParseCommaSeparatedValuesEx
The name argument was not copied into the returned array.
2021-10-07 13:43:12 +02:00
akallabeth
a4be45dd5d
Fixed proxy to string functions ( #7333 )
2021-10-07 10:25:59 +02:00
akallabeth
51268bbcba
Lock updates during gdi_resize ( #7330 )
2021-10-07 10:25:09 +02:00
Armin Novak
439ec62cff
Hide implementation of certain stream functions
2021-10-06 09:49:07 +02:00
Armin Novak
33bc2ba2ab
Fixed static-in-line warnings
2021-10-06 09:49:07 +02:00
Armin Novak
983443749d
Added Stream_EnsureValidity
...
This function terminates a process if a stream was used incorrectly.
It will work similar to an assert, but it is not possible to compile
without this.
Purpose is to prevent problems with missing length/capacity checks
2021-10-06 09:49:07 +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
Armin Novak
103ff6a758
Fixed certificate store double free.
2021-10-06 09:49:07 +02:00
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