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