Commit Graph

1787 Commits

Author SHA1 Message Date
Michael Jumper
9ad3bc9a49 GUACAMOLE-249: Log RDPDR debug messages at GUAC_LOG_DEBUG level. 2019-12-29 18:12:01 -08:00
Michael Jumper
6940875e6e GUACAMOLE-249: Refactor away old stream.h and guac_rdp_stream. 2019-12-29 18:04:51 -08:00
Michael Jumper
d2083a1aed GUACAMOLE-249: Refactor RDPDR to be more documentable. Document RDPDR fully. 2019-12-29 18:04:51 -08:00
Michael Jumper
36545cc92c GUACAMOLE-249: Document absolutely all parameters and return types for RDP support. 2019-12-29 18:04:51 -08:00
Michael Jumper
a54c61e860 GUACAMOLE-249: Support for OpaqueRect MUST NOT be claimed without supporting PatBlt. OpaqueRect implies PatBlt and vice versa. 2019-12-28 19:36:43 -08:00
Michael Jumper
fbb759ab82 GUACAMOLE-249: Correct mismatched ifndef/define header include check. 2019-12-28 19:36:43 -08:00
Michael Jumper
ab05502494 GUACAMOLE-249: Correct missing/incorrect documentation for RDP callback parameters. 2019-12-28 19:36:43 -08:00
Michael Jumper
12febd5162 GUACAMOLE-249: Remove unused SEC_TO_UNIX_EPOCH constant. 2019-12-27 21:12:39 -08:00
Michael Jumper
6c239a7b98 GUACAMOLE-249: Use filesystem constants defined by FreeRDP and WinPR headers rather than defining our own. 2019-12-27 21:12:18 -08:00
Michael Jumper
598b86a4cf GUACAMOLE-249: Correct @file annotations within Doxygen comments of renamed headers. 2019-12-27 20:55:06 -08:00
Michael Jumper
69831995cb GUACAMOLE-249: Remove prototype for guac_rdp_bitmap_decompress(), which is no longer defined nor used. 2019-12-27 15:24:25 -08:00
Michael Jumper
47a1dcc82e GUACAMOLE-249: Message flags of clipboard data response must be set to CB_RESPONSE_OK for data to be accepted. 2019-12-25 02:04:13 -08:00
Michael Jumper
0c7091198f GUACAMOLE-249: Use correct start location of clipboard buffer (accidentally used pointer to end). 2019-12-25 02:03:23 -08:00
Michael Jumper
bced87cff9 GUACAMOLE-249: FreeRDP 2.0.0 requires the Clipboard Capabilities PDU to be manually sent. 2019-12-25 01:34:57 -08:00
Michael Jumper
024fc2a1f7 GUACAMOLE-249: Callbacks for "drdynvc" plugin should return CHANNEL_RC_OK, including entry point. 2019-12-23 19:26:49 -08:00
Michael Jumper
4752863b5b GUACAMOLE-249: Remove now-unnecessary status.h FreeRDP compatibility header. 2019-12-23 13:35:32 -08:00
Michael Jumper
d7bbee35b0 GUACAMOLE-249: Reorganize includes to match code standard. 2019-12-23 13:32:36 -08:00
Michael Jumper
a63dcb46b2 GUACAMOLE-249: Rename and restructure RDP source files more sensibly. 2019-12-23 13:29:37 -08:00
Michael Jumper
827951dcf6 GUACAMOLE-249: Remove RDP constant definitions which are defined within FreeRDP headers. 2019-12-22 21:24:07 -08:00
Michael Jumper
875d51c1ed GUACAMOLE-249: Dynamically wrap channel entry points (FreeRDP will refuse to associate the same entry point with multiple channels). 2019-12-22 20:34:30 -08:00
Michael Jumper
664586ea54 GUACAMOLE-249: VirtualChannelEntryEx entry point is supposed to accept a PCHANNEL_ENTRY_POINTS_EX. 2019-12-22 17:33:35 -08:00
Michael Jumper
4612e79b8d GUACAMOLE-249: Remove "guacsnd" plugin in favor of leveraging common SVC implementation. 2019-12-22 14:29:01 -08:00
Michael Jumper
3255b182ab GUACAMOLE-249: Remove "guacsvc" plugin in favor of leveraging common SVC implementation. 2019-12-22 14:07:01 -08:00
Michael Jumper
352b9c517c GUACAMOLE-249: Add common SVC plugin implementation as future simplified basis for RDPSND, RDPDR, etc. 2019-12-22 13:36:35 -08:00
Michael Jumper
7b93b3d2e9 GUACAMOLE-249: Gradually reassemble received chunks of RDPSND data. 2019-12-21 22:51:43 -08:00
Michael Jumper
a7352b1429 GUACAMOLE-249: Remove lock around usage of FreeRDP (new library appears threadsafe). 2019-12-21 20:02:17 -08:00
Michael Jumper
ee4d91ea98 GUACAMOLE-249: Migrate RDPDR support to FreeRDP 2.0.0 plugin API. 2019-12-21 19:53:44 -08:00
Michael Jumper
68710a6702 GUACAMOLE-249: Migrate loading of RDPDR support (guacdr plugin) to abstract function. 2019-12-21 19:53:44 -08:00
Michael Jumper
6f2b124472 GUACAMOLE-249: Migrate RDPSND support to FreeRDP 2.0.0 plugin API. 2019-12-21 19:41:00 -08:00
Michael Jumper
0497a33ece GUACAMOLE-249: Migrate loading of RDPSND support ("guacsnd" plugin) to abstract function. 2019-12-21 19:41:00 -08:00
Michael Jumper
f3cef7e2f0 GUACAMOLE-249: Add example for testing arbitrary SVC support. 2019-12-21 13:42:30 -08:00
Michael Jumper
233c0555c3 GUACAMOLE-249: Migrate SVC support to FreeRDP 2.0.0 plugin API. 2019-12-21 13:42:30 -08:00
Jukka-Pekka Virtanen
1822e59ac3 GUACAMOLE-901: Belgian French keymap
Add Belgian French keymap file and add it to build process. Keymap is
based on https://commons.wikimedia.org/wiki/File:Belgian_pc_keyboard.svg
2019-11-19 11:53:02 +02:00
Michael Jumper
fa0ad267b8 GUACAMOLE-249: Update Docker build to use FreeRDP 2.0.0. 2019-11-04 19:26:04 -08:00
Maxime Coste
199c2a0961 GUACAMOLE-871: Add support for hidden cursor (DECTECM) 2019-10-15 20:24:51 +11:00
Michael Jumper
77a32398e5 GUACAMOLE-249: Migrate to plugin naming style used by FreeRDP 2.0.0. 2019-10-14 14:13:19 -07:00
Michael Jumper
6dc8b57ca4 GUACAMOLE-249: Update RAIL (RemoteApp) support to FreeRDP 2.0.0 API. 2019-10-14 11:15:43 -07:00
Michael Jumper
07f6e6afc2 GUACAMOLE-249: Remove guac_rdp_dvc_list, relying instead on the DVC channel collection within rdpSettings. 2019-10-13 15:30:21 -07:00
Michael Jumper
eab07b4a61 GUACAMOLE-249: Add trace-level logging of received and sent CLIPRDR PDUs. 2019-10-13 14:28:06 -07:00
Michael Jumper
de493ba959 GUACAMOLE-249: Send Format List Response PDU after successfully processing a Format List PDU. 2019-10-13 14:28:06 -07:00
Michael Jumper
9dd1555c81 GUACAMOLE-249: Do not include CB_RESPONSE_OK flag in Format List PDU.
The CLIPRDR specification requires that the msgFlags field for the
Format List PDU be set to 0x0000. The function within FreeRDP overrides
this value to 0x0000, but it is still incorrect to attempt to set it.
2019-10-13 14:28:06 -07:00
Michael Jumper
8c7984d201 GUACAMOLE-249: Free GDI implementation. Do not allocate cache (unnecessary). 2019-10-13 14:28:06 -07:00
Michael Jumper
b64b8f375a GUACAMOLE-249: Restore support for CLIPRDR channel. 2019-10-13 14:28:06 -07:00
Michael Jumper
831606a4e9 GUACAMOLE-249: Use pkg-config to determine location of FreeRDP headers. 2019-10-11 17:56:21 -07:00
Michael Jumper
cc7cd78e5b GUACAMOLE-249: Centralize handling of connected channels. 2019-10-08 11:44:26 -07:00
Michael Jumper
16be3af03c GUACAMOLE-249: Load FreeRDP plugins regardless of entry point interface.
Most plugins built into FreeRDP implement the PVIRTUALCHANNELENTRYEX
entry point, but the FreeRDP standard function for loading plugins only
supports PVIRTUALCHANNELENTRY. It appears that only the commandline
argument parser included with FreeRDP was updated to leverage the new
entry points.
2019-10-06 14:44:26 -07:00
Michael Jumper
b89ed7ff15 GUACAMOLE-249: Migrate wait mechanism to event handle interface. 2019-10-06 14:32:12 -07:00
Michael Jumper
17045d5d3a GUACAMOLE-249: Use reversed byte order for colors locally (verification needed). 2019-09-29 16:08:27 -07:00
Michael Jumper
7904d9c002 GUACAMOLE-249: Initialize FreeRDP's GDI implementation (default GDI handlers will otherwise fail). 2019-09-29 15:44:34 -07:00
Michael Jumper
7a7ffc2c19 GUACAMOLE-249: Add missing pixel format parameter to pointer image copy. 2019-09-29 15:44:34 -07:00
Michael Jumper
65fe6c9735 GUACAMOLE-249: Correct incorrect syntax introduced by initial partial migration (commit a5b62aa82). 2019-09-29 15:44:34 -07:00
Michael Jumper
c311d8bde9 GUACAMOLE-249: Rely on default bitmap/GDI/pointer handlers for all but those that must be overridden. 2019-09-29 15:44:34 -07:00
Michael Jumper
1e692094be GUACAMOLE-249: Correct remaining void returns from BOOL handlers. 2019-09-29 15:44:34 -07:00
Michael Jumper
7332e633dc GUACAMOLE-249: Add "nla-ext" option for extended NLA mode. 2019-09-29 15:44:34 -07:00
Michael Jumper
2ed0d042a3 GUACAMOLE-249: Default to negotiated security mode, not old "RDP" encryption. 2019-09-29 14:34:05 -07:00
Michael Jumper
a76e307176 GUACAMOLE-249: RDP "DisableEncryption" settings flag has been inverted and renamed to "UseRdpSecurityLayer". 2019-09-29 14:25:47 -07:00
Michael Jumper
6886665f65 GUACAMOLE-249: Comment out usage of old event interface. 2019-09-29 14:15:41 -07:00
Michael Jumper
703ce5c223 GUACAMOLE-249: Remove usage of old FreeRDP channels interface. 2019-09-29 14:15:13 -07:00
Michael Jumper
ad7ab67571 GUACAMOLE-249: The freerdp/gdi/gdi.h header is required to access contents of rdpGdi struct. 2019-09-22 14:58:23 -07:00
Michael Jumper
9fa9adbd58 GUACAMOLE-249: Migrate to libwinpr "CF_*" constants for clipboard formats.
The "CB_FORMAT_*" constants which used to be defined by FreeRDP no
longer exist.
2019-09-22 14:58:23 -07:00
Michael Jumper
3b560044bc GUACAMOLE-249: Correct prototype of certificate verification callback. If accepting the certificate, request that FreeRDP not store it. 2019-09-22 14:49:30 -07:00
Michael Jumper
82664b4e6b GUACAMOLE-249: Correct prototypes of GDI handlers. 2019-09-22 14:49:30 -07:00
Michael Jumper
fbfbaff540 GUACAMOLE-249: Correct prototypes of pointer handlers. 2019-09-22 14:49:30 -07:00
Michael Jumper
e4a68d776f GUACAMOLE-249: Correct prototypes of glyph handlers. 2019-09-22 14:49:30 -07:00
Michael Jumper
9b08a716d6 GUACAMOLE-249: Comment out remaining usage of SVC. 2019-09-22 14:49:03 -07:00
Michael Jumper
554251cc72 GUACAMOLE-249: Remove usage of CLRCONV. 2019-09-22 14:49:00 -07:00
Michael Jumper
17d31d94b7 GUACAMOLE-249: Remove all legacy FreeRDP compatibility. 2019-09-22 14:48:56 -07:00
Michael Jumper
a5b62aa82e GUACAMOLE-249: Migrate to newer API (partial). 2019-09-22 14:48:26 -07:00
Mike Jumper
b181026e58
GUACAMOLE-861: Merge correction to RDPDR filesystem timestamp conversion. 2019-08-22 10:25:55 -07:00
unknown
4cc9c2d3e1 GUACAMOLE-861: Fixes WINDOWS_TIME calculation
This fixes the UNIX time to FILETIME conversion in WINDOWS_TIME macro,
according to MSDN (addition instead of subtraction).
2019-08-21 23:05:45 +03:00
Virtually Nick
f34be230aa
GUACAMOLE-859: Merge correct Caps Lock keysym sent via RDP 2019-08-13 21:11:46 -04:00
Weston Thayer
a189c9ab8a GUACAMOLE-859: Remove +ext from Caps Lock keymapping.
When connected with a Guacamole RDP session, the keysym for Caps Lock (0xffe5) is sent over RDP as scancode 0xe03a. Windows does not understand this scancode, thus does not generate the correct VK (Virtual Key) events. Removing +ext from the keymap sends the scancode 0x003a, which is correctly recognized by Windows as Caps Lock. This enables Windows applications to listen for key down and key up events on the Caps Lock key while connected via a Guacamole RDP session.

Note: this issue likely went un-noticed for a long time because it only impacts the key up and down events for the Caps Lock key, not Caps Lock's effect on sending uppercase [A-Z] characters.
2019-08-13 21:00:26 -04:00
Nick Couchman
7ac840090e GUACAMOLE-514: Slight correction to debug message. 2019-08-12 19:45:45 -04:00
Nick Couchman
61d12f1668 GUACAMOLE-514: VNC client should abort on credential error. 2019-08-09 13:08:36 -04:00
Nick Couchman
f21621e677 GUACAMOLE-514: Remove x509 support. 2019-08-09 13:05:40 -04:00
Nick Couchman
88425160ae GUACAMOLE-514: Write x509 authentication factors to temp files. 2019-08-09 13:05:40 -04:00
Nick Couchman
b9001f4ec7 GUACAMOLE-514: Add missing parameter tag. 2019-08-09 13:05:40 -04:00
Nick Couchman
4329739d3e GUACAMOLE-514: Remove CRL check flag. 2019-08-09 13:05:40 -04:00
Nick Couchman
90d55956d0 GUACAMOLE-514: use correct client in log call. 2019-08-09 13:05:40 -04:00
Nick Couchman
51ae8a41a1 GUACAMOLE-514: Add guacd support for extended VNC credentials. 2019-08-09 13:05:40 -04:00
Nick Couchman
f962eab27a Merge 1.1.0 changes back to master. 2019-08-09 13:01:54 -04:00
Michael Jumper
43269920db GUACAMOLE-630: Clarify usage of argv-related guac_user_callback implementations. 2019-08-07 20:16:01 -07:00
Michael Jumper
f56df8b8be GUACAMOLE-630: Automatically send current color scheme and font to users joining SSH, telnet, and Kubernetes connections. 2019-08-04 12:52:00 -07:00
Michael Jumper
ccfcfb116d GUACAMOLE-630: Persist details of color scheme and font changes. 2019-08-04 12:44:43 -07:00
Michael Jumper
4dabea37af GUACAMOLE-630: Allow guac_terminal_parse_color_scheme() to dictate color scheme format. 2019-08-04 11:55:45 -07:00
Michael Jumper
0516d599cf GUACAMOLE-630: Disallow NULL color schemes.
A color scheme string should always be provided, even if blank.
Disallowing NULL allows assumptions to be made which simplifies the
logic surrounding persisting provided configuration values.
2019-08-04 11:45:41 -07:00
Michael Jumper
b5191caddc GUACAMOLE-630: Accept pre-defined color schemes in all cases, not just during terminal creation. 2019-08-04 11:37:42 -07:00
Michael Jumper
0c7898c55a GUACAMOLE-630: Expose terminal font/color configuration changes to connected clients. 2019-08-03 19:53:07 -07:00
Nick Couchman
289ceac222 Merge 1.1.0 changes back to master. 2019-08-03 17:16:45 -04:00
Virtually Nick
e25f83d629
GUACAMOLE-623: Merge add support for adjusting terminal for Kubernetes via "argv". 2019-08-03 17:14:30 -04:00
Michael Jumper
e6835795f0 GUACAMOLE-623: Add support for setting terminal font for Kubernetes via "argv". 2019-08-03 14:04:30 -07:00
Nick Couchman
b6005cc8a0 Merge 1.1.0 changes back to master. 2019-07-31 12:39:32 -04:00
Michael Jumper
ca073db5b6 GUACAMOLE-629: Add convenience functions for immediately sending the current value of a connection parameter. 2019-07-30 14:05:50 -07:00
Michael Jumper
c3a295e9b7 GUACAMOLE-629: Add convenience function for automatically splitting data across a series of blob instructions. 2019-07-30 14:05:50 -07:00
Michael Jumper
c47aa0cea1 GUACAMOLE-629: Define constant for maximum blob size. 2019-07-30 13:34:24 -07:00
Michael Jumper
c1b8250300 GUACAMOLE-629: Move constants for Guacamole protocol to dedicated "*-constants.h" header. 2019-07-30 13:33:18 -07:00
Michael Jumper
a763d47bc7 GUACAMOLE-629: Add support for sending "argv" instructions from server to client. 2019-07-30 13:06:46 -07:00
Michael Jumper
a3101e9744 Merge 1.1.0 changes back to master. 2019-07-26 14:38:25 -07:00
Nick Couchman
26bb10a486 GUACAMOLE-422: Add empty handler and trace logging for nop instruction. 2019-07-23 14:29:50 -04:00
Frank Riley
87a5479ff8 GUACAMOLE-847: Fix severe memory leak when using audio with RDP 2019-07-20 06:14:36 -07:00