Commit Graph

2277 Commits

Author SHA1 Message Date
Hardening
f8120919af Add checks for some XXX_New and XXX_Add functions
Based on PR #2616
2015-05-18 11:28:00 +02:00
Norbert Federa
1b5abec683 client/x11: fixed if statements with empty body 2015-05-17 18:24:11 +02:00
Norbert Federa
51b697d4c8 transport/mfreerdp: fix async transport
- handle WAIT_TIMEOUT result as error in async transport thread
  if an INFINITE timeout was specified in WaitForMultipleObjects
- fix mfreerdp's async transport handling to not use
  freerdp_get_event_handles/freerdp_check_event_handles if async
  transport is activated
2015-05-14 21:57:16 +02:00
MartinHaimberger
e3236c2317 Merge pull request #2605 from nfedera/fix-2015-05-08-01
fixed multiple missing gdi return value checks
2015-05-11 16:59:32 +02:00
Norbert Federa
1eff1a345e free can handle NULL perfectly fine 2015-05-11 09:07:39 +02:00
Norbert Federa
71a4349928 fixed multiple missing gdi return value checks
mainly gdi_Create* functions
2015-05-08 21:39:23 +02:00
Marc-André Moreau
30dd40e10a wfreerdp: fix and improve remote assistance 2015-05-07 14:20:49 -04:00
Hardening
a88adcbb7e Merge pull request #2601 from nfedera/fix-2015-05-07-01
Fix some unchecked create calls
2015-05-07 19:06:59 +02:00
Norbert Federa
b2dcde35ee Merge pull request #2599 from hardening/fix_wayland_colors
Fix colors with the wayland client
2015-05-07 18:15:01 +02:00
David FORT
0e2925d0b8 Fix remoteApps
The assert that have been removed were preventing RAIL from working when you
have an intermediary screen before seeing the application.
2015-05-07 14:36:07 +02:00
Norbert Federa
e3fb908686 Fix unchecked CreateSemaphore calls 2015-05-07 13:28:03 +02:00
Marc-André Moreau
6b1fefea40 freerdp: fix remote assistance mode, add multi-address connection 2015-05-06 16:32:45 -04:00
David FORT
b09f6bedb7 Fix colors with the wayland client 2015-05-06 21:54:39 +02:00
Norbert Federa
25fc866a58 Fix unchecked CreateThread calls and misc fixes 2015-05-05 13:55:48 +02:00
Bryan Everly
df9ae5e31b Changed the xf_tsmf.c code to test for zero visible rectangles for all platforms. Modified arc4random() change to actually have a skeletal implementation in winpr for BCryptGenRandom() on all platforms. 2015-04-30 10:12:37 -04:00
Norbert Federa
ef1fd12b15 Fix unchecked CreateEvent calls and misc fixes
1)
Added missing checks for CreateEvent which also required the
following related changes:

- changed freerdp_context_new API to BOOL
- changed freerdp_peer_context_new API to BOOL
- changed pRdpClientNew callback to BOOL
- changed pContextNew callback to BOOL
- changed psPeerAccepted callback to BOOL
- changed psPeerContextNew callback to BOOL

2)
Fixed lots of missing alloc and error checks in the
changed code's neighbourhood.

3)
Check freerdp_client_codecs_prepare result to avoid segfaults
caused by using non-initialized codecs.

4)
Fixed deadlocks in x11 caused by missing xf_unlock_x11() calls
in some error handlers

5)
Some fixes in thread pool:
- DEFAULT_POOL assignment did not match TP_POOL definition
- don't free the pool pointer if it points to the static DEFAULT_POOL
- added error handling and cleanup in InitializeThreadpool
2015-04-29 18:18:39 +02:00
Bryan Everly
6ed90e831e Fixed linker warning about insecure crypto and fixed compiler warning about unsigned being compared to less than zero 2015-04-28 10:50:29 -04:00
Marc-André Moreau
1fea6bf702 Merge pull request #2568 from nfedera/fix-2015-04-23-01
codec/rfx: error checking and various fixes
2015-04-24 13:36:27 -04:00
Bryan Everly
18b335e2f2 Added support for manpage construction for OpenBSD 2015-04-24 08:38:35 -04:00
Norbert Federa
84577b1ca7 codec/rfx: error checking and various fixes
- removed some unneeded null checks for free()
- fixed a memory leak in shadow_client
- removed rfx_compose_message_header from API

Changed the following functions to BOOL, check the result
where they are called and handle failures:
- rfx_compose_message
- rfx_compose_message_header
- rfx_write_tile
- rfx_write_message_tileset
- rfx_write_message_frame_begin
- rfx_write_message_region
- rfx_write_message_frame_end
- rfx_write_message

rfx_process_message:
- check memory allocation failures
- verify protocol-conform order of data messages to prevents memory
  leaks caused by repeated allocations
- verify that header messages were parsed/received before the
  data messages
- treat unknown rlgr mode as error
- fixed/added error handling
- fixed all callers to check/handle result

rfx_encode_message:
- fixed incorrect usage of realloc
- missing malloc check
- missing check of CreateThreadpoolWork
- correct cleanup on failure (threadpool, memory)
- check rfx_encode_message result

rfx_encode_messages:
- check rfx_split_message result
- correct cleanup on failure
- prevent memory leak on failure

rfx_write_message_context:
- fixed invalid channelId value (must be 0xFF for WBT_CONTEXT)

rfx_process_message_codec_versions:
- fixed invalid read size of codec_version (it is 16bit)

rfx_process_message_channels:
- verify protocol conform channelId value

rfx_process_message_region:
- replaced invalid reallocs with malloc
- read and verify regionType and numTileSets from stream

rfx_process_message_tileset:
- check allocation results
- fixed incorrect usages of realloc

setupWorkers:
- fixed incorrect usages of realloc

rfx_split_message:
- removed dead code
- missing malloc check

rfx_compose_message:
- fixed a memory leak
- check/handle rfx_encode_message result
2015-04-23 15:42:21 +02:00
Armin Novak
7524ea53c6 Updated to new freerdp_get_event_handles API. 2015-04-22 11:17:47 +02:00
Armin Novak
a07d1c4b97 Updated wayland client to new API. 2015-04-22 11:16:41 +02:00
Hardening
6cd7713e12 Merge pull request #2544 from bmiklautz/boolenization
change return types of callbacks to BOOL
2015-04-22 11:01:27 +02:00
Bryan Everly
8c75127a67 Necessary changes to get latest branch working on OpenBSD 5.6 2015-04-21 14:42:06 -04:00
Bernhard Miklautz
1e6943bf31 Fix formating 2015-04-21 14:20:24 +02:00
Bernhard Miklautz
db81151ea4 gdi: fix broken return type checks
Integrates comments from pull request.
2015-04-21 14:18:07 +02:00
Bernhard Miklautz
2c072d33d3 Fix GDI return values and other fixes
* top level GDI functions return 0 on error and != 0 otherwise but the
  low level functions (16bpp.c, 8bpp.c 32bpp.c) which are called did it
	exactly the other way around. Those were adapted.
* change gdi_InvalidateRegion to BOOL and check calls where appropriate
* integrate comments from pull request
2015-04-21 14:18:07 +02:00
Bernhard Miklautz
515502ffa5 change return types of callbacks to BOOL
* change all client/server callbacks to BOOL
* update all clients accordingly
* add multiple return value checks
* small fixes
2015-04-21 14:18:07 +02:00
Bernhard Miklautz
43695bc15d ios: updates to build with xcode6+
* update tool chain to use clang instead of gcc
* add compatibility function for fwrite
2015-04-21 14:16:32 +02:00
Armin Novak
d3336340ba Add *get_event_handles handle count, return check. 2015-04-21 12:24:50 +02:00
Bernhard Miklautz
5622b911cb Merge pull request #2552 from akallabeth/sample_update
Sample update
2015-04-20 17:47:44 +02:00
Armin Novak
70cf129c55 Moved cleanup code, removed unused. 2015-04-19 10:39:08 +02:00
Armin Novak
efeb621721 Updated sample for new API. 2015-04-19 10:39:08 +02:00
Norbert Federa
fd5f47428b xfreerdp: fixed initial smart-sizing dimensions
The window width/height variables and in turn SmartSizingWidth/Height
get automatically updated in th the configure notify event handler.
If the window is created initially the values don't differ from the
event values and therefore SmartSizing was not applied until the
window was resized.
2015-04-16 23:54:56 +02:00
Norbert Federa
bad2f138c1 xfreerdp: FS fixes & smart-sizing resuscitation
- make smart-sizing work again which was killed in previous commits
- removed several unnecessary/ugly workarounds
- miscellaneous small fixes
- new feature: restore previous window position when toggling out of
  fullscreen mode
- new feature: if /f is specified in combination with /smart-sizing:WxH
  we run the session in the /smart-sizing dimensions scaled to full screen
2015-04-16 17:31:22 +02:00
Norbert Federa
eb14ab15f5 xfreerdp: removed some weird/unnecessary code 2015-04-16 17:31:22 +02:00
Norbert Federa
98505a0234 xfreerdp: removed desktopWidth/desktopHeight vars
These were basically unused (from the contexts's point of view)
and only served as temporary storage
2015-04-16 17:31:22 +02:00
Norbert Federa
b3b8306724 xfreerdp: removed unused variables from xf_monitor 2015-04-16 17:31:22 +02:00
Norbert Federa
6354a7561c xfreerdp: rename xf_context's width height vars
Since several contributers in the past repeatedly made the error
to treat xfc->width and xfc->height as equal with the x11 window
width and heigth I've renamed these variables to sessionWidth and
sessionHeight.
2015-04-16 17:31:22 +02:00
Bernhard Miklautz
0615c13dbb Fix regression introduced in 0b7f9d4
This fixes problems with command line parsing.
2015-04-02 22:53:45 +02:00
Armin Novak
878aecfa48 Fixed conversion warnings. 2015-03-31 15:18:45 +02:00
Bernhard Miklautz
3c7662517c hardening
Start to add missing checks for:
* *alloc
* *_New
2015-03-25 17:38:21 +01:00
Armin Novak
47f38b3059 Fixed uninitialized test argument buffer. 2015-03-23 14:14:38 +01:00
Marc-André Moreau
6202f48c12 libfreerdp-core: add configurable TSG/RGB fallback, fix edge cases 2015-03-19 11:44:47 -04:00
Marc-André Moreau
4faf8010b7 Merge pull request #2478 from akallabeth/win_sw_gdi_fix
Fixed resize for software GDI.
2015-03-19 09:35:31 -04:00
Armin Novak
f3d6a791e7 Fixed resize for software GDI. 2015-03-17 13:03:16 +01:00
Marc-André Moreau
2094501d8b freerdp: fix failing tests 2015-03-16 09:26:38 -04:00
Marc-André Moreau
c21bff5415 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2015-03-16 08:01:54 -04:00
Armin Novak
b39940e0a5 Added ignore unkown keyword flag to detection. 2015-03-16 10:25:31 +01:00
Armin Novak
c380fb3520 Added flag to ignore unknown keywords
freerdp_client_settings_parse_command_line now allows ignoring
unknown keywords.
2015-03-16 10:15:37 +01:00
Marc-André Moreau
afdd55fa81 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2015-03-13 15:30:31 -04:00
Marc-André Moreau
cb27703d2e Merge pull request #2461 from ivan-83/master
audin OSS support, dyn channels fix, dev arg broken fix, add debug verbosity, build warning fix
2015-03-13 15:19:35 -04:00
Zhang Zhaolong
5b2a8ee873 wr_cliprdr: fix uninitialized variable
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-13 10:32:21 +08:00
ivan-83
9e7e4ce7ff Merge branch 'master' of github.com:ivan-83/FreeRDP 2015-03-13 01:39:41 +03:00
ivan-83
7b3a552988 + audin OSS support (un tested now)
+ add: COMMAND_LINE_IGN_UNKNOWN_KEYWORD flag for CommandLineParseArgumentsA to ignory unknown keys without fail
+ add: lot of WLog_DBG() in drdynvc, add function names in existing
* change: error text in rdpsnd OSS
* fix: dev in rdpsnd does not work
* fix/change: audio-dev renamed to dev and now work in audin
* fix dynamic channels now work again
2015-03-13 01:28:44 +03:00
Marc-André Moreau
5ab34dfa3e Merge pull request #2456 from zhangzl2013/fix-realloc
Fix incorrect usage of realloc
2015-03-12 07:33:27 -04:00
Marc-André Moreau
0e339786e6 Merge pull request #2452 from bmiklautz/cmd_fix
settings: handle collection_add in detection case
2015-03-12 07:31:11 -04:00
Marc-André Moreau
719a0fd3e9 Merge pull request #2426 from bjcollins/master
xfreerdp fullscreen enhancements
2015-03-12 07:27:29 -04:00
Marc-André Moreau
cd569ca833 Merge pull request #2430 from serayrosh/master
release keys when xfreerdp is unfocused to prevent stuck keys
2015-03-12 07:25:00 -04:00
Zhang Zhaolong
7016847e3b wf_cliprdr: fix potential memory leak.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 16:37:28 +08:00
Zhang Zhaolong
19f2354ee4 fix build error.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 15:04:38 +08:00
Zhang Zhaolong
855b1201aa xf_cliprdr: fix incorrect usage of realloc.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 12:31:50 +08:00
Zhang Zhaolong
251d214d52 android_event: fix incorrect usage of realloc.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 12:29:37 +08:00
Zhang Zhaolong
0b7f9d4931 cmdline: fix incorrect usage of realloc.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 12:26:04 +08:00
Zhang Zhaolong
d1c508768e common/file: fix incorrect usage of realloc.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 11:32:51 +08:00
Zhang Zhaolong
3754cfad34 wf_cliprdr: fix incorrect usage of realloc.
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 11:27:39 +08:00
Bernhard Miklautz
e9985c2093 settings: handle collection_add in detection case
Command line detection is run with dummy settings where not everything
is allocated. Collections (device, dynamic channel and static
channel) didn't handle this case properly.
2015-03-10 13:10:39 +01:00
Seray Rosh
ffa7f0363f release keys when xfreerdp is unfocused to prevent stuck keys 2015-02-27 16:02:40 +01:00
Armin Novak
8b5f2c97ce Fixed bitmap context for 15bit color depth 2015-02-26 18:01:05 +01:00
Marc-André Moreau
8ee4cbdffd Merge branch 'gateway' of https://github.com/dvincent-devolutions/FreeRDP 2015-02-26 09:08:56 -05:00
Denis Vincent
baab23fd14 libfreerdp-core: Make tsg out channel recycling event driven 2015-02-24 15:34:41 -05:00
bjcollins
d4a9a2d3a8 Remove override redirect flag for fullscreen with keyboard grab enabled. Window manager should always know about the main window.
Small cleanup of passing around decorations flag.
Limit PercentScreen to single monitor vs. entire desktop. IMO - this is better behavior in a multimonitor environment.

Handle fullscreen windows better:
1. Ensure that size hints are set to allow resizing before setting a window to fullscreen as some window managers do not behave properly.
2. Handle fullscreen toggles without destroying and recreating window.
3. Use NET_WM_STATE_FULLSCREEN Extended Window Manager Hint for fullscreen functionality
4. Use the NET_WM_FULLSCREEN_MONITORS Extended Window Manager Hint when appropriate
5. When a single monitor fullscreen is requested - use the current monitor(as determined from mouse location)
6. Handle cases where there is no local monitor at coordinate 0,0. The Windows server expect there to be a monitor at this location, so we maintain offset if necessary between our local primary monitor and the server side primary monitor located at 0,0.
2015-02-23 11:22:28 -06:00
Zavadovsky Yan
60c79f5450 client/Android: fix coords calculation in previous commit 2015-02-23 11:50:32 +03:00
Zavadovsky Yan
082e7b8661 client/Android: optimize android_end_paint() logic
1. Don't draw to screen if server sends begin/end paint
messages without any real updates.
2. Redraw only summary region that covers really invalidated
part of screen.
2015-02-21 23:52:38 +03:00
Zavadovsky Yan
ac8b50c464 client/Android: fix bad realloc
Fast and long pointer moves cause app to crash.
2015-02-21 23:51:02 +03:00
Marc-André Moreau
f9885da81c Merge branch 'master' of github.com:FreeRDP/FreeRDP 2015-02-18 09:51:11 -05:00
Marc-André Moreau
991f7b347d libfreerdp-core: further abstract multiple connections used internally by tsg from rdpTransport 2015-02-15 10:06:17 -05:00
bjcollins
ad3cb384d4 Fix the command line argument array setup for decorations argument. The initial value was set for the wrong field in the structure. The decorations is correctly initialized to on
anyways, but this is the correct formatting for the array element.
2015-02-13 14:57:52 -06:00
Marc-André Moreau
c817da07e1 Merge pull request #2386 from bjcollins/master
Fix remote app in xfreerdp.
2015-02-12 10:14:23 -05:00
Martin Fleisz
66deaf8cfe Merge pull request #2379 from streetdragon/master
Replaced ternary operator with condition only
2015-02-12 10:42:55 +01:00
bjcollins
ee8d0a6440 Fix remote app in xfreerdp.
Remove use of the visibleOffset, this completely breaks the display of all windows except for the main application window. Instead,
just maintain a local offset correction of the windowOffset.

Apply workaround to determining the workArea for remote app mode.
2015-02-11 17:24:06 -06:00
Kurt McAlpine
9b1450f759 Replaced ternary operator with condition only 2015-02-11 11:15:25 +13:00
Marc-André Moreau
22ac46957a xfreerdp: fix egfx multimonitor support 2015-02-10 16:32:07 -05:00
Marc-André Moreau
9b9fbd2ab1 xfreerdp: fix fullscreen mode 2015-02-10 15:15:30 -05:00
Marc-André Moreau
b025d83919 Merge pull request #2374 from bjcollins/master
Apply correct exit code to xfreerdp application for certain log offs
2015-02-10 10:41:10 -05:00
bjcollins
bb87599f80 Apply correct exit code to xfreerdp application for log off from certain flavors of Windows. 2015-02-09 17:15:07 -06:00
Armin Novak
b4db02867a Fixed resource cleanup on disconnect. 2015-02-09 17:33:55 +01:00
Marc-André Moreau
8b524021f1 xfreerdp: fix egfx multimon on reconnect 2015-02-06 17:46:15 -05:00
Marc-André Moreau
fa06c4d401 libfreerdp-core: improve reconnection 2015-02-06 14:21:26 -05:00
Marc-André Moreau
82d58086db xfreerdp: partial reconnect fixes 2015-02-05 17:01:56 -05:00
Marc-André Moreau
7af90f13ef wlfreerdp: fix unused variable warning 2015-02-04 11:40:19 -05:00
Bernhard Miklautz
5558f7cd54 xfreerdp: fix problem with SetPosition
Since XWarpPointer generates an pointer motion event, as if the mouse
was moved by hand, xfreerdp sends back the received mouse position to
the server. This behavior is wrong since pointer positions set via
server pointer update pdu shouldn't get sent back to the server
(it's not a "real" mouse move).

To fix this problem change the x windows event mask to not handle
pointer motion events before setting the new pointer position and change
it back again afterwards.

Possible downside of this is that some pointer motion events might get
lost but this shouldn't be noticeable.

Thanks to nfedera for the neat idea ;).
2015-02-03 22:08:34 +01:00
Bernhard Miklautz
823dbb1dd0 xfreerdp: add support to set pointer 2015-02-02 15:32:49 +01:00
Marc-André Moreau
7c6948cd5c xfreerdp: make use of freerdp_get_event_handles 2015-01-30 09:47:02 -05:00
Marc-André Moreau
3a906caa4a freerdp: add event handle usage instead of file descriptors 2015-01-29 22:57:58 -05:00
Marc-André Moreau
977cd21919 libfreerdp-core: don't enable GatewayBypassLocal by default 2015-01-28 15:16:31 -05:00
Marc-André Moreau
b73e61de6b Merge pull request #2320 from nfedera/fix-2015-01-20-01
build/win32: fix static build
2015-01-22 16:05:55 -05:00
Armin Novak
dd9e1879b6 Updated h264_decompress arguments. 2015-01-22 13:24:33 +01:00
Norbert Federa
bd345ed416 build/win32: fix static build
version.rc must only be included in client executable
2015-01-20 16:23:05 +01:00
Marc-André Moreau
9bc32c2a85 Revert "Moved channel loading, now only loading before connect."
This reverts commit f7756efca6.
2015-01-20 10:15:37 -05:00
Armin Novak
ecad3d5b5c Fixed iOS undeclared identifier error. 2015-01-20 12:42:02 +01:00
Armin Novak
f7756efca6 Moved channel loading, now only loading before connect. 2015-01-20 12:13:08 +01:00
Armin Novak
b621c542c4 Resetting DynamicChannelCount on addin load now. 2015-01-20 11:26:53 +01:00
Armin Novak
a3c8dec121 Prettiefied WLog messages. 2015-01-20 11:26:08 +01:00
Armin Novak
a7eb657db2 Using freerdp_channels_disconnect now. 2015-01-20 11:26:00 +01:00
Armin Novak
0700b806c1 Using freerdp_channels_disconnect now. 2015-01-20 11:25:14 +01:00
Armin Novak
5bc1e41109 Using freerdp_channels_disconnect now. 2015-01-20 11:24:58 +01:00
Armin Novak
c935b4390e Using freerdp_channels_disconnect now. 2015-01-20 11:24:36 +01:00
Armin Novak
817c5a1a17 Using freerdp_channels_disconnect now. 2015-01-20 11:24:26 +01:00
Armin Novak
be2cf5595e Using freerdp_channels_disconnect now. 2015-01-20 11:24:14 +01:00
Armin Novak
28da3ea620 Using freerdp_channels_disconnect now. 2015-01-20 11:24:03 +01:00
Norbert Federa
344362a8a3 clients: fix "focus in event" issues
The input->FocusInEvent callback implementations (normal and fast-path) have
always sent the mouse position even if the pointer was outside of the freerdp
client area. In addition xfreerdp used the wrong pointer coordinates which
were relative to the root window instead of its own.
On focus-in the pointer position must only be sent if the pointer is
currently within the program's client area. However, the clients had no way
to pass that information to input->FocusInEvent which required an API change.

- removed mouse pointer x, y parameters from input interface's FocusInEvent
- clients are responsible to call input->MouseEvent on focus-in if necessary
- fixed xfreerdp and wfreerdp accordingly
2015-01-16 18:40:57 +01:00
Bernhard Miklautz
1b18e97d7e TestClientCmdLine: fix formating 2015-01-16 00:54:45 +01:00
Bernhard Miklautz
c70293aa60 Fix clang compiler warnings 2015-01-16 00:41:57 +01:00
Bernhard Miklautz
ddd96d0968 Add test for client command line
TestClientCmdLine tests if the client command line parsing
works for new and legacy command line syntax.
2015-01-16 00:25:13 +01:00
Bernhard Miklautz
5d4de15401 xfreerdp: fix crash with /monitor-list
Catch the case when /monitor-list was used but the X display couldn't
be opened or wasn't available.
2015-01-16 00:10:36 +01:00
Marc-André Moreau
31f3c7278b Merge pull request #2310 from akallabeth/compatibility_cmdline_fix
Compatibility cmdline fix
2015-01-15 14:55:13 -05:00
Armin Novak
9863ccfe66 Fixed memory leak. 2015-01-15 17:19:39 +01:00
Armin Novak
dfb6176df6 Fixed multiple parsing errors for compatibility command line. 2015-01-15 17:14:29 +01:00
Armin Novak
f86ed3ffef Fixed windows command line
freerdp_detect_windows_style_command_line_syntax returns negative values
in error but also in help and version case... oh boy
2015-01-15 16:01:57 +01:00
Armin Novak
e10b42e305 Fixed typo. 2015-01-15 15:26:43 +01:00
Armin Novak
9767f7f042 Added patch for UTF8 window titles, fixes #1364 2015-01-15 14:25:43 +01:00
Armin Novak
241848038c Fixed missing NULL pointer check. 2015-01-15 14:08:33 +01:00
Armin Novak
20f7e4d301 Fixed clang warnings.
Fixed check for compatibility command line.
2015-01-15 13:57:28 +01:00
Armin Novak
1d4403cbbe Fixed command line pre filter, now returning 2 to skip argument. 2015-01-15 13:56:54 +01:00
Marc-André Moreau
1d8d363b7a Merge pull request #2299 from bmiklautz/fix/osx_build
mfreerdp: fix build with latest cmake
2015-01-14 11:23:35 -05:00
Armin Novak
7dda510dda Resetting disconnect flag on client start.
Fixed initialisation of variable to avoid NULL dereference.
2015-01-13 12:43:27 +01:00
Armin Novak
524e4635fd Fixed typos.
gdi_free now done on disconnect.
2015-01-13 12:00:51 +01:00
Bernhard Miklautz
9ab95adf0d mfreerdp: fix build with latest cmake
Newer versions of cmake seem to use CMAKE_C_FLAGS for objective-c.
Now both flags are set for compatibility.
2015-01-11 19:29:50 +01:00
Marc-André Moreau
b552aa9363 libfreerdp-core: add support for multiple redirection target addresses 2014-12-27 18:53:27 -05:00
Marc-André Moreau
5e6b3de74e xfreerdp: fix usage of incorrect target clipboard format id 2014-12-26 11:30:09 -05:00
Marc-André Moreau
1e7941297e mfreerdp: fix clipboard missing last character and extra last character 2014-12-21 14:17:51 -05:00
Marc-André Moreau
e6eeae2ddd xfreerdp: fix clipboard null byte at end of string (issue #2209) 2014-12-21 13:49:22 -05:00
Marc-André Moreau
f1bd547580 Merge branch 'master' of github.com:FreeRDP/FreeRDP
Conflicts:
	client/X11/xf_client.c
2014-12-15 15:55:51 -05:00
Norbert Federa
5c68b1cf22 xfreerdp: fix RDP order color conversion
Note: /gdi:sw was working fine, this commit fixes /gdi:hw

* calculate color channel shifts based on X11 visual color masks
* fast path to skip conversion if visual color masks equal rdp color masks
* successfully tested 8/15/16/24/32 bpp rdp sessions on 16/24/32 bpp visuals
2014-12-15 16:34:09 +01:00
Marc-André Moreau
e2f377ae11 libfreerdp-core: fix TSG thread shutdown and input freeze problem 2014-12-15 09:42:04 -05:00
Bernhard Miklautz
1b663ceffe build: cmake 3.1 compatibility
* fix problem with REMOVE_DUPLICATES on undefined lists
* since 3.1 file(GLOB FILEPATHS RELATIVE .. returns single / instead of // as
  previously - necessary adoptions for regex and matches done. Should
	work with all cmake versions.

Tested with 3.1.0-rc3
2014-12-12 19:26:22 +01:00
Bernhard Miklautz
10ee2f72d9 Mac: set policy to silent cmake >= 3.0 warnings
Set the following policies to "OLD" if cmake version is greater than
2.8.12:

CMP0026 - Disallow use of the LOCATION target property
CMP0045 - Error on non-existent target in get_target_property
2014-12-12 19:25:43 +01:00
Marc-André Moreau
74bef0edca Merge pull request #2275 from awakecoding/master
TS Gateway Fixes
2014-12-12 09:33:52 -05:00
Norbert Federa
939f1c639a Standard RDP Security Layer Levels/Method Overhaul
[MS-RDPBCGR] Section 5.3 describes the encryption level and method values for
standard RDP security.

Looking at the current usage of these values in the FreeRDP code gives me
reason to believe that there is a certain lack of understanding of how these
values should be handled.

The encryption level is only configured on the server side in the "Encryption
Level" setting found in the Remote Desktop Session Host Configuration RDP-Tcp
properties dialog and this value is never transferred from the client to the
server over the wire.
The possible options are "None", "Low", "Client Compatible", "High" and
"FIPS Compliant". The client receices this value in the Server Security Data
block (TS_UD_SC_SEC1), probably only for informational purposes and maybe to
give the client the possibility to verify if the server's decision for the
encryption method confirms to the server's encryption level.
The possible encryption methods are "NONE", "40BIT", "56BIT", "128BIT" and
"FIPS" and the RDP client advertises the ones it supports to the server in the
Client Security Data block (TS_UD_CS_SEC).
The server's configured encryption level value restricts the possible final
encryption method.
Something that I was not able to find in the documentation is the priority
level of the individual encryption methods based on which the server makes its
final method decision if there are several options.
My analysis with Windows Servers reveiled that the order is 128, 56, 40, FIPS.
The server only chooses FIPS if the level is "FIPS Comliant" or if it is the
only method advertised by the client.

Bottom line:
* FreeRDP's client side does not need to set settings->EncryptionLevel
(which was done quite frequently).
* FreeRDP's server side does not have to set the supported encryption methods
list in settings->EncryptionMethods

Changes in this commit:

Removed unnecessary/confusing changes of EncryptionLevel/Methods settings

Refactor settings->DisableEncryption
* This value actually means "Advanced RDP Encryption (NLA/TLS) is NOT used"
* The old name caused lots of confusion among developers
* Renamed it to "UseRdpSecurityLayer" (the compare logic stays untouched)

Any client's setting of settings->EncryptionMethods were annihilated
* All clients "want" to set all supported methods
* Some clients forgot 56bit because 56bit was not supported at the time the
code was written
* settings->EncryptionMethods was overwritten anyways in nego_connect()
* Removed all client side settings of settings->EncryptionMethods
The default is "None" (0)
* Changed nego_connect() to advertise all supported methods if
settings->EncryptionMethods is 0 (None)
* Added a commandline option /encryption-methods:comma separated list of the
values "40", "56", "128", "FIPS". E.g. /encryption-methods:56,128
* Print warning if server chooses non-advertised method

Verify received level and method in client's gcc_read_server_security_data
* Only accept valid/known encryption methods
* Verify encryption level/method combinations according to MS-RDPBCGR 5.3.2

Server implementations can now set settings->EncryptionLevel
* The default for settings->EncryptionLevel is 0 (None)
* nego_send_negotiation_response() changes it to ClientCompatible in that case
* default to ClientCompatible if the server implementation set an invalid level

Fix server's gcc_write_server_security_data
* Verify server encryption level value set by server implementations
* Choose rdp encryption method based on level and supported client methods
* Moved FIPS to the lowest priority (only used if other methods are possible)

Updated sample server
* Support RDP Security (RdpKeyFile was not set)
* Added commented sample code for setting the security level
2014-12-12 02:17:12 +01:00
Marc-André Moreau
d8e10ac04a freerdp: patch leaks reported by valgrind when using TS Gateway 2014-12-11 11:25:34 -05:00
Marc-André Moreau
b579ad3cec Merge pull request #2261 from akallabeth/more_memleak_fixes
More warning and memleak fixes
2014-12-11 08:28:48 -05:00
Marc-André Moreau
77982c6271 Merge pull request #2262 from bmiklautz/misc_fixes
Misc fixes
2014-12-11 08:27:30 -05:00
Armin Novak
edfee8213e Initializing ServerHostname string now with 0 2014-12-11 11:26:42 +01:00
Bernhard Miklautz
67b6cc7518 xfreerdp: clean up AuthenticationOnly
* removed dead code path: user name is always set now
* update message if no password was set
2014-12-08 18:13:54 +01:00
Bernhard Miklautz
2dca3f3356 xfreerdp: use login name if no user name was set
If no user name is set with /u:.. use the login name of the current user will be
used as user name.
2014-12-08 18:07:05 +01:00
Marc-André Moreau
53686e414a Merge pull request #2259 from erbth/master
fixed shutdown of input thread in xfreerdp
2014-12-08 10:01:27 -05:00
Armin Novak
23d64bd6ca Fixed uninitialized value. 2014-12-07 00:29:28 +01:00
erbth
9f068ca0f7 fixed shutdown of input thread in xfreerdp 2014-12-05 21:48:24 +01:00
Norbert Federa
443ee42db5 gdi: don't pollute invalid region with empty rects 2014-12-05 19:47:29 +01:00
Marc-André Moreau
d5414c33a5 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-12-04 13:32:59 -05:00
Marc-André Moreau
f2267a2277 libwinpr-clipboard: fix memory corruption and leaks 2014-12-04 13:19:10 -05:00
Norbert Federa
415a0a158e xfreerdp: smart sizing fix
Standard format PictStandardRGB24 is not always available.
Use XRenderFindVisualFormat instead of XRenderFindStandardFormat
2014-12-04 17:52:54 +01:00
Marc-André Moreau
75e0e84130 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-12-04 10:00:10 -05:00
Norbert Federa
c82d8c9c6b xfreerdp: fix cliprdr SelectionNotify enless loop
xf_cliprdr_process_selection_notify calls xf_cliprdr_send_client_format_list
if the SelectionNotify event property was None.
xf_cliprdr_send_client_format_list called XConvertSelection even if there
was no clipboard owner. In that case the XServer generates a SelectionNotify
event to the requestor (us) with property None and so on ...

The most obvious fix is to ensure that XConvertSelection is not called if
the owner is None which is done in this commit.
2014-12-04 00:19:23 +01:00
Marc-André Moreau
fdd2dc7601 freerdp: patch valgrind leaks, cleanup 2014-12-03 14:17:27 -05:00
Bernhard Miklautz
7b55c3a48e xfreerdp: fix formating - indentation 2014-12-03 18:23:20 +01:00
Bernhard Miklautz
bd8c3f448e xfreerdp: fix a possible re-size race condition
In case of server side initiated desktop resize it could happen that the
client was "scaling" even if smart-sizing was disabled. The reason for
this was that the "scaled" width and height was set when the X Configure
event arrived but not in xf_desktop_resize.
2014-12-03 18:08:01 +01:00
Marc-André Moreau
01ac15a879 libfreerdp-core: fix crash on failed redirect 2014-12-03 11:48:27 -05:00
Marc-André Moreau
6ccce86140 Merge branch 'master' of github.com:FreeRDP/FreeRDP
Conflicts:
	winpr/libwinpr/thread/thread.c
2014-12-03 10:10:50 -05:00
Norbert Federa
0e443484d8 xfreerdp: smart-sizing and software-gdi fixes
* fixed crash on server-initiated desktop resize and fullscreen toggle with /gdi:sw
* implemented desktop resize for /gdi:sw
* check for availibility of XRender extension and show error messages if a setting would require it
* fixed compile error if xrender devel packages are missing
* fixed bug with server-initiated desktop resize in fullscreen mode
2014-12-03 15:41:10 +01:00
Norbert Federa
25f66d2e6d xfreerdp: added smart sizing, mt gesture fixes
- removed setting ScalingFactor
- added settings SmartSizingWidth and SmartSizingHeight
- changed option /smart-sizing to optionally support <width>x<height>
- consolidated transformation of input event coordinates
- rdp8 gfx ignored scaling and panning offsets: fixed
- never resize window on panning/pinching
- simplified keyboard multitouch gesture debugging emulation
- disabled keyboard multitouch gesture emulation debug code via define
2014-12-01 11:56:44 +01:00
Norbert Federa
85297fb343 xfreerdp: remove duplicated drawing operations
Most of xfreerdp's hw gdi callbacks did the the same X11 drawing operation
twice: Initially on the primary pixmap to keep the back buffer up to date
and then directly on the window in order to see the result.
This sequence is followed by a call to gdi_InvalidateRegion() to mark the
rectangular area of the drawing operation.
Since in xfreerdp's current design (or better current evolved state) the
backbuffer pixmap is obligatory, all drawing operations directly targeting
the window are redundant because of the subsequent EndPaint (mapped to
xf_hw_end_paint) where the damaged region is copied from the backbuffer
to the drawable.

- removed X11 drawing operations which directly target the window drawable
- fixed some errors in the calculation of the required update regions
2014-12-01 11:19:27 +01:00
Norbert Federa
3fa3384eb4 xfreerdp: several fixes for panned/pinched drawing
- use bilinear filter instead of nearest filter
- fixed invalid transformation matrix
- support non-proportional scaling
- fix calculation of transformed coordinates (rounding errors)
2014-12-01 11:17:16 +01:00
Marc-André Moreau
a323a0823d Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-11-28 11:23:53 -05:00
Manuel Bachmann
a9cf8b5838 wlfreerdp: add keyboard and mouse wheel support, fix bugs
This commit does the following:

* fix the keyboard logic (which now fully works), add support for vertical mouse wheel events ;
* make the rendering a lot more efficient, by using RDP damage information to refresh only the relevant part of the buffer ;
* fix two race conditions. wlfreerdp should not crash anymore now ;
* fix shm_open() and shm_unlink() calls ;
* improve the code style.

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-11-26 10:46:05 +01:00
Marc-André Moreau
ba5389d9d0 Merge branch 'master' of github.com:awakecoding/FreeRDP 2014-11-21 15:10:48 -05:00
Marc-André Moreau
7881ec762e server/shadow: avoid sending pointer updates when not active, fix remdesk leak 2014-11-21 15:10:39 -05:00
Marc-André Moreau
f5817ce457 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-11-20 16:14:44 -05:00
Marc-André Moreau
b8f694d8df mfreerdp: fix cliprdr copy with Windows XP 2014-11-20 16:05:13 -05:00
Marc-André Moreau
8449e1c946 mfreerdp: fix thread stopping 2014-11-20 12:34:49 -05:00
Mehul Dhorda
58ab355bad Call redraw only when region is invalidated
Added a condition to redraw a rect only when region is invalidated. For
example. this avoids a redraw when only the cursor changes on the
remote machine.
2014-11-19 11:48:12 -08:00
Manuel Bachmann
15d37e9be0 wlfreerdp: fix minor error in command line printing
One argument was missing in status_print().

Signed-off-by: Manuel Bachmann <manuel.bachmann@open.eurogiciel.org>
2014-11-17 16:58:50 +01:00
Manuel Bachmann
93ff550ae0 wlfreerdp: reorganize source files, add input methods
We split the one massive source file into multiple separate
source files and headers, just like it is done for other
clients.

We add a new "wlfInput" interface which will try to
initialize mouse and keyboard at startup. Mouse inputs
already work, keyboard inputs need further investigation.

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-11-17 16:42:27 +01:00
Marc-André Moreau
8a7a71a7b6 Merge pull request #2213 from akallabeth/wlog_callback_appender
Wlog callback appender
2014-11-17 09:41:58 -05:00
Marc-André Moreau
c26b557ab4 Merge pull request #2215 from nfedera/fix-2014-11-16-01
xfreerdp: fix polyline
2014-11-17 09:41:07 -05:00
Armin Novak
d30b6ed04d Fixed null pointer dereference. 2014-11-17 01:22:33 +01:00
Armin Novak
a2bbb265c1 Fixed memory leaks. 2014-11-17 00:36:01 +01:00
Armin Novak
bfd3962f03 Fixed memory leak. 2014-11-17 00:26:33 +01:00
Norbert Federa
84a4514ca9 xfreerdp: fix polyline
X11 gdi polyline has been broken by commit 3de5c62.
We don't need to convert the point coordinates if XDrawLines is called with
coordinate mode CoordModePrevious.
2014-11-16 18:48:14 +01:00
Armin Novak
7eb6bc112b Fixed dereference of NULL pointer. 2014-11-16 16:44:29 +01:00
Armin Novak
b9908af64a Fixed memory leaks. 2014-11-16 16:02:28 +01:00
Armin Novak
e20da04d15 Fixed uninitialized argument value. 2014-11-16 15:37:13 +01:00
Armin Novak
ca7052fa84 Fixed realloc return check. 2014-11-16 15:28:01 +01:00
Armin Novak
8d4589b1e1 Replaced fprintf error messages with WLog. 2014-11-16 12:21:38 +01:00
Marc-André Moreau
98965d4258 client/iOS: remove deprecated includes 2014-11-15 13:02:09 -05:00
Marc-André Moreau
496ce10637 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-11-15 12:37:29 -05:00
Bernhard Miklautz
841b4c1a3a android: use target SDK version for appcompat
Also Use ANDROID_APP_TARGET_SDK for application compatibility project.
It is now automatically set/updated during build.

Note: The ANDROID_APP_TARGET_SDK version need to be larger or equal to the
version required by the used Android support library (appcompat).
2014-11-15 01:04:57 +01:00
Marc-André Moreau
b32341785e xfreerdp: remove dependency on libfreerdp-rail 2014-11-12 19:49:35 -05:00
Marc-André Moreau
6857a4f2b7 xfreerdp: remove old X11 RAIL code 2014-11-12 17:18:27 -05:00
Marc-André Moreau
2efa67b4f9 xfreerdp: more RAIL libfreerdp-rail migration 2014-11-12 17:00:57 -05:00
Marc-André Moreau
abf6d4f71e xfreerdp: prepare RAIL migration away from libfreerdp-rail 2014-11-12 16:42:32 -05:00
Marc-André Moreau
0e7c95c421 freerdp: remove deprecated eventing system 2014-11-12 13:18:18 -05:00
Marc-André Moreau
769eb38217 afreerdp: migrate to cliprdr callback interface 2014-11-12 12:25:12 -05:00
Marc-André Moreau
19c3b0d457 afreerdp: cleanup cliprdr code 2014-11-12 11:14:10 -05:00
Manuel Bachmann
0a2b452e35 wlfreerdp: validate the TLS certificate interactively
Allow the user to decide if he trusts a new certificate
or not, just like we do with xfreerdp ; this allow running
wlfreerdp without using xfreerdp prior for this sole task.

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-11-12 17:10:00 +01:00
Marc-André Moreau
589c21d819 libfreerdp-utils: remove rail utils 2014-11-12 10:18:53 -05:00
Marc-André Moreau
1225c6b5ce xfreerdp: separate app windows from desktop windows 2014-11-11 22:27:33 -05:00
Marc-André Moreau
fb5e33440c xfreerdp: cleanup xf_window.c, xf_rail.c 2014-11-11 20:26:47 -05:00
Marc-André Moreau
d955851052 xfreerdp: remove RAIL dependency on deprecated event system 2014-11-11 18:32:18 -05:00
Marc-André Moreau
f3d1830eb4 xfreerdp: partially migrate RAIL to callback interface 2014-11-11 17:49:29 -05:00
Marc-André Moreau
b2f7c488ab xfreerdp: cleanup and fix RemoteApp 2014-11-11 16:35:30 -05:00
Marc-André Moreau
ee7299ec3f channels/tsmf: remove dependency on deprecated eventing system 2014-11-10 16:33:34 -05:00
Marc-André Moreau
edd4aa797c xfreerdp/tsmf: migrate to callback interface 2014-11-10 16:23:04 -05:00
Marc-André Moreau
129582e67f channels/tsmf: cleanup 2014-11-10 14:02:54 -05:00
Marc-André Moreau
f9814379cd xfreerdp: remove usage of XAllocColor (slow) 2014-11-10 11:15:37 -05:00
Marc-André Moreau
a6bb185760 channels/tsmf: add new callback interface 2014-11-07 18:33:45 -05:00
Marc-André Moreau
c719fc88b9 client/Sample: update code 2014-11-07 15:25:37 -05:00
Marc-André Moreau
92d08cf58f mfreerdp: rewrite and update clipboard code 2014-11-05 17:14:32 -05:00
Vic Lee
288097e271 Removed library prefix on Windows def files. 2014-11-03 12:39:27 +08:00
Hardening
7b108f1aa8 Merge pull request #2141 from zhangzl2013/polyline
fix polyline.
2014-10-31 22:15:13 +01:00
Martin Fleisz
0be28ba0f6 Merge pull request #1965 from akallabeth/dynamic-addin-naming
Dynamic channel library naming
2014-10-31 13:42:16 +01:00
Martin Fleisz
d58c6de93c Merge pull request #2134 from akallabeth/windows_version_information
Windows version information
2014-10-31 12:23:11 +01:00
Norbert Federa
62dbcac0c7 xfreerdp: fix glyph index primary drawing order
The fOpRedundant field of the GlyphIndex primary drawing order
(MS-RDPEGDI, chapter 2.2.2.2.1.1.2.13) was neglected which resulted in some
severe text rendering errors.
2014-10-29 20:56:26 +01:00
Marc-André Moreau
02646b349f Merge branch 'master' of github.com:FreeRDP/FreeRDP
Conflicts:
	libfreerdp/core/gcc.c
2014-10-25 10:29:06 -04:00
Marc-André Moreau
20da57a760 mfreerdp: fix build and cursor conversion 2014-10-25 10:17:41 -04:00
Marc-André Moreau
8942631947 wfreerdp: add RAIL window update, partial input support 2014-10-24 19:46:02 -04:00
Marc-André Moreau
55ea4caf11 wfreerdp: partial RemoteApp support 2014-10-24 18:30:04 -04:00
Marc-André Moreau
5df3e2368d wfreerdp: stub RemoteApp callbacks 2014-10-24 11:30:04 -04:00
Marc-André Moreau
ddeffce2db wfreerdp: eliminate dependency on deprecated freerdp event system 2014-10-24 10:30:54 -04:00
Marc-André Moreau
295123e7d5 wfreerdp: fix cliprdr with callback interface 2014-10-24 10:16:55 -04:00
Marc-André Moreau
2d612b332e wfreerdp: partially migrate cliprdr to callback interface 2014-10-24 09:55:48 -04:00
Marc-André Moreau
f76f8e3599 channels/cliprdr: add missing callbacks and message definitions 2014-10-23 18:17:53 -04:00
Marc-André Moreau
1c7ed224b6 wfreerdp: start preparing cliprdr code for migration to cliprdr callback interface 2014-10-23 15:38:19 -04:00
Marc-André Moreau
3d0f9e8e89 wfreerdp: consolidate cliprdr code 2014-10-23 13:11:20 -04:00
Marc-André Moreau
ce7302a999 wfreerdp: cleanup clipboard 2014-10-22 22:32:55 -04:00
Marc-André Moreau
23e4963102 xfreerdp: remove dependency on clrconv 2014-10-21 22:19:11 -04:00
Marc-André Moreau
5f95f0776f libfreerdp-codec: add freerdp_image_copy_from_monochrome replacement function for deprecated freerdp_mono_image_convert 2014-10-21 21:56:10 -04:00
Marc-André Moreau
0aab1e7ee5 libfreerdp-codec: fix and enhance cursor image conversion 2014-10-21 20:46:15 -04:00
Marc-André Moreau
3346d3b912 mfreerdp: fix crash with <32bpp color depths 2014-10-18 21:31:24 -04:00
Marc-André Moreau
27dca6258a xfreerdp: replace wire to local clipboard conversion 2014-10-17 20:55:12 -04:00
Marc-André Moreau
83ecddd6c1 xfreerdp: replace cliprdr to wire format conversion 2014-10-17 20:40:11 -04:00
Jean-Louis Dupond
a4f118966d Merge branch 'master' of https://github.com/FreeRDP/FreeRDP 2014-10-17 12:11:17 +02:00
Jean-Louis Dupond
0dc0e01568 Add ipv6 client support 2014-10-17 12:08:39 +02:00
Marc-André Moreau
a1e660d92e freerdp: unify clipboard standard format id definitions 2014-10-16 22:20:12 -04:00
Marc-André Moreau
334dec3c1f winpr: add pragma pack, bitmap + clipboard definitions 2014-10-16 21:45:47 -04:00
Marc-André Moreau
f6b3b24c22 winpr: add new line ending, utf16 byte order swap functions 2014-10-16 18:07:44 -04:00
Marc-André Moreau
d668855be6 xfreerdp: refactor cliprdr helpers 2014-10-16 15:05:06 -04:00
pf packet
5feb674d44 wlfreerdp: fix compilation errors
This commit fixes the following errors
by removing or replacing old functions:
wlfreerdp.c:(.text.startup+0xc): undefined reference to
`freerdp_channels_global_init'
wlfreerdp.c:(.text.startup+0x72): undefined reference to
`freerdp_client_parse_command_line_arguments'
wlfreerdp.c:(.text.startup+0x9b): undefined reference to
`freerdp_channels_global_uninit'
2014-10-17 00:08:15 +09:00
Marc-André Moreau
4111625488 xfreerdp: cleanup unused cliprdr code 2014-10-15 22:56:25 -04:00
Marc-André Moreau
2e82e6d22d xfreerdp: fix clipboard sync 2014-10-15 22:48:18 -04:00
Marc-André Moreau
38bac22204 xfreerdp: migrate to cliprdr callback interface 2014-10-15 21:30:11 -04:00
Marc-André Moreau
4ba0010294 xfreerdp: partially migrate to cliprdr callback interface 2014-10-15 17:42:55 -04:00
Marc-André Moreau
7a5d45ed34 xfreerdp: further cliprdr refactoring 2014-10-15 15:49:57 -04:00
Marc-André Moreau
94da63f980 xfreerdp: start migrating to cliprdr callback interface 2014-10-14 22:58:01 -04:00
Marc-André Moreau
0abe24a1c0 xfreerdp: start refactoring cliprdr 2014-10-14 22:24:07 -04:00
Manuel Bachmann
d48adecd6c wlfreerdp: initial Wayland client
Implement an initial Wayland client, which will build if
the wayland-client development libraries are detected
(or if -DWITH_WAYLAND:BOOL=ON is set). It is currently
view-only, but inputs will be implemented soon.

It uses the software SHM interface, which means it does not
require GL acceleration to run. It should be compatible
with any compositor

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-10-13 12:23:23 +02:00
Armin Novak
22c775988b Using global RC_VERSION_PATCH now. 2014-10-09 16:20:32 +02:00
Armin Novak
89bb28adb2 Fixed setting of RV_VERSION_PATCH, now BUILD_NUMBER is used for every library.
Executable names are now correctly set, using CMAKE_EXECUTABLE_SUFFIX now.
Fixed version defines for winpr executables.
2014-10-09 16:18:35 +02:00
Marc-André Moreau
9ce862edc8 Merge pull request #2135 from erbth/wfreerdp
Added lock key synchronization to wfreerdp
2014-10-09 09:05:58 -04:00
Zhang Zhaolong
3de5c62bf3 fix polyline. 2014-10-09 18:11:38 +08:00
Bernhard Miklautz
36c2523d68 xfreerdp: add support to set keyboard indicators
* add generic function to check for X extensions
* detect x keyboard support
* add callbacks and client code to set/clear keyboard indicators
2014-10-06 10:37:37 +02:00
erbth
58c392e72e Added lock key synchronization to wfreerdp 2014-10-03 16:27:47 +02:00
Bernhard Miklautz
d7a3d78279 xfreerdp: add support for PlaySound
Using X keyboard bell.
2014-10-03 16:04:15 +02:00
Armin Novak
5364a834c4 Added windows version information to build. 2014-10-03 15:17:40 +02:00
Marc-André Moreau
ca1cec64d8 libfreerdp-core: update RDP8 virtual channels 2014-09-25 17:31:05 -04:00
Marc-André Moreau
c762a4d5a2 Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow 2014-09-25 10:35:14 -04:00
Marc-André Moreau
86b4123cf0 Merge pull request #2101 from eledoux/ports
Ports
2014-09-25 10:38:07 -04:00
Marc-André Moreau
72fff184dd libfreerdp-core: fix RemoteFX/autodetect incompatibility issue with 2008 R2 2014-09-24 17:23:12 -04:00
Marc-André Moreau
2a5192b027 Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	client/Windows/wf_cliprdr.h
	client/Windows/wf_event.h
	client/X11/xf_client.c
	client/X11/xf_gdi.c
	libfreerdp/gdi/gdi.c
	server/Mac/mf_input.c
2014-09-17 19:09:56 -04:00
Marc-André Moreau
73471eb1f0 libfreerdp-gdi: fix 8bpp mode 2014-09-17 18:30:09 -04:00
Marc-André Moreau
48b35be953 xfreerdp: fix X11 16bpp mode 2014-09-17 14:29:56 -04:00
Marc-André Moreau
fb4e5d352b libfreerdp-codec: add proper 16bpp output format support 2014-09-17 12:17:41 -04:00
Armin Novak
059374457d Removed library prefix override. 2014-09-17 11:27:11 +02:00
Marc-André Moreau
1b7a84419c xfreerdp: partial fix for X11 16bpp mode 2014-09-16 19:12:26 -04:00
Marc-André Moreau
c40d8155a6 libfreerdp-gdi: fix SurfaceToSurface overlapping copies 2014-09-16 17:41:24 -04:00
Bernhard Miklautz
1fb028fc9f command line: fix --version
In command line detection status (return) values were ignored therefore
--version wasn't recognized properly and help was printed
2014-09-16 22:51:01 +02:00
Bernhard Miklautz
06e81a1d9b command line: print help and kbd list to stdout
Revert recent wlog changes for command line and print help/kbd listings
directly to stdout
2014-09-16 21:07:38 +02:00
Emmanuel Ledoux
e9749c6b3f serial: ability to turn on the permissive mode from the command line 2014-09-16 12:08:33 +02:00
Armin Novak
81a4081279 Decreased logging verbosity. 2014-09-16 09:37:45 +02:00
Marc-André Moreau
b25258e8c6 libfreerdp-gdi: add support for ABGR plain colors 2014-09-15 16:28:53 -04:00
Marc-André Moreau
501386b790 libfreerdp-gdi: partial support for internal ABGR buffer format 2014-09-15 16:08:06 -04:00
Armin Novak
1e622bc500 Decreased logging verbosity. 2014-09-15 19:50:50 +02:00
Armin Novak
417e57d846 Decreased logging verbosity. 2014-09-15 19:49:34 +02:00
Armin Novak
f37a69e665 Decreased logging verbosity. 2014-09-15 19:48:57 +02:00
Armin Novak
477d6214ee Decreased logging verbosity. 2014-09-15 19:47:59 +02:00
Armin Novak
06b609062d Removed remaining printf and DEBUG_* usages. 2014-09-15 09:01:05 +02:00
Armin Novak
1845c0b590 Fixed possible memory leak. 2014-09-15 08:55:00 +02:00
Armin Novak
a715e9ef50 Fixed compiler warnings. 2014-09-15 08:55:00 +02:00
Armin Novak
7913a57bc5 Using wlog for logging in clients now. 2014-09-15 08:55:00 +02:00
Marc-André Moreau
b0d27beae3 mfreerdp: add egfx support 2014-09-13 12:02:53 -04:00
Marc-André Moreau
342d37aea0 wfreerdp: add RDP8 graphics pipeline support 2014-09-12 16:30:57 -04:00
Marc-André Moreau
f693ff42d7 Merge pull request #2097 from awakecoding/egfx
GDI Bitmap Update Optimization
2014-09-12 15:12:52 -04:00
Marc-André Moreau
198f94fe03 libfreerdp-gdi: add RDP8 graphics pipeline support 2014-09-12 14:57:44 -04:00
Marc-André Moreau
ff2df7489d wfreerdp: fix gdi usage 2014-09-12 11:34:30 -04:00
Marc-André Moreau
7130b7064e libfreerdp-gdi: fix bitmap caching 2014-09-12 01:03:19 -04:00
Marc-André Moreau
45d2bab95d xfreerdp: optimize bitmap updates 2014-09-11 22:29:09 -04:00
Marc-André Moreau
f5ff6e1bd8 Merge pull request #2095 from bmiklautz/feat/byemonolithic
Remove non-monolithic builds of libfreerdp
2014-09-11 18:46:32 -04:00
Bernhard Miklautz
0313ca3622 libfreerdp: always build "MONOLITHIC"
"libfreerdp" consisted of multiple (small) single libraries. If the cmake
option MONOLITHIC was used only one library was build combining all of
the libfreerdp-* libraries.
The only exceptions to this are libfreerdp-server and libfreerdp-client these
are build as separate libraries.

This commit obsoltes non-monolithic builds and makes monolithic builds
the default. The cmake option MONOLITHIC is also removed.
2014-09-12 00:19:53 +02:00
Marc-André Moreau
7e4b3b13b1 Merge pull request #2091 from ptsekov/software-gdi-improvements
Fix #2090
2014-09-11 13:52:16 -04:00
Bernhard Miklautz
c8e8ed60b9 xfreerdp: fix segfault
codec contexts are now generated and freed within core/codecs.c
2014-09-11 17:04:21 +02:00
Pavel Tsekov
7b6ed458d4 Do not invert fb data when rendering with freerdp's engine.
* client/Windows/wf_interface.c (wf_post_connect): Do not pass
`CLRCONV_INVERT' to gdi_init().
2014-09-11 17:00:12 +03:00
Pavel Tsekov
55955f5309 Fix missing output when using freerdp's rendering
engine
* client/Windows/wf_interface.c (wf_post_connect): Properly initialize
freerdp's GDI subsystem when using freerdp's rendering engine.
2014-09-11 16:51:44 +03:00
Pavel Tsekov
9be7293bac Fix #2090
* client/Windows/wf_graphics.c (wf_register_graphics): Do not register
custom bitmap handler when using freerdp's own GDI implementation.
2014-09-11 16:40:10 +03:00
Martin Fleisz
54b96290c9 Merge branch 'fix_2036' of git://github.com/akallabeth/FreeRDP into akallabeth-fix_2036
Conflicts:
	libfreerdp/codec/test/TestFreeRDPCodecPlanar.c
	libfreerdp/codec/test/TestFreeRDPCodecProgressive.c
	libfreerdp/core/transport.c
	libfreerdp/primitives/test/TestPrimitivesYCbCr.c
2014-09-11 13:03:01 +02:00
Marc-André Moreau
89e5fef11f wfreerdp: fix build on Windows 2014-09-10 11:38:38 -04:00
Marc-André Moreau
08373c50bc Merge branch 'master' of github.com:FreeRDP/FreeRDP into egfx 2014-09-10 10:44:48 -04:00
Marc-André Moreau
c71e4e18a1 libfreerdp-core: refactor codec context management 2014-09-10 00:42:41 -04:00
Armin Novak
b22b897389 Reformatted changed files. 2014-09-09 16:32:22 +02:00
Armin Novak
0ec5318c99 Fixed calling of dump functions, new API 2014-09-09 16:31:46 +02:00
erbth
cbc8b3a7e1 Merge branch 'egfx' of https://github.com/awakecoding/freerdp into egfx_new
Conflicts:
	channels/drdynvc/client/dvcman.c
	include/freerdp/codec/h264.h
	libfreerdp/codec/h264.c		after this merge h264 doesn't work anymore!!
	libfreerdp/utils/svc_plugin.c
2014-09-08 16:56:45 +02:00
Pavel Tsekov
831375aa47 xfreerdp: use _aligned_free instead of free
Use _aligned_free to release memory allocated with
freerdp_image_convert().

Fixes #2075
2014-09-08 15:00:47 +02:00
Marc-André Moreau
bd516e04fa libfreerdp-primitives: cleanup YCoCg 2014-09-06 21:13:37 -04:00
Marc-André Moreau
f14b0e0195 libfreerdp-codec: cleanup h264 decoder 2014-09-05 19:11:03 -04:00
Marc-André Moreau
033e75467b Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx 2014-09-05 17:29:35 -04:00
Marc-André Moreau
66bbbf0519 libfreerdp-gdi: enable altsec frame markers 2014-09-05 16:06:19 -04:00
Marc-André Moreau
7f9d05183c Merge pull request #2054 from erbth/wfreerdp
(hopefully) proper window style setup in wfreerdp at startup
2014-09-05 15:06:04 -04:00
Marc-André Moreau
5107f07b52 Merge pull request #2057 from ptsekov/software-gdi-improvements
Adjust the X11 code to work with the new GDI color
2014-09-05 15:05:53 -04:00
Pavel Tsekov
cdfcbeff5c X11: Convert GDI color to X11 color troughout.
* client/X11/xf_client.c (xf_pre_connect): Set the field `colormap' of
`struct xfContext' to the default colormap.
* client/X11/xfreerdp.h (xf_gdi_get_color): Declare new external function.
* client/X11/xf_gdi.c (xf_gdi_get_color): Define new external function.
Use xf_gdi_get_color() to get the appropriate X color index from the GDI
color representation.
* client/X11/xf_graphics.c: Likewise.
2014-09-04 12:44:03 +03:00
Marc-André Moreau
1491c5a7f9 libfreerdp-codec: initial partial upgrade tile support 2014-09-02 19:25:01 -04:00
erbth
25593c7250 H.264: converting only clipping rects to XRGB 2014-09-02 22:16:56 +02:00
Marc-André Moreau
656dd760c5 libfreerdp-codec: fix sub-band diffing 2014-08-26 16:15:22 -04:00
Marc-André Moreau
ec53dd612e libfreerdp-codec: fix progressive codec tile drawing offset, fix dequantization 2014-08-25 19:50:42 -04:00
erbth
cd23e5c0d5 wfreerdp: WM_SIZE: only update canvas diff if window size is bigger than 0 2014-08-25 15:24:04 +02:00
erbth
91ef3ed843 WM_GETMINMAXINFO: use latest determined canvas diff 2014-08-25 15:12:44 +02:00
Pavel Tsekov
08d60d01e0 Adjust the code to work with the new GDI color
representation.
* client/X11/xf_gdi.c:
Use freerdp_color_convert_drawing_order_color_to_gdi_color() to convert
from drawing order color representation to GDI color representation
troughout.
* client/X11/xf_graphics.c: Likewise.
2014-08-21 03:35:34 +03:00
Daniel Bungert
27fc3ee64d Fix multiple cases of use of uninitialized vars
* Zeroing xevent helped address some erratic behavior.
* valgrind complained about using xfBitmap uninitialized
  during shutdown, traced it back to the initialization.
  Bitmap_Prototype->size > sizeof(rdpBitmap).
* Early exit from recv_tpkt_pdu is necessary to address
  a shutdown crash - the channelId value was being used
  without being set in the disconnect case.
2014-08-20 03:54:05 -06:00
erbth
e95b6aece9 (hopefully) proper window style setup in wfreerdp at startup 2014-08-19 22:59:22 +02:00
Marc-André Moreau
68b3d0476b libfreerdp-codec: start work on progressive inverse DWT 2014-08-19 14:48:09 -04:00
Daryl Poe
5bf59b0810 handle user@corp.net username correctly
(cherry picked from commit 248c918508)
2014-08-19 12:02:48 +02:00
Marc-André Moreau
1a8c763309 Merge branch 'shadow' of github.com:awakecoding/FreeRDP 2014-08-18 17:06:13 -04:00
Marc-André Moreau
82a53057a1 Merge pull request #2023 from ptsekov/software-gdi-improvements
Software GDI improvements
2014-08-18 16:22:23 -04:00
Marc-André Moreau
241b3d7134 Merge pull request #2022 from dbungert/percent
Restore window size by percent
2014-08-18 16:20:15 -04:00
Marc-André Moreau
f30d7cf66a Merge pull request #2024 from repzilon/master
uclibc build fixes and recompressed images
2014-08-18 13:08:52 -04:00
Ron Yaari
1b819067b0 X11: fix toggle-fullscreen option functionality 2014-08-18 10:41:40 +03:00
Idan Freiberg
27f5eaba88 Revert "X11: fix toggle-fullscreen option functionality"
This reverts commit 0c84c81401.
2014-08-18 10:39:47 +03:00
Ron Yaari
0c84c81401 X11: fix toggle-fullscreen option functionality 2014-08-18 10:19:47 +03:00
Hardening
767d54ce18 Merge pull request #2017 from ptsekov/Issue_2016
Honour user performance preferences.
2014-08-15 09:21:12 +02:00
Marc-André Moreau
9adaadb93a shadow: add more virtual channels to RDP backend like WDS API 2014-08-14 19:23:48 -04:00
Norbert Federa
3c8700f62d Merge pull request #1963 from akallabeth/async-update-to-lib
Moved update thread from client to library.
2014-08-14 17:46:43 +02:00
erbth
095a7aba99 OpenH264 YUV data conversion with intel SSSE3 in assembly 2014-08-13 20:56:40 +02:00
Marc-André Moreau
e4a4aa4d3a Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow
Conflicts:
	channels/encomsp/client/encomsp_main.c
	libfreerdp/core/tcp.c
	libfreerdp/crypto/certificate.c
	server/Windows/CMakeLists.txt
	server/X11/xf_cursor.c
	server/X11/xf_input.c
	server/X11/xf_interface.c
	server/X11/xf_monitors.c
	server/X11/xf_peer.c
2014-08-11 19:22:33 -04:00
Marc-André Moreau
2f6575a7e6 Merge pull request #2033 from awakecoding/master
RLGR, Progressive, RDP8.1 H264, MS-RDPEDISP
2014-08-11 19:08:08 -04:00
Marc-André Moreau
31ac35698f Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-08-11 19:01:15 -04:00
Marc-André Moreau
2ea151e136 Merge pull request #1983 from ntwerdochlib/fileclip-updates
clipboard: File clipping updates
2014-08-11 19:00:00 -04:00
Marc-André Moreau
dc7f89dbd5 Merge branch 'egfx' of github.com:awakecoding/FreeRDP 2014-08-11 17:25:38 -04:00
Marc-André Moreau
067da290dd Merge pull request #2027 from akallabeth/winpr-log
Replace stdout and logging defines with WLog, add logcat support
2014-08-11 10:38:28 -04:00
Marc-André Moreau
cff9c16c1e Merge branch 'master' of github.com:FreeRDP/FreeRDP
Conflicts:
	channels/disp/client/disp_main.c
2014-08-11 10:36:07 -04:00
Marc-André Moreau
51ac7fffbd Merge pull request #1993 from bmiklautz/merge/from-stable-1.1
Pick changes from stable-1.1 that are not yet on master
2014-08-11 10:28:10 -04:00
Rene Rheaume
47d779f6a0 Changed back the permissions to previous values 2014-08-08 20:14:56 -04:00
Rene Rheaume
15ad357e1a Recompressed images with FileOptimizer 6.8 (an open-source mass file recompression tool for Windows) 2014-08-08 20:12:25 -04:00
erbth
a8257b5201 fixed some memory leaks arround DVC and RDPEGFX 2014-08-08 15:19:49 +02:00
Armin Novak
0780c0993e Replaced fprintf(stderr with DEBUG_WARN 2014-08-07 22:21:07 +02:00
Rene Rheaume
151e5de3d4 Recompressed PNG images again 2014-08-06 23:10:23 -04:00
Rene Rheaume
281ab78481 Recompressed losslessy PNG and JPEG images 2014-08-06 22:37:14 -04:00
Pavel Tsekov
98cf129a11 Do not invert fb contents when in 32bpp mode
* client/Android/FreeRDPCore/jni/android_freerdp.c:
(android_post_connect): Pass the proper flags to gdi_init().
(copy_pixel_buffer): Do not invert the framebuffer data when using 32bpp
framebuffer.
2014-08-07 01:12:39 +03:00
Daniel Bungert
a8c31a286b Restore window size by percent
1.0 had the ability to specifiy window geometry by a percentage.
The support is still there, just needed command line support.
Example in 1.1 syntax: /size:85%
2014-08-06 04:19:50 -06:00
Marc-André Moreau
3895c930a3 Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow 2014-08-05 09:56:12 -04:00
U-PAVEL\Pavel Tsekov
8a4f134fab Revert to 15d2b35574 2014-08-05 14:35:31 +03:00
Pavel Tsekov
9a470632f6 Honour user performance preferences.
* client/Android/FreeRDPCore/jni/android_freerdp.c:
(jni_freerdp_set_performance_flags): Always pass the user specified performance
settings to FreeRDP.
2014-08-05 00:49:13 +03:00