Commit Graph

1227 Commits

Author SHA1 Message Date
Marc-André Moreau
6876be653a Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx 2014-07-01 09:01:35 -04:00
Marc-André Moreau
f943d7fc1b Merge branch 'master' of github.com:awakecoding/FreeRDP into lync 2014-06-30 17:22:50 -04:00
Marc-André Moreau
5606c64f61 channels/remdesk: initial working Remote Assistance 2014-06-30 13:26:11 -04:00
Marc-André Moreau
b60eff8e42 channels/remdesk: start sending authentication data 2014-06-30 12:51:27 -04:00
Emmanuel Ledoux
9fc225ac5d Merge branch 'ports'
Conflicts:
	channels/serial/client/serial_tty.c
2014-06-30 17:22:15 +02:00
Marc-André Moreau
7a50525880 libfreerdp-common: move assistance code 2014-06-30 09:40:24 -04:00
Marc-André Moreau
01a013f826 client/common: fix Remote Assistance memory leaks 2014-06-29 19:57:46 -04:00
Marc-André Moreau
fc315365f6 client/common: add .msrcIncident type 1 file test 2014-06-29 12:36:28 -04:00
Marc-André Moreau
06c7f83bc2 channels/remdesk: start parsing messages 2014-06-28 20:22:36 -04:00
Marc-André Moreau
af1be38775 client/common: parse and use remote assistance file 2014-06-28 18:33:46 -04:00
Marc-André Moreau
f7f07c56ba channels/remdesk: stub virtual channel 2014-06-28 17:24:44 -04:00
Marc-André Moreau
1d8221d95b client/common: parse RCTICKET Connection String 1 2014-06-28 17:03:16 -04:00
Marc-André Moreau
f6b6c1188b client/common: start parsing of .msrcIncident Remote Assistance file 2014-06-28 16:04:49 -04:00
Marc-André Moreau
49cd7806d9 libfreerdp-codec: improve ClearCodec decompressor 2014-06-26 17:08:51 -04:00
Marc-André Moreau
dd36617093 libfreerdp-codec: improve clear_decompress function parameters 2014-06-25 18:39:28 -04:00
Hardening
f07ab94703 Fix conflicting define
WTSVirtualEventHandle and WTSVirtualChannelReady are already defined in wtsapi.h
and with different values.
2014-06-25 17:35:20 +02:00
Marc-André Moreau
014d8972e3 channels/encomsp: initial client-side implementation 2014-06-23 18:17:26 -04:00
Marc-André Moreau
64b8ded9f2 encomsp: stub client/server virtual channel 2014-06-23 16:18:03 -04:00
Marc-André Moreau
c156006195 Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx 2014-06-23 11:55:27 -04:00
Marc-André Moreau
c53346b333 Merge pull request #1915 from hardening/server_side_sound_improvements
Server side sound improvements
2014-06-20 15:56:09 -04:00
Marc-André Moreau
ea3822c357 libfreerdp-codec: cleanup planar decoder 2014-06-18 17:46:22 -04: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
Hardening
99d531655c Implement a confirm block callback
This patch adds a callback called when we receive feedback from the
client.
2014-06-18 23:44:34 +02:00
Emmanuel Ledoux
e6c82f99d5 serial: ability to setup the server serial driver thanks to a third parameter on the command line 2014-06-18 18:20:21 +02:00
Marc-André Moreau
425763d30a libfreerdp-codec: start offering more flexible planar codec decompression 2014-06-17 16:44:24 -04:00
Marc-André Moreau
d69316198f xfreerdp: add egfx support for planar codec 2014-06-17 16:15:30 -04:00
Marc-André Moreau
61eb7f2f8e libfreerdp-codec: fix ClearCodec decoding 2014-06-13 17:30:13 -04:00
Marc-André Moreau
0e27f5abe4 libfreerdp-codec: start working on clearcodec decompressor 2014-06-13 12:17:16 -04:00
Marc-André Moreau
eeb7cd2cb2 xfreerdp: initial egfx bitmap caching 2014-06-13 08:36:09 -04:00
Marc-André Moreau
ae02b5b512 xfreerdp: start handling egfx surface-to-surface 2014-06-12 16:13:12 -04:00
Marc-André Moreau
42c83c25f8 Merge branch 'egfx' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	channels/tsmf/client/tsmf_main.c
2014-06-12 12:08:15 -04:00
Marc-André Moreau
6f9a256c5c Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	channels/drdynvc/client/dvcman.c
	client/X11/xf_client.c
	include/freerdp/dvc.h
2014-06-12 12:03:08 -04:00
Marc-André Moreau
2da89cd8e5 libfreerdp-client: fix parsing of port numbers in .rdp file full address, gatewayhostname options 2014-06-12 10:49:29 -04:00
Marc-André Moreau
fbea223ecf channels/gfx: add surface table helper, surface creation/deletion 2014-06-11 17:48:04 -04:00
Marc-André Moreau
2a82684521 channels: cleanup unused freerdp channels global functions 2014-06-11 16:27:31 -04:00
Marc-André Moreau
53639dea0b channels: reduce dependency on svc_plugin.h 2014-06-11 15:09:28 -04:00
Marc-André Moreau
3c5b8b3d57 Merge branch 'dvc_streampool' of github.com:akallabeth/FreeRDP into egfx
Conflicts:
	channels/rdpgfx/client/rdpgfx_main.c
	include/freerdp/dvc.h
2014-06-11 13:13:03 -04:00
Armin Novak
49f360521c OnDataReceived function now uses a reference counted stream as argument. 2014-06-11 14:41:31 +02:00
Armin Novak
60b0d075e2 svc_plugin now uses reference counted StreamPool.
Added termination function to clean up allocated resources.
2014-06-11 14:40:38 +02:00
Armin Novak
4325741583 Merge remote-tracking branch 'origin/master' into tsmf-gstreamer-1.0
Conflicts:
	client/X11/xf_client.c
2014-06-11 11:27:08 +02:00
Marc-André Moreau
b4ba2c7a38 libfreerdp-codec: optimize zgfx bitstream 2014-06-05 15:41:42 -04:00
Marc-André Moreau
161e7b0026 libfreerdp-codec: simplify zgfx segment processing 2014-06-05 14:52:27 -04:00
Marc-André Moreau
f194a7b156 channels/rdpgfx: fix parsing of pdus in an array 2014-06-04 21:35:31 -04:00
Marc-André Moreau
193e7f6bd2 channels/rdpgfx: define interface of callbacks 2014-06-04 15:18:02 -04:00
Marc-André Moreau
9e5d312919 Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx 2014-06-04 12:37:23 -04:00
Marc-André Moreau
d6e955e6f1 channels/rdpgfx: stub bitmap decompression 2014-06-03 20:51:28 -04:00
Marc-André Moreau
280d1c859f channels/rdpgfx: parse all core egfx pdus 2014-06-03 19:48:47 -04:00
Marc-André Moreau
c9172dfdb3 channels/rdpgfx: start parsing pdus 2014-06-03 15:32:03 -04:00
Marc-André Moreau
a50e4d16fc libfreerdp-codec: integrate basic RDP8 decompression support 2014-06-03 14:29:55 -04:00
Marc-André Moreau
abd833c27e libfreerdp-codec: stub new ZGFX (RDP8) bulk compressor/decompressor 2014-06-03 13:38:10 -04:00
Marc-André Moreau
8ea161de61 channels/drdynvc: add OnOpen callback 2014-06-03 09:49:00 -04:00
Hardening
0ce300125b Drop unused field 2014-06-03 11:04:12 +02:00
Marc-André Moreau
e74fb24ad1 channels/rdpgfx: start working on capability sets 2014-06-03 00:05:43 -04:00
Marc-André Moreau
d2ad5f698b libfreerdp-core: fix VerifyX509Certificate to make distinction between gateway and direct connection 2014-05-30 14:36:18 -04:00
Marc-André Moreau
709df9aecc libfreerdp-core: add connection timeout, fix gateway bypass local 2014-05-30 14:03:20 -04:00
Marc-André Moreau
18cac3d4dd libfreerdp-codec: cleanup context state flushing 2014-05-26 12:43:30 -04:00
Marc-André Moreau
830659fc5c libfreerdp-core: add new protocol metrics module 2014-05-26 12:30:58 -04:00
Marc-André Moreau
8c7fbe3394 libfreerdp-codec: fix xcrush level-1 compressor 2014-05-25 21:39:25 -04:00
Marc-André Moreau
d2d8c482fc libfreerdp-codec: cleanup and fix XCrush context flush synchronization 2014-05-25 21:21:51 -04:00
Marc-André Moreau
8d8e0c24fe libfreerdp-codec: improve xcrush compressor error checking 2014-05-23 17:38:10 -04:00
Marc-André Moreau
55e096a82f libfreerdp-codec: add xcrush match optimization and output generation 2014-05-23 13:59:34 -04:00
Armin Novak
f62dab9fd3 Added callbacks and names for TSMF. 2014-05-23 13:10:34 +02:00
Armin Novak
3fde4f0bc2 Added callback dictionary with context to allow client to communicate with plugin. 2014-05-23 13:04:51 +02:00
Marc-André Moreau
ee935a3760 libfreerdp-codec: add match info functions 2014-05-22 17:38:01 -04:00
Marc-André Moreau
4ce8c09c1b Merge branch 'master' of github.com:awakecoding/FreeRDP into xcrush 2014-05-22 16:09:52 -04:00
Marc-André Moreau
c0ec800bfd freerdp: fix incorrect copyright headers 2014-05-22 15:56:47 -04:00
Marc-André Moreau
6cd6d63e42 Merge branch 'master' of github.com:awakecoding/FreeRDP into xcrush 2014-05-22 15:22:42 -04:00
Marc-André Moreau
af4a413287 Merge branch 'non_blocking_writes' of github.com:hardening/FreeRDP into non_blocking_writes 2014-05-22 14:01:44 -04:00
Marc-André Moreau
0363196923 libfreerdp-core: add xcrush signature db 2014-05-22 00:18:56 -04:00
Marc-André Moreau
fd23b2f041 libfreerdp-codec: add xcrush rolling hash chunker 2014-05-21 22:55:45 -04:00
Hardening
3200baca4b Correctly export ringbuffer function and fix a warning 2014-05-21 22:20:38 +02:00
Hardening
de1c08736f Fix ringbuffer_write() to use const BYTE * instead of const void * 2014-05-21 19:12:51 +02:00
Hardening
dd6d829550 Allow transport_write calls to be non-blocking
This big patch allows to have non-blocking writes. To achieve
this, it slightly changes the way transport is handled. The misc transport
layers are handled with OpenSSL BIOs. In the chain we insert a
bufferedBIO that will bufferize write calls that couldn't be honored.

For an access with Tls security the BIO chain would look like this:
  FreeRdp Code ===> SSL bio ===> buffered BIO ===> socket BIO

The buffered BIO will store bytes that couldn't be send because of
blocking write calls.

This patch also rework TSG so that it would look like this in the
case of SSL security with TSG:
                                         (TSG in)
                              > SSL BIO => buffered BIO ==> socket BIO
                             /
FreeRdp => SSL BIO => TSG BIO
                             \
                              > SSL BIO => buffered BIO ==> socket BIO
                                        (TSG out)

So from the FreeRDP point of view sending something is only BIO_writing
on the frontBio (last BIO on the left).
2014-05-21 17:42:31 +02:00
Hardening
0ea1dc43ec Add a ringbuffer implementation targetting byte sending
This adds a ringbuffer implementation that targets bytes sending.
The ringbuffer can grow when there's not enough room, that's why it's
not thread-safe (locking must be done externally). It will be shrinked
to its initial size as soon as the used bytes are the half of the
initial size.
2014-05-21 17:27:36 +02:00
Marc-André Moreau
4bac8374de Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-05-21 11:17:58 -04:00
Hardening
9f1d0201ec Changes for base64
This patch changes the prototype for decode_base64 so that the encode / decode
method are consistant (encode(BYTE *) => char* and decode(char*) => BYTE*).
It also does some improvements with unrolling loops so that end conditions are
tested only at the end.
The patch also adds some unitary tests.
Before the patch base64_decode() made valgrind complain about uninitialized
bits, after valgrind is happy and very quiet.
2014-05-11 22:49:10 +02:00
Marc-André Moreau
5e97757939 freerdp: fix improper .rdp file parsing 2014-05-10 17:28:34 -04:00
Hardening
50f1f0df6f Add some const modifiers
This allows these functions to be used with const buffers.
2014-05-09 22:36:50 +02:00
Marc-André Moreau
1c081c965f Merge branch 'xcrush' of github.com:awakecoding/FreeRDP 2014-05-08 16:11:55 -04:00
Marc-André Moreau
0cef8635ff Merge pull request #1822 from hardening/sound_hardening
Fixes in the server-side sound channel
2014-05-08 16:00:52 -04:00
Marc-André Moreau
8b4b506afd Merge pull request #1832 from bmiklautz/feat/channel_funcs
wtsvc: add extended channel handling functions
2014-05-08 15:58:29 -04:00
Bernhard Miklautz
9229a812bc wtsvc: add extended channel handling functions 2014-05-07 20:20:02 +02:00
itsmikeeng
b65e8ac195 Fixed padding 2014-05-07 10:50:14 -07:00
Marc-André Moreau
88bee1fa6d libfreerdp-codec: start working on xcrush compressor 2014-05-05 20:47:30 -04:00
Marc-André Moreau
9162fcc7d8 libfreerdp-codec: start working on XCrush decompressor 2014-05-04 21:50:17 -04:00
Marc-André Moreau
77790874c8 libfreerdp-codec: stub XCrush data compression 2014-05-04 19:46:40 -04:00
Hardening
9848314a5d More fixes in DSP 2014-04-29 10:32:16 +02:00
Hardening
a7023769d0 Fixes in the server-side sound channel
This patch:
* treats OOM situations
* adds checks when reading audio channel messages
2014-04-29 01:02:35 +02:00
Marc-André Moreau
fb3f5e6bd2 libfreerdp-utils: purge deprecated list utils 2014-04-26 12:31:24 -04:00
Marc-André Moreau
3ee6494d36 libfreerdp-core: cleanup GatewayUsageMethod setting 2014-04-24 17:05:10 -04:00
Marc-André Moreau
2cdc0e207c channels/rail: add missing definitions 2014-04-22 17:21:14 -04:00
Marc-André Moreau
ab7958ffb2 libfreerdp-codec: fix NCrush compressor 2014-04-20 23:19:09 -04:00
Marc-André Moreau
bb656a6e7e Merge branch 'master' of github.com:awakecoding/FreeRDP into ncrush
Conflicts:
	libfreerdp/core/bulk.c
2014-04-20 21:59:10 -04:00
Marc-André Moreau
d08b6fe4bd libfreerdp-codec: fix handling of PACKET_AT_FRONT, PACKET_FLUSHED in MPPC compression 2014-04-20 21:28:09 -04:00
Bernhard Miklautz
0cb7874749 Remove config.h inclusion in debug.h
* update msusb to use DEBUG_MSUSB
* remove unused DEBUG_MSG
2014-04-15 18:36:22 +02:00
Marc-André Moreau
a83ccfd365 Merge branch 'master' of github.com:FreeRDP/FreeRDP into smartcard 2014-04-08 23:53:45 -04:00
Marc-André Moreau
46686d391f channels/smartcard: harden parsing of expected padding 2014-04-08 22:10:21 -04:00
Marc-André Moreau
9de2a85f6a channels/smartcard: add async irp processing 2014-04-05 17:51:13 -04:00
Marc-André Moreau
2aa248853a channels/smartcard: cancel outstanding IRPs on re-initialization 2014-04-05 17:15:17 -04:00
Marc-André Moreau
70b490d05c channels/smartcard: add outstanding irp list 2014-04-05 16:57:31 -04:00
Marc-André Moreau
600218dfb2 channels/smartcard: cleanup ConnectA/ConnectW parsing 2014-04-05 16:06:46 -04:00
Marc-André Moreau
f9ada64587 libwinpr-smartcard: fix compilation on Windows 2014-04-04 16:45:11 -04:00
Martin Haimberger
250a2be8bb Ensures that the static virtual channels are started
before virtual channel data can be received
2014-04-03 06:48:41 -07:00
Marc-André Moreau
42a88b93dd libfreerdp-crypto: fix tls_verify_certificate declaration 2014-04-01 21:17:44 -04:00
Marc-André Moreau
feea87b42f libfreerdp-crypto: make distinction between TLS connection error and user cancellation 2014-04-01 16:23:27 -04:00
Marc-André Moreau
acf119f9f3 libfreerdp-codec: improve ncrush compressor 2014-04-01 12:18:13 -04:00
Marc-André Moreau
add42dfdb9 libfreerdp-codec: ncrush compressor update 2014-03-30 23:12:07 -04:00
Marc-André Moreau
ed89354da8 libfreerdp-codec: start work on NCrush compressor 2014-03-29 17:55:17 -04:00
Marc-André Moreau
83ddb7b82c libfreerdp-codec: fix unit test compilation 2014-03-29 12:37:16 -04:00
Marc-André Moreau
2524cebfa2 Merge branch 'master' of github.com:mrthebunny/FreeRDP 2014-03-28 12:30:24 -04:00
Benoît LeBlanc
6d55d8859d Added context error codes 2014-03-28 12:23:16 -04:00
Marc-André Moreau
4c920506ed libfreerdp-core: add 'Bypass RD Gateway server for local addresses' feature 2014-03-24 14:44:18 -04:00
Marc-André Moreau
fb12998957 libfreerdp-core: fix context error handling 2014-03-22 17:42:44 -04:00
Benoît LeBlanc
3e1dfc6311 updated context error messages. utility macros for getting error code CLASS/TYPE 2014-03-21 13:45:43 -04:00
Benoît LeBlanc
d1b9565f51 Added context-specific error management.
Added error codes to replace connectErrorCode.
2014-03-20 18:19:54 -04:00
Marc-André Moreau
5951a9178c libfreerdp-codec: remove old NCrush decompressor 2014-03-16 21:16:53 -04:00
Marc-André Moreau
698cae2052 libfreerdp-codec: start hooking new NCrush decompressor 2014-03-16 20:54:07 -04:00
Marc-André Moreau
882f3098b3 libfreerdp-codec: add more NCrush tables, decode literals and CopyOffsets 2014-03-16 15:51:35 -04:00
Marc-André Moreau
2570e064ce libfreerdp-codec: add NCrush unit tests and tables 2014-03-15 22:18:22 -04:00
Marc-André Moreau
47ed6002f6 libfreerdp-codec: stub ncrush bulk compression 2014-03-15 14:03:05 -04:00
Marc-André Moreau
85049299e0 libfreerdp-core: improve MPPC compress/decompress function definitions 2014-03-11 21:42:27 -04:00
Marc-André Moreau
201bbf5df4 Merge branch 'master' of github.com:awakecoding/FreeRDP into mppc 2014-03-11 11:57:01 -04:00
Marc-André Moreau
8b15db3b66 Merge branch 'master' of github.com:awakecoding/FreeRDP 2014-03-11 11:55:49 -04:00
Marc-André Moreau
b245dea4a8 channels/rdpei: make use of callback interface for Suspend/Resume touch events 2014-03-11 11:55:38 -04:00
Marc-André Moreau
e0966bbfff Merge branch 'master' of github.com:mrthebunny/FreeRDP 2014-03-10 23:08:17 -04:00
Marc-André Moreau
98f98c95e9 libfreerdp-codec: remove old MPPC decompressor, fix RDP4 MPPC 2014-03-10 16:19:47 -04:00
Marc-André Moreau
f31676e4e4 libfreerdp-codec: make MPPC compressor produce output identical to Microsoft implementation 2014-03-10 15:06:23 -04:00
Marc-André Moreau
61ecd0ff31 libfreerdp-core: add bulk.c to handle bulk compression in a centralized place 2014-03-10 11:41:10 -04:00
Marc-André Moreau
4310089102 libfreerdp-core: add options for specifying compression level 2014-03-10 11:16:36 -04:00
Marc-André Moreau
ab5e2b4f3d Merge branch 'mppc' of github.com:awakecoding/FreeRDP into mppc 2014-03-10 10:06:03 -04:00
Marc-André Moreau
dde2c26957 Merge branch 'master' of github.com:awakecoding/FreeRDP into mppc 2014-03-10 10:05:50 -04:00
Marc-André Moreau
805876f976 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-03-10 10:05:29 -04:00
Zhang Zhaolong
bb2e5c5cb9 clipboard: wfreerdp: implement file clipping. 2014-03-10 14:25:59 +08:00
Zhang Zhaolong
353b4f8ba3 clipboard: add events for file clipping. 2014-03-10 14:25:56 +08:00
Marc-André Moreau
ad7ed25d30 libfreerdp-codec: reduce amount of MPPC context variables 2014-03-09 20:45:42 -04:00
Marc-André Moreau
6c89e3cff7 libfreerdp-codec: initial MPPC decompression support 2014-03-09 19:55:52 -04:00
Marc-André Moreau
d9a2fb4ff9 libfreerdp-codec: start MPPC compressor 2014-03-08 17:38:47 -05:00
Marc-André Moreau
95127d5632 libfreerdp-codec: start testing MPPC against large buffer 2014-03-05 18:03:39 -05: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
cea902deb8 libfreerdp-codec: produce correct LOM/CO sequences 2014-03-05 15:29:04 -05:00
Marc-André Moreau
35a289e14a libfreerdp-codec: start new MPPC compressor 2014-03-03 16:15:29 -05:00
Marc-André Moreau
c697941de2 libfreerdp-codec: add new freerdp_image_copy function with detailed parameters 2014-02-28 21:51:29 -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
922624f5b4 Merge branch 'master' of github.com:awakecoding/FreeRDP into channels 2014-02-27 12:14:18 -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
9afddf66ad libfreerdp-core: implement WTSVirtualChannelOpenEx 2014-02-16 23:00:58 -05:00
Marc-André Moreau
1afeb448b4 libfreerdp-core: expose stubbed WtsApi function table from the core 2014-02-16 20:12:45 -05:00
Marc-André Moreau
de3156512c libfreerdp-core: start including wtsapi.h 2014-02-16 18:02:50 -05:00
Marc-André Moreau
82b922a70d channels: rename custom CHANNEL_ENTRY_POINTS_EX to CHANNEL_ENTRY_POINTS_FREERDP to fix conflict 2014-02-16 17:38:59 -05:00