Nick Couchman
c90c057e12
GUACAMOLE-414: Add version checks for TLS locking.
2019-03-09 21:46:02 -05:00
Nick Couchman
e9a10d66b7
GUACAMOLE-414: Add pthread lock and callbacks for TLS write locking.
2019-03-09 21:27:30 -05:00
Michael Jumper
228cea4af1
GUACAMOLE-381: Disable outbound transfers from terminal protocols if "disable-copy" is set.
2019-02-19 12:11:24 -08:00
Michael Jumper
254615509a
GUACAMOLE-381: Disable or ignore outbound clipboard transfers for VNC/RDP if "disable-copy" is set.
2019-02-19 11:45:30 -08:00
Michael Jumper
993d5c5707
GUACAMOLE-381: Disable inbound clipboard transfer if "disable-paste" is set.
2019-02-19 11:40:32 -08:00
Michael Jumper
7d2b7126db
GUACAMOLE-381: Add copy/paste disable flags for all supported protocols.
2019-02-19 11:34:18 -08:00
Virtually Nick
7065ff5586
GUACAMOLE-712: Merge add Danish to RDP
2019-02-06 09:01:33 -05:00
netromnetrom
aeb9b99a6c
Merge pull request #2 from netromnetrom/patch-1
...
Patch 1
2019-02-06 12:01:19 +01:00
Michael Jumper
c6feef6c86
GUACAMOLE-637: Clarify purpose of initial empty path component. Fix normalization logic to ensure that empty component is always present.
2019-01-23 20:28:09 -08:00
Michael Jumper
789e3883d6
GUACAMOLE-637: Not all systems place Perl in /usr/bin. The line #!/usr/bin/env perl
should be used for portability.
2019-01-23 18:44:45 -08:00
Michael Jumper
fdd3292f09
GUACAMOLE-637: Simplify path translation logic. Update to use guac_strl*(). Fix return values.
2019-01-23 18:44:45 -08:00
Michael Jumper
e5c1147cf6
GUACAMOLE-637: Replace usages of strncpy() with guac_strlcpy().
2019-01-23 18:44:45 -08:00
netromnetrom
7b7c8a1b02
Update Makefile.am
2019-01-22 16:24:56 +01:00
netromnetrom
a06edb9deb
Update and rename dk_dk_qwerty.keymap to da_dk_qwerty.keymap
2019-01-22 14:36:05 +01:00
Andrin
01142e6dd8
GUACAMOLE-354: Fixed keyboard name.
2018-12-04 08:30:36 +01:00
Andrin
9486ec7cc4
GUACAMOLE-354: Add Swiss-German keymap for RDP
2018-11-20 14:10:36 +01:00
Nick Couchman
7b1ba3f269
GUACAMOLE-422: Fix spelling mistake.
2018-11-12 12:09:51 -05:00
Nick Couchman
d1b3695282
GUACAMOLE-422: Fix type in strerror()
2018-11-12 11:56:57 -05:00
Nick Couchman
f61539c4e7
GUACAMOLE-422: Quick fixes for style and logging.
2018-11-12 11:55:07 -05:00
Nick Couchman
9a944637be
GUACAMOLE-422: Fix function declaration for pushing settings.
2018-11-11 17:25:12 -05:00
Nick Couchman
4bd19160de
GUACAMOLE-422: Add logging for RDP timzeone.
2018-11-11 17:22:03 -05:00
Nick Couchman
b3be9eb869
GUACAMOLE-422: Revert addition of logging for setting TZ variable.
2018-11-11 16:07:20 -05:00
Nick Couchman
0b71559017
GUACAMOLE-422: Add errno header.
2018-11-11 15:48:02 -05:00
Nick Couchman
e2b4de9d95
GAUCAMOLE-422: Add warning messages when TZ cannot be set.
2018-11-11 15:45:24 -05:00
Nick Couchman
d7ed452d69
GUACAMOLE-422: Update comments on timezone settings.
2018-11-11 15:30:17 -05:00
Nick Couchman
5536b836ad
GUACAMOLE-422: Add support for passing through TZ in SSH.
2018-11-11 14:11:40 -05:00
Nick Couchman
ffdc98d024
GUACAMOLE-422: Support timezone redirection in RDP via TZ variable.
2018-11-11 14:09:23 -05:00
Nick Couchman
381c5d1a76
GUACAMOLE-630: Merge allow font parameters of active terminal session to be changed.
2018-11-11 14:03:58 -05:00
Michael Jumper
5683be0ea3
GUACAMOLE-630: Allow SSH/telnet font family and size to be updated.
2018-11-10 14:22:23 -08:00
Nick Couchman
d2cb7a9ce9
GUACAMOLE-630: Merge allow color scheme of active terminals to be changed.
2018-11-10 10:45:56 -05:00
Michael Jumper
0cf24219d8
GUACAMOLE-630: Define maximum "argv" stream length for SSH and telnet with symbolic constants.
2018-11-09 20:27:28 -08:00
Michael Jumper
edbdd08476
GUACAMOLE-649: Allow SSH connection to continue despite failure to set LANG environment variable.
2018-11-08 19:29:32 -08:00
Michael Jumper
454682979e
GUACAMOLE-649: Add support for setting LANG environment variable via SSH.
2018-11-04 21:20:47 -08:00
Michael Jumper
2f16eadb35
GUACAMOLE-630: Allow color scheme to be changed from webapp via argv streams.
2018-10-22 23:23:27 -07:00
Michael Jumper
6f49194640
Merge 1.0.0 changes back to master.
2018-10-16 09:05:37 -07:00
Nick Couchman
34c088882b
GUACAMOLE-527: Correct issue with order of VNC SFTP settings.
2018-10-16 09:27:45 -04:00
Michael Jumper
d851f10a48
GUACAMOLE-353: Clarify applicability of ASF header when transcluded into generated build files.
2018-10-02 20:37:49 -07:00
Michael Jumper
7374b29364
GUACAMOLE-623: Start terminal once Kubernetes connection is ready (necessary since merge of GUACAMOLE-622).
2018-09-27 09:33:31 -07:00
Michael Jumper
9c593bde89
GUACAMOLE-623: Kill connection if libwebsockets is destroying the underlying WebSocket.
...
Older versions of libwebsockets will not necessarily invoke close events
under all circumstances, and will instead sometimes summarily destroy
the WebSocket. Thankfully there is another event for that, and newer
versions of libwebsockets continue to define that event. We can hook
into both to handle disconnect.
2018-09-26 22:31:25 -07:00
Michael Jumper
44d3433ea9
GUACAMOLE-623: Explicitly bypass certificate checks if requested.
...
For older versions of libwebsockets, simply requesting that OpenSSL
ignore the verification result is insufficient, as libwebsockets
manually checks and confirms the verification result, producing an error
in all but specific cases.
2018-09-26 22:01:46 -07:00
Michael Jumper
7ee624844a
GUACAMOLE-623: Remove unnecessary initialization of pwsi.
...
The pwsi member was previously used to ensure the lws structure was made
available to invocations of the event callback early in the connection
lifecycle such that the underlyin guac_client could always be retrieved.
Since the migration to guac_kubernetes_lws_current_client, this is not
necessary, and isn't supported in older versions of libwebsockets
anyway.
2018-09-26 21:52:53 -07:00
Michael Jumper
b48a1b3a5d
GUACAMOLE-623: Use libwebsockets' dummy callback only if defined.
2018-09-26 21:51:07 -07:00
Michael Jumper
d8618b0682
GUACAMOLE-623: Support older libwebsockets SSL initialization.
2018-09-26 21:50:19 -07:00
Michael Jumper
61df2956b3
GUACAMOLE-623: Clean up logging (libwebsockets adds newline characters).
2018-09-25 21:30:52 -07:00
Michael Jumper
83a531bc89
GUACAMOLE-623: Add support for SSL.
2018-09-25 21:30:52 -07:00
Michael Jumper
2e50573531
GUACAMOLE-623: Move I/O-related functions into separate files.
2018-09-25 21:30:52 -07:00
Michael Jumper
5e3aec6df2
GUACAMOLE-623: Add missing documentation for URL character test.
2018-09-25 21:30:51 -07:00
Michael Jumper
371eed1f93
GUACAMOLE-623: Add missin includes. Remove unnecessary includes.
2018-09-25 21:30:51 -07:00
Michael Jumper
c5f67a31dc
GUACAMOLE-623: Add configure test for LWS_CALLBACK_CLIENT_CLOSED (only defined in recent libwebsockets and required if present).
2018-09-25 21:30:51 -07:00
Michael Jumper
ed56093888
GUACAMOLE-623: Generate Kubernetes API endpoint dynamically.
2018-09-25 21:30:51 -07:00
Michael Jumper
34f8f8b30d
GUACAMOLE-623: Redirect libwebsockets logging to guacd's debug level log.
2018-09-25 21:30:51 -07:00
Michael Jumper
fe7edce569
GUACAMOLE-623: Add support for terminal resize. Redraw Kubernetes container upon connect.
2018-09-25 21:30:51 -07:00
Michael Jumper
b7c938c239
GUACAMOLE-623: Send typed data to Kubernetes via the STDIN channel.
2018-09-25 21:30:51 -07:00
Michael Jumper
f35517b3ff
GUACAMOLE-623: Add outbound message buffer.
2018-09-25 21:30:51 -07:00
Michael Jumper
cbe593503f
GUACAMOLE-623: Do not return -1 from libwebsockets callback. Doing so results in automatic cleanup of part of the context, resulting in a segfault when lws_context_destroy() is invoked.
2018-09-25 21:30:51 -07:00
Michael Jumper
f72877bf0d
GUACAMOLE-623: Handle data received from Kubernetes.
2018-09-25 21:30:51 -07:00
Michael Jumper
7165fa949d
GUACAMOLE-623: Stub out implementation of WebSocket client for Kubernetes.
2018-09-25 21:30:51 -07:00
Michael Jumper
519c90a887
GUACAMOLE-623: Default to unencrypted Kubernetes connections.
2018-09-25 21:30:51 -07:00
Michael Jumper
5bae422b29
GUACAMOLE-623: libwebsockets requires an integer port number.
2018-09-25 21:30:51 -07:00
Michael Jumper
b8bd0e4c6a
GUACAMOLE-623: Add base skeleton for Kubernetes protocol support.
2018-09-25 21:30:51 -07:00
Nick Couchman
54fda21366
GUACAMOLE-622: Merge withold first terminal frame until connection is verified.
2018-09-21 20:26:47 -04:00
Michael Jumper
622a849bae
GUACAMOLE-628: Correct RDP scancode mapping for right control key.
2018-09-21 16:25:11 -07:00
Michael Jumper
462d494ed8
GUACAMOLE-622: Match each line against all regexes.
2018-09-21 14:29:01 -07:00
Michael Jumper
442b1d5cc2
GUACAMOLE-622: Start terminal for telnet only after login status is known (if login success/failure detection enabled).
2018-09-21 14:29:01 -07:00
netromnetrom
5f8c6470ff
Update Makefile.am
...
Danish keyboard layout
2018-09-11 13:44:29 +02:00
netromnetrom
948d1bcac8
Create dk_dk_qwerty.keymap
...
Danish keyboard layout
2018-09-11 13:40:25 +02:00
Michael Jumper
286cbf32a7
GUACAMOLE-622: Ensure connection to guacd is kept alive even if the SSH daemon is taking its time responding. Lengthy connect times due to DNS verification, PAM, etc. are not uncommon.
2018-09-02 23:04:14 -07:00
Michael Jumper
4606607309
GUACAMOLE-622: Start terminal for SSH only after SSH connection succeeds.
2018-09-02 23:04:14 -07:00
Michael Jumper
0e6d549a40
GUACAMOLE-610: Allow scrollback size to be specified for SSH and telnet.
2018-08-18 11:12:55 -07:00
Nick Couchman
0062f61d67
Merge 1.0.0 changes back to master.
2018-07-31 08:12:30 -04:00
Michael Jumper
860a5fca8f
GUACAMOLE-559: Maintain terminal clipboard at client level such that it is guaranteed to exist immediately after user connects.
2018-07-30 23:53:03 -07:00
Michael Jumper
f5b5ac7183
Merge 1.0.0 changes back to master.
2018-07-05 22:54:36 -07:00
Nick Couchman
5e942c9a67
GUACAMOLE-446: Valid default value for the filesystem name.
2018-07-03 23:23:38 -04:00
Nick Couchman
958fb4c8e0
GUACAMOLE-446: Pass through drive name to RDPDR stream.
2018-07-03 23:20:11 -04:00
Nick Couchman
cfcfe8866c
GUACAMOLE-446: Add settings for drive name.
2018-07-03 22:59:30 -04:00
Michael Jumper
35237a4f88
Merge 1.0.0 changes back to master.
2018-07-03 19:32:36 -07:00
Michael Jumper
da1e078242
GUACAMOLE-445: Merge support for defining the RDP printer name.
2018-07-03 19:24:07 -07:00
Nick Couchman
a1ec5d9ad7
GUACAMOLE-445: Implement per-device announce stream, set it up with device initalization, and collect them all during the annonuce process.
2018-07-03 22:13:11 -04:00
Nick Couchman
e68fe81938
GUACAMOLE-445: Pass printer name from settings to RDP session.
2018-07-03 22:12:30 -04:00
Nick Couchman
b21f00c29d
GUACAMOLE-445: Add settings for printer name.
2018-06-26 19:23:52 -04:00
Michael Jumper
67680bd2d5
Merge 1.0.0 changes back to master.
2018-06-25 17:27:10 -07:00
Nick Couchman
aec2be6da2
GUACAMOLE-527: Remove unnecessary includes.
2018-06-25 08:31:37 -04:00
Nick Couchman
2bebb96804
GUACAMOLE-527: Fix host key options in the protocol settings.
2018-06-25 08:31:37 -04:00
Nick Couchman
551598e0a4
GUACAMOLE-527: Use libssh2_knownhost_readline and remove host key type.
2018-06-25 08:31:37 -04:00
Nick Couchman
42044e4279
GUACAMOLE-527: Clean up memory and logging.
2018-06-25 08:31:37 -04:00
Nick Couchman
ec4315dfbe
GUACAMOLE-527: Correct names of parameters coming from client.
2018-06-25 08:31:37 -04:00
Nick Couchman
9112c4f32f
GUACAMOLE-527: Enable host key setting for SFTP connections.
2018-06-25 08:31:37 -04:00
Nick Couchman
0d82cd1e6c
GUACAMOLE-527: Add host key and type settings.
2018-06-25 08:31:37 -04:00
Michael Jumper
b650bef139
GUACAMOLE-574: Redirect STDIN from pipe stream named "STDIN" for SSH and telnet.
2018-06-18 14:31:09 -07:00
Michael Jumper
81bba1b587
GUACAMOLE-470: Merge support for fully configurable terminal color palette.
2018-05-27 08:49:18 -07:00
Jim Chen
87df97317f
GUACAMOLE-565: Add terminal-type parameter for SSH and Telnet.
...
Add a terminal-type parameter for SSH and Telnet connections, to specify
the terminal emulator type that is passed to programs. If not specified,
the default type of "linux" is used in keep with existing behavior.
2018-05-26 23:30:22 -04:00
Jim Chen
1bd537c350
GUACAMOLE-470: Support configurable colors in color-scheme parameter.
...
Add support for configuring individual colors in the color-scheme
parameter, by parsing the parameter content into name-value pairs.
Backward compatibility is preserved by translating previously supported
values into corresponding new values.
2018-05-26 23:18:27 -04:00
Michael Jumper
70b2b8a1bf
GUACAMOLE-269: Merge support for overriding the character sequence sent for backspace for SSH/telnet.
2018-04-02 12:19:02 -07:00
Nick Couchman
dc1918b217
GUACAMOLE-269: Don't abort on ttymode issue, just log a warning.
2018-04-02 15:05:56 -04:00
Nick Couchman
7453bc8f44
GUACAMOLE-269: Clean up logging and comments, and simplify code.
2018-04-02 15:04:03 -04:00
Nick Couchman
b441181c18
GUACAMOLE-269: Remove unnecessary data structure and array size, and update comments.
2018-04-02 10:43:57 -04:00
Nick Couchman
ea946f2492
GUACAMOLE-269: Changes to initializing opcode array.
2018-04-02 09:10:11 -04:00
Nick Couchman
e16bfd7837
GAUCAMOLE-269: Memory effeciency updates.
2018-03-24 15:50:11 -04:00
Nick Couchman
11136f7d7b
GUACAMOLE-269: More documentation updates.
2018-03-24 15:09:34 -04:00
Nick Couchman
86dde85b2d
GUACAMOLE-269: Comment and spelling updates.
2018-03-24 14:53:22 -04:00
Nick Couchman
a27757682a
GUACAMOLE-523: Add default value for client name.
2018-03-08 12:21:04 -05:00
Nick Couchman
b72bcafecd
GUACAMOLE-523: Pass configured client name through for redirect messages.
2018-03-08 12:16:31 -05:00
Nick Couchman
45b832bfdc
GUACAMOLE-269: Remove all dynamic allocation and simplify implementation.
2018-03-08 11:36:15 -05:00
Nick Couchman
dd7522bd9f
GUACAMOLE-269: Get rid of dynamic allocation and properly free up data structures.
2018-03-08 10:48:22 -05:00
Nick Couchman
c3e1b2afef
GUACAMOLE-269: Fix minor style issues and update comments.
2018-03-08 10:48:22 -05:00
Nick Couchman
64ca77f3a5
GUACAMOLE-269: Change struct to struct pointer.
2018-03-08 10:48:22 -05:00
Nick Couchman
c286668b79
GUACAMOLE-269: Name functions per Guacamole standards.
2018-03-08 10:48:22 -05:00
Nick Couchman
9bd28321e5
GUACAMOLE-269: Fix up style in comments.
2018-03-08 10:48:21 -05:00
Nick Couchman
fd58d31eea
GUACAMOLE-269: Use backspace config to set up tty modes.
2018-03-08 10:48:21 -05:00
Nick Couchman
46e908c06e
GUACAMOLE-269: Allow backspace key to be configured.
2018-03-08 10:48:21 -05:00
Nick Couchman
2ace9385a2
GUACAMOLE-269: Add documentation for the defines and variables.
2018-03-08 10:48:21 -05:00
Nick Couchman
5583748b54
GUACAMOLE-269: Move constant declaration to ttymode.c
2018-03-08 10:48:21 -05:00
Nick Couchman
f1bf70a4a2
GUACAMOLE-269: Add basic support for sending TTY mode encoding.
2018-03-08 10:48:21 -05:00
Michael Jumper
5d37530687
GUACAMOLE-517: Add definition for "Print Screen" key to base RDP keymap.
2018-03-06 12:01:50 -08:00
Michael Jumper
bc5b01d4d8
GUACAMOLE-448: Merge support for configuring the level of caching used by RDP.
2018-02-22 00:39:31 -08:00
Nick Couchman
d239207f0f
GUACAMOLE-448: Add support for configuring glyph caching.
2018-02-20 15:35:50 -05:00
Michael Jumper
02cd424d18
GUACAMOLE-502: Do not send connection name / hostname (which may be internal information).
2018-02-06 20:12:53 -08:00
Nick Couchman
4d7191147c
GUACAMOLE-313: Merge add support for including key events within session recordings.
2018-02-02 16:16:42 -05:00
Nick Couchman
08f854ffef
GUACAMOLE-313: Merge add support for logging mouse cursor information.
2018-01-30 14:05:39 -05:00
Michael Jumper
053d9d420c
GUACAMOLE-352: Clean up keymap lookup/update logic for sake of verifiability.
2018-01-28 23:09:50 -08:00
Michael Jumper
9a5b5574a8
GUACAMOLE-352: Type using dead keys when necessary and possible.
2018-01-28 01:32:58 -08:00
Michael Jumper
5d56985479
GUACAMOLE-352: Add utility function for checking whether a keysym exists within the current RDP keyboard layout.
2018-01-28 00:56:24 -08:00
Michael Jumper
4fb17d5610
GUACAMOLE-313: Add flags for controlling the contents of session recordings.
2018-01-26 16:42:24 -08:00
Michael Jumper
876516a1fb
GUACAMOLE-313: Add support for including key states within session recordings.
2018-01-26 16:42:14 -08:00
Michael Jumper
81a0e66d9f
GUACAMOLE-313: Include current button state within mouse update for completeness.
2018-01-26 16:21:53 -08:00
Michael Jumper
df770ae4ea
GUACAMOLE-313: Add support for including mouse location within session recordings.
2018-01-26 16:21:28 -08:00
Michael Jumper
b37e73488f
GUACAMOLE-313: Provide reference to in-progress screen recording.
2018-01-26 16:21:24 -08:00
Michael Jumper
db85163e20
GUACAMOLE-384: Merge fix for potential segfault if SSH connection is closed while output is still being written to the terminal.
2018-01-23 14:44:47 -08:00
Michael Jumper
822a6c6b9d
GUACAMOLE-484: Do not flush frame if connection closed mid-frame.
2018-01-22 12:24:07 -08:00
Michael Jumper
61c16a89d2
GUACAMOLE-484: Always clean up after orderly disconnect.
2018-01-22 12:23:39 -08:00
Michael Jumper
d562cb7648
GUACAMOLE-484: Ensure disconnect reason code is checked for orderly RDP disconnect.
2018-01-22 12:16:09 -08:00
csenel
93b3eebc5d
GUACAMOLE-481: Add Turkish Q keymap for RDP
2018-01-09 10:53:05 +03:00
Nick Couchman
66ffda24f0
GUACAMOLE-448: Add support for configuring bitmap caching.
2018-01-02 18:26:29 -05:00
Michael Jumper
2c12c12850
GUACAMOLE-424: Merge changes addressing potential NULL-pointer dereference in VNC user leave handler.
2017-11-15 07:05:21 -08:00
Michael Jumper
a75bca1e95
GUACAMOLE-273: Merge RDP support for Portuguese Brazilian keyboard.
2017-11-14 17:17:34 -08:00
Frode Langelo
fc599d2aec
GUACAMOLE-273: Remove Mac remapping of €.
2017-11-14 20:04:49 +00:00
Michael Jumper
493fa4df16
GUACAMOLE-233: Merge RDP support for Spanish keyboards.
2017-11-14 10:56:28 -08:00
Frode Langelo
fc15850288
GUACAMOLE-233: Add Spanish keymap for RDP.
2017-11-13 22:57:21 +00:00
Frode Langelo
a8174eeac9
GUACAMOLE-273: Fix comment for remapping of €.
2017-11-13 22:52:39 +00:00
Frode Langelo
ed8a32f98b
GUACAMOLE-273: Add Brazillian ABNT2 keymap for RDP.
2017-11-13 22:43:42 +00:00
Frode Langelo
625eee0caa
GUACAMOLE-434: Add UK English keymap for RDP.
2017-11-13 22:26:29 +00:00
itsankoff
e139b20d12
GUACAMOLE-424: Remove check against NULL for display cursor
2017-11-13 14:51:31 +02:00
Michael Jumper
233f5e27e2
GUACAMOLE-296: Merge changes reverting explicit linking of libwinpr-utils.
2017-11-06 11:24:39 -08:00
Nick Couchman
b9f8e13d80
GUACAMOLE-296: Revert manual addition of winpr-utils library.
2017-11-06 12:20:56 -05:00
itsankoff
bbafa00df0
GUACAMOLE-424: Prevent null pointer dereference for vnc client display and cursor
2017-11-02 19:53:17 +02:00
sanhex
d33bd8deff
GUACAMOLE-384: fixing segfault during ssh disconnect
...
Root Cause:
See the core dump and Valgrind report posted on Jira. guacd was reading a ssh terminal which had been freed. When a ssh connection is terminated, guac_ssh_client_free_handler() will be called from guacd_exec_proc() -> guac_client_free() with pointer client->free_handler. In guac_ssh_client_free_handler(), when ssh_client->term is freed, ssh_client->client_thread may still be using the ssh_client->term. It causes the crash reported in this bug.
The stack trace exposing the problem can be found by running guacd under Valgrind with a ssh test script. The test script repeats doing ssh login and logout for 5000 times.
Solution:
In guac_ssh_client_free_handler(), before calling guac_terminal_free(ssh_client->term), close the stdin pipe of the terminal to stop reading the pipe with guac_terminal_read_stdin() in ssh_input_thread(). So that ssh_input_thread() can be terminated in this case. Call pthread_join() to wait for ssh_client_thread() terminating before freeing the terminal.
Add a new function guac_terminal_stop() to close the pipe and set the fds to invalid (-1). Call it in guac_ssh_client_free_handler() and guac_terminal_free().
Checking the client running state in ssh_input_thread() and ssh_client_thread() to make sure they can be terminated when the client is stopped in guacd_exec_proc() by another thread.
Test:
- Confirmed ssh connection works normally.
- Observed the child process of guacd exits when ssh connection is terminated.
- Reran the ssh test script. Observed no crash.
2017-10-29 18:11:15 -07:00
itsankoff
15f6c4f3dc
GUACAMOLE-424: Fix null pointer dereference for vnc client display
2017-10-24 20:21:03 +03:00
Michael Jumper
95be88be19
GUACAMOLE-296: Merge fix for linking issues with FreeRDP 1.1 and guacai (audio input).
2017-10-14 23:45:35 -07:00
Nick Couchman
caedf26a06
GUACAMOLE-296: Break out WINPR libs into their own variable.
2017-10-13 21:25:32 -04:00
David Fort
bb527f30f8
GUACAMOLE-402: fix out-of-tree build
...
Use $(srcdir) in places were it's needed, so that an out-of-tree build works.
2017-10-12 15:11:27 +02:00
sanhex
3c7a09f52b
GUACAMOLE-400: Fix guacd crash when ssh key fails
...
Root Cause:
In the ssh library of guacd, function ssh_client_thread(), when guac_ssh_get_user() fails to load private key for ssh authentication, it will return NULL. In this case, the subsequent call to guac_common_ssh_create_session() with parameter 'user=0x0' will cause guacd crash in function guac_common_ssh_authenticate() by accessing 'user->username'.
Solution:
- Update the comment of function guac_ssh_get_user() to document that NULL will be returned if fails to import key for the user.
- In function ssh_client_thread(), verify the return of guac_ssh_get_user(). If ssh_client->user is NULL, return NULL.
Test:
- Configured a ssh app with an encrypted private key and a wrong passphrase.
- Ran the ssh app from web portal and observed guacd crash.
- Applied the fix and reran the ssh app. Observed no crash.
2017-09-29 11:04:48 -07:00
Ilya Shipitsin
fc071fd1af
GUACAMOLE-383: resolve issues identified by cppcheck
...
[src/guacd/conf-file.c:206]: (error) Memory leak: conf
[src/protocols/rdp/rdp_cliprdr.c:205]: (error) Memory leak: output
[src/terminal/display.c:283]: (error) Memory leak: display
[src/terminal/display.c:290]: (error) Memory leak: display
2017-09-20 22:55:58 +05:00
Michael Jumper
7857dd0a9a
GUACAMOLE-303: Ensure there is always space for the null terminator when normalizing.
2017-07-04 12:00:43 -07:00
Michael Jumper
d51e92eb31
GUACAMOLE-303: Add "sftp-root-directory" parameter to VNC, RDP, and SSH.
2017-06-29 15:48:23 -07:00
Michael Jumper
0474f86c46
GUACAMOLE-303: Extend common SFTP filesystem such that arbitrary directories can be used as the root of the filesystem.
2017-06-29 15:36:10 -07:00
Michael Jumper
e5a1b4d8ae
GUACAMOLE-326: Explicitly deny attempted reads/writes to Windows named data streams (like "foo:Zone.identifier" for the file "foo").
2017-06-26 14:40:32 -07:00
Nick Couchman
041fcc4651
GUACAMOLE-203: Change remaining instances of timer to timeout.
2017-06-25 05:13:22 -04:00
Nick Couchman
05dfb1a6ae
GUACAMOLE-203: Deal correctly with negative keepalive values.
2017-06-25 05:10:22 -04:00
Nick Couchman
8c24c77d55
GUACAMOLE-203: Change timer to timeout
2017-06-14 13:00:30 -04:00
Nick Couchman
af4d762147
GUACAMOLE-203: Move warning about minimum alive interval to single place in common code.
2017-06-14 12:49:49 -04:00
Nick Couchman
89b9a905db
GUACAMOLE-203: Tweak warning message sent to users.
2017-06-14 11:11:32 -04:00
Nick Couchman
df718395e8
GUACAMOLE-203: Change alive interval from int to unsigned.
2017-06-14 10:17:28 -04:00
Nick Couchman
193051dfd5
GUACAMOLE-203: Change parameter name for consistency
2017-06-14 08:40:07 -04:00
Nick Couchman
070bd25721
GUACAMOLE-203: if statement style tweak
2017-06-14 08:27:09 -04:00
Nick Couchman
03403e3ea5
GUACAMOLE-203: Correct implementation of SSH keepalive option for SFTP connections across all protocols.
2017-05-31 21:03:14 -04:00
Nick Couchman
e7fc8a0d98
GUACAMOLE-203: Expand SSH keepalives to cover SFTP connections for other protocols.
2017-05-31 21:03:09 -04:00
Nick Couchman
9993684205
GUACAMOLE-203: Warn user if they try to enter keepalive value < 2 seconds.
2017-05-31 21:03:06 -04:00
Nick Couchman
1e3d82cc63
GUACAMOLE-203: Update comment for keep alive interval.
2017-05-31 21:03:04 -04:00
Nick Couchman
f693b02e12
GUACAMOLE-203: Tighten up code, implement constant for socket poll timer.
2017-05-31 21:02:59 -04:00
Nick Couchman
75019f5e4b
GUACAMOLE-203: Add a few more comments to code.
2017-05-31 21:02:53 -04:00
Nick Couchman
8ab7e56972
GUACAMOLE-203: Implement keepalive config in SSH connection.
2017-05-31 21:02:50 -04:00
Nick Couchman
f42f05aab7
GUACAMOLE-203: Add option entries for ServerAliveInterval.
2017-05-31 21:02:38 -04:00
Michael Jumper
8024f13458
GUACAMOLE-306: Do not attempt to send VNC events with a non-existent VNC client object.
2017-05-19 14:20:28 -07:00
James Muehlner
69caa9936b
GUACAMOLE-40: Merge RD gateway support.
2017-04-20 21:36:44 -07:00
Michael Jumper
228874804e
GUACAMOLE-268: Use 64-bit unsigned integers to represent file size internally (identical to RDPDR).
2017-04-17 11:52:07 -07:00
Michael Jumper
09099050cb
GUACAMOLE-40: Set RD gateway and load balancing settings for FreeRDP where applicable.
2017-04-10 00:13:38 -07:00
Michael Jumper
da8636ef54
GUACAMOLE-40: Add and parse RD gateway connection parameters.
2017-04-09 23:58:11 -07:00
dborth
8833c0dd79
GUACAMOLE-262: set VNC trueColour flag to 1 instead of 255
2017-04-03 09:28:22 -06:00
Michael Jumper
61896e829c
GUACAMOLE-257: Set VNC/SSH file upload handlers only if SFTP is enabled.
2017-03-28 10:48:38 -07:00
James Muehlner
c4903a8e36
Merge 0.9.12-incubating changes back to master.
2017-02-28 10:32:49 -08:00
Michael Jumper
3f7ccb6b9a
GUACAMOLE-169: Move terminal headers to namespaced directory.
2017-02-27 14:34:46 -08:00
Michael Jumper
d371f2d9ee
GUACAMOLE-169: Move common-ssh headers to namespaced directory.
2017-02-27 14:28:23 -08:00
Michael Jumper
fb8a2766da
GUACAMOLE-194: Free SSH user for VNC+SFTP and RDP+SFTP only within client free.
2017-02-26 15:10:53 -08:00
Michael Jumper
c796787f25
GUACAMOLE-218: Reset internal RDPSND audio format counter whenever a new SNDC_FORMATS PDU is received.
2017-02-25 15:08:16 -08:00
James Muehlner
077cc84d27
GUACAMOLE-208: Merge new protocol status codes.
2017-02-15 21:52:36 -08:00
Michael Jumper
4f4643dd2f
GUACAMOLE-208: Report network failures to connect with UPSTREAM_NOT_FOUND.
2017-02-15 21:40:00 -08:00
Michael Jumper
a78d52e615
GUACAMOLE-208: Handle RDP disconnect reason codes.
2017-02-15 21:23:46 -08:00
Michael Jumper
12cde5d520
GUACAMOLE-200: Clear reference to active job after the job has been freed.
2017-02-15 20:11:26 -08:00
Michael Jumper
7a4b737a3a
GUACAMOLE-200: Document all parameters of guac_rdp_print_job_write().
2017-02-15 19:59:50 -08:00
Michael Jumper
bf2a5885d0
GUACAMOLE-200: Move print job cleanup into main RDP client thread.
2017-02-14 00:09:24 -08:00
Michael Jumper
5a68f932d6
GUACAMOLE-200: Maintain print jobs at top level. Do not rely on proper free of RDPDR plugin.
2017-02-14 00:02:17 -08:00
Michael Jumper
1537e475af
GUACAMOLE-200: Refactor RDPDR print job object to top-level.
2017-02-13 23:51:33 -08:00
Michael Jumper
17093a8149
GUACAMOLE-200: Kill any remaining print job when connection closes.
2017-02-13 23:08:54 -08:00
Michael Jumper
d23a22b7c6
GUACAMOLE-200: Clean up PostScript document title search logic.
2017-02-13 18:42:28 -08:00
Michael Jumper
3fc43fba37
GUACAMOLE-200: Refactor RDPDR printer such that the "ack" handler cannot block.
2017-02-13 18:42:28 -08:00
James Muehlner
d831a4b9df
GUACAMOLE-188: Merge alpha component support for common surface.
2017-01-29 12:45:46 -08:00
James Muehlner
135514a0d2
GUACAMOLE-94: Merge move from readdir_r to readdir.
2017-01-29 12:30:24 -08:00
Michael Jumper
b9faca923b
GUACAMOLE-135: Correct Swiss French mapping of "¬", "|", and "¢" (off by one key).
2017-01-28 14:55:38 -08:00
Michael Jumper
c79b303237
GUACAMOLE-135: Clean up spacing and alignment of Swiss French keymap.
2017-01-28 14:23:33 -08:00
Michael Jumper
c6f6bb67f0
GUACAMOLE-135: Swiss Franch dead umlaut should map from keysym 0xFE57.
2017-01-28 14:22:22 -08:00
Michael Jumper
fb298acdcd
GUACAMOLE-135: Abbreviate Swiss French mapping range where possible.
2017-01-28 14:21:17 -08:00
Michael Jumper
86493dda93
GUACAMOLE-135: Remove duplicate scancode mappings from Swiss French keymap.
2017-01-28 14:19:52 -08:00
Cédric Marie-Marthe
941fd9659a
GUACAMOLE-135: Add Swiss-French keymap for RDP.
2017-01-28 13:35:21 -08:00
Michael Jumper
dc6cae46ca
GUACAMOLE-94: Use readdir() instead of readdir_r(). Multiple threads will not be accessing the same directory stream.
2017-01-28 00:11:59 -08:00
Michael Jumper
1a5f48961c
GUACAMOLE-188: Allow alpha component to be set within common surface.
2017-01-27 16:51:45 -08:00
James Muehlner
5d5fbb4d45
GUACAMOLE-172: Merge lag calculation improvements.
2017-01-24 23:26:29 -08:00
Michael Jumper
48ebbe95ea
GUACAMOLE-179: Move PulseAudio support into separate utility library.
2017-01-24 17:19:06 -08:00
Michael Jumper
234f98705e
GUACAMOLE-172: Use frame start as end of previous frame (ignore server-side time).
2017-01-24 00:18:07 -08:00
Michael Jumper
f641d91b55
GUACAMOLE-172: Exclude server-side rendering time from next frame's required wait (if render times are consistent, then including that time will result in duplicate waiting: once within the render loop, and again when actually flushing the display).
2017-01-24 00:18:04 -08:00
Michael Jumper
eee928548d
GUACAMOLE-169: Use proper namespace for internal common headers.
2017-01-23 23:26:26 -08:00
Michael Jumper
e5b3af8ffe
GUACAMOLE-86: Remove terminal emulator's STDOUT pipe. Use pthread_cond_t to signal modification.
2017-01-16 00:02:30 -08:00
James Muehlner
574bec859a
GUACAMOLE-119: Merge addition of missing liscense files and exclusion of generated source from source archive.
2016-11-13 10:52:16 -08:00
Michael Jumper
8fc4cc928d
GUACAMOLE-119: Do not include generated sources in source tarball.
2016-11-12 18:56:18 -08:00
Michael Jumper
c12e26404a
GUACAMOLE-118: Use poll() when waiting for data from RDP. Reformat for sake of readability/verification.
2016-11-11 13:45:01 -08:00
Michael Jumper
2421fc2f11
GUACAMOLE-118: Use poll() when waiting for data from SSH.
2016-11-11 13:16:57 -08:00
Michael Jumper
168359344e
GUACAMOLE-118: Use poll() when waiting for data from Telnet.
2016-11-11 13:13:48 -08:00
Michael Jumper
bed38cec71
GUACAMOLE-117: Do not stop connection when the intent is to reconnect (originally broken by commit a64c3e0
).
2016-10-29 15:00:53 -07:00
Michael Jumper
996f1a8ec2
GUACAMOLE-51: Require shift released and numlock active for keypad numerals.
2016-08-16 20:00:24 -07:00
Michael Jumper
69ab054323
GUACAMOLE-51: Support -num and +num option (require clear/set numlock) in keymaps.
2016-08-16 20:00:24 -07:00
Michael Jumper
0c48096147
GUACAMOLE-51: Track and synchronize remote lock key state.
2016-08-16 20:00:24 -07:00
Michael Jumper
4f4f83f9a7
GUACAMOLE-51: Isolate sending of specific RDP events within own functions.
2016-08-16 19:54:08 -07:00
Michael Jumper
78a696a86f
GUACAMOLE-51: Abstract away RDP keyboard state tracking with dedicated guac_rdp_keyboard structure.
2016-08-13 18:14:04 -07:00
Michael Jumper
1ad99a312e
GUACAMOLE-5: Add "read-only" parameter to RDP, SSH, and telnet (per-user, just like VNC).
2016-07-24 22:36:25 -07:00
Michael Jumper
59e66ddc77
GUACAMOLE-5: Handle VNC's "read-only" parameter on a per-user basis.
2016-07-24 22:36:25 -07:00
Michael Jumper
0641ccf601
GUACAMOLE-5: Store connection parameters at user level. Maintain reference to owner's connection parameters at client level.
2016-07-24 22:05:04 -07:00
Michael Jumper
69ddeeb06d
GUACAMOLE-44: Refactor the RDPDR printer to synchronous operation.
2016-06-16 15:40:43 -07:00
Michael Jumper
c1fdbca62b
GUACAMOLE-25: Avoid unnecessary allocation of temporary string for guac_rdp_ptr_to_string().
2016-06-03 11:41:55 -07:00
Michael Jumper
402b039384
GUACAMOLE-25: Update documentation regarding loading of dynamic virtual channel plugins.
2016-06-01 22:06:17 -07:00
Michael Jumper
0d29694afc
GUACAMOLE-25: Reset I/O counters upon end-of-stream.
2016-06-01 16:20:38 -07:00
Michael Jumper
0be04ea54d
GUACAMOLE-25: Resample received audio as necessary.
2016-06-01 15:25:42 -07:00
Michael Jumper
1c2890b47c
GUACAMOLE-25: Store PCM format expected by RDP server.
2016-05-26 10:39:33 -07:00
Michael Jumper
ad00cce0ad
GUACAMOLE-25: Store audio format within common structure.
2016-05-25 14:38:22 -07:00
Michael Jumper
260d0cd340
GUACAMOLE-25: Remove STUB.
2016-05-25 13:50:29 -07:00
Michael Jumper
533a47f06d
GUACAMOLE-25: Store input and output audio format.
2016-05-25 13:50:29 -07:00
Michael Jumper
320f564daf
GUACAMOLE-25: Implement parsing of audio mimetypes.
2016-05-25 13:50:29 -07:00
Michael Jumper
8ccf61e6b1
GUACAMOLE-25: Support FreeRDP stable-1.0 and compatible.
2016-05-25 13:50:29 -07:00
Michael Jumper
f1d4393eb8
GUACAMOLE-25: Implement buffer attachment in Stream_New() and Stream_Free() compatibility functions.
2016-05-25 13:50:28 -07:00
Michael Jumper
1393358469
GUACAMOLE-25: Abstract DVC management away from FreeRDP for sake of API compatibility.
2016-05-25 13:50:28 -07:00
Michael Jumper
46bdf0692f
GUACAMOLE-25: Delay sending of "ack" until RDP has opened the AUDIO_INPUT stream. Close audio stream with another "ack" when RDP has closed the AUDIO_INPUT stream.
2016-05-25 13:50:28 -07:00
Michael Jumper
166eba11b7
GUACAMOLE-25: Fix pointer update in audio input buffer transfer.
2016-05-25 13:50:28 -07:00
Michael Jumper
4e4dbd6a2d
GUACAMOLE-25: Fix configure test for FreeRDP variations.
2016-05-25 13:50:28 -07:00
Michael Jumper
9d5871a3c8
GUACAMOLE-25: Buffer and send Data PDUs as necessary.
2016-05-25 13:50:28 -07:00
Michael Jumper
63cd2ce512
GUACAMOLE-25: Partially handle the Open PDU.
2016-05-25 13:50:28 -07:00
Michael Jumper
86806a3759
GUACAMOLE-25: Handle the server's Sound Formats PDU.
2016-05-25 13:50:28 -07:00
Michael Jumper
503ffb0d45
GUACAMOLE-25: Implement message processing. Stub handlers.
2016-05-25 13:50:28 -07:00
Michael Jumper
1088332376
GUACAMOLE-25: Add support for multiple versions of IWTSVirtualChannelCallback.
2016-05-25 13:50:28 -07:00
Michael Jumper
ac94fd4cd0
GUACAMOLE-25: Add stub callbacks for AUDIO_INPUT data handling.
2016-05-25 13:50:28 -07:00
Michael Jumper
9cd89e6580
GUACAMOLE-25: Allocate proper number of argument entries.
2016-05-25 13:50:28 -07:00
Michael Jumper
4fdcfebf25
GUACAMOLE-25: Set AudioCapture flag if audio input is enabled.
2016-05-25 13:50:28 -07:00
Michael Jumper
36cc9f492f
GUACAMOLE-25: Convert guac_client pointer to/from a string for sake of FreeRDP's DVC API.
2016-05-25 13:50:28 -07:00