Commit Graph

825 Commits

Author SHA1 Message Date
Marc-André Moreau
fb3f5e6bd2 libfreerdp-utils: purge deprecated list utils 2014-04-26 12:31:24 -04:00
Zhang Zhaolong
e64a64dcd6 core: fix memory leak in case of error out. 2014-04-26 13:44:28 +08:00
Zhang Zhaolong
69eee0709d core: fix memory leak in case of error out. 2014-04-26 12:08:30 +08:00
Zhang Zhaolong
24fce3a749 core: fix memory leak in case of error out. 2014-04-26 12:05:52 +08:00
Zhang Zhaolong
8ce32773f3 core: fix memory leak in case of error out. 2014-04-26 12:00:07 +08:00
Marc-André Moreau
3ee6494d36 libfreerdp-core: cleanup GatewayUsageMethod setting 2014-04-24 17:05:10 -04:00
Benoit LeBlanc
9e859ad11f rpc_client_stop() : Avoid waiting infinitely for rpc client thread if connection failure occurs while in "synchronous receive" mode. 2014-04-24 14:07:11 -04:00
Bernhard Miklautz
b817e92e5e cmake: mark required libraries for export 2014-04-23 10:16:02 +02:00
Vic Lee
5391275f66 audin/server: fix server audio input channel. 2014-04-22 19:02:23 +08:00
Marc-André Moreau
13d61f341d Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-04-21 16:28:01 -04:00
Marc-André Moreau
784e9abd79 cmake: improve __FILE__ relative path hack 2014-04-21 14:42:24 -04:00
Marc-André Moreau
a21aed8896 Merge pull request #1803 from hardening/www_authenticate_fix
Www authenticate fix
2014-04-21 12:15:35 -04:00
Marc-André Moreau
b15e77c18b Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-04-20 23:23:18 -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
Hardening
4366a2219a Honor bypass local gateway setting
This patch make the bypass local gateway setting works
2014-04-19 23:31:12 +02:00
Hardening
ef38a5e55d Fix multiple WWW-Authenticate headers
This patch fixes the case with the server trying to negociate the authentication
method and returning multiple WWW-Authenticate headers.
2014-04-19 09:14:14 +02:00
Bernhard Miklautz
76b7ecd1b7 core/fastpath: fix compiler warning 2014-04-17 12:16:10 +02:00
Bernhard Miklautz
630cb35aa5 transport: fix variable initialization
Fixes possible problem when NLA is enabled and header verification fails.
2014-04-17 12:08:09 +02:00
Hardening
2089eaf0d2 Fix connection when no cookie is given
This patch corrects a regression introduced in 2edd8bee12
2014-04-16 17:04:49 +02:00
Marc-André Moreau
09a540b40b libfreerdp-core: remove old, unused extension framework 2014-04-14 14:49:03 -04:00
Marc-André Moreau
94f2a52196 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-04-14 14:17:37 -04:00
Marc-André Moreau
95b4c5619e Merge pull request #1787 from hardening/oom_checks2
Misc fixes to check OOM
2014-04-14 14:19:58 -04:00
Marc-André Moreau
2c752f20fa Merge pull request #1778 from awakecoding/smartcard
Smart Card Complete Overhaul
2014-04-14 14:13:11 -04:00
Benoît LeBlanc
3581d27f08 tcp: (Mac OS X) added setsockopt(SOL_SOCKET, SO_NOSIGPIPE) to prevent the application crashing on a broken socket. 2014-04-10 16:26:44 -04:00
Hardening
2edd8bee12 Misc fixes to check OOM 2014-04-10 21:10:19 +02:00
Norbert Federa
5db9d630de core/server: only enable activated bitmap codecs 2014-04-10 19:13:47 +02:00
Norbert Federa
210985f99e core: fix multifragment update capability exchange 2014-04-10 17:22:06 +02:00
Marc-André Moreau
39f04c870e channels/smartcard: fix some valgrind warnings 2014-04-09 12:28:03 -04:00
Marc-André Moreau
d679932d13 Merge pull request #1775 from maksqwe/license_read_fix
fix check for certificate_read_server_certificate()
2014-04-09 11:11:01 -04:00
Marc-André Moreau
4093f1a715 Merge pull request #1782 from hardening/oom_cases
Treat OOM cases
2014-04-09 10:39:31 -04:00
Hardening
1d1844aabd Treat OOM cases 2014-04-09 16:07:06 +02:00
Hardening
4210890acd Fix corner cases in http parsing
This patch adds checks for malloc / strdup, and free all memory
when such call fails.
2014-04-09 15:00:38 +02:00
Maks Naumov
e6d0a3b2a9 remove unneeded check 2014-04-08 22:48:17 +03:00
Bernhard Miklautz
3720e205b4 core: fixed client random size
client random must be (bitlen / 8) + 8 - see [MS-RDPBCGR] 5.3.4.1

fixes #1771
2014-04-08 19:38:01 +02:00
Maks Naumov
c230fae097 Make certificate_read_server_certificate() return BOOL 2014-04-08 19:23:06 +03:00
Benoit LeBlanc
7e658b9dc4 Fix windows compilation 2014-04-04 10:11:18 -04:00
Benoit LeBlanc
06c55ff7df Merge branch 'master' of https://github.com/mrthebunny/FreeRDP 2014-04-04 10:09:00 -04:00
Benoit LeBlanc
6f99f252d9 Fix windows compilation 2014-04-04 10:08:44 -04:00
Norbert Federa
4e2b696221 libfreerdp-core: fix transport_check_fds
This patch fixes an issue with hung clients connected to FreeRDP server:

- Removed the completely useless inner while loop which used the transport
  receive buffer stream position as break contition: The transport receive
  buffer stream is replaced after each iteration of this loop with a fresh
  instance from a pool which has the position set to 0. Thus it was
  technically impossible that this loop would ever be run twice.

- We must not always return if transport_read_nonblocking returns 0:
  transport_read_nonblocking() is also called in transport_write() and
  therefore it is possible that the stream position of the transport
  receive buffer is already > 0 when entering transport_check_fds.
2014-04-03 21:42:32 +02:00
Bernhard Miklautz
16bc9f4bd1 sec-rdp: fixed cleanup in key error case 2014-04-03 12:18:08 +02:00
Bernhard Miklautz
21c425b79c sec-rdp: limit server side key size to 2048 bit
Current code doesn't handle keys > 2048 bit properly in multiple places.
To prevent problems make sure that no larger keys are used for now.
2014-04-03 11:50:06 +02:00
Bernhard Miklautz
9436d64ff5 sec-rdp: fixed *_establish_keys for keys > 256 bit 2014-04-03 11:36:51 +02:00
Marc-André Moreau
500acb3a20 Merge pull request #1766 from nfedera/fix-2014-04-02-02
libfreerdp-core: fix disconnect reason
2014-04-02 09:20:28 -04:00
Norbert Federa
68db82f7d1 libfreerdp-core: fix disconnect reason 2014-04-02 14:43:47 +02:00
Norbert Federa
18cb418c81 core: FIPS for fastpath and RDP security fixes
- fixed invalid stream position if extEncryptionMethods is not used
- enabled 56bit rdp security method
- fixed entropy reduction of the keys for 40 bit and 56 bit
- added rdp security incl. FIPS for fastpath output
- added FIPS encryption to fast path input
- fixed FIPS key generation in server mode
- fixed stream length correction in FIPS mode
- added rdp encryption for licensing packets (apparently some clients,
  specifically cetsc, require the license packets received from the
  server to be encrypted under certain RDP encryption levels)
- replace errnous virtual extended mouse event in focus in event
2014-04-02 14:17:39 +02:00
Marc-André Moreau
56d75ac892 libfreerdp-core: fix non-C89 declaration 2014-04-01 20:56:34 -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
305852b010 libfreerdp-core: start integrating NCrush compressor 2014-03-31 14:48:47 -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
a8551f4008 libfreerdp-core: fix potential issue while reading packet headers 2014-03-27 17:09:26 -04:00
Marc-André Moreau
3f07157637 libfreerdp-core: enforce checking of NLA packets in transport only when expecting NLA 2014-03-27 14:24:15 -04:00
Marc-André Moreau
75302e2cc2 libfreerdp-core: don't set connectErrorCode when there is no error 2014-03-27 11:50:56 -04:00
Marc-André Moreau
797d326252 libfreerdp-core: fix handling of uncompressed packets 2014-03-26 09:16:28 -04:00
Hardening
ac7507ab8d Adds some check to treat OOM problems + RDP security fix
Malloc can fail so it will, this patch adds some check in some places
where malloc/strdup results were not checked.

This patch also contains a server side fix for RDP security (credit to nfedera).
The signature len was badly set in the GCC packet. And some other RDP security
oriented fixes are also there.
2014-03-25 23:13:08 +01:00
Marc-André Moreau
14b75d1b27 libfreerdp-core: fix build warnings and windows broken build 2014-03-25 15:19:52 -04:00
Marc-André Moreau
65ff98bb99 libfreerdp-core: fix /multimon and /span options 2014-03-25 14:39:21 -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
Benoit LeBlanc
21b5f0e418 Fix windows build 2014-03-21 15:25:00 -04:00
Benoît LeBlanc
4bed3d082f Merge branch 'master' of git://github.com/awakecoding/FreeRDP 2014-03-21 14:03:38 -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
Marc-André Moreau
23cb561a53 libfreerdp-core: fix RDP4 compression 2014-03-21 10:27:11 -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
40ffe51aef Merge branch 'master' of github.com:mrthebunny/FreeRDP 2014-03-20 09:49:51 -04:00
Norbert Federa
52f06250fd libfreerdp-core: fixed transport
Commit 1daea0d0dc introduced an
error: If transport_read_nonblocking returns 0 we may not return
without checking if the ReceiveBuffer is empty.
2014-03-19 21:06:21 +01:00
Benoit LeBlanc
27c753f80c Merge branch 'master' of git://github.com/awakecoding/FreeRDP 2014-03-19 11:53:10 -04:00
Norbert Federa
313c97df88 capabilities: fix MultifragMaxRequestSize parsing
- no reason to limit this to RemoteFX
- network and settings values were incorrectly compared
2014-03-19 10:52:05 +01:00
Benoît LeBlanc
af28a35e0d Transport: closing transport before sending stop event caused SSL errors when stopping the session. 2014-03-18 15:27:23 -04:00
Marc-André Moreau
5a0f36b0ce libfreerdp-core: enable RDP6 bulk compression by default 2014-03-17 10:26:22 -04:00
Marc-André Moreau
59ff4db1c7 Merge branch 'master' of github.com:awakecoding/FreeRDP into ncrush 2014-03-17 10:18:56 -04:00
Marc-André Moreau
1184c3c835 Merge pull request #1740 from bmiklautz/bm/fix/msg_channel_id
only process msg channel pdu if msg channel is set
2014-03-17 10:18:27 -04:00
Marc-André Moreau
b23f0dba7f Merge pull request #1730 from divineforge/master
Fixing the E_PROXY_RAP_ACCESSDENIED error
2014-03-17 10:04:23 -04:00
Marc-André Moreau
5951a9178c libfreerdp-codec: remove old NCrush decompressor 2014-03-16 21:16:53 -04:00
Marc-André Moreau
90a135c928 libfreerdp-codec: cleanup new NCrush decompressor 2014-03-16 21:10:57 -04:00
Marc-André Moreau
698cae2052 libfreerdp-codec: start hooking new NCrush decompressor 2014-03-16 20:54:07 -04:00
Bernhard Miklautz
59eadb9213 only process msg channel pdu if msg channel is set 2014-03-14 21:56:10 +01:00
Marc-André Moreau
4d9a3dc218 libfreerdp-core: change internal fastpath utils function declarations 2014-03-12 12:09:14 -04:00
Marc-André Moreau
d95f8638b8 libfreerdp-core: enable MPPC compression by default 2014-03-11 22:55:40 -04:00
Marc-André Moreau
786c2afb56 libfreerdp-core: add bulk compression metrics 2014-03-11 22:52:21 -04:00
Marc-André Moreau
88bebd1f15 libfreerdp-core: add support for RDP4 MPPC compression 2014-03-11 22:33:41 -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
37e037ee71 libfreerdp-core: hook new MPPC compressor successfully 2014-03-11 20:58:35 -04:00
Marc-André Moreau
d52acf9099 libfreerdp-core: start hooking new MPPC compressor 2014-03-11 17:52:34 -04:00
Marc-André Moreau
d2ed1793fa libfreerdp-core: cleanup fastpath update fragmentation 2014-03-11 17:25:00 -04:00
Marc-André Moreau
affc5d5cc4 libfreerdp-core: further reduce fastpath output sending 2014-03-11 15:35:15 -04:00
Marc-André Moreau
69534400a6 libfreerdp-core: simplify server-side fastpath fragmentation code 2014-03-11 14:43:28 -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
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
891a10c4f6 libfreerdp-core: hook new MPPC decompressor 2014-03-10 15:57:39 -04:00
Mike McDonald
1daea0d0dc Modified transport_check_fds to deliver all available PDUs before returning to the caller. This prevents the caller from waiting indefinitely for a socket to get signalled that data is available. It fixes a problem with Microsoft mobile clients connecting to FreeRDS whereby the client places both the MCS Erect Domain and MCS Attach User PDUs into the same ethernet frame. As a result, FreeRDS was only processing the first PDU and then blocking indefinitely waiting for data to arrive on the socket. 2014-03-10 15:35:14 -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
2f756745e9 libfreerdp-core: wrap old MPPC implementation under rdpBulk 2014-03-10 13:15:10 -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
William Cheong Weelau
bcff95c8ab Update redirection.c
this is related to the changes in connection.c that we should resolve using the FQDN first, where trying an internal get us into RAP Access denied issue.
2014-03-10 11:21:11 +08:00