Commit Graph

79 Commits

Author SHA1 Message Date
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
Bernhard Miklautz
515502ffa5 change return types of callbacks to BOOL
* change all client/server callbacks to BOOL
* update all clients accordingly
* add multiple return value checks
* small fixes
2015-04-21 14:18:07 +02:00
Hardening
7b108f1aa8 Merge pull request #2141 from zhangzl2013/polyline
fix polyline.
2014-10-31 22:15:13 +01:00
Marc-André Moreau
1c7ed224b6 wfreerdp: start preparing cliprdr code for migration to cliprdr callback interface 2014-10-23 15:38:19 -04:00
Zhang Zhaolong
3de5c62bf3 fix polyline. 2014-10-09 18:11:38 +08:00
Marc-André Moreau
2a5192b027 Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	client/Windows/wf_cliprdr.h
	client/Windows/wf_event.h
	client/X11/xf_client.c
	client/X11/xf_gdi.c
	libfreerdp/gdi/gdi.c
	server/Mac/mf_input.c
2014-09-17 19:09:56 -04:00
Marc-André Moreau
73471eb1f0 libfreerdp-gdi: fix 8bpp mode 2014-09-17 18:30:09 -04:00
Marc-André Moreau
1b7a84419c xfreerdp: partial fix for X11 16bpp mode 2014-09-16 19:12:26 -04:00
Armin Novak
06b609062d Removed remaining printf and DEBUG_* usages. 2014-09-15 09:01:05 +02:00
Armin Novak
7913a57bc5 Using wlog for logging in clients now. 2014-09-15 08:55:00 +02:00
Marc-André Moreau
342d37aea0 wfreerdp: add RDP8 graphics pipeline support 2014-09-12 16:30:57 -04:00
Marc-André Moreau
ff2df7489d wfreerdp: fix gdi usage 2014-09-12 11:34:30 -04:00
Marc-André Moreau
89e5fef11f wfreerdp: fix build on Windows 2014-09-10 11:38:38 -04:00
Armin Novak
0780c0993e Replaced fprintf(stderr with DEBUG_WARN 2014-08-07 22:21:07 +02:00
Zhang Zhaolong
d3d3a21079 wfreerdp: fix incorrect line color. 2014-03-28 09:59:56 +08:00
Marc-André Moreau
951368a1ce Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-02-27 13:58:29 -05:00
Zhang Zhaolong
96562e533f wfreerdp: floatbar: enabled. 2014-02-27 11:43:52 +08:00
Zhang Zhaolong
600fa04bec wfreerdp: fix gdi polyline mistake. 2014-02-10 14:43:58 +08:00
Marc-André Moreau
d64f86d52c wfreerdp: fix 64-bit build 2014-02-10 00:34:17 -05:00
Zhang Zhaolong
6a11e6226b fix a gdi leak bug. 2013-11-24 16:01:11 +08:00
Marc-André Moreau
1e5118116d libfreerdp-codec: start implementing split NSCodec encoder 2013-08-14 23:16:13 -04:00
Marc-André Moreau
fe25303656 libfreerdp-codec: internal refactoring 2013-08-13 17:18:59 -04:00
Marc-André Moreau
fdcf3a75be wfreerdp: fix build warnings 2013-07-26 15:43:55 -04:00
Marc-André Moreau
b55725487f wfreerdp: fix basic connectivity 2013-06-16 00:51:48 -04:00
Marc-André Moreau
c76efec345 wfreerdp: update client with new API 2013-06-15 22:57:21 -04:00
Benoit LeBlanc
3f12dc351b wfreerdp: fixed upscaling 2013-04-30 12:56:16 -04:00
Benoit LeBlanc
391d238f1a wfreerdp: scrollbars, aspect ratio smartsizing 2013-04-26 15:46:36 -04:00
Benoit LeBlanc
b91a7cd3a8 fixed fullscreen toggle positioning, smartsizing
Also: added maximum window size
2013-04-25 17:18:14 -04:00
Benoit LeBlanc
a5bcb8bc21 Smart sizing, dual monitor in client app
Scaling functions: do not scale with a ratio > 1.
2013-04-25 15:42:40 -04:00
Benoit LeBlanc
28e67a6adc wfreerdp: added MultiMon support (fullscreen only) 2013-04-25 10:50:26 -04:00
Benoit LeBlanc
4bfa11bcca wf_toggle_fullscreen: change hwnd parent
Also: do not lose focus
2013-04-24 16:47:32 -04:00
Marc-André Moreau
bb733db683 wfreerdp: integrating benoit's latest code 2013-04-10 16:58:19 -04:00
Marc-André Moreau
7efbf905f8 wfreerdp: integrate benoit's modifications for easier embedding of the client 2013-04-01 18:32:14 -04:00
Hardening
7701c9d934 Replace printf(...) by fprintf(stderr, ...) 2013-03-28 23:06:34 +01:00
Marc-André Moreau
acf9429b52 wfreerdp: split client into library and executable 2013-03-18 22:09:52 -04:00
Vic Lee
6b91ed5830 Frame acknowledgement should be sent by client UI. 2013-01-17 12:58:01 +08:00
Marc-André Moreau
0146b21eb5 libfreerdp-core: fix surface commands 2013-01-14 15:19:51 -05:00
rdp.effort
4d90284657 Renamed CODEC_ID_NONE to RDP_CODEC_ID_NONE as it is already defined in
avcodecs.h
Fixed a warning in schannel_openssl.c
Added checks for: input, mcs, tpdu, certificate, license
2013-01-12 14:49:01 +01:00
Vic Lee
ccdcd8b604 wfreerdp: support DesktopResize and fullscreen toggling. 2012-12-25 12:10:24 +08:00
Vic Lee
7206246c83 wfreerdp: add missing wf_invalidate_region for NSCodec. 2012-12-21 16:39:09 +08:00
Vic Lee
08d6f6fd12 wfreerdp: fix NSCodec and NoCodec. 2012-12-21 14:46:39 +08:00
Marc-André Moreau
8a32de3801 libfreerdp: purged source tree from deprecated memory utils 2012-11-21 21:22:06 -05:00
Marc-André Moreau
5e77cefb08 libfreerdp-utils: removed part of the deprecated calls to xzalloc 2012-11-19 23:49:08 -05:00
Jay Sorg
e0e61e078d win32: no logic, just white space changes 2012-10-16 11:20:04 -07:00
Marc-André Moreau
9d064171a7 freerdp: get rid of old types 2012-10-09 03:26:39 -04:00
Marc-André Moreau
1bf8a45519 freerdp: change uint8, sint8, uint16, sint16 to BYTE, INT8, UINT16, INT16 2012-10-09 03:01:37 -04:00
Marc-André Moreau
1ed644786c freerdp: change boolean type to BOOL type 2012-10-09 02:38:39 -04:00
Marc-André Moreau
5612bc43f8 freerdp: change true/false to TRUE/FALSE 2012-10-09 02:31:28 -04:00
Marc-André Moreau
9909a12af5 libfreerdp-utils: get rid of xmalloc, xrealloc and xfree 2012-10-08 23:21:26 -04:00