Commit Graph

1562 Commits

Author SHA1 Message Date
Armin Novak 2e110c7f35 Fixed codec reset, now resetting resolution too.
H264 and others require the surface resolution to work properly.
This initializes the codecs and the resolution on reset.
2016-03-02 14:46:33 +01:00
Bernhard Miklautz 014f31db35 Merge pull request #3171 from akallabeth/crypto_simplification
Crypto simplification
2016-02-29 17:10:53 +01:00
Bernhard Miklautz 92de4cf721 Merge pull request #3167 from realjiangms/shadow_export_default_subsystem
server/shadow: Export API to set built-in subsystem modules for freerdp-shadow-subsystem
2016-02-29 15:21:22 +01:00
zihao.jiang 176ad52bd5 server/shadow: Export API to set built-in subsystem modules for freerdp-shadow-subsystem 2016-02-28 13:51:19 +08:00
Armin Novak 238ff3b315 Unified encryption functions. 2016-02-27 23:28:49 +01:00
Armin Novak 5805ba8e52 Removed crypto_nonce. 2016-02-27 22:40:43 +01:00
Armin Novak dccf40c2bc Fixed duplicate loading of smartcard and printers. 2016-02-26 15:21:11 +01:00
Martin Fleisz 4f22682ed2 Merge pull request #3151 from akallabeth/timezone_refactor
Timezone refactor
2016-02-26 09:57:35 +01:00
Hardening 4217262680 Merge pull request #3156 from akallabeth/ssl_wrapper_merge
Ssl wrapper merge
2016-02-26 09:52:43 +01:00
David FORT aa7fe1d313 Fixed indentation 2016-02-25 15:03:14 +01:00
Armin Novak f997421098 Unified hmac functions. 2016-02-24 21:50:08 +01:00
Armin Novak ada2b16c50 Unified RC4 functions. 2016-02-24 17:04:03 +01:00
Armin Novak 06da644007 Unified md5 functions. 2016-02-24 16:46:25 +01:00
Armin Novak 0e4ea3943a Unified sha1 functions. 2016-02-24 16:36:15 +01:00
Armin Novak 447ac23aee Refactored timezone functions. 2016-02-24 09:28:30 +01:00
David FORT 1b2b1c4ac1 Add support for saveSessionInfo PDU
This patch adds some callbacks so that the client can have access to the informations
stored in this packet. Server-side implementation is also there, so that a server
can send these informations to the client.
2016-02-18 14:19:36 +01:00
Hardening 2a3e9996b3 Merge pull request #2710 from akallabeth/cert_temp_accept_v2
Extended certificate callbacks.
2016-02-15 13:52:47 +01:00
Nathan Kidd d68e58a9dc libfreerdp-codec: Make region16_rects() handle NULL nbRects
Now matches header documentation.  Also cleans up related doc grammar.
2016-02-12 10:11:51 -05:00
Armin Novak b35f6658b9 Moved common code from cli clients to client lib. 2016-02-05 02:05:37 +01:00
Armin Novak cbf2892ccc Implemented temporary certificate accept.
Certificates can now be accepted temporarily.
The callbacks for certificate validation have been
modified to extend the information presented to the user.
2016-02-05 02:04:57 +01:00
Armin Novak cd05ea7452 Fixed error checks for command line parser. 2016-02-01 15:18:34 +01:00
Armin Novak 035f127081 Added get_build_config functions. 2016-01-28 14:26:50 +01:00
Hardening d458bc2e06 Merge pull request #3073 from davewheel/cert_key_in_memory
Allow to specify the raw content of crypto materials
2016-01-27 10:50:38 +01:00
davewheel d5b8585a39 Allow to specify the raw content of crypto materials
Sometime it's possible that your server application doesn't have access to files
(when running in a very restricted environment for example). This patch allows
to ship the private key and certificate as a string.

Sponsored by: Wheel Systems (http://www.wheelsystems.com)
2016-01-21 11:27:06 +01:00
davewheel 121a234866 Add better handling of monitors
This patch makes FreeRDP announce the support for monitor layout PDU. It also
adds support for servers to announce the monitors layout.
2016-01-20 16:56:04 +01:00
Bernhard Miklautz 6fa3608111 cleanup cmake exports and pkg-config files
With this commit the "exported" components (usable with pkg-config and
cmake find module package)
* winpr - winpr library and headers
* freerdp - core library and headers
* freerdp-client - client specific library
* freerdp-server - server specific library
* rdtk - rdtk headers and library

To allow the installation of multiple different version (different major
number) the include files were moved into the respective sub folder:
freerdp -> freerdp{MAJOR}/freerdp (currently freerdp2/freerdp/)
winpr -> winpr{MAJOR}/winpr (currently winrp1/winpr/)
rdtk -> rdpk{MAJOR}/rdtk (currently rdtk0/rdtk/

The generated pkg-config and cmake find modules now also include the major
version number. Currently the following pkg-config are generated and
installed.
* winpr1
* freerdp2
* freerdp-server2
* freerdp-client2
* rdtk0

As cmake is able to handle multiple versions out of the box the
following can be used to find a specific module:

find_package(WinPR)
find_package(FreeRDP)
find_package(FreeRDP-Server)
find_package(FreeRDP-Client)
find_package(RdTk)

As cmake doesn't automatically resolve dependencies for packages it is
necessary to manually include the requirements. For example if
FreeRDP-Client is required WinPR and FreeRDP need to be included
(find_package) as well.

This commit also fixes the installation when STATIC_CHANNELS are built.
WITH STATIC_CHANNELS all channels are linked into libfreerdp-client, for
this all channels are generated as linker archive and linked together in
the final step. Before the intermediate linker archives were, although
not required and useful, installed. Same applies for server side
channels.
2016-01-12 17:32:33 +01:00
zihao.jiang 60ae27b00a server/shadow: Completely decouple subsystem implementations and shadow framework internal details.
It will be completely possible to implement subsystem with only include/freerdp/server/shadow.h and libfreerdp-shadow.

Details as following:
1. Exported surface structure as subsystem implementations deeply depend on it to send image update
2. Export capture APIs. They are actually indepent APIs to help compare and calculate image difference.
3. Introduce API to trigger client frame update. Conceal details in subsystem->updateEvent
4. Pass client to client callbacks. Subsystem implementation may need to know 'which client' send the interaction event as well as the authentication request.
Add this support in callback definition before anyone really use shadow framework APIs to implement a custom subsystem.
Also added callback for client capability exchange
5. Remove X11_ShadowSubsystem Mac_ShadowSubsystem Win_ShadowSubsystem from libfreerdp-shadow.
Discard FREERDP_API mark on ShadowSubsystemEntry functions and make them be compiled together with shadow.c in CMakeLists.txt.
This is required from PR #2751.
Now subsystem implementations and shadow.c could be regarded as an example for shadow framework.
2016-01-01 03:13:52 +08:00
Hardening df81e842a5 Merge pull request #2932 from realjiangms/fix_gdi_brush
GDI: Fix usage of gdi_get_brush_pointer.
2015-12-18 10:50:51 +01:00
Bernhard Miklautz 97edeca204 Merge pull request #2874 from akallabeth/stdtypes
Using stdint.h and stdbool.h for type definitions
2015-12-17 16:37:54 +01:00
Roland Kaufmann 6f6f0b0c53 Move UnmapButtons settings to stable ABI section
The Miscellaneous section is chosen because choosing not to map the
buttons is not a property of the input system, but rather an ad-hoc
setting to be applied to this session.
2015-12-16 23:21:43 +01:00
Roland Kaufmann 600d3c5ccb Add option to disable pointer button mapping
In case the old behaviour of not reverse-mapping the mouse buttons is
desirable, a command-line option is added to disable the mapping. This
option is made experimental for the time being.

The default is to do the reverse mapping, as this is the intuitive
behaviour (the mouse then works as it would on the console).
2015-12-15 17:42:57 +01:00
Armin Novak a5db7117c8 Implemented horizontal wheel support.
Horizontal mouse wheel input capabilities are now checked
and if available mouse buttons 6 and 7 are mapped to the
horizontal wheel for the X11 client.
2015-12-14 18:29:23 +01:00
Bernhard Miklautz 7f7ef1a464 Merge pull request #2831 from akallabeth/gdi_fix
Fixed GDI_BITMAP, now using custom deallocation function.
2015-12-14 17:58:25 +01:00
Hardening c44dc17bc7 Merge pull request #2980 from akallabeth/clipboard_struct_fixes
Fixed CLIPRDR_FILEDESCRIPTOR
2015-12-14 16:09:47 +01:00
Armin Novak 74c15a6309 Fixed freerdp_assistance_file_new argument declaration 2015-12-14 14:18:50 +01:00
Armin Novak 75fc2010a7 Fixed CLIPRDR_FILEDESCRIPTOR 2015-11-18 09:50:52 +01:00
Armin Novak f6e17ec65c Added audin support for mac os. 2015-11-12 16:10:39 +01:00
Bernhard Miklautz d73c4898c1 Add build-config.h
build-config.h should contain configure/compile time settings that are
relevant for projects that use FreeRDP.

For example the compiled in plugin search paths.
2015-11-09 15:54:22 +01:00
Norbert Federa 3eee70b164 Merge pull request #2926 from bjcollins/rail_fixes
Rail fixes
2015-11-06 13:34:42 +01:00
Martin Fleisz ab6485b3bf cliprdr/server: Add comment 2015-10-28 12:28:14 +01:00
Martin Fleisz 730f43a380 cliprdr/server: Provide the server with a possibility to configure capabilities 2015-10-27 17:12:33 +01:00
zihao.jiang 83d58ccfe8 GDI: Fix usage of gdi_get_brush_pointer.
Currently we get color from brush according to the offset in the paint region.
According to MSDN https://msdn.microsoft.com/en-us/library/dd183396(v=vs.85).aspx, it should get color according to dest position instead of offset in paint region.
2015-10-17 02:49:45 +08:00
bjcollins cc676c4468 Remote app support
All window state order offsets are signed according to the RDP spec, lets treat them as such.
2015-10-15 18:18:21 -05:00
Marc-André Moreau 029cbf3aca libfreerdp-gdi: fix egfx multimon support 2015-10-13 15:50:39 -04:00
MartinHaimberger d971116457 Merge pull request #2765 from akallabeth/connect_abort
Connect abort and unified TCP connect
2015-09-07 10:05:24 +02:00
Armin Novak 3b8043264f Resetting channel error on connect. 2015-09-03 13:46:17 +02:00
Norbert Federa 2d5e249eff Merge pull request #2825 from akallabeth/pointer_decoding_fix
Fixed color pointer decoding.
2015-09-01 11:09:42 +02:00
Marc-André Moreau a700d1d02d Merge pull request #2716 from realjiangms/shadow_xor_pointer
server/shadow: Fix alpha pointer message so that it allows pixel with both 'xor' and 'and'
2015-08-27 10:20:18 -04:00
Marc-André Moreau 97c38e7d8c Merge pull request #2739 from realjiangms/shadow_resize
server/shadow: Enhancement regarding the screen and resolution - addresize support and fix subRect feature
2015-08-27 10:19:25 -04:00
Armin Novak e6c23cb534 Implemented Async TCP connect with abort event
* Implemented unified freerdp_tcp_connect_timeout with connect abort.
* Implemented unified freerdp_tcp_connect_multi with connect abort.
* Added connect abort to freerdp_tcp_connect.
* Added freerdp_abort_connect and abortEvent.
2015-08-27 15:33:06 +02:00