Commit Graph

297 Commits

Author SHA1 Message Date
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
8095bec3ec channels/drdynvc: call OnChannelDisconnected 2013-05-20 15:23:54 -04:00
Marc-André Moreau
d96249e19f libfreerdp-client: start propagating channels initialization to client 2013-05-13 17:39:53 -04:00
Marc-André Moreau
e72f898956 channels/drdynvc: refactor and start exporting interface 2013-05-13 16:07:42 -04:00
Marc-André Moreau
dc0aa4c72d Merge branch 'master' of github.com:FreeRDP/FreeRDP 2013-05-10 16:43:19 -04:00
Daryl Poe
089bfbea2c handle drdynv version 3 2013-05-10 13:57:22 -06: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
5b92413843 freerdp: purge deprecated stream utils 2013-05-08 16:09:16 -04:00
Marc-André Moreau
51715636a5 freerdp: remove some deprecated stream utils 2013-04-29 22:35:15 -04:00
Marc-André Moreau
d187becc28 freerdp: merge with master 2013-03-28 21:20:36 -04:00
Marc-André Moreau
3417a3aab5 freerdp: merge RDP_EVENT type with wMessage 2013-03-28 21:13:56 -04:00
Marc-André Moreau
f757623f7f channels: replace event_type, event_class with id for events 2013-03-28 20:23:16 -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
Marc-André Moreau
eea3414579 libfreerdp-utils: purge deprecated wait_obj utils 2012-11-26 20:15:48 -05:00
Marc-André Moreau
01158f9a34 libfreerdp-utils: purge deprecrated load_plugin utils from source tree 2012-11-21 21:28:48 -05:00
Marc-André Moreau
8a32de3801 libfreerdp: purged source tree from deprecated memory utils 2012-11-21 21:22:06 -05:00
Marc-André Moreau
2a16183f5d libfreerdp-utils: remove deprecated calls to xnew() macro 2012-11-21 20:21:08 -05:00
Marc-André Moreau
ecddb58ba2 channels: cmake cleanup, USB redirection refactoring 2012-11-20 19:34:52 -05:00
Marc-André Moreau
2e1a7447a1 channels: refactoring of channel subsystems 2012-11-19 22:31:15 -05:00
Marc-André Moreau
4a472d5536 libfreerdp-common: added parsing of /vc and /dvc 2012-11-18 00:08:03 -05:00
Marc-André Moreau
925eb59bf1 libfreerdp-common: refactoring of addin loader 2012-11-17 22:03:04 -05:00
Marc-André Moreau
6882b1fa9d mfreerdp-server: initial commit 2012-10-31 23:04:31 -04:00
Marc-André Moreau
5bebfc798d cmake: add client/server channel options 2012-10-19 16:47:48 -04:00
Marc-André Moreau
b5989f7299 cmake: refactoring of channel options with macros 2012-10-19 15:27:55 -04:00
Marc-André Moreau
2f1711c506 libwinpr-path: make tests pass on Windows 2012-10-18 21:11:12 -04:00
Marc-André Moreau
81e485736f channels: refactoring of channels cmake scripts with macros 2012-10-17 02:14:19 -04:00
Marc-André Moreau
0c1fd59d5f cmake: fix client add library macro 2012-10-16 17:33:07 -04:00
Marc-André Moreau
d0314a569e libfreerdp-channels: refactoring of cmake static entry table generation 2012-10-15 16:31:41 -04:00
Marc-André Moreau
010761055e libfreerdp-channels: refactoring of channels cmake scripts with macros 2012-10-15 14:44:46 -04:00
Marc-André Moreau
0feebdbc37 cmake: refactoring of channel scripts 2012-10-14 02:38:58 -04:00
Marc-André Moreau
06fa85f31c cmake: refactoring of MONOLITHIC_BUILD 2012-10-13 17:30:59 -04: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
2df7aaad39 libfreerdp-utils: get rid of xstrdup in favor of WinPR _strdup 2012-10-08 23:42:01 -04:00
Marc-André Moreau
9909a12af5 libfreerdp-utils: get rid of xmalloc, xrealloc and xfree 2012-10-08 23:21:26 -04:00
Marc-André Moreau
e60a092d81 freerdp: fix headers 2012-10-08 23:02:04 -04:00
Marc-André Moreau
40eea7c76b cmake: rename WITH_MONOLITHIC_BUILD to MONOLITHIC_BUILD 2012-10-08 22:55:06 -04:00
Marc-André Moreau
ac7e1a3aea channels: make rail, drdynvc, cliprdr and rdpsnd built-in channels 2012-10-08 22:48:17 -04:00
Marc-André Moreau
11aa251fca channels: modify plugins to become optionally built-in 2012-10-08 20:26:11 -04:00
Marc-André Moreau
e0693c8f4c cmake: refactoring of channels cmake scripts 2012-10-04 16:54:16 -04:00
Marc-André Moreau
12554c172f winpr: fix build on Windows 2012-10-03 17:53:03 -04:00
Marc-André Moreau
dda32388ff urbdrc: move USB redirection code 2012-10-02 16:54:14 -04:00
Marc-André Moreau
164783904a freerdp: merging with master 2012-10-02 16:32:41 -04:00
Marc-André Moreau
6cb933aa5a channels: added build options to enabled/disable client and server channels 2012-09-22 20:16:38 -04:00
Marc-André Moreau
81974d1b2a channels: moving dynamic virtual channels 2012-09-22 18:08:22 -04:00
Marc-André Moreau
3d65cb1c27 channels: moved client-side implementations in client subdirectories 2012-09-22 17:46:23 -04:00
Marc-André Moreau
cb8c0ef3c8 channels: refactoring of cmake build scripts 2012-09-20 23:39:27 -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
Dorian Johnson
fb6d86a37f tsmf-ffmpeg: Update to latest versions of api (Fix #285) 2012-09-13 22:27:46 -05:00
Marc-André Moreau
cee2fcc6f0 libfreerdp: fix debug output 2012-09-08 15:27:00 -04:00
Marc-André Moreau
910f9ffed6 libfreerdp: wrap inclusion of config.h with HAVE_CONFIG_H 2012-08-14 17:41:40 -04:00
Marc-André Moreau
d5d1eb7762 libfreerdp: add proper config.h inclusions 2012-08-14 17:09:01 -04:00
Marc-André Moreau
dd91fdac03 channels: add support for monolithic build 2012-08-14 00:48:55 -04:00
Dorian Johnson
3740e2ff46 tsmf: add ability for tsmf audio players to get volume change
notifications, even when the decoder doesn't support it.
2012-08-07 17:45:11 -05:00
Marc-André Moreau
52c697a7e2 channels: start fixing compilation on Windows 2012-07-28 22:24:14 -04:00
Alam Arias
477b90c439 gstreamer: use PRIu64 marco for uint64_t 2012-06-17 12:12:08 -04:00
Alam Arias
0ddea5afa3 ffmpeg: avcodec_init() is been deprecated (and removed) 2012-06-17 09:51:37 -04:00
Alam Arias
0863c2eefd gsteamer: #if 0 to block out unused tsmf_gstream_start_eventloop_thread() and tsmf_gstream_Eventloop_thread_finc() 2012-06-14 12:46:27 -04:00
Alam Arias
c147ee2ed1 test for XRandR for Gstreamer support 2012-06-14 12:46:27 -04:00
Irwan Halim
c9c22fa331 Add GStreamer plugin for Multi-media redirection 2012-06-13 14:45:58 -05:00
Julien Ropé
80f16c6201 Small fixes from static analysis:
- Potential NULL dereference in tsmf_ifman.c
- Check return value for our functions in tsmf_media.c and rdp.c
- Bad binary operator used in gcc.c
- Unreachable code in ntlm.c
- Bad free operation on SCOPE_LIST object in license.c
2012-05-16 15:29:35 +02:00
Julien Ropé
bbb48783e3 Some modifications on the LIST usage.
Made sure the list_*() API was used whenever possible, rather than relying on the internal implementation.
Added comments to the list.c file for documentation.
2012-05-16 11:34:18 +02:00
Vic Lee
c9ad01ea55 dsp: rewrite api to reduce memory allocations. 2012-05-09 16:15:23 +08:00
Marc-André Moreau
6f61ef8772 urbdrc: fix compilation against libusb 2012-04-30 16:28:32 -04:00
Scott Tsai
36a37cc752 Use PULSEAUDIO_INCLUDE_DIR instead of PULSE_INCLUDE_DIRS 2012-04-27 01:14:21 +08:00
Marc-André Moreau
8e64d1803b drdynvc: fix value of cb field 2012-04-25 14:27:38 -04:00
Marc-André Moreau
fa4d8fca1b urbrdc: initial USB redirection support, contributed by Atrust 2012-04-25 14:26:35 -04:00
Daryl Poe
abc3d365d8 Fix parameter parsing in audin:alsa drdynvc code. 2012-04-18 11:16:50 -06:00
Marc-André Moreau
8189702ef3 channels/tsmf: disable deprecation warning 2012-02-17 17:45:58 -05:00
Slava Dubrovskiy
c10866db66 Fix not linked with libpulse (issue 418)
Signed-off-by: Slava Dubrovskiy <dubrsl@altlinux.org>
2012-02-14 13:46:26 -05:00
Marc-André Moreau
7a6c813fcf libfreerdp-utils: extend plugin utils 2012-02-09 19:48:52 -05:00
Bernhard Miklautz
668c8c8cef build: use WITH_XXX instead of XXX_FOUND
To check if something should be en- or disabled WITH_XXX
should be used and not XXX_FOUND.

If XXX_FOUND is used and something gets disabled afterwards (by setting
WITH_XXX to OFF) it will be compiled in as long as XXX_FOUND is found in
cmake's cache file. So disabling a feature, or option, without
clearing the CMakeCache.txt might result in builds with unwanted
configuration.
2012-01-23 14:40:05 +01:00
Bernhard Miklautz
cc24a7ad6a Changed cmake find prefix for pulseaudio.
Now option (WITH_PULSEAUDIO) and package prefix (PULSEAUDIO_FOUND) match.
2012-01-23 14:40:05 +01:00
Marc-André Moreau
5924666748 channels/drdynvc/audin: fix typo in header 2012-01-16 09:20:54 -05:00
Dorian Johnson
39752fa014 drdynvc: dvcman_load_plugin load multiple drdynvc plugins 2011-12-27 16:06:57 -06:00
Dorian Johnson
e303867528 drdynvc-tsmf: make tsmf plugin parser allow mulitple data chunks
Allows one to config both decoder and audio simultaneously
2011-12-27 13:57:40 -06:00
Dorian Johnson
6dae926d86 drdynvc: make audin and tsmf config data parsers recognize path-based plugin loading 2011-12-27 09:55:00 -06:00
Marc-André Moreau
a63a196f53 types: refactoring to make use of standard data types when available 2011-11-19 12:19:16 -05:00
Rex Tsai
7a0613b8dd tsmf: fix when using older then libav major version 53. 2011-11-11 01:02:10 +08:00
Anthony Tong
0e9ad32bcb port of llyzs patch from freerdp-old, issue #26 2011-10-19 10:55:54 -04:00
Eduardo Beloni
35d2502af5 channels/drdynvc/audin: fix segfault when device name is not specified 2011-10-04 09:28:44 -03:00
Vic Lee
f5ccf34605 audin: migrate audin plugin and ALSA/PulseAudio devices. 2011-09-21 15:18:54 +08:00
Vic Lee
6c914cd60d tsmf: fix incorrect data realignment. 2011-09-20 22:03:05 +08:00
Vic Lee
ebaf94d6d6 tsmf: add ffmpeg, alsa and pulse sub-plugins. 2011-09-20 14:27:10 +08:00
Vic Lee
dadb94a1e3 tsmf: add tsmf main module. 2011-09-20 01:58:27 +08:00
Vic Lee
fee5b3fab8 drdynvc: fix incorrect data length handling. 2011-09-19 22:53:00 +08:00
Vic Lee
6d6c5062ab drdynvc: fix buffer pointer type. 2011-09-19 17:04:14 +08:00
Rex Tsai
ecbe24ca9a cmake: make linking type as option. 2011-09-01 22:18:58 +08:00
Marc-André Moreau
09980c8a7c include: refactor FRDP_ types to RDP_ 2011-08-17 17:28:26 -04:00
Vic Lee
9c64e5b08d drdynvc: remove unused header 2011-08-06 16:25:14 +08:00
Vic Lee
7c597ac278 libfreerdp-utils/list: rewrite using functions instead of macros. 2011-08-04 22:18:01 +08:00
Brad Hards
2601d110aa Various minor warning fixes and unittest fixes. 2011-07-27 09:14:11 +10:00
Brad Hards
091432b89a Fix DEBUG usage
trivial.
2011-07-25 20:09:23 +10:00
Vic Lee
3533609da9 drdynvc: start working on main drdynvc module. 2011-07-19 14:07:15 +08:00