Armin Novak [Tue, 2 Feb 2016 15:10:33 +0000 (16:10 +0100)]
Fixed stdbool.h and stdint.h detection.
When one of those headers is not detected the CMake
variable is undefined. Using it for a #define did break
things.
Martin Fleisz [Tue, 2 Feb 2016 09:02:00 +0000 (10:02 +0100)]
Merge pull request #3099 from akallabeth/mac_fullscreen
Mac fullscreen
Armin Novak [Tue, 2 Feb 2016 08:50:23 +0000 (09:50 +0100)]
Reformatted patch.
“John [Mon, 23 Mar 2015 12:54:04 +0000 (13:54 +0100)]
Mac Fullscreen + window title
* Set Mac window title according to command line
* Hände fullscreen command line switch
Bernhard Miklautz [Mon, 1 Feb 2016 12:02:38 +0000 (13:02 +0100)]
Merge pull request #3076 from akallabeth/remove_fixed_size_heap_strings
Removed fixed size strings.
akallabeth [Mon, 1 Feb 2016 12:00:23 +0000 (13:00 +0100)]
Merge pull request #3096 from bmiklautz/fix/nightlies
pkg/deb: fix nightly builds
Bernhard Miklautz [Mon, 1 Feb 2016 11:47:00 +0000 (12:47 +0100)]
pkg/deb: fix nightly builds
with the latest cmake changes related to static channels builds fail on
wheezy and precise this fixes the problem.
MartinHaimberger [Thu, 28 Jan 2016 14:26:04 +0000 (15:26 +0100)]
Merge pull request #3093 from hardening/last_write_checks
Check more Stream_EnsureCapacity results when writing capabilities
MartinHaimberger [Thu, 28 Jan 2016 14:23:24 +0000 (15:23 +0100)]
Merge pull request #3092 from akallabeth/get_build_config
Added get_build_config functions.
David FORT [Thu, 28 Jan 2016 14:12:26 +0000 (15:12 +0100)]
Check more Stream_EnsureCapacity results when writing capabilities
MartinHaimberger [Thu, 28 Jan 2016 13:36:50 +0000 (14:36 +0100)]
Merge pull request #3091 from akallabeth/wlog_warning_fix
Fixed return value of WLog_FileAppender_WriteImageMessage
akallabeth [Thu, 28 Jan 2016 13:30:18 +0000 (14:30 +0100)]
Merge pull request #3090 from akallabeth/drdynvc_size_checks
Fixed size checks (thanks to @virtman)
Hardening [Thu, 28 Jan 2016 13:28:51 +0000 (14:28 +0100)]
Merge pull request #3067 from akallabeth/reset_abort_event
Resetting abort event on freerdp_connect.
Armin Novak [Thu, 28 Jan 2016 13:26:50 +0000 (14:26 +0100)]
Added get_build_config functions.
Armin Novak [Thu, 28 Jan 2016 11:08:57 +0000 (12:08 +0100)]
Fixed return value of WLog_FileAppender_WriteImageMessage
Armin Novak [Thu, 28 Jan 2016 10:45:06 +0000 (11:45 +0100)]
Fixed size checks (thanks to @virtman)
Martin Fleisz [Thu, 28 Jan 2016 09:33:17 +0000 (10:33 +0100)]
Merge pull request #3078 from akallabeth/wlog_cmd_options
Added new command line options for logger.
Martin Fleisz [Thu, 28 Jan 2016 09:32:14 +0000 (10:32 +0100)]
Merge pull request #3088 from clangm/patch-1
fix typo
clangm [Wed, 27 Jan 2016 22:40:08 +0000 (15:40 -0700)]
fix typo
Pretty sure that's supposed to be __MACOSX__, not __MAXOSX__
Hardening [Wed, 27 Jan 2016 22:02:11 +0000 (23:02 +0100)]
Merge pull request #3087 from DavBfr/fix-png-load
Fix png image loading that needed write access
David PHAM-VAN [Wed, 13 Jan 2016 23:09:03 +0000 (15:09 -0800)]
Fix png image loading that needed write access
Armin Novak [Wed, 27 Jan 2016 10:21:04 +0000 (11:21 +0100)]
Fixed realloc check, renamed filter variable.
Hardening [Wed, 27 Jan 2016 09:50:38 +0000 (10:50 +0100)]
Merge pull request #3073 from davewheel/cert_key_in_memory
Allow to specify the raw content of crypto materials
Hardening [Wed, 27 Jan 2016 09:45:54 +0000 (10:45 +0100)]
Merge pull request #3083 from akallabeth/capability_set_fix
Fix #3081, set client string encoding.
Armin Novak [Tue, 26 Jan 2016 20:35:16 +0000 (21:35 +0100)]
Fix #3081, client string encoding.
Martin Fleisz [Wed, 27 Jan 2016 09:18:30 +0000 (10:18 +0100)]
Merge pull request #3069 from davewheel/4upstream-1
Improve monitor support
Martin Fleisz [Wed, 27 Jan 2016 09:13:32 +0000 (10:13 +0100)]
Merge pull request #3082 from hardening/check_client_and_server_capabilities
Check server and client capabilities
David FORT [Tue, 26 Jan 2016 15:14:48 +0000 (16:14 +0100)]
Check server and client capabilities
Most of the capabilities are sent by both the client and the server. But for some
the specs specify that they are only supposed to be only send by the server or the client.
This patch ensures this. Without this patch a malicious client can change server settings
and a malicious server can modify client settings.
Martin Fleisz [Tue, 26 Jan 2016 08:56:01 +0000 (09:56 +0100)]
Merge pull request #3080 from hardening/capa_write
Stream_EnsureCapacity return value aren't checked in capabilities_write
Armin Novak [Tue, 26 Jan 2016 08:34:22 +0000 (09:34 +0100)]
Fixed clientNameLen initialization.
David FORT [Mon, 25 Jan 2016 18:11:35 +0000 (19:11 +0100)]
Stream_EnsureCapacity return value aren't checked in capabilities_write
Armin Novak [Sat, 23 Jan 2016 14:16:13 +0000 (15:16 +0100)]
Added new command line options for logger.
The new command line options /log-level:<level> and
/log-filters:<filter>:<level> allow setting default log
level and log module filter to be set.
Hardening [Sat, 23 Jan 2016 13:42:20 +0000 (14:42 +0100)]
Merge pull request #3072 from giox069/master
Improve error logging after calling some BIO_ functions
Giovanni Panozzo [Wed, 20 Jan 2016 11:22:32 +0000 (12:22 +0100)]
Improve error logging after calling some BIO_ functions
Hardening [Fri, 22 Jan 2016 23:00:18 +0000 (00:00 +0100)]
Merge pull request #3070 from davewheel/ntlm_attrs
Handle more NTLM attributes
Bernhard Miklautz [Thu, 21 Jan 2016 20:29:42 +0000 (21:29 +0100)]
Merge pull request #3075 from akallabeth/winpr_header_install_fix
Added cmake patch from @david-geiger
Armin Novak [Thu, 21 Jan 2016 13:47:10 +0000 (14:47 +0100)]
Removed fixed size strings.
Armin Novak [Thu, 21 Jan 2016 14:26:32 +0000 (15:26 +0100)]
Added cmake patch from @david-geiger
davewheel [Wed, 20 Jan 2016 23:17:59 +0000 (00:17 +0100)]
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)
davewheel [Wed, 20 Jan 2016 21:21:05 +0000 (22:21 +0100)]
Handle more NTLM attributes
This patch adds the management of more NTLM attributes.
Sponsored by: Wheel Systems (http://www.wheelsystems.com)
davewheel [Wed, 20 Jan 2016 15:54:15 +0000 (16:54 +0100)]
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.
davewheel [Thu, 14 Jan 2016 20:00:41 +0000 (21:00 +0100)]
Fix a security issue in monitors packet handling
The number of announced monitors was not checked, so if a client was announcing
a big number, it could override other fields in settings and more...
Martin Fleisz [Tue, 19 Jan 2016 08:28:40 +0000 (09:28 +0100)]
Merge pull request #3014 from bmiklautz/winpr_nt_file
winpr: create a specific winpr nt file handle
Martin Fleisz [Tue, 19 Jan 2016 08:27:50 +0000 (09:27 +0100)]
Merge pull request #3059 from akallabeth/zlib_memleak_fix
Fix memory leak in lodepng_zlib_compress
Martin Fleisz [Tue, 19 Jan 2016 08:25:42 +0000 (09:25 +0100)]
Merge pull request #3066 from akallabeth/srccopy_fix
Fixed SRCCOPY, using memmove now.
Martin Fleisz [Tue, 19 Jan 2016 08:24:22 +0000 (09:24 +0100)]
Merge pull request #3068 from akallabeth/pkg_config_fix
Fix pkg-config generation.
Armin Novak [Mon, 18 Jan 2016 21:45:40 +0000 (22:45 +0100)]
Fix pkg-config generation.
Armin Novak [Mon, 18 Jan 2016 09:08:12 +0000 (10:08 +0100)]
Resetting abort event on freerdp_connect.
Armin Novak [Mon, 18 Jan 2016 08:32:34 +0000 (09:32 +0100)]
Fixed memory overlap check.
Armin Novak [Mon, 18 Jan 2016 08:18:42 +0000 (09:18 +0100)]
Fixed SRCCOPY, using memmove now.
memcpy is not defined, if source and destination overlap.
akallabeth [Fri, 15 Jan 2016 15:32:54 +0000 (16:32 +0100)]
Merge pull request #3062 from bmiklautz/build_fix
build: fix a problem with cmake version 2.8.11
Bernhard Miklautz [Fri, 15 Jan 2016 12:23:45 +0000 (13:23 +0100)]
build: fix a problem with cmake version 2.8.11
Starting with cmake 2.8.10 FreeRDP exports a cmake find module. With 2.8.12
the PRIVATE/PUBLIC keywords were introduced in cmake. When building with
2.8.11 it is not possible to mark link dependencies as private and
therefore they need to be exported.
Armin Novak [Fri, 15 Jan 2016 09:16:08 +0000 (10:16 +0100)]
Fix memory leak in lodepng_zlib_compress
Martin Fleisz [Fri, 15 Jan 2016 08:51:51 +0000 (09:51 +0100)]
Merge pull request #3052 from abma/fix3051
fix #3051: fullscreen switching with CTRL+ALT+ENTER doesn't work any …
Martin Fleisz [Fri, 15 Jan 2016 08:51:07 +0000 (09:51 +0100)]
Merge pull request #3054 from akallabeth/leak_fixes_v2
Leak fixes
Armin Novak [Thu, 14 Jan 2016 15:00:31 +0000 (16:00 +0100)]
Fixed uninitialized value.
Armin Novak [Thu, 14 Jan 2016 14:55:25 +0000 (15:55 +0100)]
Fixed memory leak on cleanup.
Armin Novak [Thu, 14 Jan 2016 14:42:20 +0000 (15:42 +0100)]
Fixed memory leak.
Armin Novak [Thu, 14 Jan 2016 14:36:34 +0000 (15:36 +0100)]
Fixed memory leak.
abma [Fri, 15 Jan 2016 00:59:08 +0000 (01:59 +0100)]
fix keyboard release (thanks hardening!)
akallabeth [Thu, 14 Jan 2016 09:58:45 +0000 (10:58 +0100)]
Merge pull request #3049 from bmiklautz/api2.0
Use major version only for SOVERSION
Bernhard Miklautz [Wed, 13 Jan 2016 16:37:19 +0000 (17:37 +0100)]
Use major version only for SOVERSION
For 2.0+ major will be increased if ABI/API isn't compatible anymore.
abma [Wed, 13 Jan 2016 22:05:32 +0000 (23:05 +0100)]
fix #3051: fullscreen switching with CTRL+ALT+ENTER doesn't work any more
Bernhard Miklautz [Wed, 13 Jan 2016 13:35:19 +0000 (14:35 +0100)]
Merge pull request #3048 from bmiklautz/pkg_2.0
pkg: fix .deb based packages
Bernhard Miklautz [Wed, 13 Jan 2016 13:14:04 +0000 (14:14 +0100)]
pkg: fix .deb based packages
Update the deb based packages to the latest changes
Hardening [Tue, 12 Jan 2016 19:46:53 +0000 (20:46 +0100)]
Merge pull request #3046 from bmiklautz/tls12
tls: enable tls 1+
Martin Fleisz [Tue, 12 Jan 2016 18:07:33 +0000 (19:07 +0100)]
Merge pull request #3043 from bmiklautz/prep2.0
Build system improvements and changes
Bernhard Miklautz [Tue, 12 Jan 2016 16:47:09 +0000 (17:47 +0100)]
Merge pull request #3045 from bmiklautz/adress_sanitize
build: support for address sanitizer
Bernhard Miklautz [Tue, 12 Jan 2016 16:43:14 +0000 (17:43 +0100)]
tls: enable tls 1+
Currently TLS version 1.0 is used implicitly by using the TLSv1_method.
To be able to also use TLS 1.1 and later use SSLv23_client_method
instead. To make sure SSLv2 or SSLv3 isn't used disable them.
Bernhard Miklautz [Mon, 11 Jan 2016 15:18:40 +0000 (16:18 +0100)]
add parameter buildconfig
Extend winpr and client/common to support a new option "/buildconfig".
When used build the following build specific information is print:
* cmake options
* cflags
* compiler
* target architecture
* cmake build type
Bernhard Miklautz [Fri, 8 Jan 2016 13:07:35 +0000 (14:07 +0100)]
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.
Bernhard Miklautz [Wed, 30 Dec 2015 17:45:09 +0000 (18:45 +0100)]
build: remove FREERDP_MONOLITHIC_BUILD
FREERDP_MONOLITHIC_BUILD was obsolete for a while and unused
Bernhard Miklautz [Wed, 30 Dec 2015 17:42:54 +0000 (18:42 +0100)]
update .gitignore files
* add missing entries
Giovanni Panozzo [Mon, 21 Dec 2015 07:00:14 +0000 (08:00 +0100)]
Add cmake flag -DWITH_SANITIZE_ADDRESS=on to enable GCC and clang AddressSanitizer
Bernhard Miklautz [Tue, 12 Jan 2016 16:03:35 +0000 (17:03 +0100)]
Merge pull request #3044 from akallabeth/duplicate_define_fix
Fixed broken duplicate define.
Armin Novak [Tue, 12 Jan 2016 15:38:53 +0000 (16:38 +0100)]
Fixed broken duplicate define.
Bernhard Miklautz [Wed, 16 Dec 2015 15:25:09 +0000 (16:25 +0100)]
winpr: create a specific winpr nt file handle
There exist two definitions of WINPR_FILE: in file/ and in nt/.
Both are different definitions used differently. Therefore split them
into WINPR_FILE and WINPR_NT_FILE.
Bernhard Miklautz [Sat, 2 Jan 2016 10:31:39 +0000 (11:31 +0100)]
Merge pull request #2871 from realjiangms/shadow_stand_alone2
server/shadow: Completely decouple subsystem implementations and shad…
zihao.jiang [Sun, 28 Jun 2015 08:20:49 +0000 (16:20 +0800)]
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.
Hardening [Fri, 18 Dec 2015 09:50:51 +0000 (10:50 +0100)]
Merge pull request #2932 from realjiangms/fix_gdi_brush
GDI: Fix usage of gdi_get_brush_pointer.
Bernhard Miklautz [Thu, 17 Dec 2015 15:37:54 +0000 (16:37 +0100)]
Merge pull request #2874 from akallabeth/stdtypes
Using stdint.h and stdbool.h for type definitions
Armin Novak [Thu, 17 Dec 2015 15:25:16 +0000 (16:25 +0100)]
Added comment to generated defines.
Armin Novak [Thu, 17 Dec 2015 12:30:41 +0000 (13:30 +0100)]
Removed obsolete wtypes.h
Armin Novak [Thu, 17 Dec 2015 12:15:00 +0000 (13:15 +0100)]
Renamed HAVE_STDXX_H in public header.
Bernhard Miklautz [Thu, 17 Dec 2015 11:51:10 +0000 (12:51 +0100)]
Merge pull request #3016 from akallabeth/fix_missing_wlog_includes
Fix wlog.h includes
Armin Novak [Thu, 17 Dec 2015 11:01:52 +0000 (12:01 +0100)]
Generating wtypes.h now with used defines.
Armin Novak [Thu, 17 Dec 2015 10:28:03 +0000 (11:28 +0100)]
Moved header detection defines to config.h
Armin Novak [Thu, 17 Dec 2015 09:59:59 +0000 (10:59 +0100)]
Added missing include.
Hardening [Wed, 16 Dec 2015 23:04:53 +0000 (00:04 +0100)]
Merge pull request #2779 from RolKau/2779_ptrbtn
Send correct buttons when using a left-handed mouse
Roland Kaufmann [Wed, 16 Dec 2015 22:21:43 +0000 (23:21 +0100)]
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.
Bernhard Miklautz [Wed, 16 Dec 2015 18:03:15 +0000 (19:03 +0100)]
Merge pull request #2816 from akallabeth/known_hosts_locking
Known hosts locking
Bernhard Miklautz [Wed, 16 Dec 2015 17:33:19 +0000 (18:33 +0100)]
winpr/file: disable buffering
When FILE streams are used per default buffering is enabled but
WriteFile/ReadFile shouldn't do any extra buffering.
Bernhard Miklautz [Wed, 16 Dec 2015 16:45:59 +0000 (17:45 +0100)]
makecert: fix installation of .a file
Since
cb958ba9c62f05d101b886218d885d2c26c6ba55 libwinpr-makecert-tool.a
wasn't installed anymore.
Armin Novak [Wed, 16 Dec 2015 16:35:59 +0000 (17:35 +0100)]
Fixed FILE* leak and EndOfFile settings.
Armin Novak [Wed, 16 Dec 2015 14:15:46 +0000 (15:15 +0100)]
Fixed unused warnings.
Bernhard Miklautz [Tue, 15 Dec 2015 16:43:32 +0000 (17:43 +0100)]
Merge pull request #2820 from akallabeth/pdb_file_install
Pdb file install
Roland Kaufmann [Mon, 13 Jul 2015 23:03:33 +0000 (01:03 +0200)]
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).
Roland Kaufmann [Mon, 13 Jul 2015 22:31:12 +0000 (00:31 +0200)]
Get pointer button mapping from input system
If XInput extension is available, then find the (first) pointer device
and use the button mapping of that one. If there are more than one
pointer devices, they could have different button mappings, but it is
not clear how this should be communicated to the RDP server.
If XInput is not available, attempt to fallback to the old global
mapping. (This mapping exists, but is not correct if there actually
is an XInput extension loaded, as it is then not used).
Roland Kaufmann [Mon, 13 Jul 2015 20:59:18 +0000 (22:59 +0200)]
Map logical to physical mouse button events
RDP expects to receive an indicator of the physical mouse button that
was pressed on the client, whereas X11 deliver a value for which
logical mouse button that was pressed.
This patch introduces a (reverse) mapping from logical mouse buttons to
physical mouse buttons, so that the RDP server can do correct mapping
for the event on its end.
However, no actual mapping is done here; this patch just introduces the
framework to do so. Thus, there should be no behavioural change from
this patch alone.
There is an implicit assumption that only the first three buttons are
mapped to eachother. Enabling more a general mapping would require
extensive changes to the event handling as fourth logical button and
up is used for special functionality such as wheel.
Armin Novak [Tue, 15 Dec 2015 16:19:58 +0000 (17:19 +0100)]
Changed symbol install to OFF.