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
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