Commit Graph

514 Commits

Author SHA1 Message Date
Armin Novak
d1c24aa873 Fixed coverity issue 1047640. 2013-09-05 12:14:31 +02:00
Hardening
c7c5be0bf7 Extract shared code in RAIL channel
This patch starts a code mutualisation for a RAIL server-side
implementation. The file rail_common.c contains code that is shared
by both client and server.
2013-08-29 00:06:50 +02:00
Armin Novak
6f9183c7aa Using a monitor thread for tty input now to work around a WaitForMultipleObjects
limitation of winpr.
Using infinite timeout now in threads to reduce CPU usage to nearly zero.
2013-08-16 15:51:44 +02:00
Armin Novak
60d38daf0a Reset file descriptor set only, if necessary now. 2013-08-16 12:40:06 +02:00
Armin Novak
7f89966efc Fixed compilation error, now using WaitForMultipleObjects. 2013-08-16 10:50:07 +02:00
Armin Novak
1a96bdc7a5 Fixed initialization of serial device, now aborting pending
read / write operations.
2013-08-16 10:34:54 +02:00
Marc-André Moreau
f82c825176 Merge pull request #1422 from akallabeth/serial_event_fix
Serial event fix and resource leakage fixes
2013-08-14 08:45:04 -07:00
Armin Novak
e40d921da3 Removed EAGAIN handling, again passing on the error to the server. 2013-08-14 17:33:46 +02:00
Marc-André Moreau
1b25d81086 Merge pull request #1415 from akallabeth/clipboard_fix_clean
Clipboard fix
2013-08-14 06:54:52 -07:00
Marc-André Moreau
729f73d52b Merge pull request #1405 from akallabeth/printer_stop_fix
Fix hang on shutdown with printer redirection
2013-08-14 06:54:15 -07:00
Armin Novak
bb0e5f2660 Fixed invalid access to tty in thread, which was already removed by
serial_process_irp_close
Retry read now, if non blocking IO returns EAGAIN.
2013-08-14 15:14:40 +02:00
Armin Novak
d4945f7a81 Fixed high CPU usage. 2013-08-14 13:23:55 +02:00
Armin Novak
755bd6980b Fixed resource leaks and missing thread sync. 2013-08-14 13:23:54 +02:00
Armin Novak
1d2adcbe26 Fixed resource leaks. 2013-08-14 13:23:54 +02:00
Armin Novak
7d27062edd Using WaitForMultipleObjects now to reduce CPU load. 2013-08-13 14:04:17 +02:00
Armin Novak
1a681ad117 Moved generated tables.c to binary folder. 2013-08-12 13:41:11 +02:00
Armin Novak
d41f2fa2ed Added links to documentation of message sequences for clipboard data exchange. 2013-08-12 12:47:47 +02:00
Armin Novak
a57f1302f4 Fixed invalid package size allocation and calculation in cliprdr_process_format_list_event
Enabled and fixed error handling in cliprdr_process_format_list_response
2013-08-09 16:23:00 +02:00
Armin Novak
44c80c29cc Fixed #1404, using WaitForMultipleObjects now. 2013-08-08 14:46:21 +02:00
Marc-André Moreau
9be33f83ea channels/rdpei: make use of critical section 2013-08-03 16:45:53 -04:00
Marc-André Moreau
36f361b2d5 Merge pull request #1389 from akallabeth/urbdrc_cmake_fixes
Urbdrc cmake fixes
2013-08-03 13:18:04 -07:00
Armin Novak
71ec4e5a32 Added libusb detection CMake script. 2013-08-02 15:49:53 +02:00
Armin Novak
e1ca852e00 Fixed linking with libusb, now linking against correct library. 2013-08-02 15:49:53 +02:00
Armin Novak
bb1e6ce5e0 Now using libraries detected by CMake for linking against libusb. 2013-08-02 15:49:53 +02:00
Armin Novak
3e56dd108a Added proper CMake checks for libraries linked with urbdrc 2013-08-02 15:49:53 +02:00
Daryl Poe
174f2114dc fix segfault due to pulse input race condition
(cherry picked from commit be51676541)
2013-07-29 18:19:47 +02:00
Marc-André Moreau
b0450f556e channels/disp: initial MS-RDPEDISP support (8.1 Preview build) 2013-07-15 10:43:38 -04:00
Marc-André Moreau
a306d3f9fc channels/rdpei: fix multitouch with Word 2013 2013-07-11 11:04:20 -07:00
Marc-André Moreau
5926fa36dd libfreerdp-client: use PubSub for OnChannelConnected/OnChannelDisconnected 2013-07-11 08:53:15 -07:00
Marc-André Moreau
f5c2181218 channels/disp: update 2013-07-10 14:04:43 -07:00
Marc-André Moreau
eca98fe8cc channels/disp: initial RDP8.1 MS-RDPEDISP implementation 2013-07-08 18:36:03 -04:00
Norbert Federa
db6c0083d0 channels/serial: bring it back to life
- Fixes #1166
- Fixed a possible segfault caused by invalid command line parameters
- Removed serial->in_event which had no effect at all on the program logic
2013-07-03 14:09:04 +02:00
Marc-André Moreau
863b51f938 freerdp: merge with master 2013-06-28 12:50:24 -04:00
Marc-André Moreau
7bb9e5e408 Merge pull request #1308 from dbungert/tsmf
Assorted tsmf and gstreamer fixes
2013-06-28 09:40:29 -07:00
Marc-André Moreau
237f5a63d5 Merge pull request #1288 from dbungert/dvcmanDupeChannels
Free incompletely initialized dvcs.
2013-06-28 09:36:40 -07:00
Daniel Bungert
c95b5c49a6 Assorted tsmf and gstreamer fixes:
* tsmf audio volume fixes
  * The first audio volume message is received before everything is
    initialized.  Cache this data until we're ready.
  * Handle the cases of gstreamer unitialized/partially ready/
    fully ready.
  * Default to 50% as a fallback if the above fails.
* Improved detection of the primary monitor.
* Fix an unexpected shutdown when the server asks us to resize the media
  overlay to (width=0,height=0).
* Permit multiple presentations - required for repeat of audio files
  and also is seen in some video cases.
* Several leak fixes.
* Fix logging related compile warnings and other usage of PRIu64.
2013-06-19 12:33:46 -04:00
Bernhard Miklautz
0fd6439123 server/sample: fix build
Needs now also to be linked against winpr-error
2013-06-13 14:53:09 +02:00
Daniel Bungert
475a44f0e2 Free incompletely initialized dvcs.
If dynamic channels are not completely initialized, the server will
reuse those channel numbers for new channels.
This causes interesting problems when the server asks for a channel
by number, as we can end up with multiple channels with the same number.

Log example of the problem:
DBG_DVC drdynvc_process_receive (341): Cmd=0x1
DBG_DVC drdynvc_process_create_request (249): ChannelId=0 ChannelName=PNPDR
DBG_DVC drdynvc_process_create_request (265): no listener
DBG_DVC drdynvc_process_receive (341): Cmd=0x1
DBG_DVC drdynvc_process_create_request (249): ChannelId=0 ChannelName=TSMF
DBG_DVC tsmf_on_new_channel_connection (378):
DBG_DVC dvcman_create_channel (415): listener TSMF created new channel 0
DBG_DVC drdynvc_process_create_request (260): channel created
DBG_DVC drdynvc_process_receive (341): Cmd=0x3
DBG_DVC drdynvc_process_data (311): ChannelId=0
Warning dvcman_receive_channel_data (517): ChannelId 0 not ready!

In this log, we received data intended for TSMF, but the channel lookup
found the incompletely initialized PNPDR.
2013-06-11 16:49:27 -04:00
Marc-André Moreau
3317592ecb channels/rdpei: fix long press (multitouch right-click) 2013-06-11 16:15:46 -04:00
Marc-André Moreau
977191bba2 channels/rdpei: start implementing strict state machine logic 2013-06-06 18:37:52 -04:00
Marc-André Moreau
7c877e1a61 channels/rdpei: restructure 2013-06-06 18:14:59 -04:00
Marc-André Moreau
2bd6808432 freerdp: merge with master 2013-06-05 10:31:01 -04:00
Hardening
5ad5e5821a Refactored printf(msg) to fprintf(stderr, msg) 2013-06-02 11:07:59 +02:00
Marc-André Moreau
7cf9526a78 channels/tsmf: fix set source video rect 2013-05-29 12:21:54 -04:00
Marc-André Moreau
e45f149db4 channels/rdpsnd: fix potential uninitialized value 2013-05-25 15:49:44 -04:00
Marc-André Moreau
e9d362b58e channels/printer: fix printer redirection and test with cups-pdf 2013-05-20 15:50:22 -04:00
Marc-André Moreau
8095bec3ec channels/drdynvc: call OnChannelDisconnected 2013-05-20 15:23:54 -04:00
Vic Lee
25229f520f channels/server: provide error codes to distinguish between not-registered and not-ready state. 2013-05-19 16:46:02 -07:00
Marc-André Moreau
367ebf32a3 freerdp: make use of stream macros to access members 2013-05-15 12:14:26 -04:00
Marc-André Moreau
9229548cd7 xfreerdp: fix initialization when multitouch hardware is not present 2013-05-15 11:39:28 -04:00