Commit Graph

123 Commits

Author SHA1 Message Date
Mike McDonald
ca0ddf4039 Merge branch 'awakecoding' of https://github.com/vworkspace/FreeRDP into awakecoding 2014-08-01 15:49:19 -04:00
Mike McDonald
12c0bd64f0 Removed loop which was retrying the select after being interrupted by a signal. This was leading to threads blocking forever. 2014-08-01 15:48:54 -04:00
Norbert Federa
6b47229563 Merge pull request #1955 from nfedera/fix-2014-07-10-02
winpr: CloseHandle did not release the thread TCB
2014-07-11 16:35:12 +02:00
Norbert Federa
aac57e7e72 winpr: CloseHandle did not release the thread TCB
This resulted in huge memory leaks - 8MB per thread, depending on
the system's default stack size.
The leak happend even if CloseHandle() was correctly used to "detach"
the thread but WaitForSingleObject was never called.
2014-07-10 12:28:35 +02:00
Bernhard Miklautz
6a49bcfe40 winpr: always build "monolitic"
winpr is now always build as single library.
The build option MONOLITHIC_BUILD doesn't influence this behavior anymore.

The only exception is winpr-makecert-tool which is still build as extra
library.

This obsoletes complex_libraries for winpr.
2014-07-10 11:10:58 +02:00
Hardening
f09076e4d2 Add a guard on nCount with MAXIMUM_WAIT_OBJECTS + cosmetic fixes 2014-07-07 14:50:05 +02:00
Hardening
4bb910fec5 Fixed a typo 2014-07-04 22:14:04 +02:00
Hardening
16681cc91a Fix header inclusion 2014-07-04 16:11:19 +02:00
Hardening
4b3dc22a79 Fix missing include for macOS 2014-07-04 15:29:21 +02:00
Hardening
542811291c Use poll() instead of select() when available
select() has the major drawback that it cannot handle file descriptor
that are bigger than 1024. This patch makes use of poll() instead of
select() when poll() support is available.
2014-07-03 15:26:49 +02:00
Marc-André Moreau
4bac8374de Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-05-21 11:17:58 -04:00
Marc-André Moreau
472c231876 Merge pull request #1826 from Hobby-Student/master
fix FreeBSD compile errors
2014-05-21 10:53:47 -04:00
Marc-André Moreau
c1d727e9cd freerdp: fix type build warnings 2014-05-09 15:44:49 -04:00
Marc-André Moreau
a202fe4057 freerdp: fix several type related warnings 2014-05-08 18:02:02 -04:00
Hobby-Student
18d70c6cda FreeBSD compile errors - add comments 2014-05-01 15:24:11 +02:00
Hobby-Student
7c8e1681cc FreeBSD compile errors - fix typo 2014-05-01 15:17:54 +02:00
Hobby-Student
03315cebe8 FreeBSD compile errors 2014-05-01 15:09:35 +02:00
Benoît LeBlanc
557c082458 Merge branch 'master' of git://github.com/awakecoding/FreeRDP 2014-03-05 16:35:22 -05:00
Marc-André Moreau
a143a70114 libfreerdp-core: link against libwinpr-wtsapi, dynamically register proper WtsApi implementation in FreeRDS 2014-02-16 20:41:19 -05:00
Benoît LeBlanc
9d929469d2 Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau (27) and others
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP: (48 commits)
  afreerdp: fix build on Android
  libwinpr-wtsapi: include wtsapi32.h on Windows
  wfreerdp: fix target exporting
  wfreerdp: fix building against OpenSSL with MONOLITHIC_BUILD and shared libraries
  wfreerdp: fix test build issues
  libwinpr-crypto: implement CryptProtectMemory/CryptUnprotectMemory
  libwinpr-memory: add missing definitions
  libwinpr-memory: start stubbing
  Increased size of stream on GCC conference create request from 512 to 1024.  For large numbers of static virtual channels, the stream was being overflowed and was causing crashes.
  Fixes to process new command line options (autodetect, heartbeat, multitransport), join the MCS message channel and process auto-detect PDUs during the connection sequence.
  wfreerdp: fix build against static openssl library
  winpr-hash: fix building against openssl in static mode
  libfreerdp-gdi: fix invalidation of region with line drawing
  mfreerdp: fix hungarian keyboard '0' and 'i' key inversion
  Fixes build issue on Windows
  libwinpr-synch: add active/inactive linked list for timer queue
  libwinpr-synch: improve timer queue implementation
  libwinpr-synch: make use of head's expiration time in timer queue
  libwinpr-synch: make use of timespec for timer queue
  libwinpr-synch: improve timer queue implementation
  ...

Conflicts:
	client/common/CMakeLists.txt
2014-02-04 11:37:40 -05:00
Benoît LeBlanc
04734d8f37 ts_add_ms: replaced while() that could result in infinite lock 2014-02-04 11:35:16 -05:00
Marc-André Moreau
d2405a25f8 libwinpr-synch: initial waitable timer asynchronous procedure callback support 2014-01-24 22:44:23 -05:00
Hardening
19fb713b83 Handle EINTR nicely
When we caught an EINTR during a select we should retry instead of returning an error
2014-01-07 16:36:41 +01:00
Marc-André Moreau
05947dd0b2 libfreerdp-core: fix linux build 2013-12-18 22:02:59 -05:00
Benoît LeBlanc
043b834ac2 Fixed WaitForSingleObject and WaitForMultipleObjects (timeouts incorrectly sets). Added detailed error reporting, better timeout error handling. 2013-12-17 18:21:12 -05:00
Benoît LeBlanc
f4a0216c76 Fixed WaitForSingleObject and WaitForMultipleObjects (timeouts incorrectly sets). Added detailed error reporting, better timeout error handling. 2013-12-17 18:20:33 -05:00
Benoît LeBlanc
13322f5ba2 Removed warning 2013-11-18 11:59:53 -05:00
Armin Novak
e17a4d1f26 Using CLOCK_MONOTONIC instead of CLOCK_REALTIME now.
Fixed timeout comparison for systems missing GNU posix extensions.
2013-11-14 13:48:20 +01:00
Armin Novak
719c1a27d6 Fixed broken timed wait for thread and mutex objects in WaitForSingleObject. 2013-11-14 09:34:16 +01:00
Marc-André Moreau
89d45690c6 libwinpr-synch: don't use timed waits on OS X until they are properly ported 2013-10-25 10:48:37 -04:00
Marc-André Moreau
723e423799 libwinpr-synch: fix build on Mac OS X 2013-10-25 10:03:57 -04:00
Marc-André Moreau
d30f66b1b7 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2013-10-23 14:18:40 -04:00
Armin Novak
2ba55a48f8 Added missing variable declaration. 2013-10-23 12:25:04 +02:00
Armin Novak
17a024dcd1 Returing WAIT_TIMEOUT for MUTEX objects now too. 2013-10-23 12:16:23 +02:00
Armin Novak
c1051fe4c6 Always including <errno.h> now. 2013-10-23 12:13:53 +02:00
Armin Novak
7704788474 Implemented fallback functions for pthread_timedjoin_np and
pthread_mutex_timedlock functions for systems without PTHREAD_GNU_EXT
Now returning WAIT_TIMEOUT if the operation timed out.
2013-10-23 12:09:09 +02:00
Marc-André Moreau
f4e98f29ec libwinpr-pipe: add server-side named pipe waiting 2013-09-25 19:13:39 -04:00
Marc-André Moreau
3d2754e8ed libwinpr-environment: implement required functions for CreateProcess 2013-09-23 14:44:59 -04:00
Marc-André Moreau
8d142eb85f libwinpr-thread: initial CreateProcess() implementation 2013-09-22 17:23:00 -04:00
Marc-André Moreau
4fbebba528 libwinpr-wait: add support for waiting on named pipes (non-standard) 2013-09-11 19:00:32 -04:00
Armin Novak
2f20a8c12b Fixed various memory leaks and resource deallocation problems. 2013-08-19 17:44:52 +02:00
Armin Novak
1a3a6c3e0f Fixed check for _GNU_SOURCE pthread extensions. 2013-08-16 11:49:35 +02:00
Marc-André Moreau
1d3cf89cbc libwinpr-synch: fix wait.c build on Mac OS X 2013-08-15 15:02:24 -04:00
Armin Novak
86fd873907 Added error messages for not implemented functions. 2013-08-14 13:19:57 +02:00
Armin Novak
0752597e00 Thread timed join now only available with _GUN_SOURCE. 2013-08-14 13:18:18 +02:00
Armin Novak
c3e847f472 Implemented timeouts for WaitForSingleObject.
Added assertions for functions not implemented.
2013-08-14 13:18:18 +02:00
Marc-André Moreau
7b80b19306 cmake: add FindPixman.cmake 2013-08-05 20:50:23 -04:00
Marc-André Moreau
4d2bc6ba46 libwinpr-synch: add unit tests, initial waitable timer support 2013-07-29 13:07:39 -04:00
Marc-André Moreau
007bd87ff4 libwinpr-synch: start implementing waitable timers 2013-07-29 11:57:29 -04:00
Marc-André Moreau
8a4e83bdfb libfreerdp-core: fix server-side update encoding edge case 2013-07-28 16:31:38 -04:00
Benoît LeBlanc
c17c2f811b FreeRDP:
- replaced char* by const char* in function prototypes
- MacFreeRDP: moved assignation of context function pointers
- freerdp: added more pointer and return value validations to prevent crashes
2013-07-04 14:42:40 -04:00
Marc-André Moreau
72e9087d1f winpr: unify handle types 2013-05-16 17:32:58 -04:00
Marc-André Moreau
022ceec22a xfreerdp: split client into executable and library 2013-04-02 16:22:30 -04:00
Marc-André Moreau
d13f89d359 xfreerdp: modify way to return thread exit code 2013-04-02 14:51:12 -04:00
Hardening
7701c9d934 Replace printf(...) by fprintf(stderr, ...) 2013-03-28 23:06:34 +01:00
Bernhard Miklautz
77df254265 Fixed some build warnings 2013-03-15 18:22:49 +01:00
Marc-André Moreau
47a7d54370 xfreerdp: stabilize asynchronous X11 event handling 2013-02-11 20:38:19 -05:00
C-o-r-E
caa1032cce Merge remote-tracking branch 'upstream/master' 2013-01-23 16:10:57 -05:00
C-o-r-E
58e5034d5f mfreerdp-server: replaced xnew/xzalloc calls 2013-01-23 12:54:09 -05:00
Marc-André Moreau
683e395bf8 Merge pull request #918 from awakecoding/master
RemoteFX Parallel Processing of Tiles
2013-01-22 19:03:06 -08:00
Marc-André Moreau
74bba0e767 libwinpr-pool: improve thread pool API on Linux 2013-01-22 16:19:32 -05:00
hardening
7b37f92b2b WaitForMultipleObjects should conform to API and return WAIT_FAILED when nCount is 0 2013-01-22 21:58:06 +01:00
Alam Arias
7b0f4ce1ea libfreerdp-core: llvm said fd may not be set 2012-12-16 23:03:00 -05:00
Marc-André Moreau
7ff2be09b2 libfreerdp-core: more TSG memory cleanup 2012-12-12 22:03:40 -05:00
Marc-André Moreau
3936a19914 libfreerdp-core: add asynchronous send queue 2012-11-28 13:38:01 -05:00
Marc-André Moreau
d0792ea4d1 libwinpr-synch: implement pipe-based semaphore 2012-11-28 12:47:04 -05:00
Marc-André Moreau
57d4a07af9 libfreerdp-utils: replace internal wait_obj implementation 2012-11-26 18:02:41 -05:00
Marc-André Moreau
a11a69c70f channels/rdpdr/disk: replace thread utils by WinPR thread API 2012-09-23 13:54:14 -04:00
Marc-André Moreau
ca6a37eed4 libwinpr-synch: implemented semaphores + thread wait 2012-09-18 19:24:03 -04:00
Marc-André Moreau
4bd217055c libwinpr-synch: implemented Win32 Events 2012-09-18 18:36:13 -04:00
Marc-André Moreau
13dbbb9513 libfreerdp-utils: removing mutex util in favor of WinPR mutex API 2012-09-18 17:34:11 -04:00
Marc-André Moreau
78723f019f libwinpr-synch: stubbed more 2012-09-18 15:51:33 -04:00
Marc-André Moreau
deec68be19 libwinpr-synch: stubbed larger portions of the Synchronization API 2012-09-18 12:57:19 -04:00