Commit Graph

2850 Commits

Author SHA1 Message Date
Armin Novak
00c32f62d3 Fixed alpha channel for color formats without. 2017-01-23 11:32:26 +01:00
Armin Novak
6188a12b37 Fixed planar with if local framebuffer is 16bpp 2017-01-23 11:32:25 +01:00
Bernhard Miklautz
85da68c334 Merge pull request #3703 from akallabeth/prim_optimize
[PERFORMANCE] Inlined heavily used functions
2017-01-23 10:39:02 +01:00
David Fort
f68888a978 Add a callback that allows to adjust monitors layout
This callback is useful in server mode when you want to adjust the monitor
layout just before the server monitor layout PDU is built and sent.
2017-01-19 18:05:44 +01:00
David Fort
e775a2a46f Treat the result of the Capabilities callback
The result was ignored. Plus return the correct value in case of licence error (-1
instead of FALSE).
2017-01-19 17:57:44 +01:00
Armin Novak
34eb0e5d9d Progressive structs to private header for tests. 2017-01-18 16:41:02 +01:00
Armin Novak
d9810dd7a4 Progressive struct now opaque. 2017-01-18 16:16:29 +01:00
Armin Novak
ace5100e21 Progressive conversion and speed fixes
* Using destination color format and precomputed tile stride
* Using preallocated logger
2017-01-18 15:28:53 +01:00
Armin Novak
7198970a4e Removed obsolete primitive usage. 2017-01-18 15:28:53 +01:00
Armin Novak
7e4c6c6a48 Optimized functions, removed duplicates. 2017-01-18 15:28:53 +01:00
Armin Novak
9cf6af36fb Inlined shift operations. 2017-01-18 15:28:53 +01:00
Armin Novak
326aafc7f8 Inlined freerdp_image_copy helpers. 2017-01-18 15:28:53 +01:00
Armin Novak
da84552ba7 Inlined interleaved helper functions. 2017-01-18 15:28:53 +01:00
Armin Novak
6be6eb2f18 Optimized freerdp_image_fill 2017-01-18 15:28:53 +01:00
Armin Novak
6b7b1cec39 Optimized general_YUV444ToRGB_8u_P3AC4R for BGRX 2017-01-18 15:28:53 +01:00
Armin Novak
4d40b3c58e Inlined heavy used functions. 2017-01-18 15:28:53 +01:00
Armin Novak
948e633ed3 Optimized general_RGBToRGB_16s8u_P3AC4R for BGRX 2017-01-18 15:28:53 +01:00
Armin Novak
d76ecc7662 Optimized general_yCbCrToRGB_16s8u_P3AC4R for BGRX 2017-01-18 15:28:53 +01:00
Bernhard Miklautz
de34329ed6 Merge pull request #3702 from akallabeth/clear_reset_fix
ClearCodec fix #3642
2017-01-18 14:28:27 +01:00
Martin Fleisz
95b3665f11 Merge pull request #3704 from bmiklautz/versioning
Library naming and man pages
2017-01-17 19:14:56 +01:00
Norbert Federa
1046c95751 Merge pull request #3669 from xhaakon/master
Limit MultifragMaxRequestSize in server mode
2017-01-16 18:18:43 +01:00
Bernhard Miklautz
3a4e1adee7 utils: remove unnecessary debug message.
Change the level from info to debug as it's nothing a regular users
would have interest in.
2017-01-16 11:11:58 +01:00
Bernhard Miklautz
bbb6bf6b43 Include major version number in library names
Currently it is not possible to cleanly install multiple major version
of FreeRDP concurrently as some of the development libraries (.so files)
files can conflict.

This change renames all libraries to include the major version number in
the library name to fix this limitation.

The list of changed libraries:

libwinpr-tools.so -> libwinpr-tools2.so
libwinpr.so -> libwinpr2.so
libfreerdp.so -> libfreerdp2.so
libfreerdp-client.so -> libfreerdp-client2.so
libfreerdp-shadow.so -> libfreerdp-shadow2.so
libfreerdp-server.so ->  libfreerdp-server2.so
libfreerdp-shadow-subsystem.so -> libfreerdp-shadow-subsystem2.so
libuwac.so -> libuwac0.so

As the library names have changed, projects that use FreeRDP will need to
update their dependencies. -
If pkg-config or cmake find modules are used, reconfiguration might be
sufficient.

Fixes #3460
2017-01-16 11:11:58 +01:00
Martin Fleisz
e218dc03af Merge pull request #3701 from akallabeth/progressive_inlined
[performance] Progressive inlined
2017-01-16 10:36:28 +01:00
Armin Novak
6fec7e591d Do not reset V-Bar storage. 2017-01-13 11:14:30 +01:00
Norbert Federa
71ce3378da Merge pull request #3665 from realjiangms/fix_ssl_add_all_digests
Winpr/openssl: Fix digests initialization in multi-thread
2017-01-13 09:46:14 +01:00
Martin Fleisz
99c9195218 Merge pull request #3694 from akallabeth/avc420_black_artifact_fix
Fixed solid fill command.
2017-01-13 09:24:52 +01:00
Martin Fleisz
ae9e6c9d7e Merge pull request #3688 from akallabeth/clear_codec_buffer_resize_fix
Clear codec buffer resize fix
2017-01-12 17:27:05 +01:00
Armin Novak
fa3af20771 Inlined progressive helper functions. 2017-01-12 15:35:19 +01:00
Armin Novak
ebfa0ccc7d Unified clipping of byte values. 2017-01-12 15:30:06 +01:00
Jakub Adam
463cb41596 Allow custom MultifragMaxRequestSize in server mode
FreeRDP calculates default request size in server mode based upon
the desktop resolution. In practice, however, I've found clients (namely
MS Lync 2013) which would show only a black screen when the value is
greater than 0x3EFFFF.

This change allows to override the default in such special cases by
assigning a different value to server->settings->MultifragMaxRequestSize
after the shadow server structure is initialized in shadow_server_new().
2017-01-11 16:36:05 +01:00
Armin Novak
2f9ec8c61a Unified clear internal buffer resize.
Internal datastructures now opaque.
2017-01-11 15:39:04 +01:00
Armin Novak
c444ccbe6e Removed duplicated format variable. 2017-01-11 15:39:03 +01:00
Armin Novak
8f58e7fc06 Initializing gdi.stride on resize. 2017-01-11 15:31:48 +01:00
Armin Novak
0bae21e619 Initialize alpha channel in planar decode. 2017-01-11 13:41:47 +01:00
Armin Novak
936e5a05dc Fixed solid fill command.
If the alpha channel must be ignored in this command.
2017-01-11 13:25:44 +01:00
akallabeth
3762401d43 Merge pull request #1750 from ccpp/master
Support for HTTP-Proxy
2017-01-11 11:02:00 +01:00
Martin Fleisz
72bcc7367e Merge pull request #3661 from akallabeth/error_status
Error status for DNS errors
2017-01-11 11:01:48 +01:00
akallabeth
1c39601740 Merge pull request #3684 from akallabeth/channel_attach_warn_fix
Fixed function argument types. #3683
2017-01-11 10:15:09 +01:00
Armin Novak
dd52f039f0 Fixed function argument types. #3683 2017-01-10 09:17:14 +01:00
akallabeth
8fd926f085 Merge pull request #3681 from mfleisz/openssl110_include_fix
Fix compilation with OpenSSL 1.1.0 using MSVC
2017-01-09 17:07:08 +01:00
Bernhard Miklautz
caebc3d629 Merge pull request #3680 from akallabeth/patblt_fix
Fixed patblt for mono color. #3678
2017-01-09 17:02:49 +01:00
Martin Fleisz
4f5aa69efc Merge pull request #3662 from akallabeth/session_detach_support
Session detach support
2017-01-09 16:58:57 +01:00
Martin Fleisz
ac090520c3 Fix compilation with OpenSSL 1.1.0 using MSVC 2017-01-09 16:43:28 +01:00
Armin Novak
08606323d6 Fixed software GDI line to pen color. 2017-01-09 16:35:34 +01:00
Bernhard Miklautz
6be43d43c2 Use common handle ids for all channels
Channels with regular and extended interface need to live in the same
handle name space otherwise they can't be uniquely identified in the
global channel manager.
2016-12-28 12:05:01 +01:00
Armin Novak
6d075ad719 Add "Ex" interface support for external channels
Support the VirtualChannelEntryEx interface also for channels that are
not static (as in compiled in).
2016-12-28 11:21:14 +01:00
zihao.jiang
a505a6cd27 Winpr/openssl: Fix digests initialization in multi-thread
SSL functions like OpenSSL_add_all_digests should be invoked at very beginning as they are not MT safe.
If not we might meet double free exception as following:

 #0  0x00007f23ddd71c37 in raise () from /lib/x86_64-linux-gnu/libc.so.6
 #1  0x00007f23ddd75028 in abort () from /lib/x86_64-linux-gnu/libc.so.6
 #2  0x00007f23dddae2a4 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
 #3  0x00007f23dddba55e in ?? () from /lib/x86_64-linux-gnu/libc.so.6
 #4  0x00007f23dc6ecfcd in CRYPTO_free () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
 #5  0x00007f23dc6ef8d1 in OBJ_NAME_add () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
 #6  0x00007f23dc77dcd8 in EVP_add_digest () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
 #7  0x00007f23dc782321 in OpenSSL_add_all_digests () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
 #8  0x00007f23c781da28 in winpr_openssl_get_evp_md (md=4) at /home/zihao/workspace/zihao_FreeRDP/winpr/libwinpr/crypto/hash.c:52
 #9  0x00007f23c781dccb in winpr_Digest_Init (ctx=0x7f22d064d470, md=<optimized out>) at /home/zihao/workspace/zihao_FreeRDP/winpr/libwinpr/crypto/hash.c:344
 #10 0x00007f23d486139b in security_salted_mac_signature (rdp=0x7f23859f5a20, data=0x7f238542d4fb "\004\204\022\004", length=4743, encryption=<optimized out>, output=0x7
     at /home/zihao/workspace/zihao_FreeRDP/libfreerdp/core/security.c:378
 #11 0x00007f23d488d73f in fastpath_send_update_pdu (fastpath=<optimized out>, updateCode=4 '\004', s=0x7f23859f5f40, skipCompression=true)
     at /home/zihao/workspace/zihao_FreeRDP/libfreerdp/core/fastpath.c:1076
 #12 0x00007f23d4891c4f in update_send_surface_frame_bits (context=0x7f23859f5540, cmd=0x7f22b2ffcc80, first=true, last=true, frameId=6)
     at /home/zihao/workspace/zihao_FreeRDP/libfreerdp/core/update.c:1041

Related reports: https://rt.openssl.org/Ticket/Display.html?id=2216&user=guest&pass=guest
2016-12-28 03:48:40 +08:00
Armin Novak
9f19da798c Added attach/detach support for channels. 2016-12-19 17:07:01 +01:00
Armin Novak
ece9491932 Printing a warning if a error is overwritten. 2016-12-19 14:13:36 +01:00