Norbert Federa
210985f99e
core: fix multifragment update capability exchange
2014-04-10 17:22:06 +02: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
Marc-André Moreau
5aa64a08b0
Merge pull request #1769 from nfedera/fix-2014-04-03-01
...
libfreerdp-core: fix transport_check_fds
2014-04-03 15:58:45 -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
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
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
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
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
00e6463e1e
channels/rdpdr: robustness improvements
2014-03-26 11:05:12 -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
Marc-André Moreau
20019f10b2
libfreerdp-codec: add NCrush offset cache decoding
2014-03-16 18:14:33 -04:00