Michael Jumper
a0d030a7ae
GUACAMOLE-729: Update libtool version info for libguac (interfaces added and changed).
2019-02-09 11:20:06 -08:00
Michael Jumper
350d8e5995
GUACAMOLE-637: Document failsafe behavior of guac_strlcat() in the event the destination buffer is not terminated as required.
2019-01-23 19:02:19 -08:00
Michael Jumper
ba8fd17394
GUACAMOLE-637: "concatentation" ... not "contatenation".
2019-01-23 18:53:06 -08:00
Michael Jumper
9fb713d804
GUACAMOLE-637: Correct grammar of documentation for guac_strl*() unit tests.
2019-01-23 18:51:53 -08:00
Michael Jumper
b7761e9a2e
GUACAMOLE-637: The $^
variable is non-portable and specific to GNU Make. As otherwise POSIX-compliant platforms may not provide this variable, we shouldn't use it here.
2019-01-23 18:44:45 -08:00
Michael Jumper
e6c5da315e
GUACAMOLE-637: Add unit tests for guac_strljoin().
2019-01-23 18:44:45 -08:00
Michael Jumper
258946cd88
GUACAMOLE-637: Correctly handle string lengths as size_t (unsigned).
2019-01-23 18:44:45 -08:00
Michael Jumper
068f33aaef
GUACAMOLE-637: Add unit tests for guac_strlcat().
2019-01-23 18:44:45 -08:00
Michael Jumper
dec3642905
GUACAMOLE-637: Add unit tests for guac_strlcpy().
2019-01-23 18:44:45 -08:00
Michael Jumper
3549da0dd1
GUACAMOLE-637: Replace usages of strncat() with guac_strlcat().
2019-01-23 18:44:45 -08:00
Michael Jumper
5bf6a1479c
GUACAMOLE-637: Add convenience function for joining an array of strings using a given delimiter.
2019-01-23 18:44:45 -08:00
Michael Jumper
a78f254611
GUACAMOLE-637: Add strlcat() implementation. Use libc strlcat() if available.
2019-01-23 18:44:45 -08:00
Michael Jumper
d7909a77aa
GUACAMOLE-637: Add strlcpy() implementation. Use libc strlcpy() if available.
2019-01-23 18:44:45 -08:00
Michael Jumper
f6953e1317
GUACAMOLE-637: Use proper namespaced path for Guacamole headers within libguac source.
2019-01-23 18:44:45 -08:00
Michael Jumper
d73b86b4b7
GUACAMOLE-661: Mark "nest" instruction and socket as deprecated.
2019-01-07 09:37:08 -08:00
Michael Jumper
cc4671d7a1
GUACAMOLE-662: Correct handling of buffering within nested socket.
...
The nested socket implementation seems to have never been properly
updated since guac_socket was changed to rely on implementation-specific
buffering. This meant that absolutely every write resulted in a nest
instruction being sent to the parent socket.
Data should instead be built up within the internal buffer, with each
flush writing as much of the internal buffer as possible within a nest
instruction, leaving any partial UTF-8 characters at the end of the
buffer for later completion with future writes.
2019-01-06 17:09:35 -08:00
Michael Jumper
47ad6f4b59
GUACAMOLE-662: Properly initialize nested socket index (fixes GUACAMOLE-510).
2019-01-06 17:09:35 -08:00
Michael Jumper
476b431041
GUACAMOLE-662: Migrate tests to test runners generated by new convenience script. Remove unnecessary test runners.
2018-11-17 18:06:40 -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
8456c050ea
GUACAMOLE-629: Add support for updating connection parameters of in-progress connections.
2018-09-25 11:40:08 -07:00
Nick Couchman
adcdb080cb
GUACAMOLE-587: Increase max number of elements per instruction.
2018-07-05 16:42:33 -04:00
Michael Jumper
107fdda1f0
GUACAMOLE-570: Update libtool version info for libguac (interfaces added and removed).
2018-06-05 21:48:39 -07:00
Michael Jumper
9705b39c2b
GUACAMOLE-324: Continuously write chunks of data until entire buffer has been sent.
2018-02-06 21:29:31 -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
b21aef565b
GUACAMOLE-313: Add function for sending "key" instructions.
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
a74d6a2aaf
GUACAMOLE-313: Include timestamp with mouse position reporting.
2018-01-26 16:21:49 -08:00
Michael Jumper
dc5245025e
GUACAMOLE-489: Lock both wrapped sockets when performing operations through a tee socket.
2018-01-26 16:17:45 -08:00
Michael Jumper
1b81549c97
GUACAMOLE-423: Update libtool version info for libguac (interfaces added, none changed/removed).
2017-12-07 19:10:45 -08: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
Michael Jumper
d3c5a8a050
GUACAMOLE-325: Add Winsock-specific guac_socket implementation.
2017-07-05 20:55:03 -07:00
Michael Jumper
eb73563445
GUACAMOLE-325: Explicitly check for Winsock.
2017-07-05 20:55:02 -07:00
Michael Jumper
1c404d1881
GUACAMOLE-325: Use recv() on Windows platforms.
2017-07-05 20:55:02 -07:00
Michael Jumper
944857d130
GUACAMOLE-325: Include -no-undefined in libguac libtool flags.
2017-07-05 20:55:02 -07:00
Michael Jumper
7b8d250bd5
GUACAMOLE-325: Explicitly check for libdl, using it if provided and warning if both libdl and dlopen() are absent.
2017-07-05 20:55:02 -07:00
Michael Jumper
9dcddd1947
GUACAMOLE-325: Use select() if poll() is unavailable.
2017-07-05 20:55:02 -07:00
Michael Jumper
b608d2266b
GUACAMOLE-337: Clarify behavior of guac_user_handle_connection().
2017-07-05 19:54:06 -07:00
Michael Jumper
60141175dd
GUACAMOLE-337: Document that socket-ssl.h is not guaranteed to be present.
2017-07-01 18:55:20 -07:00
Michael Jumper
f504b1a5e8
GUACAMOLE-337: Move libguacd functionality into libguac.
2017-07-01 18:50:03 -07:00
Michael Jumper
06a5043442
GUACAMOLE-337: Include only *-types.h headers when only types are needed.
2017-07-01 18:50:03 -07:00
Michael Jumper
f311c23ffa
GUACAMOLE-337: Move SSL socket into libguac.
2017-07-01 18:50:03 -07:00
Michael Jumper
584c108d1a
GUACAMOLE-314: Bump libtool version info (interface added, none changed/removed).
2017-06-01 22:52:12 -07:00
Michael Jumper
1081131aa5
GUACAMOLE-259: Log server and user frame timing information at TRACE level.
2017-03-31 10:48:58 -07:00
Michael Jumper
e910dcbfcc
GUACAMOLE-259: Add TRACE log level.
2017-03-30 01:15:51 -07:00
Michael Jumper
039a1c52e4
GUACAMOLE-239: Merge support for CLOCK_MONOTONIC.
2017-03-23 21:05:49 -07:00
Roman Stoffel
ddc1aa0b5f
GUACAMOLE-239: When available, use CLOCK_MONOTONIC to prevent backwards running time
2017-03-23 23:06:24 +01:00
James Muehlner
2c2824fc5b
Merge 0.9.12-incubating changes back to master.
2017-03-13 22:13:10 -07:00
Michael Jumper
1a96c5b415
GUACAMOLE-231: Add "mouse" instruction for server reporting of mouse position.
2017-03-11 14:57:09 -08:00
James Muehlner
c4903a8e36
Merge 0.9.12-incubating changes back to master.
2017-02-28 10:32:49 -08:00
Michael Jumper
f85978e43a
GUACAMOLE-225: Bump libtool version info (interface added, none changed/removed).
2017-02-28 09:47:53 -08:00
Michael Jumper
0210b7dc6b
GUACAMOLE-208: Add protocol status codes representing upstream network errors and session behavior.
2017-02-15 21:23:07 -08:00
James Muehlner
5d5fbb4d45
GUACAMOLE-172: Merge lag calculation improvements.
2017-01-24 23:26:29 -08:00
Michael Jumper
440668a78a
GUACAMOLE-179: Use non-owner users of connection to determine audio encoding if necessary.
2017-01-24 17:19:10 -08:00
James Muehlner
a1886f51bd
GUACAMOLE-171: Merge move of broadcast socket to public API.
2017-01-24 11:49:29 -08:00
Michael Jumper
6131ad0341
GUACAMOLE-172: Ignore insane timestamps when calculating lag.
2017-01-24 00:18:10 -08:00
Michael Jumper
9e6e4e520c
GUACAMOLE-172: Clarify processing lag calculations.
2017-01-24 00:18:00 -08:00
Michael Jumper
7a65a63aa9
GUACAMOLE-171: Do not require knowledge of broadcast socket internals (do not acquire write lock around join/leave handlers).
2017-01-23 23:43:36 -08:00
Michael Jumper
98b92f0900
GUACAMOLE-171: Separate broadcast socket from client. Ensure socket remains threadsafe even if no users are connected.
2017-01-23 23:43:32 -08:00
Michael Jumper
9d2bb31a9d
GUACAMOLE-170: Init guac_client args by default.
2017-01-23 23:35:16 -08:00
Michael Jumper
8b08a0e444
GUACAMOLE-154: Bump libtool version-info.
2017-01-09 11:38:47 -08:00
Michael Jumper
9d6d2aeba7
GUACAMOLE-118: Migrate to poll() instead of select() for file descriptor guac_socket implementation.
2016-11-11 13:03:43 -08:00
James Muehlner
96f853d8ff
GUACAMOLE-87: Bump libtool version-info.
2016-08-25 22:29:02 -07:00
Michael Jumper
5030c0603a
GUACAMOLE-25: Add status code reporting the normal closure of a resource.
2016-05-25 13:50:28 -07:00
Michael Jumper
bdbe1df43c
GUAC-1511: Add user audio handler and definition. Handle received "audio" instructions.
2016-03-30 15:32:09 -07:00
Michael Jumper
f4b8c70f79
GUACAMOLE-1: Relicense build/shell scripts.
2016-03-28 20:39:38 -07:00
Michael Jumper
4da3bef4ec
GUACAMOLE-1: Relicense C files.
2016-03-28 20:39:19 -07:00
Michael Jumper
8c37db8a07
GUAC-1164: Add missing free() for client connection ID.
2016-03-17 16:03:58 -07:00
Michael Jumper
dc2feba72c
GUAC-236: Add guac_socket_tee() function which allocates a socket that delegates all operations to a primary socket while duplicating write operations to a secondary socket.
2016-03-14 20:22:02 -07:00
Michael Jumper
bd5bd29ec0
GUAC-236: Ensure client socket is always freed.
2016-03-14 20:22:02 -07:00
Michael Jumper
70ce9fa96a
GUAC-1389: Fix typo in punctuation of documentation for guac_client_for_owner().
2016-03-04 19:46:21 -08:00
Michael Jumper
e7ada26f55
GUAC-1389: Provide guac_client_for_user() function which validates user pointers, allowing code to safely store and use guac_user pointers.
2016-03-04 16:44:30 -08:00
Michael Jumper
e625a7a887
GUAC-1389: Palette must be freed.
2016-03-03 11:06:55 -08:00
Michael Jumper
e42566816c
GUAC-1389: PNG encoder should always release palette storage if an error occurs.
2016-03-02 10:55:37 -08:00
Michael Jumper
15f7fedfea
GUAC-1389: Ensure dlopen()'d handle to plugin is released on error.
2016-03-02 10:54:58 -08:00
Michael Jumper
14522dab22
GUAC-1389: Add missing documentation for socket handlers.
2016-03-01 13:02:48 -08:00
Michael Jumper
7653fa106e
GUAC-1389: Document internal stream management functions. Fix semantics of stream closure.
2016-03-01 12:50:51 -08:00
Michael Jumper
cd006a4066
GUAC-1389: Fix spelling of "markers".
2016-03-01 12:25:04 -08:00
Michael Jumper
1726af0c97
GUAC-1389: Add missing parameter documentation for user-level instruction handlers.
2016-03-01 12:25:04 -08:00
Michael Jumper
dd0cecc7ea
GUAC-1389: Add missing parameter comments to user-specific handlers. Clarify purpose of handlers.
2016-03-01 12:25:04 -08:00
Michael Jumper
c3a487f9ec
GUAC-1389: Fix spelling of "previously".
2016-03-01 12:25:04 -08:00
Michael Jumper
3734a68a42
GUAC-1389: Fix strange and unnecessary wrapping of line.
2016-03-01 12:25:04 -08:00
Michael Jumper
5ae0da65e1
GUAC-1389: Remove unnecessary blank line.
2016-03-01 12:25:04 -08:00
Michael Jumper
62ccd78122
GUAC-1389: Add missing parameter comments to static handlers of guac_client and the broadcast socket.
2016-03-01 12:25:04 -08:00
Michael Jumper
6d2ddd72a5
GUAC-1389: Add missing parameter comments for client handlers.
2016-03-01 12:25:04 -08:00
Michael Jumper
ea1a34083c
GUAC-1389: Explain significance of the type-punning union.
2016-03-01 12:25:04 -08:00
Michael Jumper
76e3b2ebb8
GUAC-1389: Restore libguac's high-level convenience functions for audio streaming.
2016-03-01 12:25:04 -08:00
Michael Jumper
fbe4d53fb1
GUAC-1389: Refactor libguac to allow screen sharing.
2016-03-01 12:24:57 -08:00
Michael Jumper
c5fd72bb98
GUAC-1477: Ensure any fd_set used by guac_socket is always properly initialized.
2016-02-01 15:14:20 -08:00
Michael Jumper
858c4450eb
GUAC-1434: Document undocumented function parameters.
2015-12-15 16:14:15 -08:00
Michael Jumper
3e69bc51e7
GUAC-1392: Update libtool version (libguac API has changed and is not 100% compatible with 0.9.8 or older).
2015-12-15 13:11:16 -08:00
Michael Jumper
c7c4010306
GUAC-1425: Use proper enum constant for WebPConfigPreset().
2015-12-09 13:44:54 -08:00
Michael Jumper
364987b159
GUAC-1374: The keep alive ping is disabled by default.
2015-10-19 11:55:18 -07:00
Michael Jumper
a1c1fa104b
GUAC-1354: Remove duration from video instruction.
2015-10-18 22:08:45 -07:00
James Muehlner
6a7b397110
Merge pull request #88 from glyptodon/copy-mimetypes
...
GUAC-1305: Copy mimetypes - do not just point instruction storage
2015-10-02 23:47:34 -07:00
Michael Jumper
e7ab5b50ab
GUAC-1354: Remove old Ogg encoder.
2015-10-02 17:16:47 -07:00
Michael Jumper
7cf2005f5b
GUAC-1354: Replace WAVE encoder with raw PCM encoder. Partially migrate to new audio streaming (Ogg not yet migrated).
2015-10-02 17:16:47 -07:00
Michael Jumper
9a3a1bdcde
GUAC-1305: Mimetype pointers need not be const.
2015-09-24 12:45:07 -07:00
Michael Jumper
1211c366bf
GUAC-1305: Support lossless WebP within encoder.
2015-09-22 12:17:26 -07:00
Michael Jumper
3597a20890
GUAC-1305: Clean up WebP encoder.
2015-09-20 21:06:46 -07:00