53 Commits

Author SHA1 Message Date
akallabeth
f7465af44f
Revert "allow to use in single threaded mode" ()
This reverts commit bee2e1526d158e7cd9f7b626fab1456407e7d32d.
2021-03-05 13:02:38 +01:00
Gluzskiy Alexandr
bee2e1526d allow to use in single threaded mode
(some client side channels and all server side channels still need to be
ported to new api)

server: build fix, do not disable threads for rfx encoder

cliprdr client channel: implemented support for DisableThreads option
looks like thread does not make sense at all for this channel

do not initialize disabled image codecs (respect settings)

channels: client: rail: added support for DisableThreads setting

changed "BOOL DisableThreads" to "UINT32 ThreadingFlags"
dropped unnecessary apu changes

draft implementation of threading settings aware message handling api
for addins/channels

rail: use new messaging api

fixed memory leak

msgs handlers external api changes (as requested)

msgs_handlers: init fix

fixed memory leak

logic fix

resolved problems appeared after rebase to master, dropped unnecessary
changes

git clang-format origin/master

fixed TestFreeRDPCodecRemoteFX.c

"formatting, run `clang-format` please"

properly use new "rfx_context_new(BOOL, UINT32)" everywhere

passed Threading Flags to "rfx_context_new" where available

in older C standarts veriables declaration must be done before any code

requested changes

clang-format as requested

use broken signatures of standert C functions for m$ s**tos

clang-format

requested changes

requested changes

moved ThreadingFlags to stable api zone

define type for channel msg handler

typo fix

clang-format

build fix

us ThreadingFlags from server settings

git clang-format origin/master

clang-format
2021-02-25 14:05:40 +01:00
Armin Novak
72ca88f49c Reformatted to new style 2019-11-07 10:53:54 +01:00
Armin Novak
31f933bc11 Fixed mac server compile issue. 2018-08-01 10:04:00 +02:00
Armin Novak
1f7d33a2f2 Fixed read/write of surface bits command.
The optional field exBitmapDataHeader of TS_ BITMAP_DATA_EX was ignored.
Read and expose the data (currently unused)
2018-03-01 11:38:59 +01:00
Armin Novak
8eaba5b002 Fixed mac server compilation. 2017-11-24 13:21:43 +01:00
Armin Novak
9a1c60885c Unified RFX server color format. 2016-10-06 13:43:15 +02:00
Bernhard Miklautz
bf73f4e4f1 Fix unchecked strdups
* add missing checks
* adapt function return values where necessary
* add initial test for settings
2015-06-22 19:09:59 +02:00
Norbert Federa
ef1fd12b15 Fix unchecked CreateEvent calls and misc fixes
1)
Added missing checks for CreateEvent which also required the
following related changes:

- changed freerdp_context_new API to BOOL
- changed freerdp_peer_context_new API to BOOL
- changed pRdpClientNew callback to BOOL
- changed pContextNew callback to BOOL
- changed psPeerAccepted callback to BOOL
- changed psPeerContextNew callback to BOOL

2)
Fixed lots of missing alloc and error checks in the
changed code's neighbourhood.

3)
Check freerdp_client_codecs_prepare result to avoid segfaults
caused by using non-initialized codecs.

4)
Fixed deadlocks in x11 caused by missing xf_unlock_x11() calls
in some error handlers

5)
Some fixes in thread pool:
- DEFAULT_POOL assignment did not match TP_POOL definition
- don't free the pool pointer if it points to the static DEFAULT_POOL
- added error handling and cleanup in InitializeThreadpool
2015-04-29 18:18:39 +02:00
Norbert Federa
84577b1ca7 codec/rfx: error checking and various fixes
- removed some unneeded null checks for free()
- fixed a memory leak in shadow_client
- removed rfx_compose_message_header from API

Changed the following functions to BOOL, check the result
where they are called and handle failures:
- rfx_compose_message
- rfx_compose_message_header
- rfx_write_tile
- rfx_write_message_tileset
- rfx_write_message_frame_begin
- rfx_write_message_region
- rfx_write_message_frame_end
- rfx_write_message

rfx_process_message:
- check memory allocation failures
- verify protocol-conform order of data messages to prevents memory
  leaks caused by repeated allocations
- verify that header messages were parsed/received before the
  data messages
- treat unknown rlgr mode as error
- fixed/added error handling
- fixed all callers to check/handle result

rfx_encode_message:
- fixed incorrect usage of realloc
- missing malloc check
- missing check of CreateThreadpoolWork
- correct cleanup on failure (threadpool, memory)
- check rfx_encode_message result

rfx_encode_messages:
- check rfx_split_message result
- correct cleanup on failure
- prevent memory leak on failure

rfx_write_message_context:
- fixed invalid channelId value (must be 0xFF for WBT_CONTEXT)

rfx_process_message_codec_versions:
- fixed invalid read size of codec_version (it is 16bit)

rfx_process_message_channels:
- verify protocol conform channelId value

rfx_process_message_region:
- replaced invalid reallocs with malloc
- read and verify regionType and numTileSets from stream

rfx_process_message_tileset:
- check allocation results
- fixed incorrect usages of realloc

setupWorkers:
- fixed incorrect usages of realloc

rfx_split_message:
- removed dead code
- missing malloc check

rfx_compose_message:
- fixed a memory leak
- check/handle rfx_encode_message result
2015-04-23 15:42:21 +02:00
Marc-André Moreau
6afd621d4c Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow
Conflicts:
	server/Mac/mf_audin.c
	server/Mac/mf_event.c
	server/Mac/mf_info.c
	server/Mac/mf_mountain_lion.c
	server/Mac/mf_peer.c
	server/Mac/mf_rdpsnd.c
	server/Mac/mfreerdp.c
	server/shadow/CMakeLists.txt
2014-09-17 20:15:01 -04:00
Armin Novak
5b5791c8d7 Using wlog for server now. 2014-09-15 08:55:00 +02:00
Marc-André Moreau
aa49e63cda mfreerdp-server: fix build 2014-09-13 12:33:33 -04:00
Armin Novak
084da200cf Replaced fprintf(stderr with DEBUG_WARN 2014-08-07 22:20:53 +02:00
Marc-André Moreau
02090abc8b mfreerdp-server: fix after changes to virtual channels 2014-02-28 12:47:09 -05:00
Marc-André Moreau
8510ad3171 freerdp: remove rdpChannel definition in favor of CHANNEL_DEF 2014-02-28 12:07:22 -05:00
Marc-André Moreau
6e1cdf1b67 libfreerdp-core: expose opaque HANDLE instead of WTSVirtualChannelManager* 2014-02-27 13:30:04 -05:00
Marc-André Moreau
f3011492d8 freerdp-server: remove usage of deprecated custom server-side channel API 2014-02-16 23:09:21 -05:00
Marc-André Moreau
0fd705c6c7 channels/cliprdr: start server-side implementation 2013-08-16 16:46:47 -04:00
Marc-André Moreau
208c9f844a freerdp: fix core API bugs 2013-06-13 21:34:46 -04:00
Marc-André Moreau
fdf3ddcf9e freerdp: purge deprecated stream utils 2013-05-08 17:48:30 -04:00
Marc-André Moreau
fd230443c5 freerdp: purge old stream utils 2013-05-08 16:27:21 -04:00
Marc-André Moreau
b4cac74136 xfreerdp-server: fix RemoteFX encoding 2013-05-01 18:15:55 -04:00
Marc-André Moreau
51715636a5 freerdp: remove some deprecated stream utils 2013-04-29 22:35:15 -04:00
Hardening
7701c9d934 Replace printf(...) by fprintf(stderr, ...) 2013-03-28 23:06:34 +01:00
Marc-André Moreau
8c8a82c31f libfreerdp-utils: purge old STREAM utils 2013-03-21 16:45:25 -04:00
Marc-André Moreau
a8201b0d1b libwinpr-utils: combine old and new stream utils 2013-03-21 15:19:33 -04:00
C-o-r-E
0603f007bf mfreerdp-server: rename timer queue 2013-03-05 17:22:52 -05:00
C-o-r-E
9a6d815a68 mfreerdp-server: removed manually setting sse2 optimizations in server 2013-03-04 14:12:12 -05:00
C-o-r-E
eb03084b89 mfreerdp-server: started keyboard map 2013-02-27 17:16:09 -05:00
C-o-r-E
9c459130d6 mfreerdp-server: support 3 button mouse dragging 2013-02-22 13:01:31 -05:00
C-o-r-E
5fea599d60 mfreerdp-server: basic mouse input 2013-02-21 19:56:32 -05:00
C-o-r-E
4639ea6c2c mfreerdp-server: cleanup 2013-02-19 16:26:06 -05:00
C-o-r-E
2bd632d077 mfreerdp-server: formatting 2013-02-19 15:06:42 -05:00
Marc-André Moreau
a17ddeea2a mfreerdp-server: merging with master 2013-01-31 11:33:08 -05:00
C-o-r-E
c7c9f2f1a6 mfreerdp-server: fixed mstsc bug. 2013-01-30 18:54:08 -05:00
Marc-André Moreau
d8afffd3a8 libfreerdp-core: fix server-side color depth negotiation 2013-01-27 17:17:04 -05:00
C-o-r-E
f6d097aad2 mfreerdp-server: latency tweaks 2013-01-24 21:30:04 -05:00
C-o-r-E
eb1534434c mfreerdp-server: rdpsnd cleanup (successive logons working) 2013-01-24 20:03:44 -05:00
C-o-r-E
cd4ba385df mfreerdp-server: rdpsnd fixes (init works) 2013-01-23 21:11:41 -05:00
C-o-r-E
2404c26699 mfreerdp-server: temporarily removed conditional compilation of rdpsnd and audin 2013-01-23 16:09:09 -05:00
C-o-r-E
6fa0342471 mfreerdp-server: enabled SSE2 optimizations, fixed warnings 2012-12-12 19:13:26 -05:00
C-o-r-E
a060c8894d mfreerdp-server: fixed some conditions that will crash the server 2012-12-11 22:07:56 -05:00
C-o-r-E
0f29376911 mfreerdp-server: scaling fix, performance improvements 2012-12-11 21:20:10 -05:00
C-o-r-E
f9e8ff4927 mfreerdp-server: fixed geometry again 2012-12-09 22:17:53 -05:00
C-o-r-E
9391e60c13 mfreerdp-server: begin transition to IOSurface API 2012-12-09 17:40:37 -05:00
C-o-r-E
e9f008d161 mfreerdp-server: cleanup 2012-12-05 18:35:49 -05:00
C-o-r-E
777bc6cd80 mfreerdp-server: refactored screen capture, fixed corruption issue 2012-12-05 15:35:11 -05:00
C-o-r-E
c21269e124 mfreerdp-server: fixed scaling issue 2012-12-03 18:59:32 -05:00
C-o-r-E
da8ed8e88f mfreerdp-server: fixed geometry 2012-11-15 20:07:28 -05:00