Commit Graph

57 Commits

Author SHA1 Message Date
James Muehlner
854b5ecbb8 GUACAMOLE-1543: Move recording functionality from common to libguac. 2022-03-01 04:01:44 +00:00
James Muehlner
ad0155b5f5 GUACAMOLE-1538: Make it clear which functions are getters by adding _get_ to the name of each. 2022-02-24 12:02:36 -08:00
James Muehlner
ce2ffdf75f GUACAMOLE-1538: Improve code style and cleanliness. 2022-02-22 20:37:42 -08:00
James Muehlner
6dd33a8d90 GUACAMOLE-1538: Do not use terminal internals outside of terminal code. 2022-02-22 16:06:48 -08:00
James Muehlner
589e0ecd03 GUACAMOLE-1538 - Consolidate clipboard handling; opaque clipboard struct to avoid exposing internal guac_common_clipboard. 2022-02-22 14:04:47 -08:00
James Muehlner
44d76da21a GUACAMOLE-1538: Use an options struct instead of hardcoding params in constructor. 2022-02-21 11:27:20 -08:00
Jimmy
a91c4b3869 GUACAMOLE-1350: Add code to join leave_handler when connecting in other protocols. 2021-05-25 02:03:07 +03:00
Michael Jumper
a920932703 GUACAMOLE-1174: Correct logic detecting truncation of appended parameter.
The previous implementation passed `length - str_len` to `snprintf()`,
yet compared the return value to `length`. This is incorrect, as
`length` is not the buffer size provided to `snprintf()`.
2021-02-21 15:05:53 -08:00
Michael Jumper
c7935736da GUACAMOLE-1174: Add unit tests for URL utility functions. 2021-02-21 15:05:53 -08:00
Michael Jumper
7f55399304 GUACAMOLE-1174: Clarify behavior of URL parameter appending function. 2021-02-21 14:15:17 -08:00
Mike Jumper
5428ac5057
GUACAMOLE-1174: Merge support for Kubernetes "exec" API call. 2021-02-21 11:09:53 -08:00
Michael Jumper
d16ba33dee GUACAMOLE-1204: Add support for including touch events within session recordings. 2021-02-11 20:12:21 -08:00
Yaroslav Nikonorov
004f57e19a GUACAMOLE-1174: Add prototype and docstrings for guac_kubernetes_append_endpoint_param function. 2020-11-18 15:30:34 +02:00
Yaroslav Nikonorov
7809447c3f GUACAMOLE-1174: Add parameters to the endpoint path using function guac_kubernetes_append_endpoint_param. 2020-11-18 14:57:59 +02:00
Yaroslav Nikonorov
7a1ba51bae GUACAMOLE-1174: Determine parameter delimiter, compute the buffer string length, fix the buffer string length usage, verify buffer null terminated. 2020-11-18 14:52:24 +02:00
Yaroslav Nikonorov
79239e3be0 GUACAMOLE-1174: Create function for appending endpoint params, fix endpoint params overwriting. 2020-10-20 12:44:38 +03:00
Yaroslav Nikonorov
6b58e2e5a9 GUACAMOLE-1174: Free exec_command setting. 2020-10-20 12:44:38 +03:00
Yaroslav Nikonorov
164f792b86 GUACAMOLE-1174: Remove option use-exec, add snprintf result validation, fix code formatting. 2020-10-08 13:18:58 +03:00
Yaroslav Nikonorov
7683a17d69 GUACAMOLE-1174: Added exec call implementation for kubernetes protocol 2020-09-10 19:59:03 +03:00
Michael Jumper
aa3a9cde6c GUACAMOLE-221: Migrate Kubernetes handling of "argv" to guac_argv_*() convenience API. 2020-07-06 18:19:08 -07: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
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
Michael Jumper
e6835795f0 GUACAMOLE-623: Add support for setting terminal font for Kubernetes via "argv". 2019-08-03 14:04:30 -07:00
Michael Jumper
a1c382c8ce Merge 1.1.0 changes back to master. 2019-04-30 17:26:21 -07:00
Nick Couchman
340aef5362 GUACAMOLE-422: Update to remove first argument 2019-04-17 14:41:35 -04:00
Nick Couchman
c750b18f60 GUACAMOLE-422: Handle sending version internally. 2019-04-11 17:18:27 -04:00
Nick Couchman
2b68925ec9 GUACAMOLE-422: Add protocol version as initial item passed back in args. 2019-04-11 17:18:27 -04: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
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
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