Commit Graph

296 Commits

Author SHA1 Message Date
Ilya Shipitsin
251727586d resolve a typo found by cppcheck
[server/Windows/wf_mirage.c:319]: (error) Invalid number of character '(' when these macros are defined: ''.
[server/Windows/wf_mirage.c:319]: (error) Invalid number of character '(' when these macros are defined: 'DFMIRAGE_LEAN'.
[server/Windows/wf_mirage.c:319]: (error) Invalid number of character '(' when these macros are defined: '_WIN64'.
2017-02-17 14:54:31 +05:00
Abhineet-Ayan-Verma
999cc22cdd Fixed undefined behavior in wf_peer_main_loop function
Undefined behavior on "wfPeerContext *context", as it is accessed before being initialized or assigned. Fixed.
2017-02-15 15:56:44 +05:30
Norbert Federa
f71b6b46e8 fix string format specifiers
- fixed invalid, missing or additional arguments
- removed all type casts from arguments
- added missing (void*) typecasts for %p arguments
- use inttypes defines where appropriate
2016-12-16 13:48:43 +01:00
Armin Novak
9a1c60885c Unified RFX server color format. 2016-10-06 13:43:15 +02:00
Armin Novak
11c442562a Fixed dupliace FREERDP_API declarations. 2016-02-27 11:36:34 +01:00
Armin Novak
cb958ba9c6 Added pdb files to package target.
Fixed name collision with freerdp-shadow targets.
2015-12-15 12:07:21 +01:00
Bernhard Miklautz
d73c4898c1 Add build-config.h
build-config.h should contain configure/compile time settings that are
relevant for projects that use FreeRDP.

For example the compiled in plugin search paths.
2015-11-09 15:54:22 +01:00
Martin Haimberger
6ab0187d84 Merge remote-tracking branch 'upstream/master' into mh-channel
Conflicts:
	channels/audin/client/oss/audin_oss.c
	channels/drive/client/drive_main.c
	channels/printer/client/printer_cups.c
	channels/printer/client/printer_main.c
	channels/rail/client/rail_main.c
	channels/rdpgfx/client/rdpgfx_main.c
	channels/rdpsnd/client/oss/rdpsnd_oss.c
	channels/remdesk/client/remdesk_main.c
	channels/remdesk/server/remdesk_main.c
	channels/tsmf/client/tsmf_media.c
2015-07-15 01:57:07 -07:00
Martin Haimberger
b8c110d19b introduced channel error reporting system
The rdpContext gets an event which will
get set if an error occoured in a channel.

If a thread or a void callback has to report an
error it will get signaled by this system.
2015-07-15 00:50:35 -07:00
Armin Novak
e8bfa29bd2 Replaced registry keys with cmake defines. 2015-06-24 14:02:48 +02:00
Bernhard Miklautz
06502e6a91 misc: integrate pull request feedback 2015-06-22 19:24:30 +02:00
David FORT
7c3f8f33ab Fixes for malloc / calloc + other fixes
This patch contains:

* checks for malloc return value + treat callers;
* modified malloc() + ZeroMemory() to calloc();
* misc fixes of micro errors seen during the code audit:
** some invalid checks in gcc.c, also there were some possible
integer overflow. This is interesting because at the end the data are parsed
and freed directly, so it's a vulnerability in some kind of dead code (at least
useless);
** fixed usage of GetComputerNameExA with just one call, when 2 were used
in misc places. According to MSDN GetComputerNameA() is supposed to return
an error when called with NULL;
** there were a bug in the command line parsing of shadow;
** in freerdp_dynamic_channel_collection_add() the size of array was multiplied
by 4 instead of 2 on resize
2015-06-22 19:21:47 +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
1eff1a345e free can handle NULL perfectly fine 2015-05-11 09:07:39 +02:00
Norbert Federa
c77def3048 Fix unchecked CreateMutex calls 2015-05-07 13:27:49 +02:00
Norbert Federa
25fc866a58 Fix unchecked CreateThread calls and misc fixes 2015-05-05 13:55:48 +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
Bernhard Miklautz
12e1d94567 winpr: fixes and cleanup
Integrated notes and issues for the pending pull request
* wf_info:
 * cleanup: remove unnecessary breaks
 * fix typo
 * change usage of calloc
* print.c: fix incorrect check
* makecert.c: cleanup includes
2015-04-08 11:34:37 +02:00
Bernhard Miklautz
850de59b55 winpr: add checks for *alloc
Add missing checks if memory allocation was successful. Also adapt
caller(s) when possible.
2015-04-08 11:34:37 +02:00
Marc-André Moreau
ddedc574f3 freerdp: remove tcp, uds utils 2014-11-12 14:06:34 -05:00
Martin Fleisz
0be28ba0f6 Merge pull request #1965 from akallabeth/dynamic-addin-naming
Dynamic channel library naming
2014-10-31 13:42:16 +01:00
Armin Novak
89bb28adb2 Fixed setting of RV_VERSION_PATCH, now BUILD_NUMBER is used for every library.
Executable names are now correctly set, using CMAKE_EXECUTABLE_SUFFIX now.
Fixed version defines for winpr executables.
2014-10-09 16:18:35 +02:00
Armin Novak
5364a834c4 Added windows version information to build. 2014-10-03 15:17:40 +02:00
Armin Novak
059374457d Removed library prefix override. 2014-09-17 11:27:11 +02:00
Armin Novak
5b5791c8d7 Using wlog for server now. 2014-09-15 08:55:00 +02:00
Bernhard Miklautz
0313ca3622 libfreerdp: always build "MONOLITHIC"
"libfreerdp" consisted of multiple (small) single libraries. If the cmake
option MONOLITHIC was used only one library was build combining all of
the libfreerdp-* libraries.
The only exceptions to this are libfreerdp-server and libfreerdp-client these
are build as separate libraries.

This commit obsoltes non-monolithic builds and makes monolithic builds
the default. The cmake option MONOLITHIC is also removed.
2014-09-12 00:19:53 +02:00
Marc-André Moreau
90d202ab87 server: fix build on Windows 2014-08-11 19:31:38 -04:00
Marc-André Moreau
e4a4aa4d3a Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow
Conflicts:
	channels/encomsp/client/encomsp_main.c
	libfreerdp/core/tcp.c
	libfreerdp/crypto/certificate.c
	server/Windows/CMakeLists.txt
	server/X11/xf_cursor.c
	server/X11/xf_input.c
	server/X11/xf_interface.c
	server/X11/xf_monitors.c
	server/X11/xf_peer.c
2014-08-11 19:22:33 -04:00
Armin Novak
784696c1cd Fixed missing includes and invalid replacement. 2014-08-11 09:38:08 +02:00
Armin Novak
8d8719e101 Replaced fprintf with DEBUG_WARN 2014-08-11 09:19:47 +02:00
Marc-André Moreau
d8b858811f shadow: initial windows server-side connectivity 2014-07-17 21:15:22 -04:00
Marc-André Moreau
a732045c91 wfreerdp-server: restore Win8 DXGI 1.2 support 2014-07-17 18:27:40 -04:00
Vic Lee
29cb8680ce server: allow partial channel read (fix rdpsnd). 2014-07-14 20:00:38 +08:00
Armin Novak
ad3255354d Added WITH_LIBRARY_VERSIONING, allowing to build shared libraries without
SOVERSION information. (required by Android)
2014-07-11 11:53:58 +02:00
Hardening
f33f755635 Also specify the timestamp when sending samples
This patch complements the SendSample() callback to take the timestamp
as extra argument.
2014-06-18 23:44:34 +02:00
Marc-André Moreau
fd8bbfd3b9 wfreerdp-server: update and fix core functionality 2014-02-28 15:27:05 -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
f790831e7d Merge branch 'master' of github.com:awakecoding/FreeRDP into xrdp-ng 2013-09-05 15:23:19 -04:00
Marc-André Moreau
b480ce1830 freerdp: remove vendor-specific options from build system, add automatic ways of including external clients/servers 2013-09-03 20:37:04 -04:00
Marc-André Moreau
23a8354656 channels: rdpsnd refactoring, drdynvc initial server-side code 2013-08-18 21:52:55 -04:00
Marc-André Moreau
0fd705c6c7 channels/cliprdr: start server-side implementation 2013-08-16 16:46:47 -04:00
Marc-André Moreau
fe25303656 libfreerdp-codec: internal refactoring 2013-08-13 17:18:59 -04:00
C-o-r-E
340c3a4246 merged completely (painful) from awakecoding's tree 2013-06-25 20:41:32 -04:00
Marc-André Moreau
208c9f844a freerdp: fix core API bugs 2013-06-13 21:34:46 -04:00
C-o-r-E
fe78d6d1bc attempt fixing big merge 2013-05-13 14:41:06 -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
C-o-r-E
4cdc276e25 merged 2013-05-05 17:57:31 -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
C-o-r-E
12559ccd8f Merge remote-tracking branch 'upstream/master' 2013-04-19 16:57:26 -04:00
Marc-André Moreau
c65ee0c2f4 wfreerdp: fix build on Windows 2013-03-29 00:33:15 -04:00
Corey C
492930a398 wfreerdp-server: a little more debug info 2013-03-22 16:59:35 -04:00
Corey C
701711600e wfreerdp-server: more debug info 2013-03-22 13:12:01 -04:00
Corey C
0c98c5ea99 wfreerdp-server: added more error verbosity 2013-03-21 18:34:53 -04:00
Marc-André Moreau
8fb7e80919 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2013-03-21 16:46:35 -04:00
Marc-André Moreau
8c8a82c31f libfreerdp-utils: purge old STREAM utils 2013-03-21 16:45:25 -04:00
Corey C
bf7a370760 wfreerdp-server: Fixed screen detection issue and home directory issue 2013-03-21 16:31:55 -04:00
Marc-André Moreau
a8201b0d1b libwinpr-utils: combine old and new stream utils 2013-03-21 15:19:33 -04:00
Corey C
0812a8e9fc wfreerdp-server: fixed mirror driver unloading issue 2013-03-19 15:19:26 -04:00
Corey C
19b4c3e1ea wfreerdp-server: fixed sound negotiation with Direct Sound 2013-03-15 21:19:16 -04:00
Corey C
7544f024b7 wfreerdp-server: fixed sound negotiation with WASAPI 2013-03-15 21:04:50 -04:00
Corey C
882c2f79e7 wfreerdp-server: fix mirror driver loading and unloading 2013-03-14 20:18:51 -04:00
Corey C
6692b8faf9 wfreerdp-server: string comparison fix 2013-03-12 18:53:27 -04:00
Corey C
f83aa371aa wfreerdp-server: more error handling improvements 2013-03-12 17:56:45 -04:00
Corey C
034000b0f1 wfreerdp-server: error handling improvements for mirror driver 2013-03-12 17:25:15 -04:00
Corey C
f990fbe303 wfreerdp-server: cleanup output 2013-03-12 17:03:13 -04:00
Martin Fleisz
c715cdc4a7 wfreerdp-server: Removed old rfx_context_set_cpu_info function 2013-03-04 16:33:37 +01:00
C-o-r-E
88207eaf68 merged upstream 2013-02-28 16:45:47 -05:00
Marc-André Moreau
af80955b78 wfreerdp: fix rdpsnd 2013-02-27 17:35:57 -05:00
Corey C
a9f09bb9e2 wfreerdp-server: fixed reconnection issue 2013-02-26 19:25:48 -05:00
Marc-André Moreau
2b9174a69b channels/rdpsnd: cleanup 2013-02-25 21:46:48 -05:00
Corey C
6b83668a72 Merge branch 'master' of https://github.com/C-o-r-E/FreeRDP 2013-02-19 17:17:39 -05:00
Corey C
5a6bcda2ff wfreerdp-server: formatting 2013-02-19 17:17:31 -05:00
C-o-r-E
567ee5a64a Merge branch 'master' of https://github.com/C-o-r-E/FreeRDP 2013-02-19 16:43:57 -05:00
C-o-r-E
b39ae79749 Merge remote-tracking branch 'upstream/master' 2013-02-19 16:36:08 -05:00
Corey C
0471db7bca wfreerdp-server: fix warnings 2013-02-19 16:27:35 -05:00
Corey C
64a67b5cd0 wfreerdp-server: fix regression that I made earlier 2013-02-18 16:01:37 -05:00
Corey C
561e49009c wfreerdp-server: one liner -- it builds 2013-02-18 14:58:26 -05:00
Corey C
6176085ea1 wfreerdp-server: make rdpsnd backend selectable at build time 2013-02-18 14:40:37 -05:00
Corey C
be7a84ec72 wfreerdp-server: removed cruft 2013-02-18 09:52:28 -05:00
Corey C
231eda37cd wfreerdp-server: sound latency tweaks 2013-02-15 20:39:31 -05:00
Corey C
347484c149 wfreerdp-server: wasapi rdpsnd works 2013-02-15 18:50:00 -05:00
Corey C
ad16c31723 wfreerdp-server: refactored rdpsnd for multiple subsystems 2013-02-15 16:53:32 -05:00
hardening
865ff2a5f8 Fixed compilation with -Wstrict-prototypes 2013-02-14 22:20:43 +01:00
Marc-André Moreau
a17ddeea2a mfreerdp-server: merging with master 2013-01-31 11:33:08 -05:00
Corey C
70c5dd555a wfreerdp-server: enabled SSE2 2013-01-30 19:55:37 -05:00
Marc-André Moreau
d8afffd3a8 libfreerdp-core: fix server-side color depth negotiation 2013-01-27 17:17:04 -05:00
Daryl Poe
b64408975d freerdp primitives library 2013-01-18 15:32:58 -07:00
Corey C
17cd760e0d wfreerdp-server: merge upstream 2013-01-14 14:22:07 -05:00
Marc-André Moreau
3b71138442 wfreerdp-server: fix build on Windows 7 2013-01-05 14:58:47 -05:00
Marc-André Moreau
27084c4642 libwinpr-sspi: improve SSPI Schannel test 2013-01-03 11:13:13 -05:00
Marc-André Moreau
92bf3e4ae0 libfreerdp-utils: remove sleep utils in favor of WinPR 2012-12-14 00:58:48 -05:00
Marc-André Moreau
84f358d3ce Merge pull request #812 from bmiklautz/versioning
build: fixed library versioning
2012-11-25 12:29:29 -08:00
Bernhard Miklautz
9a33dbe826 build: fixed library versioning
Split version numbers into:
FREERDP_API_VERSION - the version of the API which is major.minor
FREERDP_VERSION - version of a release consisting of major.minor.revision (e.g. 1.1.0)
FREERDP_VERSION_FULL - like FREERDP_VERSION but with an optional "build" suffix (e.g 1.1.0-dev)
2012-11-18 17:07:33 +01:00
Corey C
ca89be3c91 wfreerdp-server: small packaging patch 2012-11-16 22:54:31 -05:00
C-o-r-E
b5d3a493aa mfreerdp-server: merged wf_peer.c 2012-11-14 11:05:07 -05:00