platform/upstream/freerdp.git
4 years agoMerge pull request #5706 from akallabeth/tcp_keepalive
Martin Fleisz [Tue, 19 Nov 2019 09:03:00 +0000 (10:03 +0100)]
Merge pull request #5706 from akallabeth/tcp_keepalive

Configurable Tcp keepalive

4 years agoMerge pull request #5724 from akallabeth/opaque
Martin Fleisz [Tue, 19 Nov 2019 08:32:24 +0000 (09:32 +0100)]
Merge pull request #5724 from akallabeth/opaque

Opaqueified structs

4 years agordpNineGridCache now opaque
Armin Novak [Thu, 14 Nov 2019 14:15:30 +0000 (15:15 +0100)]
rdpNineGridCache now opaque

4 years agoMPPC_CONTEXT now opaque
Armin Novak [Thu, 14 Nov 2019 14:14:59 +0000 (15:14 +0100)]
MPPC_CONTEXT now opaque

4 years agoNCRUSH_CONTEXT now opaque
Armin Novak [Thu, 14 Nov 2019 14:14:39 +0000 (15:14 +0100)]
NCRUSH_CONTEXT now opaque

4 years agoXCRUSH_CONTEXT now opaque
Armin Novak [Thu, 14 Nov 2019 14:14:09 +0000 (15:14 +0100)]
XCRUSH_CONTEXT now opaque

4 years agordpOffscreenCache now opaque
Armin Novak [Thu, 14 Nov 2019 14:10:44 +0000 (15:10 +0100)]
rdpOffscreenCache now opaque

4 years agordpBrushCache now opaque
Armin Novak [Thu, 14 Nov 2019 14:10:03 +0000 (15:10 +0100)]
rdpBrushCache now opaque

4 years agoMerge pull request #5715 from akallabeth/table_gen
Bernhard Miklautz [Thu, 14 Nov 2019 14:01:07 +0000 (15:01 +0100)]
Merge pull request #5715 from akallabeth/table_gen

Fixed #5713: Use proper types to generate tables.c where possible.

4 years agoFixed #5713: Use proper types to generate tables.c where possible.
Armin Novak [Tue, 12 Nov 2019 10:04:11 +0000 (11:04 +0100)]
Fixed #5713: Use proper types to generate tables.c where possible.

Use the correct type for function arguments of DVCPluginEntry type
and void* for type DeviceServiceEntry when generating tables.c

4 years agoMerge pull request #5722 from akallabeth/primitives_const_source
David Fort [Thu, 14 Nov 2019 10:30:40 +0000 (11:30 +0100)]
Merge pull request #5722 from akallabeth/primitives_const_source

Modified primitives function pointer to take const pointer to const data

4 years agoModified primitives function pointer to take const pointer to const data
Armin Novak [Thu, 14 Nov 2019 09:43:38 +0000 (10:43 +0100)]
Modified primitives function pointer to take const pointer to const data

4 years agofix [build]: don't export rdp2tcp as cmake target
Bernhard Miklautz [Wed, 13 Nov 2019 13:51:27 +0000 (14:51 +0100)]
fix [build]: don't export rdp2tcp as cmake target

rdp2tcp was wrongly exposed as cmake target. This could lead to errors
like the following when the FreeRDP2 cmake file was required:

CMake Error at ../lib/cmake/FreeRDP2/FreeRDPTargets.cmake:73 (message):

  The imported target "rdp2tcp-client" references the file
     ".../lib/freerdp2/librdp2tcp-client.a"
  but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
     ".../lib/cmake/FreeRDP2/FreeRDPTargets.cmake"
  but not all the files it references.

4 years agoMerge pull request #5718 from akallabeth/remdesk_fix
Martin Fleisz [Wed, 13 Nov 2019 14:32:42 +0000 (15:32 +0100)]
Merge pull request #5718 from akallabeth/remdesk_fix

Fixed cleanup of remdesk in CHANNEL_EVENT_WRITE_COMPLETE

4 years agoFixed cleanup of remdesk in CHANNEL_EVENT_WRITE_COMPLETE
Armin Novak [Wed, 13 Nov 2019 10:42:27 +0000 (11:42 +0100)]
Fixed cleanup of remdesk in CHANNEL_EVENT_WRITE_COMPLETE

4 years agocliprdr: common: fix validation of file contents request pdu
kubistika [Tue, 12 Nov 2019 11:22:45 +0000 (13:22 +0200)]
cliprdr: common: fix validation of file contents request pdu

4 years agoserver: proxy: fix sync issue in gfx opening
kubistika [Tue, 12 Nov 2019 08:42:28 +0000 (10:42 +0200)]
server: proxy: fix sync issue in gfx opening

4 years agoMerge pull request #5711 from akallabeth/diff
Martin Fleisz [Mon, 11 Nov 2019 12:23:00 +0000 (13:23 +0100)]
Merge pull request #5711 from akallabeth/diff

Fixed broken strnlen checks

4 years agoFixed broken strnlen checks
Armin Novak [Mon, 11 Nov 2019 09:01:19 +0000 (10:01 +0100)]
Fixed broken strnlen checks

4 years agoMerge pull request #5709 from akallabeth/diff
Bernhard Miklautz [Mon, 11 Nov 2019 08:52:46 +0000 (09:52 +0100)]
Merge pull request #5709 from akallabeth/diff

Fixed broken length calculation in rdp_write_extended_info_packet

4 years agoFixed broken length calculation in rdp_write_extended_info_packet
Armin Novak [Mon, 11 Nov 2019 08:30:16 +0000 (09:30 +0100)]
Fixed broken length calculation in rdp_write_extended_info_packet

4 years agoAdded configurable TcpKeepAliveDelay setting.
Armin Novak [Thu, 7 Nov 2019 12:15:44 +0000 (13:15 +0100)]
Added configurable TcpKeepAliveDelay setting.

4 years agoImplemented configurable tcp keepalive and timeout detection
Armin Novak [Thu, 7 Nov 2019 12:02:57 +0000 (13:02 +0100)]
Implemented configurable tcp keepalive and timeout detection

4 years agoAdded additional tcp keep alive settings.
Armin Novak [Thu, 7 Nov 2019 11:45:05 +0000 (12:45 +0100)]
Added additional tcp keep alive settings.

4 years agoAdded TcpKeepalive setting, use settings getter const arguments.
Armin Novak [Thu, 7 Nov 2019 11:39:22 +0000 (12:39 +0100)]
Added TcpKeepalive setting, use settings getter const arguments.

4 years agoMerge pull request #5703 from akallabeth/reformat
Bernhard Miklautz [Thu, 7 Nov 2019 11:13:19 +0000 (12:13 +0100)]
Merge pull request #5703 from akallabeth/reformat

Reformatted to new style

4 years agoAdded cast and checks for info packet.
Armin Novak [Thu, 7 Nov 2019 06:59:34 +0000 (07:59 +0100)]
Added cast and checks for info packet.

4 years agoFixed NULL checks for strnlen calls, limit static channel name length.
Armin Novak [Thu, 7 Nov 2019 06:41:48 +0000 (07:41 +0100)]
Fixed NULL checks for strnlen calls, limit static channel name length.

As reported by @metametaclass in #5687 check the strings for NULL before
using strnlen. Also extend the same checks to static channel loading.

4 years agoReformatted to new style
Armin Novak [Wed, 6 Nov 2019 14:24:51 +0000 (15:24 +0100)]
Reformatted to new style

4 years agoUpdated format file.
Armin Novak [Wed, 6 Nov 2019 14:24:41 +0000 (15:24 +0100)]
Updated format file.

4 years agoMerge pull request #5704 from XiaopengZHOU/cursor-xor-padding
David Fort [Thu, 7 Nov 2019 09:48:56 +0000 (10:48 +0100)]
Merge pull request #5704 from XiaopengZHOU/cursor-xor-padding

Fix padding of encoded scan-line for XOR mask of pointer.

4 years agoFix padding of encoded scan-line for XOR mask of pointer.
Raphaël ZHOU [Thu, 7 Nov 2019 09:12:22 +0000 (10:12 +0100)]
Fix padding of encoded scan-line for XOR mask of pointer.

4 years agoMerge pull request #5687 from akallabeth/channel_write_leaks
Martin Fleisz [Wed, 6 Nov 2019 12:52:33 +0000 (13:52 +0100)]
Merge pull request #5687 from akallabeth/channel_write_leaks

Fixed VirtualChannelWriteEx error case leaks.

4 years agoAdded CHANNEL_EVENT_WRITE_CANCELLED for remdesk channel
Armin Novak [Wed, 6 Nov 2019 11:56:20 +0000 (12:56 +0100)]
Added CHANNEL_EVENT_WRITE_CANCELLED for remdesk channel

4 years agoFixed userdata pointer and CHANNEL_EVENT_WRITE_CANCELLED message.
Armin Novak [Mon, 28 Oct 2019 15:43:47 +0000 (16:43 +0100)]
Fixed userdata pointer and CHANNEL_EVENT_WRITE_CANCELLED message.

4 years agoListen to CHANNEL_EVENT_WRITE_CANCELLED and emit if queue is cleared.
Armin Novak [Mon, 28 Oct 2019 14:13:42 +0000 (15:13 +0100)]
Listen to CHANNEL_EVENT_WRITE_CANCELLED and emit if queue is cleared.

4 years agoFixed #4809: Properly process CHANNEL_EVENT_WRITE_COMPLETE
Armin Novak [Mon, 28 Oct 2019 13:57:39 +0000 (14:57 +0100)]
Fixed #4809: Properly process CHANNEL_EVENT_WRITE_COMPLETE

4 years agoFixed VirtualChannelWriteEx error case leaks.
Armin Novak [Mon, 28 Oct 2019 13:28:11 +0000 (14:28 +0100)]
Fixed VirtualChannelWriteEx error case leaks.

4 years agoMerge pull request #5685 from akallabeth/multi_instance_arg_parse
Martin Fleisz [Wed, 6 Nov 2019 08:09:22 +0000 (09:09 +0100)]
Merge pull request #5685 from akallabeth/multi_instance_arg_parse

COMMAND_LINE_ARGUMENT structs contain parser results, use one per instance

4 years agoMerge pull request #5689 from akallabeth/cleanups
Martin Fleisz [Tue, 5 Nov 2019 14:28:02 +0000 (15:28 +0100)]
Merge pull request #5689 from akallabeth/cleanups

Cleanups

4 years agoFixed strnlen issues.
Armin Novak [Tue, 5 Nov 2019 13:55:33 +0000 (14:55 +0100)]
Fixed strnlen issues.

4 years agoMerge pull request #5690 from akallabeth/winpr_ini_cleanup
Bernhard Miklautz [Tue, 5 Nov 2019 13:19:07 +0000 (14:19 +0100)]
Merge pull request #5690 from akallabeth/winpr_ini_cleanup

Cleaned up ini.h and added error checks.

4 years agoRemoved invalid use of strnlen
Armin Novak [Tue, 5 Nov 2019 10:30:26 +0000 (11:30 +0100)]
Removed invalid use of strnlen

4 years agoUse BOOL return for IniFile_Open_File and IniFile_Load_File
Armin Novak [Tue, 5 Nov 2019 09:31:09 +0000 (10:31 +0100)]
Use BOOL return for IniFile_Open_File and IniFile_Load_File

4 years agoMerge pull request #5553 from akallabeth/win_console_fix
Martin Fleisz [Tue, 5 Nov 2019 08:35:45 +0000 (09:35 +0100)]
Merge pull request #5553 from akallabeth/win_console_fix

Reattach to cmd if wfreerdp was started from one.

4 years agoFixed review remarks.
Armin Novak [Mon, 4 Nov 2019 10:18:53 +0000 (11:18 +0100)]
Fixed review remarks.

4 years agoMerge pull request #5699 from akallabeth/proxy_link_fix
Bernhard Miklautz [Mon, 4 Nov 2019 08:42:27 +0000 (09:42 +0100)]
Merge pull request #5699 from akallabeth/proxy_link_fix

Fix #5693: Add missing link to gfx client channel library

4 years agordp: fix byte and packet counters
David Fort [Mon, 28 Oct 2019 11:46:18 +0000 (12:46 +0100)]
rdp: fix byte and packet counters
Best to count bytes directly at the transport level.

4 years agofix typo
David Fort [Mon, 28 Oct 2019 11:45:22 +0000 (12:45 +0100)]
fix typo

4 years agoFix #5693: Add missing link to gfx client channel library
akallabeth [Sat, 2 Nov 2019 08:57:03 +0000 (09:57 +0100)]
Fix #5693: Add missing link to gfx client channel library

4 years agoMerge pull request #5692 from kubistika/proxy/when_possible_do_nla_fallback
David Fort [Thu, 31 Oct 2019 13:17:50 +0000 (14:17 +0100)]
Merge pull request #5692 from kubistika/proxy/when_possible_do_nla_fallback

server: proxy: client: always do NLA fallback

4 years agoserver: proxy: client: always do NLA fallback
kubistika [Thu, 31 Oct 2019 09:26:13 +0000 (11:26 +0200)]
server: proxy: client: always do NLA fallback

4 years agoFixed warnings from TestEnvironmentGetEnvironmentStrings
Armin Novak [Tue, 29 Oct 2019 11:57:19 +0000 (12:57 +0100)]
Fixed warnings from TestEnvironmentGetEnvironmentStrings

4 years agoCleaned up TestCryptoHash
Armin Novak [Tue, 29 Oct 2019 11:23:06 +0000 (12:23 +0100)]
Cleaned up TestCryptoHash

4 years agoRemoved strlen from GetComputerNameExA
Armin Novak [Tue, 29 Oct 2019 10:33:27 +0000 (11:33 +0100)]
Removed strlen from GetComputerNameExA

4 years agoFixed length checks for GetComputerNameA
Armin Novak [Tue, 29 Oct 2019 10:29:47 +0000 (11:29 +0100)]
Fixed length checks for GetComputerNameA

4 years agoRemoved strlen use in wlog (and speed up check)
Armin Novak [Tue, 29 Oct 2019 10:25:44 +0000 (11:25 +0100)]
Removed strlen use in wlog (and speed up check)

4 years agoFixed int/size_t use for channel add functions.
Armin Novak [Tue, 29 Oct 2019 10:12:15 +0000 (11:12 +0100)]
Fixed int/size_t use for channel add functions.

4 years agoFixed tmpnam warning.
Armin Novak [Tue, 29 Oct 2019 10:11:53 +0000 (11:11 +0100)]
Fixed tmpnam warning.

4 years agoRemoved strcpy use.
Armin Novak [Tue, 29 Oct 2019 09:23:48 +0000 (10:23 +0100)]
Removed strcpy use.

4 years agoCode cleanups (strlen, casts, size_t, ...)
Armin Novak [Tue, 29 Oct 2019 09:18:09 +0000 (10:18 +0100)]
Code cleanups (strlen, casts, size_t, ...)

4 years agoCleaned up ini.h and added error checks.
Armin Novak [Tue, 29 Oct 2019 10:54:55 +0000 (11:54 +0100)]
Cleaned up ini.h and added error checks.

4 years agoMerge pull request #5673 from akallabeth/audin_format_leak_fix
Martin Fleisz [Mon, 28 Oct 2019 14:19:30 +0000 (15:19 +0100)]
Merge pull request #5673 from akallabeth/audin_format_leak_fix

Fixed memory leak when freeing up audin formats.

4 years agoMerge pull request #5670 from akallabeth/cairo_detection_fix
Martin Fleisz [Mon, 28 Oct 2019 14:18:59 +0000 (15:18 +0100)]
Merge pull request #5670 from akallabeth/cairo_detection_fix

Fix #5669: If cairo is detected as part of other dependencies ignore it

4 years agoMerge pull request #5668 from akallabeth/xfreerdp_mon_check
Martin Fleisz [Mon, 28 Oct 2019 13:13:07 +0000 (14:13 +0100)]
Merge pull request #5668 from akallabeth/xfreerdp_mon_check

Added missing check for monitor indices

4 years agoserver: proxy: export config utils functions to be used by modules
kubistika [Sun, 27 Oct 2019 11:39:22 +0000 (13:39 +0200)]
server: proxy: export config utils functions to be used by modules

4 years agoserver: proxy: stop loading session captures config if it is disabled
kubistika [Sun, 27 Oct 2019 11:38:31 +0000 (13:38 +0200)]
server: proxy: stop loading session captures config if it is disabled

4 years agoUse COMMAND_LINE_ARGUMENT_A copy also in shadow server code.
Armin Novak [Mon, 28 Oct 2019 10:53:12 +0000 (11:53 +0100)]
Use COMMAND_LINE_ARGUMENT_A copy also in shadow server code.

4 years agoCOMMAND_LINE_ARGUMENT structs contain parser results, use one per instance
Armin Novak [Mon, 28 Oct 2019 09:10:14 +0000 (10:10 +0100)]
COMMAND_LINE_ARGUMENT structs contain parser results, use one per instance

Remove the old global structs as the parser modifies them. When using
multiple instances in the same process space this could break parsing.

4 years agoMerge pull request #5676 from akallabeth/hotplug_leak_fix
Martin Fleisz [Mon, 28 Oct 2019 12:06:36 +0000 (13:06 +0100)]
Merge pull request #5676 from akallabeth/hotplug_leak_fix

Hotplug leak fix

4 years agoMerge pull request #5680 from akallabeth/fixes2
Martin Fleisz [Mon, 28 Oct 2019 10:54:23 +0000 (11:54 +0100)]
Merge pull request #5680 from akallabeth/fixes2

Some smaller Fixes

4 years agoMerge pull request #5684 from akallabeth/disp_static_fkt
Bernhard Miklautz [Mon, 28 Oct 2019 10:43:17 +0000 (11:43 +0100)]
Merge pull request #5684 from akallabeth/disp_static_fkt

Made disp channel internal functions static.

4 years agoMade disp channel internal functions static.
Armin Novak [Mon, 28 Oct 2019 08:31:50 +0000 (09:31 +0100)]
Made disp channel internal functions static.

4 years agoMerge pull request #5679 from akallabeth/gdi_clamp
Martin Fleisz [Mon, 28 Oct 2019 07:03:44 +0000 (08:03 +0100)]
Merge pull request #5679 from akallabeth/gdi_clamp

Fix gdi coordinate clamping.

4 years agoFix #5687: check for file extensions case insensitive.
Armin Novak [Fri, 25 Oct 2019 12:23:01 +0000 (14:23 +0200)]
Fix #5687: check for file extensions case insensitive.

4 years agowts_read_drdynvc_close_response quit message queue.
Armin Novak [Fri, 25 Oct 2019 11:20:28 +0000 (13:20 +0200)]
wts_read_drdynvc_close_response quit message queue.

4 years agoAdded MessageQueue_Dispatch argument checks
Armin Novak [Fri, 25 Oct 2019 11:19:42 +0000 (13:19 +0200)]
Added MessageQueue_Dispatch argument checks

4 years agoFix gdi coordinate clamping.
Armin Novak [Fri, 25 Oct 2019 10:57:32 +0000 (12:57 +0200)]
Fix gdi coordinate clamping.

4 years agoRemoved experimental warning from gfx
Armin Novak [Thu, 24 Oct 2019 12:44:01 +0000 (14:44 +0200)]
Removed experimental warning from gfx

4 years agodevman_load_device_service device argument can be const.
Armin Novak [Thu, 24 Oct 2019 12:34:26 +0000 (14:34 +0200)]
devman_load_device_service device argument can be const.

4 years agoserver: proxy: refactor config loader
kubistika [Thu, 24 Oct 2019 07:51:52 +0000 (10:51 +0300)]
server: proxy: refactor config loader

4 years agoserver: proxy: capture: refactor path creation
kubistika [Wed, 23 Oct 2019 09:39:58 +0000 (12:39 +0300)]
server: proxy: capture: refactor path creation

4 years agoserver: proxy: add python script to create a video from session frames
kubistika [Tue, 22 Oct 2019 13:06:28 +0000 (16:06 +0300)]
server: proxy: add python script to create a video from session frames

4 years agoserver: proxy: implement session capture feature
kubistika [Tue, 22 Oct 2019 13:06:05 +0000 (16:06 +0300)]
server: proxy: implement session capture feature

4 years agoserver: proxy: client use PIXEL_FORMAT_BGRA32 (easier to write frames to bitmap)
kubistika [Tue, 22 Oct 2019 13:01:00 +0000 (16:01 +0300)]
server: proxy: client use PIXEL_FORMAT_BGRA32 (easier to write frames to bitmap)

4 years agochannels: rdpgfx: export API to create rdpgfx client
kubistika [Tue, 22 Oct 2019 12:58:05 +0000 (15:58 +0300)]
channels: rdpgfx: export API to create rdpgfx client

4 years agowinpr: utils: image: fix const correctness
kubistika [Mon, 2 Sep 2019 13:02:55 +0000 (16:02 +0300)]
winpr: utils: image: fix const correctness

4 years agoFixed memory leak when freeing up audin formats.
Armin Novak [Thu, 24 Oct 2019 10:18:24 +0000 (12:18 +0200)]
Fixed memory leak when freeing up audin formats.

4 years agoFix #5669: If cairo is detected as part of other dependencies ignore it
Armin Novak [Wed, 23 Oct 2019 14:13:25 +0000 (16:13 +0200)]
Fix #5669: If cairo is detected as part of other dependencies ignore it

If WITH_CAIRO=OFF it was still used when the library was detected as
part of some other dependency. With this commit the dependency is
only added if WITH_CAIRO=ON

4 years agoAdded missing check for monitor indices
Armin Novak [Wed, 23 Oct 2019 13:03:39 +0000 (15:03 +0200)]
Added missing check for monitor indices

4 years agoFixes hub was not found! error
AzureusNation [Fri, 18 Oct 2019 09:44:24 +0000 (10:44 +0100)]
Fixes hub was not found! error

Again as with auto usb detection strtol needs to use base 10 and force to use base 10 else the conversion does not work correctly.

4 years agoFixes Auto USB Redirection
AzureusNation [Fri, 18 Oct 2019 09:21:58 +0000 (10:21 +0100)]
Fixes Auto USB Redirection

Base 0 does not work when converting the string to long int. This ends up not showing the correct device id and sometimes the wrong bus id. By changing it to base 10 conversion instead of base 0 this fixes the issue of auto redirect usb devices.

4 years agordp: count in/out bytes and packets
David Fort [Tue, 22 Oct 2019 21:35:18 +0000 (23:35 +0200)]
rdp: count in/out bytes and packets

4 years agoFix some static analizer warnings
asapelkin [Wed, 16 Oct 2019 16:49:24 +0000 (19:49 +0300)]
Fix some static analizer warnings

4 years agoserver: proxy: client: terminate the connection if pre connect hook fails
kubistika [Tue, 22 Oct 2019 07:38:25 +0000 (10:38 +0300)]
server: proxy: client: terminate the connection if pre connect hook fails

4 years agochannels: cliprdr: client: fix leak in cliprdr_packet_send
kubistika [Fri, 18 Oct 2019 12:02:59 +0000 (15:02 +0300)]
channels: cliprdr: client: fix leak in cliprdr_packet_send

4 years agochannels: cliprdr: improved common cliprdr api
kubistika [Thu, 17 Oct 2019 15:59:07 +0000 (18:59 +0300)]
channels: cliprdr: improved common cliprdr api

4 years agochannels: cliprdr: reformat cliprdr_common.c
kubistika [Sun, 15 Sep 2019 11:48:12 +0000 (14:48 +0300)]
channels: cliprdr: reformat cliprdr_common.c

4 years agochannels: cliprdr: get rid of duplicated server and client code
kubistika [Sun, 15 Sep 2019 10:53:56 +0000 (13:53 +0300)]
channels: cliprdr: get rid of duplicated server and client code

4 years agochannels: cliprdr: remove formatDataResp.dwFlags
kubistika [Sun, 15 Sep 2019 10:51:32 +0000 (13:51 +0300)]
channels: cliprdr: remove formatDataResp.dwFlags

According to the channel docs, this field is only used in format data
request. Therefore, there's no need to hold it in the response. cliprdr
server code was copy-pasted from client code, therefore this must be
some leftover.