platform/upstream/freerdp.git
4 years agoserver: proxy: pf_client.c: remove unused includes
Kobi Mizrachi [Mon, 20 Jan 2020 10:27:01 +0000 (12:27 +0200)]
server: proxy: pf_client.c: remove unused includes

4 years agoserver: proxy: disconnect all active sessions on shutdown
Kobi Mizrachi [Sun, 19 Jan 2020 09:51:34 +0000 (11:51 +0200)]
server: proxy: disconnect all active sessions on shutdown

4 years agoRevert "core: rdp: reset rdp->nla in rdp_reset"
Kobi Mizrachi [Sun, 19 Jan 2020 09:03:27 +0000 (11:03 +0200)]
Revert "core: rdp: reset rdp->nla in rdp_reset"

This reverts commit 205b0fba7fb92b4db7bb0fbdac7550564e48cd0e.

4 years agoserver: proxy: modules_init: create modules dir if not exists
Kobi Mizrachi [Tue, 21 Jan 2020 07:15:46 +0000 (09:15 +0200)]
server: proxy: modules_init: create modules dir if not exists

4 years agoserver: proxy: update config.ini
Kobi Mizrachi [Tue, 21 Jan 2020 07:15:11 +0000 (09:15 +0200)]
server: proxy: update config.ini

4 years agordpsnd: Add synchronization to winmm backend
Martin Fleisz [Fri, 17 Jan 2020 12:02:31 +0000 (13:02 +0100)]
rdpsnd: Add synchronization to winmm backend

4 years agoMerge pull request #5844 from akallabeth/gfx_fix
Martin Fleisz [Thu, 16 Jan 2020 14:46:17 +0000 (15:46 +0100)]
Merge pull request #5844 from akallabeth/gfx_fix

Gfx fix disconnect reorder

4 years agoFixed #5843 wrong header length for pdu
Armin Novak [Thu, 16 Jan 2020 14:30:33 +0000 (15:30 +0100)]
Fixed #5843 wrong header length for pdu

@boom1 reported encomsp_send_change_participant_control_level_pdu
fails due to wrong length.

4 years agoFixed accidental reorder of surface delete and disconnect
Armin Novak [Thu, 16 Jan 2020 14:23:35 +0000 (15:23 +0100)]
Fixed accidental reorder of surface delete and disconnect

4 years agordpsnd: Fix possible crash and deadlock in winmm backend
Martin Fleisz [Wed, 15 Jan 2020 12:04:25 +0000 (13:04 +0100)]
rdpsnd: Fix possible crash and deadlock in winmm backend

4 years agoaudin: Fix possible crash in winmm backend
Martin Fleisz [Wed, 15 Jan 2020 10:23:59 +0000 (11:23 +0100)]
audin: Fix possible crash in winmm backend

4 years agoMerge pull request #5841 from akallabeth/vaapi_fixes
Martin Fleisz [Thu, 16 Jan 2020 09:17:10 +0000 (10:17 +0100)]
Merge pull request #5841 from akallabeth/vaapi_fixes

Vaapi fixes

4 years agoMerge pull request #5836 from kubistika/proxy/fix_rail_and_update_issues
Martin Fleisz [Thu, 16 Jan 2020 09:13:26 +0000 (10:13 +0100)]
Merge pull request #5836 from kubistika/proxy/fix_rail_and_update_issues

fixes: rail and update issues

4 years agoMerge pull request #5783 from akallabeth/gfx_mask_arg
Martin Fleisz [Thu, 16 Jan 2020 09:02:15 +0000 (10:02 +0100)]
Merge pull request #5783 from akallabeth/gfx_mask_arg

Added /gfx and /gfx-h264 option mask=<value>

4 years agoFixed #5839: Use correct pointer to cast.
Armin Novak [Thu, 16 Jan 2020 08:53:57 +0000 (09:53 +0100)]
Fixed #5839: Use correct pointer to cast.

4 years agoAdd CMake config option for VAAPI
Armin Novak [Thu, 16 Jan 2020 08:53:39 +0000 (09:53 +0100)]
Add CMake config option for VAAPI

4 years agocore: rdp: reset rdp->nla in rdp_reset
Kobi Mizrachi [Thu, 16 Jan 2020 07:07:50 +0000 (09:07 +0200)]
core: rdp: reset rdp->nla in rdp_reset

4 years agoclient/X11: Avoid crash in XGetDeviceButtonMapping()
Alexander Volkov [Wed, 15 Jan 2020 11:32:08 +0000 (14:32 +0300)]
client/X11: Avoid crash in XGetDeviceButtonMapping()

XOpenDevice() may fail and return NULL, so try to find the first
pointer device that can be opened, and ensure that ptr_dev argument
is not NULL before passing it to XGetDeviceButtonMapping().

4 years agoMerge pull request #5750 from akallabeth/encomsp_auto
David Fort [Wed, 15 Jan 2020 12:56:00 +0000 (13:56 +0100)]
Merge pull request #5750 from akallabeth/encomsp_auto

Encomsp automatic input control && cleanups

4 years agordpsnd: server: fix leak in rdpsnd_server_context_free
Kobi Mizrachi [Wed, 15 Jan 2020 11:51:05 +0000 (13:51 +0200)]
rdpsnd: server: fix leak in rdpsnd_server_context_free

4 years agoserver: update: made functions static
Kobi Mizrachi [Wed, 15 Jan 2020 10:11:24 +0000 (12:11 +0200)]
server: update: made functions static

4 years agoupdate: update_send_new_or_existing_window: fix signed/unsigned according to spec
Kobi Mizrachi [Wed, 15 Jan 2020 09:20:54 +0000 (11:20 +0200)]
update: update_send_new_or_existing_window: fix signed/unsigned according to spec

4 years agoserver: update: call update_check_flush whenever using the reused update buffer
Kobi Mizrachi [Wed, 15 Jan 2020 09:18:45 +0000 (11:18 +0200)]
server: update: call update_check_flush whenever using the reused update buffer

4 years agoMerge pull request #5831 from akallabeth/drdynvc_error_tolerance
David Fort [Wed, 15 Jan 2020 09:49:53 +0000 (10:49 +0100)]
Merge pull request #5831 from akallabeth/drdynvc_error_tolerance

Ignore dynamic virtual channel errors

4 years agoMerge pull request #5835 from akallabeth/planar_chroma_subsample
David Fort [Wed, 15 Jan 2020 09:49:09 +0000 (10:49 +0100)]
Merge pull request #5835 from akallabeth/planar_chroma_subsample

Implemented chroma subsampling for planar non RLE

4 years agoserver: proxy: fix race condition when between client thread and server update thread
Kobi Mizrachi [Wed, 15 Jan 2020 09:15:06 +0000 (11:15 +0200)]
server: proxy: fix race condition when between client thread and server update thread

4 years agoFixed remaining issues with chroma subsampling.
Armin Novak [Tue, 14 Jan 2020 16:46:13 +0000 (17:46 +0100)]
Fixed remaining issues with chroma subsampling.

4 years agoFixed inverted color formats in YCoCgRToRGB_8u_AC4R
Armin Novak [Tue, 14 Jan 2020 16:45:20 +0000 (17:45 +0100)]
Fixed inverted color formats in YCoCgRToRGB_8u_AC4R

4 years agoFixed planar size checks.
Armin Novak [Tue, 14 Jan 2020 14:14:40 +0000 (15:14 +0100)]
Fixed planar size checks.

4 years agoEnabled YCoCg for planar.
Armin Novak [Tue, 14 Jan 2020 13:23:43 +0000 (14:23 +0100)]
Enabled YCoCg for planar.

4 years agoAdded planar RLE chroma subsampling.
Armin Novak [Tue, 14 Jan 2020 12:22:45 +0000 (13:22 +0100)]
Added planar RLE chroma subsampling.

4 years agoImplemented chroma subsampling for planar non RLE
Armin Novak [Tue, 14 Jan 2020 11:17:12 +0000 (12:17 +0100)]
Implemented chroma subsampling for planar non RLE

Planar frames that are not RLE encoded can now be decoded if
chroma subsampling is enabled. Partly fixes #5822

4 years agoserver: proxy: fix pf_modules_init
Kobi Mizrachi [Tue, 14 Jan 2020 09:02:04 +0000 (11:02 +0200)]
server: proxy: fix pf_modules_init

4 years agoMerge pull request #5796 from akallabeth/rdp_10_7_large_pointers
David Fort [Tue, 14 Jan 2020 09:17:13 +0000 (10:17 +0100)]
Merge pull request #5796 from akallabeth/rdp_10_7_large_pointers

Added RDP 10.7 large pointer support

4 years agoserver: proxy: do not compile modules by default
Kobi Mizrachi [Mon, 13 Jan 2020 10:30:09 +0000 (12:30 +0200)]
server: proxy: do not compile modules by default

4 years agoserver: proxy: shutdown gracefully
Kobi Mizrachi [Tue, 31 Dec 2019 13:52:33 +0000 (15:52 +0200)]
server: proxy: shutdown gracefully

4 years agoserver: proxy: rewrite modules API
Kobi Mizrachi [Tue, 31 Dec 2019 09:16:12 +0000 (11:16 +0200)]
server: proxy: rewrite modules API

* Add support for C++ plugins.
* Seperate between a "module" and a "plugin": a module is a shared
library that exposes a function called "proxy_module_entry_point". This
function gets a parameter to `proxyPluginsManager*`, which can be used to
register plugins.
* Refine the API of the modules infrastructure:
 * use proxyData* instead of rdpContext* when firing a hook or calling a filter.
 * use clearer names.
* Instead of having to specify a path for each module to be loaded in
the configuration, the proxy now loads modules from specificed
directory, using the CMAKE variable PROXY_PLUGINDIR.
* Add an option to specify required plugins: plugins that the proxy
wouldn't start without having them fully loaded.

4 years agowinpr: collections: add ArrayList_ForEach
Kobi Mizrachi [Tue, 31 Dec 2019 11:15:00 +0000 (13:15 +0200)]
winpr: collections: add ArrayList_ForEach

4 years agorail/server: rename rdpContext to rdpcontext
Kobi Mizrachi [Mon, 30 Dec 2019 08:08:26 +0000 (10:08 +0200)]
rail/server: rename rdpContext to rdpcontext

Fixes a compilation error when mixing c++ and c code.

4 years agoAdded /gfx and /gfx-h264 option mask=<value>
Armin Novak [Mon, 16 Dec 2019 06:53:35 +0000 (07:53 +0100)]
Added /gfx and /gfx-h264 option mask=<value>

With this new option the gfx capability set can be masked to only
announce older versions of the protocol if required.
(Fixes #5771)

4 years agoMerge pull request #5832 from akallabeth/libusb_doc_misleading
Martin Fleisz [Mon, 13 Jan 2020 14:41:59 +0000 (15:41 +0100)]
Merge pull request #5832 from akallabeth/libusb_doc_misleading

Libusb doc misleading

4 years agoAdded fallback for libusb < 1.0.19
Armin Novak [Mon, 13 Jan 2020 14:23:57 +0000 (15:23 +0100)]
Added fallback for libusb < 1.0.19

we use stream_id functions which were introduced with 1.0.19

4 years agoFixed LIBUSB_HOTPLUG_NO_FLAGS definition
Armin Novak [Mon, 13 Jan 2020 14:13:35 +0000 (15:13 +0100)]
Fixed LIBUSB_HOTPLUG_NO_FLAGS definition

libusb documentation is a bit misleading, this flag was
introduced with 1.0.20

4 years agordpgfx: client: fix leak when using rdpgfx_client_context_new API
Kobi Mizrachi [Sun, 5 Jan 2020 05:54:26 +0000 (07:54 +0200)]
rdpgfx: client: fix leak when using rdpgfx_client_context_new API

4 years agoserver: fix leak in WTSCloseServer
Kobi Mizrachi [Thu, 2 Jan 2020 13:48:13 +0000 (15:48 +0200)]
server: fix leak in WTSCloseServer

make sure every pending message that wouldn't be handled because the
server is closing, will be free()ed as expected.

4 years agofix memory leaks in disp server and gfx.c
Kobi Mizrachi [Tue, 31 Dec 2019 13:47:03 +0000 (15:47 +0200)]
fix memory leaks in disp server and gfx.c

4 years agoserver: proxy: fix leak in pf_context_copy_settings
Kobi Mizrachi [Thu, 2 Jan 2020 13:19:08 +0000 (15:19 +0200)]
server: proxy: fix leak in pf_context_copy_settings

4 years agowinpr: don't close file descriptor if we set it again to the same file
David Fort [Fri, 10 Jan 2020 16:11:50 +0000 (17:11 +0100)]
winpr: don't close file descriptor if we set it again to the same file

4 years agoMerge pull request #5752 from akallabeth/manpage_no_err
Martin Fleisz [Mon, 13 Jan 2020 11:26:31 +0000 (12:26 +0100)]
Merge pull request #5752 from akallabeth/manpage_no_err

Allow to generate docbook with 0 length.

4 years agoIgnore dynamic virtual channel errors
Armin Novak [Mon, 13 Jan 2020 11:23:30 +0000 (12:23 +0100)]
Ignore dynamic virtual channel errors

If a dynamic virtual channel can not process a message, ignore it.

4 years agoMerge pull request #5827 from akallabeth/nightly_fix
Martin Fleisz [Fri, 10 Jan 2020 11:00:24 +0000 (12:00 +0100)]
Merge pull request #5827 from akallabeth/nightly_fix

Extend LIBUSB_API_VERSION check

4 years agoExtend LIBUSB_API_VERSION check
Armin Novak [Fri, 10 Jan 2020 09:52:23 +0000 (10:52 +0100)]
Extend LIBUSB_API_VERSION check

The define exists since 1.0.13, so to compensate for older also
check if the variable is defined.

4 years agoMerge pull request #5824 from akallabeth/ntstatus_helper
Martin Fleisz [Fri, 10 Jan 2020 09:42:56 +0000 (10:42 +0100)]
Merge pull request #5824 from akallabeth/ntstatus_helper

Added NtStatus2Tag function to stringify NTSTATUS

4 years agoAdded NtStatus2Tag function to stringify NTSTATUS
Armin Novak [Thu, 9 Jan 2020 15:14:44 +0000 (16:14 +0100)]
Added NtStatus2Tag function to stringify NTSTATUS

For higher level applications it is easier to translate known
strings instead of error codes. this function allows
to retrieve known string identifiers that can be translated.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoMerge pull request #5823 from akallabeth/set_transport_err
Martin Fleisz [Thu, 9 Jan 2020 13:53:07 +0000 (14:53 +0100)]
Merge pull request #5823 from akallabeth/set_transport_err

Set transport error on close

4 years agoSetting optional last error on transport close
Armin Novak [Thu, 9 Jan 2020 09:35:49 +0000 (10:35 +0100)]
Setting optional last error on transport close

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoAdded macro freerdp_set_last_error_if_not
Armin Novak [Thu, 9 Jan 2020 09:34:27 +0000 (10:34 +0100)]
Added macro freerdp_set_last_error_if_not

This macro replaces the multiple instances where the current
error state is checked before setting an optional error state.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoMerge pull request #5821 from akallabeth/smartcard_log_err
Martin Fleisz [Thu, 9 Jan 2020 09:12:14 +0000 (10:12 +0100)]
Merge pull request #5821 from akallabeth/smartcard_log_err

Added debug log messages for SCARD_E_NO_SERVICE

4 years agoMerge pull request #5819 from akallabeth/last_error_informative
Martin Fleisz [Thu, 9 Jan 2020 07:47:09 +0000 (08:47 +0100)]
Merge pull request #5819 from akallabeth/last_error_informative

make Last error more informative

4 years agoMerge pull request #5818 from akallabeth/winmm_refactor
Martin Fleisz [Thu, 9 Jan 2020 07:26:08 +0000 (08:26 +0100)]
Merge pull request #5818 from akallabeth/winmm_refactor

RDPSND device API refinements

4 years agoAdded debug log messages for SCARD_E_NO_SERVICE
Armin Novak [Thu, 9 Jan 2020 07:20:42 +0000 (08:20 +0100)]
Added debug log messages for SCARD_E_NO_SERVICE

Log where and what caused SCARD_E_NO_SERVICE return in smartcard
wrapper

4 years agoFixed waveOutClose, call waveOutReset first.
Armin Novak [Wed, 8 Jan 2020 18:23:47 +0000 (19:23 +0100)]
Fixed waveOutClose, call waveOutReset first.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoAdded an error message in rdp_set_error_info
Armin Novak [Wed, 8 Jan 2020 16:51:00 +0000 (17:51 +0100)]
Added an error message in rdp_set_error_info

If the provided arguments are not properly set up write
an error message explaining what is wrong.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoproxy: Add received response in case of an error
Martin Fleisz [Tue, 7 Jan 2020 12:30:28 +0000 (13:30 +0100)]
proxy: Add received response in case of an error

4 years agoCONNECT_TRANSPORT_FAILED in transport_check_fds
Armin Novak [Wed, 8 Jan 2020 16:40:39 +0000 (17:40 +0100)]
CONNECT_TRANSPORT_FAILED in transport_check_fds

If TRANSPORT_LAYER_CLOSED was detected in transport_check_fds
check if there is already a connection error set, otherwise
set FREERDP_ERROR_CONNECT_TRANSPORT_FAILED to allow proper
reconnect or abort handling.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoAdded freerdp_set_last_error_ex function
Armin Novak [Wed, 8 Jan 2020 16:39:25 +0000 (17:39 +0100)]
Added freerdp_set_last_error_ex function

This new function allows better logging of call locations
for errors. Additionally added freerdp_set_error_log macro
to record function, file and line the error was set.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoFallback definition for LIBUSB_HOTPLUG_NO_FLAGS
Armin Novak [Wed, 8 Jan 2020 14:42:20 +0000 (15:42 +0100)]
Fallback definition for LIBUSB_HOTPLUG_NO_FLAGS

The flag was first introduced with libusb 1.0.16, so
define it if we are using an older version.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoRDPSND device API refinements
Armin Novak [Wed, 8 Jan 2020 10:27:49 +0000 (11:27 +0100)]
RDPSND device API refinements

* Added default format callback for rdpsnd backend to allow
  different default input formats (different samplerates, ...)
* Made WINMM backend in flight packet limitation a compile time
  option
* Fixed missing buffer copy in winmm backend

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agochannels: Fix memory leak and make log messages more precise
Martin Fleisz [Wed, 8 Jan 2020 12:31:20 +0000 (13:31 +0100)]
channels: Fix memory leak and make log messages more precise

4 years agoserver: proxy: add a unique id to each session and improve logs
Kobi Mizrachi [Thu, 26 Dec 2019 08:25:13 +0000 (10:25 +0200)]
server: proxy: add a unique id to each session and improve logs

4 years agoserver: proxy: move peer initialization to seperate function
Kobi Mizrachi [Thu, 26 Dec 2019 08:24:20 +0000 (10:24 +0200)]
server: proxy: move peer initialization to seperate function

4 years agowinpr: thread: fix wrong log level in ThreadCloseHandle
Kobi Mizrachi [Thu, 26 Dec 2019 08:22:41 +0000 (10:22 +0200)]
winpr: thread: fix wrong log level in ThreadCloseHandle

4 years agowf_rail.c: fix crash if CreateWindowEx failed (#5812)
KunMing Xie [Wed, 8 Jan 2020 08:02:49 +0000 (16:02 +0800)]
wf_rail.c: fix crash if CreateWindowEx failed (#5812)

* wf_rail.c: fix crash if CreateWindowEx failed

Co-authored-by: tensorflow123 <kunming.xie@hotmail.com>
4 years agoMerge pull request #5802 from dragonuaix/master
David Fort [Wed, 8 Jan 2020 07:08:42 +0000 (08:08 +0100)]
Merge pull request #5802 from dragonuaix/master

Update comm_serial_sys.c

4 years agoserver: proxy: make fallback to tls configurable
Kobi Mizrachi [Sun, 29 Dec 2019 08:55:40 +0000 (10:55 +0200)]
server: proxy: make fallback to tls configurable

4 years agoMerge pull request #5813 from akallabeth/win_drive_name_fix
Martin Fleisz [Tue, 7 Jan 2020 12:32:08 +0000 (13:32 +0100)]
Merge pull request #5813 from akallabeth/win_drive_name_fix

Fix #5805: windows hotplug drive detection.

4 years agoFixed duplicate definition in TestGetComputerName
Armin Novak [Tue, 7 Jan 2020 09:51:01 +0000 (10:51 +0100)]
Fixed duplicate definition in TestGetComputerName

4 years agoFixed freerdp_settings_new error cleanup.
Armin Novak [Tue, 7 Jan 2020 09:49:17 +0000 (10:49 +0100)]
Fixed freerdp_settings_new error cleanup.

4 years agoFix #5805: windows hotplug drive detection.
Armin Novak [Tue, 7 Jan 2020 10:33:14 +0000 (11:33 +0100)]
Fix #5805: windows hotplug drive detection.

4 years agoMerge pull request #5745 from akallabeth/urbdrc_rewrite
David Fort [Mon, 6 Jan 2020 08:23:45 +0000 (09:23 +0100)]
Merge pull request #5745 from akallabeth/urbdrc_rewrite

Urbdrc rewrite

4 years agoMerge pull request #5811 from mfleisz/mac_rdpsnd_workaround
Martin Fleisz [Fri, 3 Jan 2020 13:47:10 +0000 (14:47 +0100)]
Merge pull request #5811 from mfleisz/mac_rdpsnd_workaround

rdpsnd: Do not set output device on Catalina or later (#5747)

4 years agordpsnd: Do not set output device on Catalina or later (#5747)
Martin Fleisz [Fri, 3 Jan 2020 12:31:15 +0000 (13:31 +0100)]
rdpsnd: Do not set output device on Catalina or later (#5747)

4 years agoMerge pull request #5806 from mfleisz/fix_no_audio_device_handling
Martin Fleisz [Mon, 30 Dec 2019 13:47:45 +0000 (14:47 +0100)]
Merge pull request #5806 from mfleisz/fix_no_audio_device_handling

Fix audio channel init when no audio devices are present

4 years agoFix audio channel init when no audio devices are present
Martin Fleisz [Mon, 30 Dec 2019 11:59:14 +0000 (12:59 +0100)]
Fix audio channel init when no audio devices are present

This PR fixes the handling of using rdpsnd or audin when the system has
no audio device available.
In case of a missing playback device the
Windows backend now correctly reports an error and the fake rdpsnd
backend is loaded.
If audin is enabled and no microphone is present the channel
initialization will report an error but it won't cut the connection (as
it did before).

4 years agoMerge pull request #5803 from nfedera/nf_add_transport_layer_closed_check
Norbert Federa [Fri, 27 Dec 2019 13:41:24 +0000 (14:41 +0100)]
Merge pull request #5803 from nfedera/nf_add_transport_layer_closed_check

transport: check if layer was set to closed

4 years agotransport: check if layer was set to closed
Norbert Federa [Fri, 27 Dec 2019 10:58:27 +0000 (11:58 +0100)]
transport: check if layer was set to closed

There are several code paths and error conditions where
transport->layer is correctly set to TRANSPORT_LAYER_CLOSED but
the required code for checking that state was missing.

E.g. write errors in the rdg code resulted in marking the transport
layer as closed but the transport code would indefinitely continue
to read from the receiving socket.

4 years agoUpdate comm_serial_sys.c
dragonuaix [Thu, 26 Dec 2019 14:48:00 +0000 (16:48 +0200)]
Update comm_serial_sys.c

4 years agoMerge pull request #5795 from akallabeth/swscale_find_fix
David Fort [Fri, 20 Dec 2019 07:00:03 +0000 (08:00 +0100)]
Merge pull request #5795 from akallabeth/swscale_find_fix

Fixed SWScale cmake find script.

4 years agoSupport for RDP protocol version 10.7
Armin Novak [Thu, 19 Dec 2019 08:50:29 +0000 (09:50 +0100)]
Support for RDP protocol version 10.7

* Adds support for 10.7 protocol version
* Uses it as client default

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoAdded RDP 10.7 large pointer support
Armin Novak [Thu, 19 Dec 2019 08:35:53 +0000 (09:35 +0100)]
Added RDP 10.7 large pointer support

* Implements [MS-RDPBCGR] version 51 large pointer support.
* Logs unknown large pointer capability flags as warning.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoFixed SWScale cmake find script.
Armin Novak [Thu, 19 Dec 2019 07:43:33 +0000 (08:43 +0100)]
Fixed SWScale cmake find script.

* Wrong name for pkg-config (thanks @floppym for pointing that out)
* Formatting issues, there were spaces in path and variables that
  should not have been there.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoMerge pull request #5790 from akallabeth/rdpei_no_thread
David Fort [Wed, 18 Dec 2019 21:09:52 +0000 (22:09 +0100)]
Merge pull request #5790 from akallabeth/rdpei_no_thread

Removed touch input channel thread

4 years agoMerge pull request #5793 from akallabeth/smartcard_cherry_pick
Martin Fleisz [Wed, 18 Dec 2019 14:11:35 +0000 (15:11 +0100)]
Merge pull request #5793 from akallabeth/smartcard_cherry_pick

Tell the server that smartcard is redirected

4 years agoIncreased client build number
Armin Novak [Wed, 18 Dec 2019 11:20:17 +0000 (12:20 +0100)]
Increased client build number

According to [MS-RDPESC] 1.7 Versioning and Capability Negotiation
the client build is used to determine feature / behaviour.
Announce something more modern than Windows XP SP3.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoTell the server that smartcard is redirected
Ondrej Holy [Tue, 26 Nov 2019 15:57:21 +0000 (16:57 +0100)]
Tell the server that smartcard is redirected

There were server-side changes on Windows 2012 and newer regarding
smartcards, namely the Smart Card Service start and stop behavior:
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/hh849637(v%3Dws.11)#smart-card-service-start-and-stop-behavior

Some people see "No valid certificates were found on this smart card",
when the Smart Card Service is not running and has to use various
workarounds to start the service manually, e.g.:
http://blogs.danosaab.com/2016/12/using-smart-card-with-remote-desktop-connection-on-mac-osx/
http://www.edugeek.net/forums/windows-server-2012/161255-smart-card-service-issue-windows-server-2012r2-terminal-services-hyperv.html

I've been looking at RDP specifications and found that
REDIRECTED_SMARTCARD should be probably specified in TS_UD_CS_CLUSTER
block flags when the smartcard is redirected, but it is not currently:
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-rdpbcgr/d68c629f-36a1-4a40-afd0-8b3e56d29aac

This might be the reason, why the Smart Card Service is not
autostarted for some people. Let's try to set this flag and see what
will happens...

https://github.com/FreeRDP/FreeRDP/issues/4743
Signed-off-by: Armin Novak <armin.novak@thincast.com>
4 years agoRemoved touch input channel thread
Armin Novak [Wed, 18 Dec 2019 10:31:40 +0000 (11:31 +0100)]
Removed touch input channel thread

The touch input channel only sends small events (touch points et al)
and therefore does not require a heavy processing thread.

4 years agoFixed stream handling and missing includes.
Armin Novak [Tue, 17 Dec 2019 14:51:24 +0000 (15:51 +0100)]
Fixed stream handling and missing includes.

4 years agoserver: proxy: proxy keyboard leds and imei
Kobi Mizrachi [Tue, 17 Dec 2019 14:16:52 +0000 (16:16 +0200)]
server: proxy: proxy keyboard leds and imei

4 years agoMerge pull request #5768 from akallabeth/timezone_update
Martin Fleisz [Tue, 17 Dec 2019 13:11:40 +0000 (14:11 +0100)]
Merge pull request #5768 from akallabeth/timezone_update

Timezone update

4 years agoupdate: add proper stream checks
Kobi Mizrachi [Tue, 17 Dec 2019 09:16:54 +0000 (11:16 +0200)]
update: add proper stream checks