Armin Novak
784696c1cd
Fixed missing includes and invalid replacement.
2014-08-11 09:38:08 +02:00
Armin Novak
bcb5f90ee6
Replaced perror with DEBUG_WARN
2014-08-11 09:19:23 +02:00
Benoit LeBlanc
b990c2002a
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
2014-08-08 11:42:53 -04:00
erbth
a8945306a1
Merge branch 'egfx' of https://github.com/awakecoding/freerdp into egfx
2014-08-08 15:22:47 +02:00
erbth
a8257b5201
fixed some memory leaks arround DVC and RDPEGFX
2014-08-08 15:19:49 +02:00
Armin Novak
b897c6a433
Replaced fprintf(stderr with DEBUG_WARN
2014-08-07 22:20:35 +02:00
Armin Novak
eecc8e2333
Removed debug.c
2014-08-07 21:38:11 +02:00
Pavel Tsekov
052173de5f
Do not assume 32bpp framebuffer when flipping NSCodec bitmaps.
...
* libfreerdp/gdi/gdi.c (gdi_surface_bits): Do not assume 32bpp
framebuffer when flipping NSCodec compressed bitmaps.
2014-08-07 20:37:06 +03:00
Pavel Tsekov
adb750f7ca
Convert NSCodec compressed bitmaps to framebuffer format.
...
* libfreerdp/gdi/gdi.c (gdi_surface_bits): Convert NSCodec compressed
bitmaps to framebuffer format.
2014-08-07 20:33:30 +03:00
Armin Novak
f00cb3d25c
Reverted previous replacements, not to be done for tests.
2014-08-07 19:05:22 +02:00
Armin Novak
a27706d129
Fixed missing includes.
2014-08-07 18:25:43 +02:00
Armin Novak
f4c133eaf8
Replaced custom logging mechanism with WLog wrapper.
2014-08-07 16:51:24 +02:00
Pavel Tsekov
c51c5df2ff
* include/freerdp/codec/color.h:
...
(freerdp_color_convert_drawing_order_color_to_gdi_color): Declare new
function.
* libfreerdp/codec/color.c:
(freerdp_color_convert_drawing_order_color_to_gdi_color): Implement.
(freerdp_image_convert_8bpp): Properly use the ARGB32/ABGR32/RGB32/BGR32
macros when converting 8bpp data to 32bpp.
(freerdp_image_convert_32bpp): Fix CLRCONV_ALPHA and CLRCONV_INVERT
processing for 32bpp destination.
(freerdp_mono_image_convert): Use ARGB32/ABGR32 when converting to 32bpp
and CLRCONV_ALPHA is set.
* libfreerdp/core/orders.c: Color data from drawing orders is
interpreted in big endian mode.
* libfreerdp/core/update.c (update_read_palette): Likewise.
* libfreerdp/gdi/16bpp.c (gdi_get_color_16bpp): GDI colors are stored as
RGB now.
* libfreerdp/gdi/32bpp.c (gdi_get_color_32bpp): Likewise.
* libfreerdp/gdi/gdi.c:
Use freerdp_color_convert_drawing_order_color_to_gdi_color() to convert
from drawing order color representation to GDI color representation
troughout.
* libfreerdp/gdi/graphics.c (gdi_Glyph_BeginDraw): Likewise.
(gdi_Glyph_EndDraw): Likewise.
2014-08-07 00:58:58 +03:00
Benoît LeBlanc
1f2f9dfbdc
fix gdi_resize: set primary_buffer to NULL to avoid use after free
2014-08-06 17:02:21 -04:00
Marc-André Moreau
9838200068
libfreerdp-core: fix unix domain socket support
2014-08-06 12:08:00 -04:00
Marc-André Moreau
2653c5420f
libfreerdp-codec: start processing tiles in progressive rfx
2014-08-06 10:23:14 -04:00
Marc-André Moreau
22d3b6c74b
libfreerdp-codec: remove old RemoteFX RLGR implementation in favour of faster one
2014-08-05 21:41:58 -04:00
Marc-André Moreau
b7ca13f19d
libfreerdp-codec: add RLGR3 support in new RLGR function
2014-08-05 21:26:47 -04:00
Marc-André Moreau
db5b947852
libfreerdp-codec: optimize RLGR1
2014-08-05 17:22:20 -04:00
Marc-André Moreau
e6dbbfb305
libfreerdp-codec: fix progressive RLGR1 decode
2014-08-05 17:07:06 -04:00
Marc-André Moreau
3895c930a3
Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow
2014-08-05 09:56:12 -04:00
Marc-André Moreau
85b1d6c167
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
libfreerdp/codec/h264.c
2014-08-05 09:55:54 -04:00
U-PAVEL\Pavel Tsekov
8a4f134fab
Revert to 15d2b35574
2014-08-05 14:35:31 +03:00
Marc-André Moreau
88e5bacda7
libfreerdp-codec: improve progressive rfx rlgr1
2014-08-03 00:08:22 -04:00
Marc-André Moreau
51f6ffd2ba
libfreerdp-codec: improve rfx progressive RLGR1 implementation
2014-08-02 22:26:05 -04:00
Marc-André Moreau
85026bff76
libfreerdp-codec: initial RLGR1 progressive implementation
2014-08-02 11:24:47 -04:00
Marc-André Moreau
14a3ff94eb
libfreerdp-codec: simplify block reading logic
2014-08-01 09:44:00 -04:00
Marc-André Moreau
574c1789b7
libfreerdp-codec: start processing progressive tiles
2014-07-31 15:08:54 -04:00
erbth
64501b895b
Merge branch 'egfx' of https://github.com/awakecoding/freerdp into egfx
...
Conflicts:
libfreerdp/codec/h264.c (deleted in my repo in order to get complete remote file)
2014-07-30 13:11:05 +02:00
erbth
55407bd4e8
repo prepared for merging #2
2014-07-30 13:08:08 +02:00
erbth
de46a0c738
repo prepared for merging
2014-07-30 12:46:52 +02:00
Marc-André Moreau
800be2f680
libfreerdp-codec: complete parsing of progressive codec block arrays
2014-07-29 17:37:46 -04:00
erbth
20e76411dc
H.264 hack and first port of YUV to XRGB format conversion to assembly
2014-07-29 21:42:04 +02:00
Marc-André Moreau
7c07035f29
Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
2014-07-29 13:41:57 -04:00
Marc-André Moreau
c060fb07a2
libfreerdp-codec: fix build on Windows
2014-07-29 13:41:21 -04:00
Marc-André Moreau
2b3cd39026
libfreerdp-codec: more parsing of progressive data blocks
2014-07-29 12:38:29 -04:00
Pavel Tsekov
8c3080f345
Fix 1bpp to 32bpp conversion with CLRCONV_ALPHA on
...
* libfreerdp/codec/color.c (freerdp_mono_image_convert): Use
ARGB32/ABGR32 when
using 32bpp framebuffer and CLRCONV_ALPHA is set.
2014-07-29 11:19:25 +03:00
Marc-André Moreau
a3de93d867
libfreerdp-codec: start parsing progressive codec
2014-07-28 23:41:16 -04:00
Bernhard Miklautz
a124f6a7c6
fix comment style
...
// to /* */
2014-07-29 05:22:30 +02:00
Bernhard Miklautz
a9eed46e38
Fix warnings found in Xcode
2014-07-29 05:22:30 +02:00
Bernhard Miklautz
8c318da7b1
fix compiler warnings
2014-07-29 05:22:29 +02:00
Bernhard Miklautz
b8415af0d8
Fix compiler warnings.
...
This commit is based on pull request #1493
2014-07-29 05:22:29 +02:00
Marc-André Moreau
0c408c213c
libfreerdp-codec: stub progressive codec decompressor
2014-07-28 17:42:23 -04:00
Marc-André Moreau
8321d7ffad
libfreerdp-codec: fix OpenH264 usage thanks to @erbth's hack
2014-07-28 17:22:02 -04:00
Marc-André Moreau
6c034f17eb
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-28 17:04:03 -04:00
Marc-André Moreau
780079d629
Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
2014-07-28 16:59:29 -04:00
Marc-André Moreau
b56eaccdc3
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
client/common/client.c
2014-07-28 16:58:32 -04:00
Marc-André Moreau
42ec69f9c7
Merge branch 'master' of github.com:awakecoding/FreeRDP
2014-07-28 16:47:56 -04:00
Marc-André Moreau
e303c3bd4c
channels: cleanup RDP8 virtual channels
2014-07-28 16:47:42 -04:00
Marc-André Moreau
15d2b35574
Merge pull request #1982 from bmiklautz/feat/read_pdu
...
Transport re-factor and clean up
2014-07-28 16:32:06 -04:00
Norbert Federa
cdcdec99bc
OpenSSL thread safety
...
freerdp/winpr had the following issues:
* The non reentrant SSL_library_init() was called concurrently (crash)
* Missing code/api to set the eventually required OpenSSL static and dynamic locking callbacks
* Missing code/api to free the application-global or thread-local OpenSSL data and tables
This commit creates two new winpr functions:
BOOL winpr_InitializeSSL(DWORD flags):
Use the flag WINPR_SSL_INIT_ALREADY_INITIALIZED if you want to tell winpr that
your application has already initialized OpenSSL.
If required use the flag WINPR_SSL_INIT_ENABLE_LOCKING to tell winpr that it
should set the OpenSSL static and dynamic locking callbacks.
Otherwise just call it with the flag WINPR_SSL_INIT_DEFAULT.
The recommended way is that your application calls this function once before
any threads are created. However, in order to support lazy OpenSSL library
initialization winpr_InitializeSSL() can also safely be called multiple times
and concurrently because it uses the new InitOnceExecuteOnce() function to
guarantee that the initialization is only performed successfully once during
the life time of the calling process.
BOOL winpr_CleanupSSL(DWORD flags):
If you create a thread that uses SSL you should call this function before the
thread returns using the flag WINPR_SSL_CLEANUP_THREAD in order to clean up
the thread-local OpenSSL data and tables.
Call the function with the flag WINPR_SSL_CLEANUP_GLOBAL before terminating
your application.
Note: This commit only replaced the current occurences of the
SSL_load_error_strings(); SSL_library_init(); pairs in the freerdp source
with winpr_InitializeSSL(). None of the server or client applications has been
changed according to the recommended usage described above (TBDL).
2014-07-28 21:55:57 +02:00
Bernhard Miklautz
b17045ddd8
fix: typos and formating
2014-07-28 13:12:01 +02:00
Marc-André Moreau
ef04373628
Merge branch 'master' of github.com:FreeRDP/FreeRDP
2014-07-26 14:43:10 -04:00
Daryl Poe
3794720455
correct Pause key sequence
...
(cherry picked from commit 46a00b5c9e
)
2014-07-25 11:31:50 +02:00
Bernhard Miklautz
bdad9524dc
refactor transport_read_pdu and check_fds
...
transport_check_fds and transport_read_pdu had almost the same
functionality: reading and validating one pdu at a time.
Now transport_read_pdu reads one pdu from the transport layer and verifies
that the pdu data is valid - as before.
transport_read_pdu also ensures that the stream is sealed and
rewound when the pdu is received completely.
transport_check_fds just uses transport_read_pdu and does *not* do
the verification a second time based on the stream.
Besides the clean up this fixes the following problems:
* transport_read always read 4 bytes. Fast-path input synchronize pdus
are only 3 bytes long. In this case on byte got lost in the stream
buffer which lead to "de-synchronization" of server and
client.
* Size check in tpdu_read_connection_confirm - already read bytes
weren't taken into account.
2014-07-24 16:34:59 +02:00
Bernhard Miklautz
47dd22ba87
transport refactor
...
rename transport_read to transport_read_pdu. This name is more
descriptive what the function actually does.
2014-07-24 16:34:59 +02:00
Bernhard Miklautz
2bb0659fb4
core: improve fast-path multifragment handling
...
* make sure fast-path packages are not fragmented if no
multifragment support was announced
* handle special server side case where the multifragment size
received from the client is smaller than one maximum fast-path
PDU size
2014-07-24 16:29:46 +02:00
Benoit LeBlanc
653d52bff3
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
2014-07-18 12:02:52 -04:00
Marc-André Moreau
d8b858811f
shadow: initial windows server-side connectivity
2014-07-17 21:15:22 -04:00
Marc-André Moreau
5d4f28a788
Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow
2014-07-17 17:33:33 -04:00
erbth
9501b6c58e
OpenH264 first frame decode fix
2014-07-17 16:25:34 +02:00
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
Marc-André Moreau
21571eea88
channels/remdesk: add PassStub generation
2014-07-15 20:09:19 -04:00
Vic Lee
8df60ecbe4
tls: fix some error handling.
2014-07-15 11:36:35 +08:00
Armin Novak
689902c995
Moved update thread from client to library.
2014-07-14 19:27:50 +02:00
Mike McDonald
4370c26e0d
Added the ability to decode H.264 frames using libavcodec and refactored code to make it a little cleaner.
2014-07-14 09:59:57 -04: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
Marc-André Moreau
4d3ea77972
Merge pull request #1917 from SBoyNumber1/BitmapCacheV3OnAndroid
...
Added detect of uncompressed data in CACHE_BITMAP_REV3_ORDER. According ...
2014-07-11 16:35:11 -04:00
Marc-André Moreau
61b35e2e8f
Merge pull request #1948 from jbd1986/fix-french-canadian
...
I am making several changes to clean up French Canadian keyboard defs.
2014-07-11 16:34:43 -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
Mike McDonald
1087b50e92
Added use of U/V planes to freerdp_image_copy_yuv420p_to_xrgb function.
2014-07-09 19:56:05 -04:00
Marc-André Moreau
03c91a92d1
libfreerdp-codec: add more egfx h264 debugging
2014-07-09 16:41:36 -04:00
Hardening
6223460557
kill the last remaining select() in libfreerdp
2014-07-09 11:28:41 +02:00
Marc-André Moreau
1a4b84ade4
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-08 18:04:49 -04:00
Mike McDonald
3e817090b9
Added SetOption calls to enable trace logging in OpenH264.
2014-07-08 17:45:48 -04:00
Marc-André Moreau
f7e5365719
libfreerdp-codec: add more gfx H264 debug output
2014-07-08 17:16:13 -04:00
Justin DeFields
00b01f1b4e
I am making several changes to cleanup French Canadian, with the end result being: ca,fr -> Canadian French ca,fr-legacy -> Canadian English ca,eng -> Canadian English. Currently ca,fr isn't defined, ca,fr-legacy thinks it's Canadian French and it isn't anyway because the value is wrong for that definition, and ca,eng is US.
2014-07-08 16:51:50 -04: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
ee8c0906f0
libfreerdp-codec: fix strict aliasing warnings in ncrush code
2014-07-08 15:59:23 -04:00
Marc-André Moreau
c492017fa1
libfreerdp-codec: fix build bot warnings
2014-07-08 15:48:29 -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
1a32c2e33e
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-08 12:20:30 -04:00
Marc-André Moreau
31b6459484
libfreerdp-codec: don't use posix_memalign
2014-07-08 12:18:41 -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
Marc-André Moreau
2f26ed58e5
libfreerdp-codec: reduce ClearCodec memory usage
2014-07-08 11:37:27 -04:00
Bernhard Miklautz
199d53bb00
Merge pull request #1942 from hardening/kill_select
...
Use poll() instead of select() when available
2014-07-08 16:36:04 +02:00
Marc-André Moreau
465ecb02a1
libfreerdp-codec: fix ClearCodec short vbar cache hit
2014-07-07 16:50:19 -04:00
Marc-André Moreau
44edb3025f
libfreerdp-codec: improve ClearCodec error checking
2014-07-07 15:48:56 -04:00
Marc-André Moreau
7489675ab9
libfreerdp-codec: fix ClearCodec RLEX decoding
2014-07-07 14:16:05 -04:00
Marc-André Moreau
9474784070
libfreerdp-codec: ClearCodec fix error codes and wrapping around of cursors
2014-07-07 12:17:37 -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
0ed7d3e6be
libfreerdp-codec: fix some ClearCodec flag checking
2014-07-05 16:29:28 -04:00
Marc-André Moreau
cd78e87525
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-05 15:35:37 -04:00
Mike McDonald
bcec880d29
Merge branch 'egfx' of https://github.com/awakecoding/FreeRDP into egfx
2014-07-05 06:52:27 -04:00
Mike McDonald
a539e8c20e
Updated coefficients for YUV to RGB conversion to match Microsoft, updated clip function, and added an initial implementation for upconverting 4:2:0 to 4:4:4.
2014-07-05 06:51:57 -04:00
Hardening
bf53f044bd
Fix missing include
2014-07-04 15:18:50 +02:00
Mike McDonald
07351ddff4
Fixed issue with last merge.
2014-07-04 03:52:05 -04:00
Mike McDonald
0ddd52a7db
Merged branch 'egfx' of github.com:awakecoding/FreeRDP into egfx
2014-07-04 03:16:55 -04:00
Mike McDonald
0a13972c7d
Added #ifdef WITH_OPENH264 ... #endif to appropriate places in the code.
2014-07-04 03:06:50 -04:00
Marc-André Moreau
92d143ad40
libfreerdp-codec: handle long vbar length mismatch
2014-07-03 16:09:53 -04:00
Marc-André Moreau
5c5386fe04
channels/rdpgfx: add egfx command line options and settings
2014-07-03 14:35:03 -04:00
Marc-André Moreau
bde954107d
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
...
Conflicts:
client/X11/xf_gfx.c
2014-07-03 12:03:39 -04:00
Hardening
7238bedd26
Link utils against winsocks
2014-07-03 17:53:02 +02:00
Marc-André Moreau
2f5011a438
libfreerdp-codec: reduce number of variables
2014-07-03 11:49:06 -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
Emmanuel Ledoux
e4840d3596
Merge remote-tracking branch 'upstream/master'
2014-07-03 11:56:00 +02:00
Daryl Poe
fa06452a4b
add YCoCg->RGB and 16-to-32bit SSE
2014-07-02 14:30:04 -06:00
Marc-André Moreau
4b80c46ae4
libfreerdp-codec: improve ClearCodec robustness
2014-07-02 14:51:46 -04:00
Marc-André Moreau
e20cfc1e2c
libfreerdp-codec: simplify ClearCodec code
2014-07-02 13:45:19 -04:00
Mike McDonald
4d3d78c487
Initial implementation of H.264 decoder for MS-RDPEGFX
2014-07-01 23:28:09 -04:00
Marc-André Moreau
4344932b56
libfreerdp-codec: improve ClearCodec subcodec xStart, yStart handling
2014-07-01 18:56:10 -04:00
Marc-André Moreau
1a80d0e156
libfreerdp-codec: improve ClearCodec subcodec support
2014-07-01 18:21:51 -04:00
Marc-André Moreau
4a4f4308b5
libfreerdp-codec: improve ClearCodec error checking
2014-07-01 16:32:36 -04:00
Marc-André Moreau
f304d8cc20
libfreerdp-codec: more ClearCodec vBar caching
2014-07-01 14:38:54 -04:00
Marc-André Moreau
c7604ff9ba
channels/rdpgfx: harden parsing code
2014-07-01 11:33:35 -04:00
Marc-André Moreau
8a5591bdef
libfreerdp-codec: add ClearCodec glyph cache
2014-07-01 09:55:52 -04:00
Marc-André Moreau
78e00db45d
Merge branch 'egfx' of github.com:awakecoding/FreeRDP into egfx
...
Conflicts:
libfreerdp/codec/test/TestFreeRDPCodecClear.c
2014-07-01 09:11:50 -04:00
Marc-André Moreau
de7d452d37
libfreerdp-codec: fix ClearCodec unit tests
2014-07-01 09:10:32 -04:00
Marc-André Moreau
ff816feb72
Merge branch 'master' of github.com:FreeRDP/FreeRDP into egfx
2014-07-01 09:01:52 -04:00
Marc-André Moreau
e42465372a
xfreerdp: initial remote assistance controls (ctrl+alt+c to request/release control)
2014-06-30 17:17:06 -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
af1be38775
client/common: parse and use remote assistance file
2014-06-28 18:33:46 -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
SBoyNumber1
473e6cd90a
Update bitmap.c
...
Third try to make Windows build.
2014-06-23 12:02:41 +03:00
SBoyNumber1
d0fc5227a0
Update bitmap.c
2014-06-21 15:23:24 +03:00
Marc-André Moreau
78d3c82798
xfreerdp: fix multiple egfx-related memory leaks
2014-06-20 13:52:13 -04:00
Marc-André Moreau
cd65a0d6b8
libfreerdp-codec: cleanup and fix insufficient rectangle array size in region16_union_rect
2014-06-20 12:35:21 -04:00
SBoyNumber1
5bbba65bbb
Added detect of uncompressed data in CACHE_BITMAP_REV3_ORDER. According to example from http://msdn.microsoft.com/en-us/library/gg441209.aspx .
2014-06-20 19:33:30 +03:00
Marc-André Moreau
160a3c4b61
libfreerdp-codec: avoid intermediate copy with planar egfx
2014-06-19 13:55:34 -04:00
Marc-André Moreau
57b0e4d010
libfreerdp-codec: handle flipping in planar decompression
2014-06-19 13:08:07 -04:00
Marc-André Moreau
f6d029d5ac
libfreerdp-codec: improve planar handling of scanlines
2014-06-19 12:11:06 -04:00
Marc-André Moreau
ea3822c357
libfreerdp-codec: cleanup planar decoder
2014-06-18 17:46:22 -04: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
27b1e76dbb
xfreerdp: fix egfx SurfaceToSurface overlapping copies
2014-06-12 21:02:25 -04:00
Marc-André Moreau
ae02b5b512
xfreerdp: start handling egfx surface-to-surface
2014-06-12 16:13:12 -04:00
Marc-André Moreau
2a82684521
channels: cleanup unused freerdp channels global functions
2014-06-11 16:27:31 -04:00
Marc-André Moreau
0901938590
channels/drdynvc: fix fragmented packets
2014-06-11 14:31:46 -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
cc71d7e66a
Using synchronized stream pool now.
2014-06-11 15:13:58 +02:00
Armin Novak
15ce8c0552
Updated plugins to use new svc_plugin and OnDataReceived API.
2014-06-11 14:42:32 +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
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
Marc-André Moreau
77c3de47d7
libfreerdp-codec: optimize zgfx history buffer wrap around
2014-06-05 18:09:37 -04:00
Marc-André Moreau
b4ba2c7a38
libfreerdp-codec: optimize zgfx bitstream
2014-06-05 15:41:42 -04:00
Marc-André Moreau
4e86211f34
libfreerdp-codec: refactor zgfx
2014-06-05 15:24:36 -04:00
Marc-André Moreau
161e7b0026
libfreerdp-codec: simplify zgfx segment processing
2014-06-05 14:52:27 -04:00
Marc-André Moreau
5f18f06e6f
Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
2014-06-04 19:05:04 -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
Marc-André Moreau
d6e955e6f1
channels/rdpgfx: stub bitmap decompression
2014-06-03 20:51:28 -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
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
462a26c8c3
Don't leak cert in case of failure
2014-06-03 15:19:00 +02:00
Hardening
a607b4553d
Fix certificate leak
...
There were a leak when doing TLS in server mode
2014-06-03 14:59:58 +02:00
Hardening
183155dbd1
Fix metrics leak
2014-06-03 14:54:56 +02:00
Hardening
4f1b77408a
Fix NLA authentication for server-side
...
This patch make copies of the server public key so that the NLA
authentication can be performed server-side.
2014-06-03 11:04:35 +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
e60a59134f
libfreerdp-common: add freerdp_update_gateway_usage_method helper
2014-05-30 12:55:17 -04: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
Vic Lee
a98e13a86e
tcp: add timeout to prevent buggy client from hanging.
2014-05-30 22:30:21 +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
Benoît LeBlanc
f57c694a3b
tls_prepare: suppressed a warning on Mac
2014-05-28 21:33:30 -04: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
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
5930b22263
libfreerdp-codec: fix xcrush packet flushing
2014-05-25 20:35:54 -04:00
Marc-André Moreau
d1b5ba0f28
libfreerdp-codec: start compressing some XCrush frames
2014-05-25 20:01:12 -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
c866d19bd4
winpr-crt: fix bit rotation macros
2014-05-23 14:00:46 -04:00
Marc-André Moreau
55e096a82f
libfreerdp-codec: add xcrush match optimization and output generation
2014-05-23 13:59:34 -04:00
Marc-André Moreau
ee935a3760
libfreerdp-codec: add match info functions
2014-05-22 17:38:01 -04:00
Marc-André Moreau
19b25a792e
winpr-crt: add bit rotation functions
2014-05-22 16:31:14 -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
e8d3164f99
libfreerdp-core: fix windows build warning
2014-05-22 16:08:10 -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
b24c95ce59
libfreerdp-core: fix tcp_new on Windows
2014-05-22 15:13:00 -04:00
Marc-André Moreau
ae368549ad
freerdp: fix compilation on Windows
2014-05-22 14:42:05 -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
2b1a27b9b6
Add .gitignore files for test generated files
2014-05-21 22:18:38 +02:00
Hardening
5c9a6408cf
Fixed invalid declaration and missing argument
2014-05-21 19:13:40 +02:00
Hardening
de1c08736f
Fix ringbuffer_write() to use const BYTE * instead of const void *
2014-05-21 19:12:51 +02:00
Hardening
d8eb1f284f
Updated license headers
2014-05-21 18:44:49 +02:00
Hardening
a04843bc9e
Fix some corner cases in ringbuffer and make unitary test have no leak
2014-05-21 18:32:59 +02:00
Hardening
5234e05843
Make ringbuffer C89 aware for VC
2014-05-21 18:17:39 +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
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
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
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