Commit Graph

1403 Commits

Author SHA1 Message Date
Marc-André Moreau
472c231876 Merge pull request #1826 from Hobby-Student/master
fix FreeBSD compile errors
2014-05-21 10:53:47 -04:00
Hardening
86489f1c9a Merge pull request #1629 from bmiklautz/update_pull_1609
Android jpeg build enhancement
2014-05-20 22:10:17 +02:00
Sandor Oroszi
d447f122c3 libfreerdp-core: fix misplaced sec_trailer in rpc_auth_3 PDU 2014-05-20 17:15:26 +02:00
Hardening
c0087832ad Merge pull request #1839 from hardening/base64
Changes for base64
2014-05-20 11:17:47 +02:00
caramorsimon
8e77192ed8 Test for RoutingTokenLength before checking against termination chars 2014-05-18 21:32:26 +01:00
caramorsimon
a561e246e8 Test for CRLF (0x0D0A) termination on the routing token before trying to add it again 2014-05-16 16:19:22 +01:00
Hardening
729c24cedb Adds some support for valgrind helpers
This patch adds an option to compile freerdp in a valgrind compliant way.
The purpose is to ease memchecking when connecting with TLS. We mark bytes
retrieved from SSL_read() as plainly defined to prevent the undefined contamination.
With the patch and the option activated you get a single warning at connection
during the handshake, and nothing after.
2014-05-12 18:01:29 +02: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
8666e252f0 libfreerdp-common: fix AsyncUpdate get/set 2014-05-10 23:18:43 -04:00
Marc-André Moreau
5e97757939 freerdp: fix improper .rdp file parsing 2014-05-10 17:28:34 -04:00
Marc-André Moreau
b8d60d5715 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-05-10 10:59:56 -04:00
Marc-André Moreau
ee282a931b freerdp: fix build warnings on Windows 2014-05-10 09:50:36 -04:00
Hardening
e79c6b7d68 Treat OOM in GCC certificates
This patch treats OOM cases and do a trivial cleanup
2014-05-09 22:37:47 +02: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
2b27fd51ad Merge branch 'master' of github.com:mrthebunny/FreeRDP 2014-05-08 21:15:02 -04:00
Marc-André Moreau
a202fe4057 freerdp: fix several type related warnings 2014-05-08 18:02:02 -04:00
Marc-André Moreau
49975d7da5 libfreerdp-core: properly reset internal RDP state on reconnect 2014-05-08 17:22:39 -04:00
Marc-André Moreau
1c081c965f Merge branch 'xcrush' of github.com:awakecoding/FreeRDP 2014-05-08 16:11:55 -04:00
Marc-André Moreau
b0a9d7d690 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-05-08 16:11:42 -04:00
Marc-André Moreau
c2bdd5d413 Merge pull request #1825 from hardening/compil_warnings
Fix some compilation warnings
2014-05-08 16:09:18 -04:00
Marc-André Moreau
fab699badb Merge pull request #1835 from SBoyNumber1/rfx-issue1738
Fixed issue rfx problem: no rects #1738.
2014-05-08 16:08:42 -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
SBoyNumber1
f8c9f7a486 Fixed issue rfx problem: no rects #1738.
Added clipping of whole session in case when server sends zero rects.
2014-05-08 19:20:28 +03:00
Bernhard Miklautz
ddfce695df wtsvc: use _strnicmp instead of strncasecmp
_strnicmp is available for platforms
2014-05-07 20:36:22 +02:00
Bernhard Miklautz
9229a812bc wtsvc: add extended channel handling functions 2014-05-07 20:20:02 +02:00
Bernhard Miklautz
267d80d0d2 Merge pull request #1830 from hardening/certificate_fix
Fix null certificate that is not an error
2014-05-07 16:28:58 +02:00
Hardening
603a6378ff Fix null certificate that is not an error 2014-05-07 16:12:38 +02:00
Marc-André Moreau
88bee1fa6d libfreerdp-codec: start working on xcrush compressor 2014-05-05 20:47:30 -04:00
Marc-André Moreau
db328a1e93 libfreerdp-codec: initial RDP6.1 XCrush bulk data decompression support 2014-05-05 16:26:31 -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
Hobby-Student
04ae1c8c76 FreeBSD compile errors - fix timezone 2014-05-02 18:27:03 +02:00
Hobby-Student
5d816027df FreeBSD compile errors - fix typecast 2014-05-01 21:25:33 +02:00
Hobby-Student
18d70c6cda FreeBSD compile errors - add comments 2014-05-01 15:24:11 +02:00
Hobby-Student
b0ab566d61 FreeBSD compile errors - fix typo #2 2014-05-01 15:19:09 +02:00
Hobby-Student
03315cebe8 FreeBSD compile errors 2014-05-01 15:09:35 +02:00
Marc-André Moreau
5b0822a437 libfreerdp-core: avoid reusing LoadBalanceInfo on reconnection 2014-04-30 17:47:37 -04:00
Benoît LeBlanc
c82ece064c Merge branch 'master' of https://github.com/mrthebunny/FreeRDP
# By Marc-André Moreau
# Via Benoit LeBlanc (1) and Marc-André Moreau (1)
* 'master' of https://github.com/mrthebunny/FreeRDP:
  libfreerdp-core: fix potential crash on session redirection failure
2014-04-29 17:34:43 -04:00
Benoît LeBlanc
53694fbeba settings: GatewayBypassLocal TRUE by default 2014-04-29 17:34:34 -04:00
Vic Lee
02595df976 tls: WSAGetLastError should be used on Windows to check system socket error. 2014-04-29 23:05:30 +08:00
Hardening
597cba042a Fix some compilation warnings 2014-04-29 16:02:31 +02:00
Vic Lee
c8848fe4c8 tls: do not kill the connection for non-fatal openssl error codes. 2014-04-29 21:48:11 +08:00
Hardening
9848314a5d More fixes in DSP 2014-04-29 10:32:16 +02:00
Vic Lee
7ed1e8a0f1 drdynvc: fix an incorrect length indicator. 2014-04-29 14:21:37 +08: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
c2a59c23a7 libfreerdp-core: fix potential crash on session redirection failure 2014-04-28 16:44:52 -04:00
Marc-André Moreau
cadc3b8d3b Merge pull request #1819 from hardening/orders_micro_fix
Fix typo in update_write_4byte_unsigned()
2014-04-27 21:51:13 -04:00
Hardening
c03c1c75f3 Fix typo in update_write_4byte_unsigned() 2014-04-27 23:21:30 +02:00
Zhang Zhaolong
e40c5ce2ce libfreerdp-core: fix assignment after memory free. 2014-04-27 20:32:52 +08:00
Marc-André Moreau
8c54a436ea libfreerdp-core: fix compression level 2014-04-26 13:53:28 -04:00
Marc-André Moreau
769502ec72 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-04-26 13:47:01 -04:00
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
cb2fc70a5d codec: fix memory leak in case of realloc() failed. 2014-04-26 12:16:34 +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
dee9188191 update and improve pkg-config files
* generate pkg-config files top level to make sure all
  exports are available (eg. client/server)
* .pc libs section is now generated from export libraries
* update .pc file to use .private fields (prevent overlinking)
2014-04-23 13:12:23 +02: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
Marc-André Moreau
d893cee87a libfreerdp-codec: fix MPPC packet flushing criteria 2014-04-18 01:47:17 -04: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
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
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
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
90a070ac54 libfreerdp-codec: cleanup NCrush debug output 2014-04-01 14:03:12 -04:00
Marc-André Moreau
6ca7fc2894 libfreerdp-codec: fix ncrush_find_best_match 2014-04-01 13:58:39 -04:00
Marc-André Moreau
acf119f9f3 libfreerdp-codec: improve ncrush compressor 2014-04-01 12:18:13 -04:00
Marc-André Moreau
ea543557ab libfreerdp-codec: update ncrush with debug output 2014-03-31 17:04:19 -04:00
Marc-André Moreau
73087f1025 Merge branch 'ncrush' of github.com:awakecoding/FreeRDP into ncrush 2014-03-31 14:48:59 -04:00
Marc-André Moreau
305852b010 libfreerdp-core: start integrating NCrush compressor 2014-03-31 14:48:47 -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
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
Marc-André Moreau
669265d021 libfreerdp-core: initial NCrush decompression support 2014-03-16 18:01:02 -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