Mike Jumper
d6a01c28e5
GUACAMOLE-615: Migrate tunnel implementations to common parser.
2023-05-09 12:55:43 -07:00
James Muehlner
116edebf36
GUACAMOLE-1687: Merge fix to ensure keep-alive pings are sent.
2023-05-04 16:53:30 -07:00
Michael Jumper
ed19b704cc
GUACAMOLE-1687: Clean, document, and clarify usage of tunnel timer reset function.
2023-05-04 16:26:07 -07:00
Michael Jumper
e99e104fb1
GUACAMOLE-1687: Leverage network activity to ensure keep-alive pings are sent.
2023-05-04 16:26:07 -07:00
Michael Jumper
70d2cd97d6
GUACAMOLE-1562: Update chained tunnel UUID when underlying tunnel receives UUID.
2023-05-04 16:21:15 -07:00
Michael Jumper
063557f084
GUACAMOLE-1562: Ensure "ping" response is not erroneously handled as the tunnel UUID.
2023-05-04 16:21:15 -07:00
Michael Jumper
2428c7eb14
GUACAMOLE-462: Report size of files downloaded via the static HTTP tunnel.
2022-03-02 23:05:02 +00:00
Michael Jumper
8ebe13d085
GUACAMOLE-1545: Ensure tunnel "onload" fires only for true state changes.
...
Previously, the state of the tunnel implementations was initialized to
"CONNECTING", which is incorrect and may result in (1) initial state
changes to "CONNECTING" not firing "onstatechange" and (2) the state
change to "CLOSED" incorrectly firing when initially connecting,
despite there not being an established connection.
2022-03-02 20:35:52 +00:00
Michael Jumper
2c8bc58402
GUACAMOLE-896: Avoid XHR-related memory limitations by using Fetch API.
...
The Fetch API allows us to read HTTP responses as true streams, without
building an in-memory string. We can the buffer things ourselves as we
see fit, including as a Blob that can dynamically leverage disk storage
for larger data.
2022-02-11 17:17:44 -08:00
Michael Jumper
1ca1161a68
GUACAMOLE-986: Update documentation of all parameters/returns to specify non-nullable and/or primitive types where appropriate.
2021-12-18 23:03:57 -08:00
Michael Jumper
0597358dde
GUACAMOLE-956: Decouple tunnel UUID from HTTP tunnel session identification.
2021-10-23 22:29:39 -07:00
Mike Jumper
ed849860b8
GUACAMOLE-986: Merge explicit documentation of non-nullable return values and parameters.
2021-02-21 16:03:54 -08:00
Michael Jumper
5ad3389a23
GUACAMOLE-221: Define event for client-side receipt of a tunnel UUID.
2020-11-25 15:24:31 -08:00
Jakub Vrána
f722072807
GUACAMOLE-986: Add non-nullable modifier to return type of functions never returning null
...
Alternatively use a primitive type instead of nullable boxed type.
2020-03-11 13:27:56 +01:00
avwx
e17453ef97
GUACAMOLE-846: tunnel.uuid not initialized if tunnel becomes UNSTABLE
2019-07-16 18:02:30 -04:00
Michael Jumper
dee4e89ede
GUACAMOLE-437: Remove erroneously-committed, non-breaking spaces (U+00A0) from source.
2018-09-29 15:04:28 -07:00
Michael Jumper
34bab9524e
GUACAMOLE-567: Regularly test connection stability of HTTP tunnel.
...
Unlike the WebSocket tunnel, where a manual ping request/response must
be explicitly implemented, we can rely on HTTP's own request/response
to verify stability.
2018-09-07 12:20:28 -07:00
Michael Jumper
ea0b33bee1
GUACAMOLE-567: Use ping messages specific to the WebSocket tunnel to test connection stability independently of the underlying Guacamole connection.
2018-09-07 12:20:28 -07:00
Michael Jumper
5825835237
GUACAMOLE-567: Add tunnel isConnected() function. Consider both OPEN and UNSTABLE status as connected.
2018-09-07 12:20:28 -07:00
Michael Jumper
e6f3665995
GUACAMOLE-567: Add UNSTABLE tunnel status. Mark tunnel as UNSTABLE if no data has been received in a reasonable amount of time, but the tunnel is technically still open.
2018-05-27 15:43:41 -07:00
Michael Jumper
ca98d07b4a
GUACAMOLE-567: Rely on HTTP or WebSocket status code to determine error if Guacamole-specific reason is missing. Default to server unreachable.
2018-05-27 12:29:10 -07:00
Ignasi Barrera
e12d547973
GUACAMOLE-437: Fix extraHeaders in the StaticHTTPTunnel
2017-11-20 18:43:14 +01:00
Ignasi Barrera
227e41fbd9
GUACAMOLE-437: Fix extraHeaders scope
2017-11-20 18:41:43 +01:00
Ignasi Barrera
948b4e804c
GUACAMOLE-437: Custom headers for Guacamole tunnel
2017-11-19 03:45:39 +01:00
Or Cohen
63f603ec9d
GUACAMOLE-431: Fix tunnel stuck in CLOSED state
...
When the tunnel is closed and another `connect()` call is made, it stops
notifying about state changes (`onstatechanges`) if the connection continues
to fail.
This patch sets the state to `CONNECTING` when calling `connect()`.
2017-11-07 12:41:51 +02:00
Or Cohen
d778ad7035
GUACAMOLE-431: Move setState to base Tunnel class
...
Move `setState()` to Tunnel class to avoid repetition.
2017-11-07 12:41:40 +02:00
Ignasi Barrera
3fbf176a15
GUACAMOLE-385: Proper MIME type for tunnel write operations
2017-09-23 20:57:11 +02:00
Michael Jumper
5d6c774be8
GUACAMOLE-250: Ensure static downloads of Guacamole protocol data are handled as text, even if the "Content-Type" header is missing.
2017-04-14 10:31:24 -07:00
Michael Jumper
f915862f3b
GUACAMOLE-250: Add tunnel implementation which reads static files via HTTP.
2017-04-11 16:33:18 -07:00
Tyler Schneider
b5bd316dfd
GUACAMOLE-229: Remove intervals properly when XHR is polling.
2017-03-02 11:59:58 -07:00
Michael Jumper
d398509660
GUACAMOLE-44: Expose tunnel UUID to JavaScript. Document allowed internal use of the empty opcode.
2016-06-02 12:50:50 -07:00
Michael Jumper
1810ec971f
GUACAMOLE-1: Relicense C and JavaScript files.
2016-03-28 20:50:18 -07:00
Michael Jumper
2959513d95
GUAC-791: Fix type expressions to comply with JSDoc 3.
2015-12-14 14:51:15 -08:00
James Muehlner
1b4181a200
GUAC-1430: Do not move on to the next chained tunnel on upstream timeout.
2015-12-09 21:15:15 -08:00
Michael Jumper
19eb4e3971
GUAC-1083: Clarify new optional parameter for controlling CORS within Guacamole.HTTPTunnel.
2015-07-07 22:06:37 -07:00
david
8d4e413e2c
GUAC-1083: Add CORS support to Guacamole.HTTPTunnel
2015-07-07 21:42:07 -07:00
Michael Jumper
9d0703125a
GUAC-1084: Clarify comment describing committedTunnel.
2015-07-07 21:21:18 -07:00
Michael Jumper
f3573f0a59
Merge branch 'ChainedTunnelReconnectFix' of git://github.com/daviddvora/guacamole-client into chained-tunnel-reconnect
2015-07-07 21:18:58 -07:00
David Dvora
aad8bf8d2c
GUAC-1082: HTTP tunnel fails to reconnect
2015-03-31 12:18:05 -07:00
david
28ce81a4d9
GUAC-1084: ChainedTunnel does not support reconnect
2015-02-12 14:48:39 +02:00
Michael Jumper
5ad6d77ef6
GUAC-561: Close tunnel with timeout error code if data not received from server.
2014-03-23 12:48:07 -07:00
Michael Jumper
28711720f7
GUAC-558: Use same error handling function throughout HTTP tunnel. Ignore RESOURCE_NOT_FOUND for connected HTTP tunnels as that actually signals end-of-stream.
2014-03-21 19:28:17 -07:00
Michael Jumper
7cb933c9c1
GUAC-558: Ensure state/error handlers are called ONLY on the last tunnel. Rewrite to clean program flow.
2014-03-21 18:54:04 -07:00
Michael Jumper
f183e29586
GUAC-558: Fix calls to onerror handler, switch to corresponding close_tunnel() prototype.
2014-03-21 18:22:12 -07:00
Michael Jumper
c5573f9811
GUAC-558: Do NOT make initial request if connect failed.
2014-03-21 18:10:27 -07:00
Michael Jumper
7dbb1b1ac0
GUAC-558: Do not send pending messages if tunnel is closed.
2014-03-21 18:06:59 -07:00
Michael Jumper
627271953d
GUAC-558: Add specific handler for tunnel state change. Add state property and values. Clean up warnings.
2014-03-21 16:46:55 -07:00
Michael Jumper
d4a6fd21f7
GUAC-549: Throw status instead of error for connect() in tunnel and client. Pass status instead of message/code parameters for onerror event handlers.
2014-03-19 13:58:52 -07:00
Michael Jumper
6c00d8428c
Migrate to minify-maven-plugin and Google Closure Compiler.
2014-01-15 21:50:18 -08:00