Daniel Bungert
625f7c3c22
Add arguments for managing tls ciphers & netmon
...
This adds 2 arguments:
/tls-ciphers List of permitted openssl ciphers - see ciphers(1)
/tls-ciphers-netmon Use tls ciphers that netmon can parse
With KB2919355, client/server negotiate the use of
TLS cipher TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
which works fine except that netmon can't parse it.
By adding commandline /tls-ciphers-netmon, we restrict
the available ciphers to a list that netmon can
deal with. Also adds /tls-ciphers, which
accepts a string arg, for further customization.
2014-07-17 06:59:06 -06:00
Norbert Federa
8482eed323
core: addd missing PlaySound server callback
2014-07-16 15:38:10 +02:00
Armin Novak
689902c995
Moved update thread from client to library.
2014-07-14 19:27:50 +02:00
Vic Lee
29cb8680ce
server: allow partial channel read (fix rdpsnd).
2014-07-14 20:00:38 +08:00
Marc-André Moreau
8ae00f7385
shadow: start hooking X11 code as subsystem
2014-07-11 19:30:40 -04:00
Bernhard Miklautz
c99d4648ff
Merge pull request #1950 from hardening/kill_select
...
kill the last remaining select() in libfreerdp
2014-07-11 16:41:31 +02:00
Bernhard Miklautz
39d78ba707
Merge pull request #1954 from nfedera/fix-2014-07-10-01
...
transport_read: ensure stream buf size >= pdu size
2014-07-11 15:08:10 +02:00
Armin Novak
ad3255354d
Added WITH_LIBRARY_VERSIONING, allowing to build shared libraries without
...
SOVERSION information. (required by Android)
2014-07-11 11:53:58 +02:00
Hardening
3fce288c66
Fix unclean SSL disconnection
...
This patch prevent an infinite loop when the remote peer disconnect
the socket without cleanly closing the SSL connection.
2014-07-10 23:35:11 +02:00
Norbert Federa
c206a35c12
transport_read: ensure stream buf size >= pdu size
...
Without this check a simple nc < /dev/urandom server:3389 could
kill the server instantly.
2014-07-10 12:09:48 +02:00
Bernhard Miklautz
6a49bcfe40
winpr: always build "monolitic"
...
winpr is now always build as single library.
The build option MONOLITHIC_BUILD doesn't influence this behavior anymore.
The only exception is winpr-makecert-tool which is still build as extra
library.
This obsoletes complex_libraries for winpr.
2014-07-10 11:10:58 +02:00
Hardening
6223460557
kill the last remaining select() in libfreerdp
2014-07-09 11:28:41 +02:00
Benoît LeBlanc
18eaddc7fe
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
...
# By Marc-André Moreau (20) and others
# Via Mike McDonald (6) and others
* 'master' of git://github.com/awakecoding/FreeRDP: (26 commits)
libfreerdp-codec: fix C++ headers
libfreerdp-codec: fix ClearCodec short vbar cache hit
libfreerdp-codec: improve ClearCodec error checking
libfreerdp-codec: fix ClearCodec RLEX decoding
libfreerdp-codec: ClearCodec fix error codes and wrapping around of cursors
libfreerdp-codec: fix some ClearCodec flag checking
Fixed issue with last merge.
Added #ifdef WITH_OPENH264 ... #endif to appropriate places in the code.
libfreerdp-codec: handle long vbar length mismatch
channels/rdpgfx: add egfx command line options and settings
libfreerdp-codec: reduce number of variables
libfreerdp-codec: improve ClearCodec robustness
libfreerdp-codec: simplify ClearCodec code
Initial implementation of H.264 decoder for MS-RDPEGFX
libfreerdp-codec: improve ClearCodec subcodec xStart, yStart handling
libfreerdp-codec: improve ClearCodec subcodec support
libfreerdp-codec: improve ClearCodec error checking
libfreerdp-codec: more ClearCodec vBar caching
channels/rdpgfx: harden parsing code
libfreerdp-codec: add ClearCodec glyph cache
...
2014-07-08 16:45:59 -04:00
Benoît LeBlanc
84d0089401
Added KeyboardHook to settings
2014-07-08 16:32:28 -04:00
Marc-André Moreau
ac7d23b9a3
libfreerdp-gdi: migrate to _aligned_malloc/_aligned_free
2014-07-08 15:07:19 -04:00
Marc-André Moreau
c16000e67b
Merge branch 'master' of github.com:FreeRDP/FreeRDP into egfx
2014-07-08 12:29:30 -04:00
Marc-André Moreau
a0dad3fa87
Merge branch 'master' of https://github.com/dpoe/FreeRDP into egfx
2014-07-08 12:13:11 -04:00
Hardening
fd7b8170dc
Fix invalid timeout
...
timeout was set to 1000ms while in the old code it was 1000us. As 1ms
seems too small set it to 10ms.
2014-07-07 10:44:57 +02:00
Marc-André Moreau
5c5386fe04
channels/rdpgfx: add egfx command line options and settings
2014-07-03 14:35:03 -04:00
Hardening
542811291c
Use poll() instead of select() when available
...
select() has the major drawback that it cannot handle file descriptor
that are bigger than 1024. This patch makes use of poll() instead of
select() when poll() support is available.
2014-07-03 15:26:49 +02:00
Daryl Poe
fa06452a4b
add YCoCg->RGB and 16-to-32bit SSE
2014-07-02 14:30:04 -06:00
Marc-André Moreau
b60eff8e42
channels/remdesk: start sending authentication data
2014-06-30 12:51:27 -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
2a82684521
channels: cleanup unused freerdp channels global functions
2014-06-11 16:27:31 -04:00
Armin Novak
15ce8c0552
Updated plugins to use new svc_plugin and OnDataReceived API.
2014-06-11 14:42:32 +02:00
Marc-André Moreau
723e9a171b
libwinpr-sspi: fix server-side NLA
2014-06-10 14:38:17 -04:00
Marc-André Moreau
03cf7933d9
libwinpr-sspi: start implementing and using negotiate sspi module
2014-06-07 16:26:57 -04:00
Marc-André Moreau
a07f616895
libwinpr-sspi: improve link interface
2014-06-07 10:50:51 -04:00
Marc-André Moreau
220f885774
libwinpr-sspi: code hardening
2014-06-06 17:20:34 -04:00
Marc-André Moreau
940e6fbc15
libwinpr-sspi: make native sspi option dynamic
2014-06-06 15:34:12 -04:00
Vic Lee
63a1af4b35
transport: fix incorrect retval that caused unexpected redirect.
2014-06-04 15:57:27 +08:00
Martin Fleisz
d8061d23d6
Merge pull request #1882 from hardening/nla_fix
...
Nla fix
2014-06-04 09:30:34 +02:00
Martin Fleisz
6f1f4be0ae
Merge pull request #1873 from hardening/WTSVirtualChannelWriteCallers
...
Don't use NULL for pWrittenBytes when calling WTSVirtualChannelWrite()
2014-06-03 16:40:05 +02:00
Hardening
183155dbd1
Fix metrics leak
2014-06-03 14:54:56 +02:00
Marc-André Moreau
04968b18c4
libfreerdp-core: replace all OpenSSL built-in BIOs by new full duplex BIOs
2014-06-01 21:37:20 -04:00
Marc-André Moreau
a8be174e03
libfreerdp-core: remove ineffective full duplex locks
2014-06-01 11:20:13 -04:00
Marc-André Moreau
1ac2350ec5
libfreerdp-core: fail more gracefully when transport thread dies
2014-06-01 10:46:43 -04:00
Marc-André Moreau
c5e4c74bb6
libfreerdp-core: fix build on Windows
2014-05-30 15:29:06 -04:00
Marc-André Moreau
98077cfc24
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
libfreerdp/core/transport.c
2014-05-30 15:06:07 -04:00
Marc-André Moreau
b1416af362
libfreerdp-core: add locks to disable full duplex BIOs (currently unsafe)
2014-05-30 14:53:10 -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
Vic Lee
e4e1315131
transport: add another null pointer check.
2014-05-31 01:08:00 +08:00
Marc-André Moreau
629858b676
libfreerdp-core: add gateway-usage-method command line option, avoid resetting BIO flags we shouldn't reset
2014-05-30 12:31:26 -04:00
Vic Lee
a3461cef06
transport: add a null pointer check.
2014-05-30 23:34:04 +08:00
Hardening
07e0eba7db
Check that bpp has reasonable value
...
As bpp is often used for malloc computations, let's check that it has
a reasonable value.
2014-05-29 10:12:02 +02:00
Hardening
61a58532db
Check for bpp > 0
...
Bpp == 0 just makes no sense
2014-05-29 09:24:59 +02:00
Hardening
640b901396
Set checks to be strict and also check xorBpp field
...
This patch:
* renames bpp to xorBpp ;
* changes checks to strict ;
* adds checks on the xorBpp field
2014-05-29 00:12:48 +02:00
Hardening
532c42052a
Fixes for CVE-2014-0250
...
This patch introduce misc checks when receiving pointer updates. We check
that the cursor are in the bounds defined by the spec. We also check that
the announced mask sizes are what they should be.
2014-05-28 23:07:00 +02:00
Hardening
c076ffb020
Don't use NULL for pWrittenBytes when calling WTSVirtualChannelWrite()
...
Nothing in the MSDN API says that setting NULL is safe. And if the
implementation uses WriteFile directly, it crashes.
2014-05-28 17:04:24 +02: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
8d8e0c24fe
libfreerdp-codec: improve xcrush compressor error checking
2014-05-23 17:38:10 -04:00
Marc-André Moreau
67743b6832
libfreerdp-core: enable RDP6.1 XCrush compression/decompression by default
2014-05-23 14:11:53 -04:00
Marc-André Moreau
e8d3164f99
libfreerdp-core: fix windows build warning
2014-05-22 16:08:10 -04:00
Marc-André Moreau
b24c95ce59
libfreerdp-core: fix tcp_new on Windows
2014-05-22 15:13:00 -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
Hardening
3200baca4b
Correctly export ringbuffer function and fix a warning
2014-05-21 22:20:38 +02:00
Hardening
5c9a6408cf
Fixed invalid declaration and missing argument
2014-05-21 19:13:40 +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
0376dcd065
Fix OOM situation
2014-05-21 17:27:36 +02:00
Hardening
9c18ae5bee
Print function name when emiting an error
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
Marc-André Moreau
7113cf2858
Merge pull request #1852 from orosam/auth3fix
...
Fix misplaced sec_trailer in rpc_auth_3 PDU
2014-05-21 11:01:12 -04:00
Marc-André Moreau
6f8fda247b
Merge pull request #1844 from caramorsimon/tokenrouting
...
Test for CRLF (0x0D0A) termination on the routing token
2014-05-21 10:56:56 -04:00
Marc-André Moreau
472c231876
Merge pull request #1826 from Hobby-Student/master
...
fix FreeBSD compile errors
2014-05-21 10:53:47 -04:00
Sandor Oroszi
d447f122c3
libfreerdp-core: fix misplaced sec_trailer in rpc_auth_3 PDU
2014-05-20 17:15:26 +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
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
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
Marc-André Moreau
2b27fd51ad
Merge branch 'master' of github.com:mrthebunny/FreeRDP
2014-05-08 21:15: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
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
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
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
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
Hardening
597cba042a
Fix some compilation warnings
2014-04-29 16:02:31 +02:00
Vic Lee
7ed1e8a0f1
drdynvc: fix an incorrect length indicator.
2014-04-29 14:21:37 +08: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