platform/upstream/freerdp.git
4 years agocommon: Fix nullptr checking in settings_set_string function
Martin Fleisz [Tue, 3 Sep 2019 09:43:18 +0000 (11:43 +0200)]
common: Fix nullptr checking in settings_set_string function

4 years agoMerge pull request #5563 from akallabeth/scanbuild_fixes
Martin Fleisz [Tue, 3 Sep 2019 08:57:24 +0000 (10:57 +0200)]
Merge pull request #5563 from akallabeth/scanbuild_fixes

Scanbuild fixes

4 years agoserver: proxy: only wait for server dynvc when needed
kubistika [Wed, 28 Aug 2019 15:25:23 +0000 (18:25 +0300)]
server: proxy: only wait for server dynvc when needed

4 years agoFixed missing NULL check.
Armin Novak [Tue, 3 Sep 2019 06:56:59 +0000 (08:56 +0200)]
Fixed missing NULL check.

4 years agoFixed memory leak in error branch
Armin Novak [Tue, 3 Sep 2019 06:56:36 +0000 (08:56 +0200)]
Fixed memory leak in error branch

4 years agoConverted BitStream_* defines to inline functions
Armin Novak [Tue, 3 Sep 2019 06:55:59 +0000 (08:55 +0200)]
Converted BitStream_* defines to inline functions

4 years agoFixed uninitialized variable warning.
Armin Novak [Tue, 3 Sep 2019 06:55:29 +0000 (08:55 +0200)]
Fixed uninitialized variable warning.

4 years agoMerge pull request #5562 from akallabeth/rail_langbar_check
Martin Fleisz [Tue, 3 Sep 2019 06:21:09 +0000 (08:21 +0200)]
Merge pull request #5562 from akallabeth/rail_langbar_check

Fix issue reported in #5560: language bar might not be supported by server

4 years agoFix issue reported in #5560: language bar might not be supported by server.
Armin Novak [Tue, 3 Sep 2019 06:07:45 +0000 (08:07 +0200)]
Fix issue reported in #5560: language bar might not be supported by server.

4 years agoMerge pull request #5561 from akallabeth/winmm_play_fix
Martin Fleisz [Mon, 2 Sep 2019 13:23:33 +0000 (15:23 +0200)]
Merge pull request #5561 from akallabeth/winmm_play_fix

Winmm play fix

4 years agoAdded deprecation macro.
Armin Novak [Mon, 2 Sep 2019 13:58:16 +0000 (15:58 +0200)]
Added deprecation macro.

4 years agoUse GetTickCount64 instead of GetTickCountPrecise.
Armin Novak [Mon, 2 Sep 2019 13:44:52 +0000 (15:44 +0200)]
Use GetTickCount64 instead of GetTickCountPrecise.

4 years agoDo not use named events, they are global!
Armin Novak [Mon, 2 Sep 2019 13:28:31 +0000 (15:28 +0200)]
Do not use named events, they are global!

4 years agoUse CALLBACK_EVENT for waveOutOpen to play synchronously.
Armin Novak [Mon, 2 Sep 2019 13:00:09 +0000 (15:00 +0200)]
Use CALLBACK_EVENT for waveOutOpen to play synchronously.

4 years agoMerge pull request #5547 from akallabeth/color_convert_fix
Martin Fleisz [Mon, 2 Sep 2019 12:34:59 +0000 (14:34 +0200)]
Merge pull request #5547 from akallabeth/color_convert_fix

Fix #5543: 16 bit color to 32bit color conversion.

4 years agoMerge pull request #5558 from akallabeth/drive_hotplug_name
Martin Fleisz [Fri, 30 Aug 2019 12:06:18 +0000 (14:06 +0200)]
Merge pull request #5558 from akallabeth/drive_hotplug_name

Allow /drive:<name>,* syntax.:wq

4 years agoAllow /drive:<name>,* syntax.:wq
Armin Novak [Fri, 30 Aug 2019 11:50:33 +0000 (13:50 +0200)]
Allow /drive:<name>,* syntax.:wq

4 years agoMerge pull request #5541 from akallabeth/rdp_file_full_drivestoredirect_parsing
Martin Fleisz [Fri, 30 Aug 2019 09:29:06 +0000 (11:29 +0200)]
Merge pull request #5541 from akallabeth/rdp_file_full_drivestoredirect_parsing

Rdp file full drivestoredirect parsing

4 years agoMerge pull request #5555 from akallabeth/audin_load_fix
Martin Fleisz [Fri, 30 Aug 2019 06:33:40 +0000 (08:33 +0200)]
Merge pull request #5555 from akallabeth/audin_load_fix

Fix #5554: audin is a dynamic channel

4 years agoFix #5554: audin is a dynamic channel
Armin Novak [Thu, 29 Aug 2019 16:46:49 +0000 (18:46 +0200)]
Fix #5554: audin is a dynamic channel

4 years agoSanitize drive redirection names.
Armin Novak [Fri, 23 Aug 2019 10:44:44 +0000 (12:44 +0200)]
Sanitize drive redirection names.

4 years agoserver: proxy: rdpsnd support
kubistika [Tue, 13 Aug 2019 10:53:36 +0000 (13:53 +0300)]
server: proxy: rdpsnd support

4 years agordpsnd: subsystems: Add proxy subsystem
kubistika [Tue, 13 Aug 2019 08:27:46 +0000 (11:27 +0300)]
rdpsnd: subsystems: Add proxy subsystem

4 years agordpsnd: client: add rdpContext getter
kubistika [Mon, 26 Aug 2019 13:53:00 +0000 (16:53 +0300)]
rdpsnd: client: add rdpContext getter

4 years agoserver: proxy: fix nla fallback (introuduced in #5522)
kubistika [Wed, 28 Aug 2019 14:50:28 +0000 (17:50 +0300)]
server: proxy: fix nla fallback (introuduced in #5522)

4 years agoMerge pull request #5549 from akallabeth/prompt_for_credentials_fix
David Fort [Wed, 28 Aug 2019 13:10:32 +0000 (15:10 +0200)]
Merge pull request #5549 from akallabeth/prompt_for_credentials_fix

Read and write RDP file 'prompt for credentials'

4 years agoRead and write RDP file 'prompt for credentials'
Armin Novak [Tue, 27 Aug 2019 10:24:28 +0000 (12:24 +0200)]
Read and write RDP file 'prompt for credentials'

4 years agoAdded color conversion correctness check to interleaved codec test.
Armin Novak [Mon, 26 Aug 2019 08:54:43 +0000 (10:54 +0200)]
Added color conversion correctness check to interleaved codec test.

4 years agoFix #5543: 16 bit color to 32bit color conversion.
Armin Novak [Mon, 26 Aug 2019 07:38:00 +0000 (09:38 +0200)]
Fix #5543: 16 bit color to 32bit color conversion.

When converting 16 bit color (5 or 6 bit per color) to 32bit
(8 bit per color) add a value dependent correction factor so that
value 0 -> 0 and 31 -> 255.

4 years agokeyboard: don't catch Ctrl+Alt-C if encomsp is not activated
David Fort [Thu, 22 Aug 2019 20:17:35 +0000 (22:17 +0200)]
keyboard: don't catch Ctrl+Alt-C if encomsp is not activated

4 years agoUnified DriveStoreRedirect parsing.
Armin Novak [Fri, 23 Aug 2019 09:47:31 +0000 (11:47 +0200)]
Unified DriveStoreRedirect parsing.

4 years agoserver: proxy: disp: fix copyright
kubistika [Mon, 19 Aug 2019 13:07:12 +0000 (16:07 +0300)]
server: proxy: disp: fix copyright

4 years agoserver: proxy: use new hooks api
kubistika [Mon, 19 Aug 2019 13:06:42 +0000 (16:06 +0300)]
server: proxy: use new hooks api

4 years agoserver: proxy: improve modules api
kubistika [Mon, 19 Aug 2019 13:05:59 +0000 (16:05 +0300)]
server: proxy: improve modules api

4 years agoAdded support for drivestoreredirect:s:<path>(<path>) syntax
Armin Novak [Fri, 23 Aug 2019 09:18:32 +0000 (11:18 +0200)]
Added support for drivestoreredirect:s:<path>(<path>) syntax

4 years agoAllow DynamicDrives as special option for /drive
Armin Novak [Fri, 23 Aug 2019 08:13:59 +0000 (10:13 +0200)]
Allow DynamicDrives as special option for /drive

4 years agoAdd dynamicDrives hotplug option.
Armin Novak [Fri, 23 Aug 2019 08:08:59 +0000 (10:08 +0200)]
Add dynamicDrives hotplug option.

4 years agoAdded drivestoredirect option value parser
Armin Novak [Fri, 23 Aug 2019 07:57:26 +0000 (09:57 +0200)]
Added drivestoredirect option value parser

4 years agoMerge pull request #5540 from akallabeth/auto_codec_support
Martin Fleisz [Thu, 22 Aug 2019 15:01:14 +0000 (17:01 +0200)]
Merge pull request #5540 from akallabeth/auto_codec_support

Auto codec support

4 years agoadded BandwidthAutoDetect parsing.
Armin Novak [Thu, 22 Aug 2019 14:00:46 +0000 (16:00 +0200)]
added BandwidthAutoDetect parsing.

4 years agoAutomatically activate GFX and RFX codec support on autodetect.
Armin Novak [Thu, 22 Aug 2019 13:56:10 +0000 (15:56 +0200)]
Automatically activate GFX and RFX codec support on autodetect.

4 years agoAdded winpr version macro (same as freerdp version)
Armin Novak [Thu, 22 Aug 2019 13:54:18 +0000 (15:54 +0200)]
Added winpr version macro (same as freerdp version)

4 years agoMerge pull request #5539 from akallabeth/ssl_warning_fix
Martin Fleisz [Thu, 22 Aug 2019 09:13:30 +0000 (11:13 +0200)]
Merge pull request #5539 from akallabeth/ssl_warning_fix

Fixed type of sk_* macro.

4 years agoFixed type of sk_* macro.
Armin Novak [Thu, 22 Aug 2019 08:40:25 +0000 (10:40 +0200)]
Fixed type of sk_* macro.

4 years agoMerge pull request #5538 from akallabeth/mac_sound_latency
Martin Fleisz [Thu, 22 Aug 2019 08:32:39 +0000 (10:32 +0200)]
Merge pull request #5538 from akallabeth/mac_sound_latency

Added rdpsnd latency calculation.

4 years agoAdded rdpsnd latency calculation.
Armin Novak [Thu, 22 Aug 2019 07:07:33 +0000 (09:07 +0200)]
Added rdpsnd latency calculation.

4 years agoMerge pull request #5537 from akallabeth/win_plugin_path
Martin Fleisz [Wed, 21 Aug 2019 11:44:49 +0000 (13:44 +0200)]
Merge pull request #5537 from akallabeth/win_plugin_path

Setting plugin paths for windows install.

4 years agoSetting plugin paths for windows install.
Armin Novak [Wed, 21 Aug 2019 10:21:12 +0000 (12:21 +0200)]
Setting plugin paths for windows install.

4 years agoMerge pull request #5523 from akallabeth/rdp_parser_null_checks
Martin Fleisz [Tue, 20 Aug 2019 14:50:55 +0000 (16:50 +0200)]
Merge pull request #5523 from akallabeth/rdp_parser_null_checks

Rdp parser null checks

4 years agocore: Fix handling of PromptForCredentials setting
Martin Fleisz [Tue, 20 Aug 2019 12:52:39 +0000 (14:52 +0200)]
core: Fix handling of PromptForCredentials setting

The prompt for credentials setting was incorrectly used in FreeRDP. If
this setting is set to 1 in a rdp file the client should prompt for
credentials even if it has credentials stored for this connection. If
the setting is set to 0 the client should either use the stored
credentials (if present) or ask for username/password otherwise.
This PR changes the old handling (if PromptForCredentials was set to 0
no credential prompting was done) to the desired behavior.

4 years agoclient: proxy: allow passing SOCKS5 proxies as env. vars
Louis Sautier [Mon, 12 Aug 2019 14:57:51 +0000 (16:57 +0200)]
client: proxy: allow passing SOCKS5 proxies as env. vars

4 years agoclient/common: Remove incorrect prompt for creds parsing (#5528)
Martin Fleisz [Tue, 20 Aug 2019 08:07:10 +0000 (10:07 +0200)]
client/common: Remove incorrect prompt for creds parsing (#5528)

"prompt for credentials on client" was incorrectly merged together with
"prompt for credentials" into a single setting. However the first option
determines if the client should prompt for credentials if the remote
server does not support server authentication. "prompt for credentials"
on the other hand determines if the client should use any previously
stored credentials or if it should always prompt for them.

4 years agoMerge pull request #5508 from akallabeth/french_kbd_fix
David Fort [Mon, 19 Aug 2019 21:38:25 +0000 (23:38 +0200)]
Merge pull request #5508 from akallabeth/french_kbd_fix

Fixed #5496: Canadian keyboard mapping issue reported by @renaudn1981

4 years agoserver: proxy: sync cliprdr opening
kubistika [Mon, 19 Aug 2019 13:27:58 +0000 (16:27 +0300)]
server: proxy: sync cliprdr opening

4 years ago(FreeBSD) Build fixes for urbdrc
Kyle Evans [Mon, 19 Aug 2019 14:25:43 +0000 (09:25 -0500)]
(FreeBSD) Build fixes for urbdrc

4 years agoserver: proxy: load proxy clipboard config
kubistika [Mon, 12 Aug 2019 12:11:09 +0000 (15:11 +0300)]
server: proxy: load proxy clipboard config

4 years agoProper parsing of clipboard capability sets.
Armin Novak [Mon, 12 Aug 2019 11:14:46 +0000 (13:14 +0200)]
Proper parsing of clipboard capability sets.

4 years agoClipboard server callback arguments const
Armin Novak [Mon, 12 Aug 2019 07:22:25 +0000 (09:22 +0200)]
Clipboard server callback arguments const

4 years agoserver: proxy: cliprdr support
kubistika [Sun, 4 Aug 2019 14:41:43 +0000 (17:41 +0300)]
server: proxy: cliprdr support

4 years agochannels: cliprdr: server: add autoInitializationSequence
kubistika [Sun, 4 Aug 2019 14:37:56 +0000 (17:37 +0300)]
channels: cliprdr: server: add autoInitializationSequence

4 years agochannels: cliprdr: server: call ClientCapabilities callback
kubistika [Sun, 4 Aug 2019 14:35:41 +0000 (17:35 +0300)]
channels: cliprdr: server: call ClientCapabilities callback

4 years agochannels: cliprdr: add lastRequestedFormatId
kubistika [Sun, 4 Aug 2019 14:32:12 +0000 (17:32 +0300)]
channels: cliprdr: add lastRequestedFormatId

This one is for proxy use. The proxy must know what format is requested by the other side
of the connection, for determining if the message should be passed
or ignore (for example, if we want to allow only text, the proxy must
verify that the requested format received in Format Data Request PDU is
a text format.

4 years agoserver: proxy: pf_context.c: Fix nla crash
kubistika [Tue, 13 Aug 2019 12:06:45 +0000 (15:06 +0300)]
server: proxy: pf_context.c: Fix nla crash

Because the proxy uses freerdp_settings_copy to do re-negotiation after
first connection to remote server, all redirection information
(RedirectionPassword, RedirectionDomain, etc.) pointers were duplicated
(to both client and server settings structs). Then, at disconnection, a
double-free occured.

4 years agolibfreerdp: core: copy redirection info in freerdp_settings_copy
kubistika [Wed, 14 Aug 2019 10:34:12 +0000 (13:34 +0300)]
libfreerdp: core: copy redirection info in freerdp_settings_copy

4 years agoMove FoundCairo module include where is referenced
Antenore Gatta [Wed, 14 Aug 2019 14:39:27 +0000 (16:39 +0200)]
Move FoundCairo module include where is referenced

4 years agoBetter libcairo dependencies handling though cmake
Antenore Gatta [Wed, 14 Aug 2019 13:58:08 +0000 (15:58 +0200)]
Better libcairo dependencies handling though cmake

4 years agoMerge pull request #5524 from akallabeth/winpr_disable_tools
Martin Fleisz [Wed, 14 Aug 2019 13:59:27 +0000 (15:59 +0200)]
Merge pull request #5524 from akallabeth/winpr_disable_tools

Allow build without WinPR tools

4 years agoAllow build without WinPR tools
Armin Novak [Wed, 14 Aug 2019 13:10:00 +0000 (15:10 +0200)]
Allow build without WinPR tools

4 years agoMerge pull request #5510 from akallabeth/mac_realtime_sound
Martin Fleisz [Wed, 14 Aug 2019 10:54:54 +0000 (12:54 +0200)]
Merge pull request #5510 from akallabeth/mac_realtime_sound

Mac realtime sound

4 years agoMerge pull request #5518 from akallabeth/redirect_error_propagation_fix
Martin Fleisz [Wed, 14 Aug 2019 10:54:10 +0000 (12:54 +0200)]
Merge pull request #5518 from akallabeth/redirect_error_propagation_fix

Return a proper error if redirection fails.

4 years agoMerge pull request #5517 from akallabeth/winmm_latency
Martin Fleisz [Wed, 14 Aug 2019 10:48:21 +0000 (12:48 +0200)]
Merge pull request #5517 from akallabeth/winmm_latency

Added proper latency estimation for winmm sound backend.

4 years agoFixed NULL buffer access and alignment warnings.
Armin Novak [Wed, 14 Aug 2019 07:46:47 +0000 (09:46 +0200)]
Fixed NULL buffer access and alignment warnings.

4 years agoserver: proxy: client: before loading client addins, wait for serve's dynvc to be...
kubistika [Tue, 6 Aug 2019 08:49:04 +0000 (11:49 +0300)]
server: proxy: client: before loading client addins, wait for serve's dynvc to be in ready state

4 years agoserver: proxy: client: set glyph support level to NONE
kubistika [Tue, 6 Aug 2019 08:48:26 +0000 (11:48 +0300)]
server: proxy: client: set glyph support level to NONE

4 years agoFix server compile against _WIN32_WINNT=0x601
Armin Novak [Tue, 13 Aug 2019 08:11:33 +0000 (10:11 +0200)]
Fix server compile against _WIN32_WINNT=0x601

4 years agoUse GetSystemTimeAsFileTime to emulate GetTickCount64
Armin Novak [Tue, 13 Aug 2019 07:52:42 +0000 (09:52 +0200)]
Use GetSystemTimeAsFileTime to emulate GetTickCount64

4 years agoAdded proper latency estimation for winmm sound backend.
Armin Novak [Mon, 12 Aug 2019 09:12:21 +0000 (11:12 +0200)]
Added proper latency estimation for winmm sound backend.

4 years agoDo not try to free a colormap that FreeRDP did not create.
rbarnett [Mon, 12 Aug 2019 15:13:14 +0000 (10:13 -0500)]
Do not try to free a colormap that FreeRDP did not create.

4 years agoReturn a proper error if redirection fails.
Armin Novak [Mon, 12 Aug 2019 10:33:06 +0000 (12:33 +0200)]
Return a proper error if redirection fails.

4 years agoConvert input PCM to float format.
Armin Novak [Fri, 2 Aug 2019 12:18:12 +0000 (14:18 +0200)]
Convert input PCM to float format.

4 years agoMerge pull request #5512 from kubistika/proxy/config-loader-refactor
David Fort [Tue, 6 Aug 2019 10:34:05 +0000 (12:34 +0200)]
Merge pull request #5512 from kubistika/proxy/config-loader-refactor

Proxy/config loader refactor

4 years agoMerge pull request #5511 from kubistika/xf-unused-var
David Fort [Mon, 5 Aug 2019 20:19:58 +0000 (22:19 +0200)]
Merge pull request #5511 from kubistika/xf-unused-var

client: xf_channels: remove unused settings variable

4 years agoserver: proxy: print configuration on startup
kubistika [Sun, 4 Aug 2019 07:08:43 +0000 (10:08 +0300)]
server: proxy: print configuration on startup

4 years agoserver: proxy: channels: only open allowed channels
kubistika [Sat, 3 Aug 2019 13:46:20 +0000 (16:46 +0300)]
server: proxy: channels: only open allowed channels

4 years agoserver: proxy: filters: demo: log instead of dropping the connection
kubistika [Sat, 3 Aug 2019 13:45:24 +0000 (16:45 +0300)]
server: proxy: filters: demo: log instead of dropping the connection

4 years agoserver: proxy: filters: make sure filter_init is exported in filters compilation
kubistika [Sat, 3 Aug 2019 13:44:39 +0000 (16:44 +0300)]
server: proxy: filters: make sure filter_init is exported in filters compilation

4 years agoserver: proxy: refactor configuration loader
kubistika [Sat, 3 Aug 2019 13:46:59 +0000 (16:46 +0300)]
server: proxy: refactor configuration loader

4 years agoclient: xf_channels: remove unused settings variable
kubistika [Fri, 2 Aug 2019 17:10:56 +0000 (20:10 +0300)]
client: xf_channels: remove unused settings variable

4 years agoMostly working AVAudio backend.
Armin Novak [Fri, 2 Aug 2019 09:31:37 +0000 (11:31 +0200)]
Mostly working AVAudio backend.

4 years agoserver: proxy: ensure client termination
kubistika [Thu, 1 Aug 2019 14:01:11 +0000 (17:01 +0300)]
server: proxy: ensure client termination

4 years agoserver: proxy: sync server and client channels
kubistika [Thu, 1 Aug 2019 13:55:50 +0000 (16:55 +0300)]
server: proxy: sync server and client channels

when disconnections/redirections occured, sometimes server/client
channels were not synced, meaning that for example the gfx server
received a message, then tried to use gfx client that was already freed.

4 years agoFixed #5496: Canadian keyboard mapping issue reported by @renaudn1981
Armin Novak [Thu, 1 Aug 2019 09:09:57 +0000 (11:09 +0200)]
Fixed #5496: Canadian keyboard mapping issue reported by @renaudn1981

4 years agoMerge pull request #5506 from akallabeth/scale_desktop_and_device
Martin Fleisz [Tue, 30 Jul 2019 10:53:13 +0000 (12:53 +0200)]
Merge pull request #5506 from akallabeth/scale_desktop_and_device

With /scale:<value> scale desktop and device.

4 years agoMerge pull request #5505 from akallabeth/rdp_sound
Martin Fleisz [Tue, 30 Jul 2019 10:53:02 +0000 (12:53 +0200)]
Merge pull request #5505 from akallabeth/rdp_sound

Rdp sound

4 years agoFixed loading of microphone channel
Armin Novak [Tue, 30 Jul 2019 10:30:15 +0000 (12:30 +0200)]
Fixed loading of microphone channel

Ensure microphone channel is loaded if settings require it in freerdp_client_load_addins

4 years agoWith /scale:<value> scale desktop and device.
Armin Novak [Tue, 30 Jul 2019 10:03:23 +0000 (12:03 +0200)]
With /scale:<value> scale desktop and device.

4 years agoMerge pull request #5487 from akallabeth/rdp_parser_cleanup
Martin Fleisz [Tue, 30 Jul 2019 09:58:39 +0000 (11:58 +0200)]
Merge pull request #5487 from akallabeth/rdp_parser_cleanup

Fixed a bunch of conversion warnings.

4 years agoFixed loading of sound channel
Armin Novak [Tue, 30 Jul 2019 07:39:45 +0000 (09:39 +0200)]
Fixed loading of sound channel

Ensure sound channel is loaded if settings require it in freerdp_client_load_addins

4 years agoFixed a bunch of conversion warnings.
Armin Novak [Thu, 18 Jul 2019 11:53:30 +0000 (13:53 +0200)]
Fixed a bunch of conversion warnings.

4 years agoserver: proxy: fix rdpgfx close race
kubistika [Sun, 21 Jul 2019 09:19:26 +0000 (12:19 +0300)]
server: proxy: fix rdpgfx close race