Nick Couchman
5f5b4ea8eb
GUACAMOLE-313: Merge add "guaclog" utility for producing human-readable interpreatations of keys pressed in session recordings.
2018-01-30 14:07:35 -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
053d9d420c
GUACAMOLE-352: Clean up keymap lookup/update logic for sake of verifiability.
2018-01-28 23:09:50 -08:00
Michael Jumper
9a5b5574a8
GUACAMOLE-352: Type using dead keys when necessary and possible.
2018-01-28 01:32:58 -08:00
Michael Jumper
5d56985479
GUACAMOLE-352: Add utility function for checking whether a keysym exists within the current RDP keyboard layout.
2018-01-28 00:56:24 -08:00
Nick Couchman
e37fb1dad9
GUACAMOLE-489: Merge lock both wrapped sockets when performing operations through a tee socket.
2018-01-27 17:20:28 -05:00
Michael Jumper
4fb17d5610
GUACAMOLE-313: Add flags for controlling the contents of session recordings.
2018-01-26 16:42:24 -08:00
Michael Jumper
876516a1fb
GUACAMOLE-313: Add support for including key states within session recordings.
2018-01-26 16:42:14 -08:00
Michael Jumper
b21aef565b
GUACAMOLE-313: Add function for sending "key" instructions.
2018-01-26 16:42:14 -08:00
Michael Jumper
fdd17e3042
GUACAMOLE-313: Note that guacenc/guaclog are related.
2018-01-26 16:24:45 -08:00
Michael Jumper
c0b2871b31
GUACAMOLE-313: Document log format.
2018-01-26 16:24:45 -08:00
Michael Jumper
b7257d9ae4
GUACAMOLE-313: Include unknown keys within log.
2018-01-26 16:24:45 -08:00
Michael Jumper
5e5f1fcb3e
GUACAMOLE-313: Add missing keysyms. Track modifier keys only.
2018-01-26 16:24:45 -08:00
Michael Jumper
5b612b856a
GUACAMOLE-313: Refactor guaclog to produce simpler, greppable output.
2018-01-26 16:24:45 -08:00
Michael Jumper
86b09c8cf7
GUACAMOLE-313: Add remaining key names. Use Unicode where possible.
2018-01-26 16:24:45 -08:00
Michael Jumper
3633af5e41
GUACAMOLE-313: Use binary search to find human-readable names for known keys.
2018-01-26 16:24:45 -08:00
Michael Jumper
df29735c83
GUACAMOLE-313: Separate naming logic for keysyms. Align previously-pressed keys.
2018-01-26 16:24:43 -08:00
Michael Jumper
d39757b4dc
GUACAMOLE-313: Continuously track key press/release.
2018-01-26 16:24:14 -08:00
Michael Jumper
ebc731aaf3
GUACAMOLE-313: Add guaclog utility with stubbed interpretation of key events.
2018-01-26 16:24:04 -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
7eb4e22515
GUACAMOLE-313: Use mouse timestamps for frames as well as sync.
2018-01-26 16:21:51 -08:00
Michael Jumper
a74d6a2aaf
GUACAMOLE-313: Include timestamp with mouse position reporting.
2018-01-26 16:21:49 -08:00
Michael Jumper
e2455d6f26
GUACAMOLE-313: Do not render cursor unless mouse has actually moved.
2018-01-26 16:21:47 -08:00
Michael Jumper
cafcd90f9f
GUACAMOLE-313: Add support for the "mouse" instruction to guacenc.
2018-01-26 16:21:45 -08:00
Michael Jumper
a14832c4da
GUACAMOLE-313: Implement the "cursor" instruction to guacenc.
2018-01-26 16:21:43 -08:00
Michael Jumper
df770ae4ea
GUACAMOLE-313: Add support for including mouse location within session recordings.
2018-01-26 16:21:28 -08:00
Michael Jumper
b37e73488f
GUACAMOLE-313: Provide reference to in-progress screen recording.
2018-01-26 16:21:24 -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
dcaf7b2c21
GUACAMOLE-490: Take channel mask into account when rendering image streams to buffers.
2018-01-26 16:08:51 -08:00
Michael Jumper
db85163e20
GUACAMOLE-384: Merge fix for potential segfault if SSH connection is closed while output is still being written to the terminal.
2018-01-23 14:44:47 -08:00
Michael Jumper
822a6c6b9d
GUACAMOLE-484: Do not flush frame if connection closed mid-frame.
2018-01-22 12:24:07 -08:00
Michael Jumper
61c16a89d2
GUACAMOLE-484: Always clean up after orderly disconnect.
2018-01-22 12:23:39 -08:00
Michael Jumper
d562cb7648
GUACAMOLE-484: Ensure disconnect reason code is checked for orderly RDP disconnect.
2018-01-22 12:16:09 -08:00
Michael Jumper
0f78b01e81
GUACAMOLE-456: Merge multi-stage Docker build changes.
2018-01-19 13:37:01 -08:00
csenel
93b3eebc5d
GUACAMOLE-481: Add Turkish Q keymap for RDP
2018-01-09 10:53:05 +03:00
Nick Couchman
66ffda24f0
GUACAMOLE-448: Add support for configuring bitmap caching.
2018-01-02 18:26:29 -05:00
Nick Couchman
5295886f68
Merge 0.9.14 changes back to master.
2018-01-01 16:27:03 -05:00
Michael Jumper
ff6c4b04f4
GUACAMOLE-307: The "size" instruction can also apply to buffers, not just layers.
2017-12-08 14:54:15 -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
Michael Jumper
76a6e41031
GUACAMOLE-423: Automatically populate package version within manpages.
2017-12-07 19:10:45 -08:00
Nick Couchman
e3d8c3fa12
Merge 0.9.14 changes back to master.
2017-12-06 10:04:34 -05:00
Carl Harris
e4f4761c87
GUACAMOLE-456: use Docker multi-stage build
2017-12-06 07:57:12 -05:00
Michael Jumper
a514f03fd4
GUACAMOLE-436: Remove incubator prefix from repositories and URLs.
2017-12-06 00:54:21 -08:00
Michael Jumper
2c12c12850
GUACAMOLE-424: Merge changes addressing potential NULL-pointer dereference in VNC user leave handler.
2017-11-15 07:05:21 -08:00
itsankoff
aa6d81d6f9
GUACAMOLE-424: Update doc comments
2017-11-15 15:02:08 +02:00
Michael Jumper
a75bca1e95
GUACAMOLE-273: Merge RDP support for Portuguese Brazilian keyboard.
2017-11-14 17:17:34 -08:00
Frode Langelo
fc599d2aec
GUACAMOLE-273: Remove Mac remapping of €.
2017-11-14 20:04:49 +00:00
Michael Jumper
493fa4df16
GUACAMOLE-233: Merge RDP support for Spanish keyboards.
2017-11-14 10:56:28 -08:00
Frode Langelo
fc15850288
GUACAMOLE-233: Add Spanish keymap for RDP.
2017-11-13 22:57:21 +00:00
Frode Langelo
a8174eeac9
GUACAMOLE-273: Fix comment for remapping of €.
2017-11-13 22:52:39 +00:00
Frode Langelo
ed8a32f98b
GUACAMOLE-273: Add Brazillian ABNT2 keymap for RDP.
2017-11-13 22:43:42 +00:00
Frode Langelo
625eee0caa
GUACAMOLE-434: Add UK English keymap for RDP.
2017-11-13 22:26:29 +00:00
itsankoff
e139b20d12
GUACAMOLE-424: Remove check against NULL for display cursor
2017-11-13 14:51:31 +02:00
itsankoff
f7990af6d0
GUACAMOLE-424: Return NULL if guac_common_display allocation fails
2017-11-13 14:50:44 +02:00
itsankoff
da0fc1a6d8
GUACAMOLE-424: Add doc comment for guac_common_cursor_alloc
2017-11-13 14:49:44 +02:00
Michael Jumper
233f5e27e2
GUACAMOLE-296: Merge changes reverting explicit linking of libwinpr-utils.
2017-11-06 11:24:39 -08:00
Nick Couchman
b9f8e13d80
GUACAMOLE-296: Revert manual addition of winpr-utils library.
2017-11-06 12:20:56 -05:00
itsankoff
bbafa00df0
GUACAMOLE-424: Prevent null pointer dereference for vnc client display and cursor
2017-11-02 19:53:17 +02:00
sanhex
d33bd8deff
GUACAMOLE-384: fixing segfault during ssh disconnect
...
Root Cause:
See the core dump and Valgrind report posted on Jira. guacd was reading a ssh terminal which had been freed. When a ssh connection is terminated, guac_ssh_client_free_handler() will be called from guacd_exec_proc() -> guac_client_free() with pointer client->free_handler. In guac_ssh_client_free_handler(), when ssh_client->term is freed, ssh_client->client_thread may still be using the ssh_client->term. It causes the crash reported in this bug.
The stack trace exposing the problem can be found by running guacd under Valgrind with a ssh test script. The test script repeats doing ssh login and logout for 5000 times.
Solution:
In guac_ssh_client_free_handler(), before calling guac_terminal_free(ssh_client->term), close the stdin pipe of the terminal to stop reading the pipe with guac_terminal_read_stdin() in ssh_input_thread(). So that ssh_input_thread() can be terminated in this case. Call pthread_join() to wait for ssh_client_thread() terminating before freeing the terminal.
Add a new function guac_terminal_stop() to close the pipe and set the fds to invalid (-1). Call it in guac_ssh_client_free_handler() and guac_terminal_free().
Checking the client running state in ssh_input_thread() and ssh_client_thread() to make sure they can be terminated when the client is stopped in guacd_exec_proc() by another thread.
Test:
- Confirmed ssh connection works normally.
- Observed the child process of guacd exits when ssh connection is terminated.
- Reran the ssh test script. Observed no crash.
2017-10-29 18:11:15 -07:00
itsankoff
15f6c4f3dc
GUACAMOLE-424: Fix null pointer dereference for vnc client display
2017-10-24 20:21:03 +03:00
Michael Jumper
95be88be19
GUACAMOLE-296: Merge fix for linking issues with FreeRDP 1.1 and guacai (audio input).
2017-10-14 23:45:35 -07:00
Michael Jumper
012a3497eb
GUACAMOLE-411: Merge changes fully initializing CMSG buffer prior to use.
2017-10-14 17:50:47 -07:00
Nick Couchman
caedf26a06
GUACAMOLE-296: Break out WINPR libs into their own variable.
2017-10-13 21:25:32 -04: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
Jukka-Pekka Virtanen
c8eaa91ad3
GUACAMOLE-411: Fixed using uninitialized values in guacd_send_fd
2017-10-10 12:41:19 +03:00
Michael Jumper
d35cc7a83e
GUACAMOLE-400: Merge changes correcting segfault when an SSH private key cannot be imported.
2017-09-29 12:05:56 -07:00
sanhex
3c7a09f52b
GUACAMOLE-400: Fix guacd crash when ssh key fails
...
Root Cause:
In the ssh library of guacd, function ssh_client_thread(), when guac_ssh_get_user() fails to load private key for ssh authentication, it will return NULL. In this case, the subsequent call to guac_common_ssh_create_session() with parameter 'user=0x0' will cause guacd crash in function guac_common_ssh_authenticate() by accessing 'user->username'.
Solution:
- Update the comment of function guac_ssh_get_user() to document that NULL will be returned if fails to import key for the user.
- In function ssh_client_thread(), verify the return of guac_ssh_get_user(). If ssh_client->user is NULL, return NULL.
Test:
- Configured a ssh app with an encrypted private key and a wrong passphrase.
- Ran the ssh app from web portal and observed guacd crash.
- Applied the fix and reran the ssh app. Observed no crash.
2017-09-29 11:04:48 -07:00
Nick Couchman
9200bc789f
GUACAMOLE-398: Use freeaddrinfo() instead of free() on the linked list.
2017-09-27 13:24:58 -04:00
Nick Couchman
e4dd8de4f1
GUACAMOLE-398: Fix memory leak identified by Coverity in common ssh code.
2017-09-27 13:02:41 -04:00
James
f559701645
GUACAMOLE-396: Fixing ssh socket for IPv6 address
...
Root Cause:
In the ssh library of guacd, the TCP socket for connecting to ssh server is created with AF_INET. So it does not support IPv6 address.
Solution:
When guacd creates the socket for ssh in guac_common_ssh_create_session(), stop using hard coded AF_INET for socket() call, use the address family which is returned from getaddrinfo().
Test:
- Connected successfully via ssh connections with IPv4 and IPv6 hosts.
- No connection error in guacd logs.
- Simulated a connection failure with specifying a ssh server which does not exist. guacd worked well in this case.
2017-09-26 17:19:18 -07:00
Ilya Shipitsin
d2102e5705
GUACAMOLE-391: resolve low impact memory leak
2017-09-24 13:42:59 +05:00
Ilya Shipitsin
fc071fd1af
GUACAMOLE-383: resolve issues identified by cppcheck
...
[src/guacd/conf-file.c:206]: (error) Memory leak: conf
[src/protocols/rdp/rdp_cliprdr.c:205]: (error) Memory leak: output
[src/terminal/display.c:283]: (error) Memory leak: display
[src/terminal/display.c:290]: (error) Memory leak: display
2017-09-20 22:55:58 +05:00
Michael Jumper
b0d9bbc121
GUACAMOLE-279: Add explicit definitions for each human-readable xterm color.
2017-08-13 15:12:05 -07:00
Michael Jumper
27cf97cb9e
GUACAMOLE-279: Handle xterm palette assignments, parsing each color as an X11 color spec.
2017-08-13 15:12:05 -07:00
Nick Couchman
6400af605e
GUACAMOLE-325: Merge restore Windows-compatibility at libguac level.
2017-08-13 14:24:58 -04:00
Michael Jumper
c53575b18c
GUACAMOLE-279: Use guac_terminal_color for color palette assignments.
2017-07-11 08:24:18 -07:00
Michael Jumper
eec3607b16
GUACAMOLE-279: Migrate to mutable terminal color palette.
2017-07-10 14:08:21 -07: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
d85f61deaf
GUACAMOLE-325: Do not lock files on Windows. Use Windows-specific _mkdir() call where necessary.
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
James Muehlner
6236eb8f98
GUACAMOLE-337: Merge move of libguacd code into public libguac API.
2017-07-05 19:56:06 -07:00
Michael Jumper
b608d2266b
GUACAMOLE-337: Clarify behavior of guac_user_handle_connection().
2017-07-05 19:54:06 -07:00
Michael Jumper
7857dd0a9a
GUACAMOLE-303: Ensure there is always space for the null terminator when normalizing.
2017-07-04 12:00:43 -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
5b748a4b42
GUACAMOLE-337: Separate definition of guacd read timeout from libguacd.
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
78dbf64416
GUACAMOLE-337: Add missing libtool flags for libguacd.
2017-07-01 16:05:17 -07:00
Michael Jumper
3a46fffe44
GUACAMOLE-337: Do not include config.h in libguacd public headers.
2017-07-01 16:05:14 -07:00
Michael Jumper
6c484c1efd
GUACAMOLE-337: Limit public libguacd API to simply user handshake handling and SSL/TLS sockets.
2017-07-01 16:05:12 -07:00
Michael Jumper
7f3b985cc6
GUACAMOLE-337: Install libguacd as a normal library.
2017-07-01 16:05:11 -07:00
Michael Jumper
69d8d87ec9
GUACAMOLE-337: Remove unnecessary include of syslog.h by libguacd.
2017-07-01 16:05:08 -07:00
Michael Jumper
a56a7207ac
GUACAMOLE-337: Remove unnecessary link to libguac-common for libguacd.
2017-07-01 16:04:52 -07:00
Michael Jumper
d51e92eb31
GUACAMOLE-303: Add "sftp-root-directory" parameter to VNC, RDP, and SSH.
2017-06-29 15:48:23 -07:00
Michael Jumper
0474f86c46
GUACAMOLE-303: Extend common SFTP filesystem such that arbitrary directories can be used as the root of the filesystem.
2017-06-29 15:36:10 -07:00
Michael Jumper
e5a1b4d8ae
GUACAMOLE-326: Explicitly deny attempted reads/writes to Windows named data streams (like "foo:Zone.identifier" for the file "foo").
2017-06-26 14:40:32 -07:00
Michael Jumper
d9c1ce7738
GUACAMOLE-203: Merge support for SSH/SFTP connection keep-alive packets.
2017-06-25 12:01:02 -07:00
Nick Couchman
a5efbb5933
GUACAMOLE-203: Fix function prototype to remove const.
2017-06-25 14:56:50 -04:00
Nick Couchman
650f7a0a32
GUACAMOLE-203: if is not a function...
2017-06-25 14:10:42 -04:00
Nick Couchman
041fcc4651
GUACAMOLE-203: Change remaining instances of timer to timeout.
2017-06-25 05:13:22 -04:00
Nick Couchman
711cdd6929
GUACAMOLE-203: Allow keepalive param to be modified inside the function.
2017-06-25 05:13:12 -04:00
Nick Couchman
05dfb1a6ae
GUACAMOLE-203: Deal correctly with negative keepalive values.
2017-06-25 05:10:22 -04:00
Nick Couchman
ed77114038
GUACAMOLE-203: Fix issue using guac_client_log instead of guac_user_log.
2017-06-14 13:01:01 -04:00
Nick Couchman
8c24c77d55
GUACAMOLE-203: Change timer to timeout
2017-06-14 13:00:30 -04:00
Nick Couchman
af4d762147
GUACAMOLE-203: Move warning about minimum alive interval to single place in common code.
2017-06-14 12:49:49 -04:00
Nick Couchman
89b9a905db
GUACAMOLE-203: Tweak warning message sent to users.
2017-06-14 11:11:32 -04:00
Nick Couchman
df718395e8
GUACAMOLE-203: Change alive interval from int to unsigned.
2017-06-14 10:17:28 -04:00
Nick Couchman
193051dfd5
GUACAMOLE-203: Change parameter name for consistency
2017-06-14 08:40:07 -04:00
Nick Couchman
070bd25721
GUACAMOLE-203: if statement style tweak
2017-06-14 08:27:09 -04: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
57ee384180
GUACAMOLE-314: Bump version numbers to 0.9.13-incubating.
2017-06-01 22:48:02 -07:00
Nick Couchman
03403e3ea5
GUACAMOLE-203: Correct implementation of SSH keepalive option for SFTP connections across all protocols.
2017-05-31 21:03:14 -04:00
Nick Couchman
e7fc8a0d98
GUACAMOLE-203: Expand SSH keepalives to cover SFTP connections for other protocols.
2017-05-31 21:03:09 -04:00
Nick Couchman
9993684205
GUACAMOLE-203: Warn user if they try to enter keepalive value < 2 seconds.
2017-05-31 21:03:06 -04:00
Nick Couchman
1e3d82cc63
GUACAMOLE-203: Update comment for keep alive interval.
2017-05-31 21:03:04 -04:00
Nick Couchman
f693b02e12
GUACAMOLE-203: Tighten up code, implement constant for socket poll timer.
2017-05-31 21:02:59 -04:00
Nick Couchman
75019f5e4b
GUACAMOLE-203: Add a few more comments to code.
2017-05-31 21:02:53 -04:00
Nick Couchman
8ab7e56972
GUACAMOLE-203: Implement keepalive config in SSH connection.
2017-05-31 21:02:50 -04:00
Nick Couchman
f42f05aab7
GUACAMOLE-203: Add option entries for ServerAliveInterval.
2017-05-31 21:02:38 -04:00
Michael Jumper
9da27ad578
GUACAMOLE-280: Ensure bold and half-bright attributes cancel each other out.
2017-05-21 13:48:10 -07:00
Michael Jumper
2146200dfd
GUACAMOLE-280: Add support for faint (low) intensity SGR.
2017-05-21 13:46:21 -07:00
James Muehlner
6d2cfdabf8
GUACAMOLE-306: Merge VNC client null check fix.
2017-05-21 11:20:05 -07:00
Michael Jumper
8024f13458
GUACAMOLE-306: Do not attempt to send VNC events with a non-existent VNC client object.
2017-05-19 14:20:28 -07:00
Michael Jumper
58e26eb312
GUACAMOLE-278: argc value received by 256-color SGR sequence parser must equal the number of remaining argv elements.
2017-04-27 10:15:58 -07:00
James Muehlner
0e5498fc83
GUACAMOLE-278: Merge SGR bright color support for terminal.
2017-04-26 22:13:01 -07:00
Michael Jumper
4b7c679808
GUACAMOLE-265: Set connection name when terminal window title is changed.
2017-04-26 21:19:56 -07:00
James Muehlner
d88b5d1011
GUACAMOLE-278: Merge 256-color support for terminal.
2017-04-26 21:13:51 -07:00
Michael Jumper
2a91e2ff2d
GUACAMOLE-278: Add support for xterm's bright SGR colors (90-97 and 100-107).
2017-04-26 21:06:08 -07:00
Michael Jumper
a04022883c
GUACAMOLE-278: Provide constants defining locations of dark vs. intense colors in 16-color palette.
2017-04-26 21:01:53 -07:00
Michael Jumper
691a3ab840
GUACAMOLE-282: Correct common surface transfer functions to copy/ignore alpha channel as required.
2017-04-24 11:57:12 -07:00
Michael Jumper
10180095d8
GUACAMOLE-278: Handle (but ignore) xterm's 256-color palette redefinition OSC.
2017-04-23 13:59:03 -07:00
Michael Jumper
e4ce7b0eeb
GUACAMOLE-278: Ignore 256-color SGR sequences which contain out-of-range values.
2017-04-23 13:52:08 -07:00
Michael Jumper
19f7424c62
GUACAMOLE-278: Log unhandled/invalid sequences at DEBUG level.
2017-04-23 13:52:07 -07:00
Michael Jumper
87fba523ee
GUACAMOLE-278: Handle xterm 256-color SGR sequences.
2017-04-23 13:24:13 -07:00
Michael Jumper
11bf6f05c4
GUACAMOLE-278: Expand terminal palette to 256 entries. Use xterm colors for entries 16 through 255.
2017-04-23 13:24:04 -07:00
Michael Jumper
eaa71f5717
GUACAMOLE-278: Move terminal palette/color definitions into dedicated files.
2017-04-23 13:23:58 -07:00
Michael Jumper
48fc4afc5b
GUACAMOLE-278: Copy terminal color values rather than referencing only by palette index.
2017-04-23 13:23:48 -07:00
James Muehlner
69caa9936b
GUACAMOLE-40: Merge RD gateway support.
2017-04-20 21:36:44 -07:00
Michael Jumper
228874804e
GUACAMOLE-268: Use 64-bit unsigned integers to represent file size internally (identical to RDPDR).
2017-04-17 11:52:07 -07:00
Michael Jumper
09099050cb
GUACAMOLE-40: Set RD gateway and load balancing settings for FreeRDP where applicable.
2017-04-10 00:13:38 -07:00
Michael Jumper
da8636ef54
GUACAMOLE-40: Add and parse RD gateway connection parameters.
2017-04-09 23:58:11 -07:00
dborth
8833c0dd79
GUACAMOLE-262: set VNC trueColour flag to 1 instead of 255
2017-04-03 09:28:22 -06:00
Michael Jumper
1081131aa5
GUACAMOLE-259: Log server and user frame timing information at TRACE level.
2017-03-31 10:48:58 -07:00
James Muehlner
457c48ec71
GUACAMOLE-259: Merge addition of new TRACE log level.
2017-03-31 10:45:41 -07:00
Michael Jumper
e910dcbfcc
GUACAMOLE-259: Add TRACE log level.
2017-03-30 01:15:51 -07:00
Michael Jumper
61896e829c
GUACAMOLE-257: Set VNC/SSH file upload handlers only if SFTP is enabled.
2017-03-28 10:48:38 -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
516c4a0593
Merge 0.9.12-incubating changes back to master.
2017-03-17 10:43:50 -07:00
Michael Jumper
6a3ce58ab7
GUACAMOLE-240: Document parameters and behavior of PulseAudio callbacks.
2017-03-15 22:26:11 -07:00
Michael Jumper
adf9db7454
GUACAMOLE-240: Always pass guac_pa_stream to PulseAudio callbacks.
2017-03-15 21:24:29 -07:00
James Muehlner
2c2824fc5b
Merge 0.9.12-incubating changes back to master.
2017-03-13 22:13:10 -07:00
Michael Jumper
fe8771e181
GUACAMOLE-231: Notifying terminal for mouse movement is no longer necessary (common cursor sends its own position updates without requiring new frames).
2017-03-11 14:58:52 -08:00
Michael Jumper
240e18cd92
GUACAMOLE-231: Broadcast mouse position only to users who are not moving the mouse.
2017-03-11 14:57:09 -08:00
Michael Jumper
ae7e8d3890
GUACAMOLE-231: Report mouse position using new "mouse" instruction. Rely on client-side cursor layer implementation.
2017-03-11 14:57:09 -08: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
1d5d8784b3
Merge 0.9.12-incubating changes back to master.
2017-03-10 09:46:59 -08:00
Michael Jumper
6a1db08299
GUACAMOLE-231: Notify terminal when display is modified due to mouse cursor movement.
2017-03-06 22:41:19 -08:00
James Muehlner
da7b77d2ec
Merge 0.9.12-incubating changes back to master.
2017-03-01 09:43:39 -08:00
James Muehlner
de9b8d6d2c
GUACAMOLE-226: Merge default layer opacity fix.
2017-03-01 09:42:40 -08:00
Michael Jumper
72284cfc7c
GUACAMOLE-226: All new layers are fully opaque.
2017-03-01 08:45:12 -08:00
Michael Jumper
270d51d4d4
GUACAMOLE-205: Use semantically-named macro rather than repeatedly and explicitly check OpenSSL version.
2017-02-28 13:01:30 -08:00
Michael Jumper
98a5faaa77
GUACAMOLE-205: Provide OpenSSL 1.1 API shims for missing accessors.
2017-02-28 13:01:30 -08:00
Michael Jumper
dbfb782dd5
GUACAMOLE-205: Update to 1.1 version of OpenSSL API.
2017-02-28 13:01:30 -08:00
James Muehlner
c8fca94899
GUACAMOLE-223: Merge thread safety fix for SSL.
2017-02-28 10:55:17 -08:00
James Muehlner
c4903a8e36
Merge 0.9.12-incubating changes back to master.
2017-02-28 10:32:49 -08:00
James Muehlner
3ff8323153
GUACAMOLE-169: Merge namespaced directory reshuffle.
2017-02-28 10:28:45 -08:00
James Muehlner
eb5ef5a027
GUACAMOLE-194: Merge removal of double-free code.
2017-02-28 10:19:58 -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
3f7ccb6b9a
GUACAMOLE-169: Move terminal headers to namespaced directory.
2017-02-27 14:34:46 -08:00
Michael Jumper
d371f2d9ee
GUACAMOLE-169: Move common-ssh headers to namespaced directory.
2017-02-27 14:28:23 -08:00
Michael Jumper
fb8a2766da
GUACAMOLE-194: Free SSH user for VNC+SFTP and RDP+SFTP only within client free.
2017-02-26 15:10:53 -08:00
James Muehlner
c344aa854f
GUACAMOLE-222: Merge explicit closing of STFP downloaded files.
2017-02-26 14:53:38 -08:00
Michael Jumper
9218a79e62
GUACAMOLE-223: Set required thread-related callbacks for OpenSSL.
2017-02-26 14:32:08 -08:00
Michael Jumper
821feeabb0
GUACAMOLE-223: Always invoke SSL_free().
2017-02-26 14:25:50 -08:00
Michael Jumper
58b85da8f2
GUACAMOLE-222: Ensure files downloaded via SFTP are explicitly closed upon completion.
2017-02-26 14:11:42 -08:00
James Muehlner
f23133043b
Merge 0.9.12-incubating changes back to master.
2017-02-26 00:43:17 -08:00
James Muehlner
a808a6b177
GUACAMOLE-188: Merge usage of Porter-Duff operator for blending ARGB surfaces.
2017-02-26 00:39:25 -08:00
James Muehlner
6939142d2f
GUACAMOLE-217: Merge libavcodec version number update.
2017-02-26 00:22:12 -08:00
James Muehlner
2703c5afff
GUACAMOLE-217: Merge libavcodec version number update.
2017-02-25 23:49:23 -08:00
Michael Jumper
0fb567bb53
GUACAMOLE-188: Clamp alpha blending results to maximum component value (0xFF).
2017-02-25 19:57:10 -08:00
Michael Jumper
12d29569a6
GUACAMOLE-188: Use Porter-Duff "over" operator when drawing with ARGB surfaces.
2017-02-25 19:57:10 -08:00
Michael Jumper
d40b2d8153
GUACAMOLE-217: FFmpeg's decoupled I/O functions were not available until libavcodec 57.37.100.
2017-02-25 19:42:43 -08:00
Michael Jumper
c796787f25
GUACAMOLE-218: Reset internal RDPSND audio format counter whenever a new SNDC_FORMATS PDU is received.
2017-02-25 15:08:16 -08:00
James Muehlner
077cc84d27
GUACAMOLE-208: Merge new protocol status codes.
2017-02-15 21:52:36 -08:00
Michael Jumper
4f4643dd2f
GUACAMOLE-208: Report network failures to connect with UPSTREAM_NOT_FOUND.
2017-02-15 21:40:00 -08:00
Michael Jumper
a78d52e615
GUACAMOLE-208: Handle RDP disconnect reason codes.
2017-02-15 21:23:46 -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
cd8646b38f
Merge 0.9.12-incubating changes back to master.
2017-02-15 20:53:17 -08:00
Michael Jumper
12cde5d520
GUACAMOLE-200: Clear reference to active job after the job has been freed.
2017-02-15 20:11:26 -08:00
Michael Jumper
7a4b737a3a
GUACAMOLE-200: Document all parameters of guac_rdp_print_job_write().
2017-02-15 19:59:50 -08:00
Michael Jumper
da81d16c27
GUACAMOLE-206: Do not drop keys while Alt is held.
2017-02-14 21:25:20 -08:00
Michael Jumper
bf2a5885d0
GUACAMOLE-200: Move print job cleanup into main RDP client thread.
2017-02-14 00:09:24 -08:00
Michael Jumper
5a68f932d6
GUACAMOLE-200: Maintain print jobs at top level. Do not rely on proper free of RDPDR plugin.
2017-02-14 00:02:17 -08:00
Michael Jumper
1537e475af
GUACAMOLE-200: Refactor RDPDR print job object to top-level.
2017-02-13 23:51:33 -08:00
Michael Jumper
17093a8149
GUACAMOLE-200: Kill any remaining print job when connection closes.
2017-02-13 23:08:54 -08:00
Michael Jumper
d23a22b7c6
GUACAMOLE-200: Clean up PostScript document title search logic.
2017-02-13 18:42:28 -08:00
Michael Jumper
3fc43fba37
GUACAMOLE-200: Refactor RDPDR printer such that the "ack" handler cannot block.
2017-02-13 18:42:28 -08:00
Michael Jumper
a6e3f19bf7
GUACAMOLE-149: Ignore zero-width characters.
2017-01-31 23:57:02 -08:00
Michael Jumper
fc6f36150f
GUACAMOLE-193: Take character attributes into account when testing for visibility.
2017-01-30 22:39:49 -08:00
James Muehlner
d831a4b9df
GUACAMOLE-188: Merge alpha component support for common surface.
2017-01-29 12:45:46 -08:00
James Muehlner
075c770432
GUACAMOLE-187: Merge surface resize optimization.
2017-01-29 12:37:52 -08:00
James Muehlner
701268271d
GUACAMOLE-167: Merge move away from deprecated avodec_encode_video2() when possible.
2017-01-29 12:34:21 -08:00
James Muehlner
135514a0d2
GUACAMOLE-94: Merge move from readdir_r to readdir.
2017-01-29 12:30:24 -08:00
James Muehlner
0d0f6b9c69
GUACAMOLE-135: Merge new Swiss-French RDP keymap.
2017-01-29 12:27:49 -08:00
Michael Jumper
b796b2c933
GUACAMOLE-148: Clarify that the cursor is expected to potentially exceed the terminal bounds.
2017-01-28 22:54:06 -08:00
Michael Jumper
6c1eeb96b0
GUACAMOLE-148: Move cursor bounds checking to common location (where necessary).
2017-01-28 22:48:45 -08:00
Michael Jumper
073fbe684d
GUACAMOLE-148: Scroll automatically only when cursor is within scrolling region.
2017-01-28 22:47:06 -08:00
Michael Jumper
b9faca923b
GUACAMOLE-135: Correct Swiss French mapping of "¬", "|", and "¢" (off by one key).
2017-01-28 14:55:38 -08:00
Michael Jumper
c79b303237
GUACAMOLE-135: Clean up spacing and alignment of Swiss French keymap.
2017-01-28 14:23:33 -08:00
Michael Jumper
c6f6bb67f0
GUACAMOLE-135: Swiss Franch dead umlaut should map from keysym 0xFE57.
2017-01-28 14:22:22 -08:00
Michael Jumper
fb298acdcd
GUACAMOLE-135: Abbreviate Swiss French mapping range where possible.
2017-01-28 14:21:17 -08:00
Michael Jumper
86493dda93
GUACAMOLE-135: Remove duplicate scancode mappings from Swiss French keymap.
2017-01-28 14:19:52 -08:00
Cédric Marie-Marthe
941fd9659a
GUACAMOLE-135: Add Swiss-French keymap for RDP.
2017-01-28 13:35:21 -08:00
Michael Jumper
dc6cae46ca
GUACAMOLE-94: Use readdir() instead of readdir_r(). Multiple threads will not be accessing the same directory stream.
2017-01-28 00:11:59 -08:00
Michael Jumper
9a51675e32
GUACAMOLE-167: Use avcodec_send_frame() / avcodec_receive_packet() when available.
2017-01-27 20:29:45 -08:00
Michael Jumper
1a5f48961c
GUACAMOLE-188: Allow alpha component to be set within common surface.
2017-01-27 16:51:45 -08:00
Michael Jumper
f353411460
GUACAMOLE-187: Do not perform surface resize unless the new size is actually different.
2017-01-27 16:44:24 -08:00
James Muehlner
ea6b094e24
GUACAMOLE-185: Merge rectangle clipping fix.
2017-01-25 21:53:38 -08:00
Michael Jumper
a72531b65c
GUACAMOLE-185: Fix copy/transfer rectangle calculation. Clip source to bounds, NOT to clipping rectangle.
2017-01-25 21:05:08 -08:00
Michael Jumper
2de7d017f5
GUACAMOLE-185: Clip copy/transfer operations to fit source as well as destination.
2017-01-25 21:05:08 -08:00
Michael Jumper
bd3d482ade
GUACAMOLE-184: Only send contents of surface if non-empty.
2017-01-25 19:28:07 -08:00
James Muehlner
5d5fbb4d45
GUACAMOLE-172: Merge lag calculation improvements.
2017-01-24 23:26:29 -08:00
Michael Jumper
5d1de67a0c
GUACAMOLE-180: Make common display threadsafe.
2017-01-24 18:01:04 -08:00
Michael Jumper
b7e0e080da
GUACAMOLE-180: Make common surface threadsafe.
2017-01-24 18:00:57 -08:00
James Muehlner
b8f4f19c36
GUACAMOLE-179: Merge move of PulseAudio support into library.
2017-01-24 17:49:37 -08:00
James Muehlner
67a5d9a5dd
GUACAMOLE-176: Merge support for layer location and opacity for guac_common_surface.
2017-01-24 17:39:03 -08:00
Michael Jumper
6bd19b6ac6
GUACAMOLE-176: Support layer location and opacity for guac_common_surface.
2017-01-24 17:30:51 -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
Michael Jumper
48ebbe95ea
GUACAMOLE-179: Move PulseAudio support into separate utility library.
2017-01-24 17:19:06 -08:00
James Muehlner
5d2c9676f4
GUACAMOLE-175: Merge move of guacd core into library.
2017-01-24 16:38:50 -08:00
Michael Jumper
6645e858ca
GUACAMOLE-178: Ensure shared cursor layer is always above all other layers.
2017-01-24 16:17:42 -08:00
Michael Jumper
4c06d755f9
GUACAMOLE-175: Move guacd_handle_user() to libguacd.
2017-01-24 15:44:59 -08:00
Michael Jumper
45adc63597
GUACAMOLE-175: Split logging between guacd and libguacd.
2017-01-24 15:44:55 -08:00
Michael Jumper
d7a604c8b2
GUACAMOLE-175: Move common core of guacd into libguacd utility library.
2017-01-24 15:44:51 -08:00
James Muehlner
a1886f51bd
GUACAMOLE-171: Merge move of broadcast socket to public API.
2017-01-24 11:49:29 -08:00
James Muehlner
8cd98b5298
GUACAMOLE-170: Merge client args default change.
2017-01-24 11:44:40 -08:00
Michael Jumper
6131ad0341
GUACAMOLE-172: Ignore insane timestamps when calculating lag.
2017-01-24 00:18:10 -08:00
Michael Jumper
234f98705e
GUACAMOLE-172: Use frame start as end of previous frame (ignore server-side time).
2017-01-24 00:18:07 -08:00
Michael Jumper
f641d91b55
GUACAMOLE-172: Exclude server-side rendering time from next frame's required wait (if render times are consistent, then including that time will result in duplicate waiting: once within the render loop, and again when actually flushing the display).
2017-01-24 00:18:04 -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
eee928548d
GUACAMOLE-169: Use proper namespace for internal common headers.
2017-01-23 23:26:26 -08:00
Michael Jumper
e5b3af8ffe
GUACAMOLE-86: Remove terminal emulator's STDOUT pipe. Use pthread_cond_t to signal modification.
2017-01-16 00:02:30 -08:00
Frode Langelo
6c05dc026e
GUACAMOLE-157: Initialize SSH SSL lock array to NULL and test for NULL-ness before freeing.
2017-01-11 22:40:34 +00:00
Michael Jumper
8b08a0e444
GUACAMOLE-154: Bump libtool version-info.
2017-01-09 11:38:47 -08:00
Michael Jumper
7759210f29
GUACAMOLE-154: Bump guacamole-server version numbers to 0.9.11-incubating.
2017-01-09 11:36:06 -08:00
James Muehlner
ecc3a7d49b
Merge release-specific changes for 0.9.10-incubating back to master.
2016-11-13 11:33:44 -08:00
James Muehlner
78e6215cbd
GUACAMOLE-119: Merge integration of Apache Rat into client and associated new license notices.
2016-11-13 11:17:03 -08:00
James Muehlner
574bec859a
GUACAMOLE-119: Merge addition of missing liscense files and exclusion of generated source from source archive.
2016-11-13 10:52:16 -08:00
Michael Jumper
4a29979667
GUACAMOLE-119: Add Apache license boilerplate to manpage source.
2016-11-12 19:40:39 -08:00
Michael Jumper
406a58de35
GUACAMOLE-68: Use AV_PIX_FMT_RGB32 and AV_PIX_FMT_YUV420P constants (not PIX_FMT_RGB32 and PIX_FMT_YUV420P).
2016-11-12 19:40:12 -08:00
Michael Jumper
4ea5f163f0
GUACAMOLE-68: Remove -pedantic flag for subprojects depending on libraries which use compiler extensions.
2016-11-12 19:40:01 -08:00
Michael Jumper
8fc4cc928d
GUACAMOLE-119: Do not include generated sources in source tarball.
2016-11-12 18:56:18 -08:00
James Muehlner
7c3430ba0f
GUACAMOLE-118: Merge switchover from select to poll.
2016-11-11 16:19:54 -08:00
Michael Jumper
c12e26404a
GUACAMOLE-118: Use poll() when waiting for data from RDP. Reformat for sake of readability/verification.
2016-11-11 13:45:01 -08:00
Michael Jumper
2421fc2f11
GUACAMOLE-118: Use poll() when waiting for data from SSH.
2016-11-11 13:16:57 -08:00
Michael Jumper
168359344e
GUACAMOLE-118: Use poll() when waiting for data from Telnet.
2016-11-11 13:13:48 -08:00
Michael Jumper
a1fc5bc733
GUACAMOLE-118: Use poll() when waiting for data to be written to the terminal emulator.
2016-11-11 13:12:12 -08:00
Michael Jumper
12d575b8e6
GUACAMOLE-118: Migrate to poll() instead of select() for guacd's SSL/TLS guac_socket implementation.
2016-11-11 13:06:05 -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
Michael Jumper
ca2b426252
GUACAMOLE-117: Close socket file descriptor if SSL/TLS handshake fails.
2016-11-11 12:25:28 -08:00
Michael Jumper
1817ef4ce0
GUACAMOLE-115: Explicitly signal disconnect at end of connection.
2016-11-07 10:29:00 -08:00
Michael Jumper
bed38cec71
GUACAMOLE-117: Do not stop connection when the intent is to reconnect (originally broken by commit a64c3e0
).
2016-10-29 15:00:53 -07:00
Michael Jumper
5ce9b1a32f
GUACAMOLE-97: Update guacd Docker README.md with respect to Apache.
2016-10-04 12:25:07 -07:00
Roman
3a3de3e87d
GUACAMOLE-110: Fix guacenc framerate rounding affecting video length
2016-10-03 11:51:24 -04:00
Michael Jumper
4f84be1c31
GUACAMOLE-93: Move Dockerfile to root of repository.
2016-08-28 14:17:26 -07:00
Michael Jumper
b6a988fcb1
GUACAMOLE-93: Build guacd-docker using parent guacamole-server source.
2016-08-26 14:37:58 -07:00
James Muehlner
96f853d8ff
GUACAMOLE-87: Bump libtool version-info.
2016-08-25 22:29:02 -07:00
James Muehlner
e92bb2c824
GUACAMOLE-87: Bump guacamole-server version numbers to 0.9.10-incubating.
2016-08-25 21:59:25 -07:00
Michael Jumper
996f1a8ec2
GUACAMOLE-51: Require shift released and numlock active for keypad numerals.
2016-08-16 20:00:24 -07:00
Michael Jumper
69ab054323
GUACAMOLE-51: Support -num and +num option (require clear/set numlock) in keymaps.
2016-08-16 20:00:24 -07:00
Michael Jumper
0c48096147
GUACAMOLE-51: Track and synchronize remote lock key state.
2016-08-16 20:00:24 -07:00
Michael Jumper
4f4f83f9a7
GUACAMOLE-51: Isolate sending of specific RDP events within own functions.
2016-08-16 19:54:08 -07:00
Michael Jumper
78a696a86f
GUACAMOLE-51: Abstract away RDP keyboard state tracking with dedicated guac_rdp_keyboard structure.
2016-08-13 18:14:04 -07:00
Michael Jumper
1ad99a312e
GUACAMOLE-5: Add "read-only" parameter to RDP, SSH, and telnet (per-user, just like VNC).
2016-07-24 22:36:25 -07:00
Michael Jumper
59e66ddc77
GUACAMOLE-5: Handle VNC's "read-only" parameter on a per-user basis.
2016-07-24 22:36:25 -07:00
Michael Jumper
0641ccf601
GUACAMOLE-5: Store connection parameters at user level. Maintain reference to owner's connection parameters at client level.
2016-07-24 22:05:04 -07:00
Michael Jumper
69ddeeb06d
GUACAMOLE-44: Refactor the RDPDR printer to synchronous operation.
2016-06-16 15:40:43 -07:00
Michael Jumper
72fb8ffdfe
GUACAMOLE-51: Explicitly map number pad keys within Guacamole terminal emulator.
2016-06-14 14:20:30 -07:00
Michael Jumper
c1fdbca62b
GUACAMOLE-25: Avoid unnecessary allocation of temporary string for guac_rdp_ptr_to_string().
2016-06-03 11:41:55 -07:00
Michael Jumper
402b039384
GUACAMOLE-25: Update documentation regarding loading of dynamic virtual channel plugins.
2016-06-01 22:06:17 -07:00
Michael Jumper
0d29694afc
GUACAMOLE-25: Reset I/O counters upon end-of-stream.
2016-06-01 16:20:38 -07:00
Michael Jumper
0be04ea54d
GUACAMOLE-25: Resample received audio as necessary.
2016-06-01 15:25:42 -07:00
Michael Jumper
1c2890b47c
GUACAMOLE-25: Store PCM format expected by RDP server.
2016-05-26 10:39:33 -07:00
Michael Jumper
ad00cce0ad
GUACAMOLE-25: Store audio format within common structure.
2016-05-25 14:38:22 -07:00
Michael Jumper
260d0cd340
GUACAMOLE-25: Remove STUB.
2016-05-25 13:50:29 -07:00
Michael Jumper
533a47f06d
GUACAMOLE-25: Store input and output audio format.
2016-05-25 13:50:29 -07:00
Michael Jumper
320f564daf
GUACAMOLE-25: Implement parsing of audio mimetypes.
2016-05-25 13:50:29 -07:00
Michael Jumper
8ccf61e6b1
GUACAMOLE-25: Support FreeRDP stable-1.0 and compatible.
2016-05-25 13:50:29 -07:00
Michael Jumper
f1d4393eb8
GUACAMOLE-25: Implement buffer attachment in Stream_New() and Stream_Free() compatibility functions.
2016-05-25 13:50:28 -07:00
Michael Jumper
1393358469
GUACAMOLE-25: Abstract DVC management away from FreeRDP for sake of API compatibility.
2016-05-25 13:50:28 -07:00
Michael Jumper
46bdf0692f
GUACAMOLE-25: Delay sending of "ack" until RDP has opened the AUDIO_INPUT stream. Close audio stream with another "ack" when RDP has closed the AUDIO_INPUT stream.
2016-05-25 13:50:28 -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
166eba11b7
GUACAMOLE-25: Fix pointer update in audio input buffer transfer.
2016-05-25 13:50:28 -07:00
Michael Jumper
4e4dbd6a2d
GUACAMOLE-25: Fix configure test for FreeRDP variations.
2016-05-25 13:50:28 -07:00
Michael Jumper
9d5871a3c8
GUACAMOLE-25: Buffer and send Data PDUs as necessary.
2016-05-25 13:50:28 -07:00
Michael Jumper
63cd2ce512
GUACAMOLE-25: Partially handle the Open PDU.
2016-05-25 13:50:28 -07:00
Michael Jumper
86806a3759
GUACAMOLE-25: Handle the server's Sound Formats PDU.
2016-05-25 13:50:28 -07:00
Michael Jumper
503ffb0d45
GUACAMOLE-25: Implement message processing. Stub handlers.
2016-05-25 13:50:28 -07:00
Michael Jumper
1088332376
GUACAMOLE-25: Add support for multiple versions of IWTSVirtualChannelCallback.
2016-05-25 13:50:28 -07:00
Michael Jumper
ac94fd4cd0
GUACAMOLE-25: Add stub callbacks for AUDIO_INPUT data handling.
2016-05-25 13:50:28 -07:00
Michael Jumper
9cd89e6580
GUACAMOLE-25: Allocate proper number of argument entries.
2016-05-25 13:50:28 -07:00
Michael Jumper
4fdcfebf25
GUACAMOLE-25: Set AudioCapture flag if audio input is enabled.
2016-05-25 13:50:28 -07:00
Michael Jumper
36cc9f492f
GUACAMOLE-25: Convert guac_client pointer to/from a string for sake of FreeRDP's DVC API.
2016-05-25 13:50:28 -07:00
Michael Jumper
21ab9d765d
GUACAMOLE-25: Add stub "guacai" plugin for AUDIO_INPUT channel support.
2016-05-25 13:50:28 -07:00
James Muehlner
ec93a2989f
GUACAMOLE-33: Merge mouse duplication user disconnect fix.
2016-05-23 20:45:18 -07:00
James Muehlner
fa3565e617
Merge rdp performance flag fixes.
2016-05-23 20:43:36 -07:00
Michael Jumper
9ae667e6bc
GUACAMOLE-35: Fix logic of desktop_composition flag.
2016-05-23 20:39:26 -07:00
James Muehlner
055aa1b059
Merge client cleanup fix.
2016-05-23 20:36:55 -07:00
Michael Jumper
2b8e1555c6
GUACAMOLE-33: Fix comment regarding user removal.
2016-05-23 13:58:30 -07:00
Michael Jumper
82fd6a279b
GUACAMOLE-33: Implement leave handlers for RDP, SSH, and telnet.
2016-05-23 13:58:30 -07:00
Michael Jumper
46b29edc5f
GUACAMOLE-33: Actually use VNC's leave handler.
2016-05-23 13:58:30 -07:00
Michael Jumper
92e2f4e420
GUACAMOLE-33: Restore guac_common_cursor_remove_user() (reverts commit af7968e).
2016-05-23 13:58:30 -07:00
Michael Jumper
a64c3e0179
GUACAMOLE-34: Ensure guac_client_stop() or guac_client_abort() are called in ALL cases where the client thread terminates.
2016-05-23 13:58:01 -07:00
Michael Jumper
88b422987e
GUACAMOLE-35: Ensure performance flag values are applied.
2016-05-23 13:55:37 -07:00
Michael Jumper
66859010e7
GUACAMOLE-27: Add Docker image from old guacd-docker repository. Update license.
2016-05-20 14:45:12 -07:00
Michael Jumper
facc0a794e
GUAC-1517: Only allocate one audio stream for RDP connection.
2016-03-31 14:25:31 -07:00
James Muehlner
f611ea7b65
GUAC-1511: Merge libguac audio input support.
2016-03-30 15:39:39 -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
ba673c52b0
GUAC-1517: Only allocate filesystem objects once per Guacamole connection. Do not reallocate when RDP automatically reconnects due to resize.
2016-03-30 12:22:32 -07:00
Michael Jumper
5b4a02e8a5
GUACAMOLE-1: Relicense RDP keymaps and associated Perl script.
2016-03-28 20:39:45 -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
ecbb6fc6b3
GUAC-1164: Do not load "drdynvc" plugin unless actually needed.
2016-03-22 16:50:49 -07:00
Michael Jumper
1cb4325422
GUAC-1164: Init/uninit common SSH client only once. Do not touch display if RDP server is not connected.
2016-03-17 18:29:27 -07:00
Michael Jumper
0a1f01ce3f
GUAC-1164: Ensure locks used by OpenSSL are always freed.
2016-03-17 18:10:42 -07:00
Michael Jumper
0fb8a49e62
GUAC-1164: Do not send clipboard notification to RDP server if RDP server is not connected.
2016-03-17 18:06:23 -07:00
Michael Jumper
7c3d108e21
GUAC-1164: Duplicate strings which FreeRDP will free when it frees its settings structure.
2016-03-17 18:05:16 -07:00
Michael Jumper
e57c9ddd86
GUAC-1164: Free private key used for SSH login.
2016-03-17 17:30:32 -07:00
Michael Jumper
0a4bfc95d1
GUAC-1164: Ensure audio stream and context are freed upon disconnect.
2016-03-17 17:30:32 -07:00
Michael Jumper
8c37db8a07
GUAC-1164: Add missing free() for client connection ID.
2016-03-17 16:03:58 -07:00
Michael Jumper
176ff96a26
GUAC-1164: Ensure elements of SVC names array are freed.
2016-03-17 15:54:15 -07:00
James Muehlner
3614c48240
Merge pull request #130 from glyptodon/out-of-bounds
...
GUAC-236: Do not exceed available buffers/layers/streams.
2016-03-16 22:10:37 -07:00
Michael Jumper
1dfdcec34c
GUAC-236: Do not attempt to lock/close fd if open fails.
2016-03-16 21:52:30 -07:00
Michael Jumper
ec2524eb97
GUAC-236: Do not exceed available buffers/layers/streams.
2016-03-16 21:48:25 -07:00
James Muehlner
55f5d1cca3
Merge pull request #129 from glyptodon/rdp-resize
...
GUAC-1164: Add parameter for automatically reconnecting when display changes
2016-03-16 21:37:06 -07:00
Michael Jumper
c336ce39e2
GUAC-1164: Document guac_rdp_handle_connection().
2016-03-16 21:30:46 -07:00
Michael Jumper
89f6bd4fae
GUAC-236: Provide support for much older versions of libavcodec.
2016-03-16 18:51:15 -07:00
Michael Jumper
db82c6fa02
GUAC-1164: Delay display resize relative to display manager creation or reconnect.
2016-03-16 15:27:24 -07:00
Michael Jumper
3997e44810
GUAC-1164: Do not load display update channel unless needed.
2016-03-16 15:02:13 -07:00
Michael Jumper
de78a6efed
GUAC-1164: Reset request throttle after reconnect completed (prevent excessive reconnecting due to lengthy connects).
2016-03-16 14:56:14 -07:00
Michael Jumper
8d14118469
GUAC-1164: Add setting for specifying the resize method, if any.
2016-03-16 14:44:16 -07:00
Michael Jumper
fd430e8b69
GUAC-236: Do not use features specific to libjpeg-turbo. Ensure compatibility with libjpeg.
2016-03-16 11:56:04 -07:00
Michael Jumper
0a5e57362e
GUAC-236: Add missing plurals.
2016-03-16 10:45:11 -07:00
Michael Jumper
534d0e580e
GUAC-236: Add missing documentation for screen recording parameters of VNC and RDP.
2016-03-16 10:26:10 -07:00
Michael Jumper
67a0a1fe46
GUAC-1164: Do not refer to disp member if it does not exist.
2016-03-15 22:11:06 -07:00
Michael Jumper
fc71dcadb0
GUAC-1164: Do not include disply update channel functionsn unless display update channel support is present.
2016-03-15 22:07:38 -07:00
Michael Jumper
81ebfbb5ca
GUAC-1164: rdp_disp.[ch] must now be built in all cases.
2016-03-15 22:02:35 -07:00
Michael Jumper
4e2b90cc0a
GUAC-1164: Conditionally build display update channel support.
2016-03-15 21:59:28 -07:00
Michael Jumper
2e73e5eef9
GUAC-1164: Dispose of layers/buffers when display/cursor are freed.
2016-03-15 21:49:26 -07:00
Michael Jumper
fc40e9f14c
GUAC-1164: Automatically reconnect when display size changes.
2016-03-15 21:48:56 -07:00
Michael Jumper
e2030c03d0
GUAC-236: They're buffers, not buggers.
2016-03-15 20:34:22 -07:00
Michael Jumper
86eb9c4b8a
GUAC-236: Fix copypasto in guacenc_display_free_*() - we are freeing, not allocating.
2016-03-15 19:35:06 -07:00
Michael Jumper
32779ee15f
GUAC-236: Provide -f option for overriding locking behavior.
2016-03-15 17:24:25 -07:00
Michael Jumper
9d43e22592
GUAC-236: Acquire read lock on input files for guacenc. Refuse to encode in-progress recordings.
2016-03-15 17:08:39 -07:00
Michael Jumper
0361dd2392
GUAC-236: Acquire write lock on output file for in-progress screen recordings.
2016-03-15 17:06:52 -07:00
Michael Jumper
c50561ef10
GUAC-236: Open output stream using file descriptor. Only write output file if it does not yet exist.
2016-03-15 16:43:13 -07:00
Michael Jumper
73bf5ce6f4
GUAC-236: Remove unused macros.
2016-03-15 12:26:35 -07:00
Michael Jumper
acf2d2b004
GUAC-236: Correct typos in comments.
2016-03-15 12:26:13 -07:00
Michael Jumper
e3d1af1953
GUAC-236: Add screen recording support to telnet.
2016-03-14 20:26:31 -07:00
Michael Jumper
570bcc3822
GUAC-236: Add generalized ffmpeg-compat.h header to cover various API changes.
2016-03-14 20:22:04 -07:00
Michael Jumper
770fec0d88
GUAC-236: Define av_frame_free() / av_frame_alloc() if not present.
2016-03-14 20:22:04 -07:00
Michael Jumper
812f8b8cbf
GUAC-236: Include guacenc.1 in EXTRA_DIST.
2016-03-14 20:22:04 -07:00
Michael Jumper
8ed0cd5f16
GUAC-236: Maintain aspect ratio by adding letterboxes / pillarboxes as necessary.
2016-03-14 20:22:04 -07:00
Michael Jumper
2798536a7a
GUAC-236: Document transfer as currently unimplemented (rarely used).
2016-03-14 20:22:03 -07:00
Michael Jumper
be0a9e728f
GUAC-236: Implement JPEG.
2016-03-14 20:22:03 -07:00
Michael Jumper
c16832f11a
GUAC-236: Fix manual section number.
2016-03-14 20:22:03 -07:00
Michael Jumper
e298975918
GUAC-236: Document usage. Use correct extension (.m4v).
2016-03-14 20:22:03 -07:00
Michael Jumper
e74ea54eb9
GUAC-236: Add FILE to usage descriptions.
2016-03-14 20:22:03 -07:00
Michael Jumper
710edc03ff
GUAC-236: Simplify command-line options, restricting to known-good combination. Can add other formats as possible later.
2016-03-14 20:22:03 -07:00
Michael Jumper
ecf3a0302a
GUAC-236: There actually isn't a -f option.
2016-03-14 20:22:03 -07:00
Michael Jumper
2f93e6ce67
GUAC-236: Output sensible messages at sensible times.
2016-03-14 20:22:03 -07:00
Michael Jumper
c4f7bae10b
GUAC-236: Do not create output file until after everything has been validated.
2016-03-14 20:22:03 -07:00
Michael Jumper
3d67598ec9
GUAC-236: Parse command-line arguments.
2016-03-14 20:22:03 -07:00
Michael Jumper
59844d8e59
GUAC-236: Reset log level back to INFO. Define default elsewhere.
2016-03-14 20:22:03 -07:00
Michael Jumper
7575506443
GUAC-236: Add missing comment for use of sws_scale().
2016-03-14 20:22:03 -07:00
Michael Jumper
cb1d5e03b5
GUAC-236: Increase default bitrate.
2016-03-14 20:22:03 -07:00
Michael Jumper
0f467a5d51
GUAC-236: Convert each Guacamole frame to a proper AVFrame.
2016-03-14 20:22:03 -07:00
Michael Jumper
96b3dd4e7c
GUAC-236: Add libswscale to build.
2016-03-14 20:22:03 -07:00
Michael Jumper
f9f08627ff
GUAC-286: Actually write video output to file.
2016-03-14 20:22:03 -07:00
Michael Jumper
1ce39306cb
GUAC-236: Do not store buffer - encode directly. Flush frames at end.
2016-03-14 20:22:03 -07:00
Michael Jumper
1a3e1465fa
GUAC-236: Pass encoding parameters from root level of utility. Declare defaults in header.
2016-03-14 20:22:03 -07:00
Michael Jumper
c37eda37fd
GUAC-236: Define framerate with macro.
2016-03-14 20:22:03 -07:00
Michael Jumper
38c431e8a2
GUAC-236: Record internal presentation timestamp in same format as libavcodec.
2016-03-14 20:22:03 -07:00
Michael Jumper
9eddaeee3d
GUAC-236: Allocate and maintain frame data for encoding.
2016-03-14 20:22:03 -07:00
Michael Jumper
9a5b503da5
GUAC-236: Add libavutil to build.
2016-03-14 20:22:03 -07:00
Michael Jumper
17df235c4e
GUAC-236: Actually open and init codec. Replace PNG output with stub.
2016-03-14 20:22:03 -07:00
Michael Jumper
a8cba53537
GUAC-236: Perform codec lookup via libavcodec.
2016-03-14 20:22:03 -07:00
Michael Jumper
d94915c515
GUAC-236: Ensure display allocation can handle video preparation failures.
2016-03-14 20:22:03 -07:00
Michael Jumper
19ac6e8286
GUAC-236: Abstract video encoding process as guacenc_video struct. Move PNG-writing stub therein.
2016-03-14 20:22:03 -07:00
Michael Jumper
09a4f4da39
GUAC-236: Add libavcodec to guacenc build. Conditionally compile guacenc and guacd.
2016-03-14 20:22:03 -07:00
Michael Jumper
0676a7a51c
GUAC-236: Add missing LDFLAGS for guacenc.
2016-03-14 20:22:03 -07:00
Michael Jumper
6fc208554d
GUAC-236: Add session recording parameters to VNC, RDP, and SSH.
2016-03-14 20:22:02 -07:00
Michael Jumper
a3fef4c1fc
GUAC-236: Add common functions for creating client-level session recordings (Guacamole protocol dumps).
2016-03-14 20:22:02 -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
a5ec24c17b
GUAC-236: Fix buffer resize (contents were being cleared).
2016-03-14 20:22:02 -07:00
Michael Jumper
3a972d4845
GUAC-236: Use temporary surface if source rect might intersect dest rect.
2016-03-14 20:22:02 -07:00
Michael Jumper
21c568c0b4
GUAC-236: Implement WebP decoding.
2016-03-14 20:22:02 -07:00
Michael Jumper
960ee263e8
GUAC-236: Split massive display code into more reasonable files.
2016-03-14 20:22:02 -07:00
Michael Jumper
a24152df02
GUAC-236: Flatten and render all layers upon sync.
2016-03-14 20:22:02 -07:00
Michael Jumper
79181567e5
GUAC-236: Store and preseve frame buffer within each layer.
2016-03-14 20:22:02 -07:00
Michael Jumper
80b3d51a49
GUAC-236: Add function for copying buffer state.
2016-03-14 20:22:02 -07:00
Michael Jumper
1d4e6ce924
GUAC-236: Fix comparator. Sort in descending order of depth.
2016-03-14 20:22:02 -07:00
Michael Jumper
2e93499383
GUAC-236: Render layers in order (position not yet correct). Output as PNG frames for verification.
2016-03-14 20:22:02 -07:00
Michael Jumper
19814a4c8a
GUAC-236: Layers should be parented to default layer by default.
2016-03-14 20:22:02 -07:00
Michael Jumper
e3d0c5e5ef
GUAC-236: Do not resize buffers if unnecessary.
2016-03-14 20:22:02 -07:00
Michael Jumper
ba9c1a2efd
GUAC-236: Ensure buffers are resized to fit draw operations (unless they are within layers).
2016-03-14 20:22:02 -07:00
Michael Jumper
83beccf7e4
GUAC-236: Ensure rectangle is explicitly set when painting buffers.
2016-03-14 20:22:02 -07:00
Michael Jumper
bd84315824
GUAC-236: Implement PNG decoding using Cairo's built-in PNG functions.
2016-03-14 20:22:02 -07:00
Michael Jumper
a15a86ed00
GUAC-236: Assemble entire image data prior to decoding. Switch to simple decoder function (no struct).
2016-03-14 20:22:02 -07:00
Michael Jumper
3661cadf4e
GUAC-236: Implement blob, end, and img instructions.
2016-03-14 20:22:02 -07:00
Michael Jumper
d29d5bbc99
GUAC-236: Add helper functions for invoking stream data/end handlers.
2016-03-14 20:22:02 -07:00
Michael Jumper
f535ccfb54
GUAC-236: Invoke init/free handlers as required.
2016-03-14 20:22:02 -07:00
Michael Jumper
578bedcd07
GUAC-236: Add image stream allocation and management functions.
2016-03-14 20:22:02 -07:00
Michael Jumper
8ff8ccc92b
GUAC-236: Free all buffers with appropriate function.
2016-03-14 20:22:02 -07:00
Michael Jumper
5149d6d5c4
GUAC-236: Add decoder search function.
2016-03-14 20:22:02 -07:00
Michael Jumper
083e48d089
GUAC-236: Add stub structure for image decoding.
2016-03-14 20:22:02 -07:00
Michael Jumper
8c0a9b8bc5
GUAC-236: Replace placeholder with required mask and index properties.
2016-03-14 20:22:02 -07:00
Michael Jumper
088f1dfede
GUAC-236: Implement copy.
2016-03-14 20:22:02 -07:00
Michael Jumper
96104c099b
GUAC-236: Ignore free attempts on NULL buffers.
2016-03-14 20:22:01 -07:00
Michael Jumper
dea754d846
GUAC-236: Handle dispose of buffers.
2016-03-14 20:22:01 -07:00
Michael Jumper
36b625818d
GUAC-236: Log protocol violations at WARNING level.
2016-03-14 20:22:01 -07:00
Michael Jumper
d1642cbcba
GUAC-236: Cursor must be ignored for now (no mouse position information in recording).
2016-03-14 20:22:01 -07:00
Michael Jumper
ac78b7a7a5
GUAC-236: Implement cfill and rect.
2016-03-14 20:22:01 -07:00
Michael Jumper
160453c3e9
GUAC-236: Implement buffer retrieval functions.
2016-03-14 20:22:01 -07:00
Michael Jumper
9407f8bcde
GUAC-236: Layers must default to unparented.
2016-03-14 20:22:01 -07:00
Michael Jumper
a0197ee2c2
GUAC-236: Implement buffer resize.
2016-03-14 20:22:01 -07:00
Michael Jumper
696c3c3184
GUAC-236: Stub resize of buffers. Implement size.
2016-03-14 20:22:01 -07:00
Michael Jumper
314d66727a
GUAC-236: Implement alloc/free of layers. Implement shade, move, and dispose.
2016-03-14 20:22:01 -07:00
Michael Jumper
899cdb4c00
GUAC-236: Fully implement sync instruction. Stub timestamp update for display.
2016-03-14 20:22:01 -07:00
Michael Jumper
4634ce391a
GUAC-236: Allocate and pass display to all instruction handlers.
2016-03-14 20:22:01 -07:00
Michael Jumper
f286bd92c7
GUAC-236: Add display, buffer, image, and stream abstractions.
2016-03-14 20:22:01 -07:00
Michael Jumper
23af2d3041
GUAC-236: Handle sync instruction.
2016-03-14 20:22:01 -07:00
Michael Jumper
f842d1c0a4
GUAC-236: Parse base64 from blobs.
2016-03-14 20:22:01 -07:00
Michael Jumper
91197ffad2
GUAC-236: Allow instruction handlers to touch the argument values.
2016-03-14 20:22:01 -07:00
Michael Jumper
0e5a7bb5c2
GUAC-236: Add argument parsing stubs to instruction handlers.
2016-03-14 20:22:01 -07:00
Michael Jumper
d530d92651
GUAC-236: Add stub handlers for each required instruction.
2016-03-14 20:22:01 -07:00
Michael Jumper
a926a6dc3b
GUAC-236: Handle specific instructions via an opcode/handler mapping.
2016-03-14 20:22:01 -07:00
Michael Jumper
1f54ea10dd
GUAC-236: Display DEBUG-level messages for now.
2016-03-14 20:22:01 -07:00
Michael Jumper
c850744faa
GUAC-236: Actually parse input files.
2016-03-14 20:22:01 -07:00
Michael Jumper
5e5186be07
GUAC-236: Log failures vs. total files.
2016-03-14 20:22:01 -07:00
Michael Jumper
652ea5ddf9
GUAC-236: Add stub guacenc utility (encode Guacamole protocol to video).
2016-03-14 20:22:01 -07:00
Michael Jumper
35746efca8
GUAC-1389: Document guac_telnet_compile_regex().
2016-03-14 20:12:55 -07:00
Michael Jumper
9253d877a2
GUAC-1389: Do not handle input events until terminal exists.
2016-03-14 20:05:45 -07:00
Michael Jumper
4faf1829d2
GUAC-1389: Add screen sharing support to telnet.
2016-03-14 19:47:36 -07:00
Michael Jumper
3a4aec3708
GUAC-1389: Document parameters of SSH client thread.
2016-03-14 18:32:03 -07:00
Michael Jumper
fa43a94e02
GUAC-1389: Rely on API definition for handler.
2016-03-14 18:27:52 -07:00
Michael Jumper
7c2766b34b
GUAC-1389: Abort correctly if password or keyboard-interactive auth fails (fixes GUAC-1381).
2016-03-14 17:33:17 -07:00
Michael Jumper
075b7ffba9
GUAC-1389: Add screen sharing support to SSH.
2016-03-14 17:33:17 -07:00
Michael Jumper
8f6a585b09
GUAC-1389: Rename guac_terminal_add_user() to guac_terminal_dup().
2016-03-14 16:03:05 -07:00
Michael Jumper
a101838162
GUAC-1389: Include select layer when syncing.
2016-03-14 16:00:21 -07:00
Michael Jumper
d59a6ebf62
GUAC-1389: Remove use of guac_common_display from terminal.
2016-03-14 16:00:21 -07:00
Michael Jumper
a14e0fa3fb
GUAC-1389: Redraw / resync terminal contents.
2016-03-14 16:00:21 -07:00
Michael Jumper
60dec61c51
GUAC-1389: Redraw / resync scrollbar state when a new user joins a terminal session.
2016-03-14 16:00:21 -07:00
Michael Jumper
e750ca9499
GUAC-1389: Update terminal to support screen sharing.
2016-03-09 12:57:41 -08:00
Michael Jumper
1787683f1b
GUAC-1389: Stretch RDP frames until client has caught up. Do same with VNC. Reduce frame timeout to 0 (essentially automatic now).
2016-03-08 18:12:43 -08:00
Michael Jumper
6f264f9c31
GUAC-1389: Include frame rendering time in lag calculations. Sleep only if necessary.
2016-03-08 16:21:47 -08:00
Michael Jumper
d4d2fe06d9
GUAC-1389: Document RDP frame start timeout.
2016-03-07 21:12:53 -08:00
Michael Jumper
fc5ad6c9cd
GUAC-1389: Document static functions.
2016-03-07 16:40:05 -08:00
Michael Jumper
993e8583a6
GUAC-1389: Document enum for RDP args.
2016-03-07 15:42:50 -08:00
Michael Jumper
12f166c0fc
GUAC-1389: Update comments to match latest standard.
2016-03-07 15:05:31 -08:00
Michael Jumper
5a6c16ab24
GUAC-1389: Document RDP channel data handler.
2016-03-07 13:10:12 -08:00
Michael Jumper
8ce5e1cab2
GUAC-1389: Correct input.h parameter documention with respect to standards.
2016-03-07 12:43:54 -08:00
Michael Jumper
5a9d68a896
GUAC-1389: Correct documentation surrounding RDPDR callback.
2016-03-07 12:40:53 -08:00
Michael Jumper
c95613f8b7
GUAC-1389: Reference client/user handler types directly. Do not redocument parameters.
2016-03-07 12:37:00 -08:00
Michael Jumper
2f58469f1b
GUAC-1389: Do not attempt to free RDP client until client thread finishes.
2016-03-07 11:32:44 -08:00
Michael Jumper
51aaa193f2
GUAC-1389: Allocate sufficient memory for print job close message.
2016-03-07 11:32:44 -08:00
Michael Jumper
eadc3a91a9
GUAC-1389: Two clipboard formats should allocate two cells for said formats.
2016-03-07 11:32:44 -08:00
Michael Jumper
6764196527
GUAC-1389: "any" audio stream, not "an".
2016-03-07 11:32:44 -08:00
Michael Jumper
8ca77c1c78
GUAC-1389: Ensure users that join after a SVC has connected are alerted to its existence.
2016-03-07 11:32:44 -08:00
Michael Jumper
9191e264f8
GUAC-1389: Remove tracking of input pipe (there may be many).
2016-03-07 11:32:44 -08:00
Michael Jumper
d2ca12e88b
GUAC-1389: Download only to owner if invoked via the special "Download" folder of the guac drive.
2016-03-07 11:32:44 -08:00
Michael Jumper
e573e59e83
GUAC-1389: Add screen sharing support to RDP.
2016-03-07 11:32:44 -08: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
432eb57b13
GUAC-1389: Remove guac_common_cursor_remove_user() - no longer needed.
2016-03-04 17:10:49 -08:00
Michael Jumper
9e8790cbba
GUAC-1389: Fix race in cursor update when a past user has left the connection.
2016-03-04 17:05:45 -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
James Muehlner
36cabe3d09
Merge pull request #117 from glyptodon/missing-includes
...
GUAC-1389: Add missing includes for guacd's connection.c
2016-03-04 13:34:18 -08:00
Michael Jumper
4e50603404
GUAC-1389: Add missing includes for guacd's connection.c.
2016-03-04 13:28:52 -08:00
Michael Jumper
5f83900ed8
GUAC-1389: Remove dated and incorrect "for now" wording.
2016-03-03 17:56:05 -08:00
Michael Jumper
7f0b0ab1ef
GUAC-1389: Document the frame wait timeout (no magic numbers).
2016-03-03 17:39:09 -08:00
Michael Jumper
967affa883
GUAC-1389: guac_vnc_set_pixel_format() is not a callback.
2016-03-03 17:32:51 -08:00
Michael Jumper
551398ae53
GUAC-1389: remote_cursor flag should be a bool.
2016-03-03 17:29:20 -08:00
Michael Jumper
38f1e87334
GUAC-1389: Only free dest_host if repeater is available.
2016-03-03 13:06:31 -08:00
Michael Jumper
05e8bf3195
GUAC-1389: Document settings. Use macros to remove struct members if their settings are not applicable.
2016-03-03 12:58:46 -08:00
Michael Jumper
f6feec8c84
GUAC-1389: Document VNC connection and thread.
2016-03-03 12:36:11 -08:00
Michael Jumper
f5109fe34e
GUAC-1389: Document logging functions.
2016-03-03 12:30:31 -08:00
Michael Jumper
c3584c8d04
GUAC-1389: Document graphical functions and handlers.
2016-03-03 12:27:59 -08:00
Michael Jumper
880553bf3e
GUAC-1389: Document clipboard handler parameters.
2016-03-03 12:05:41 -08:00
Michael Jumper
58b545293f
GUAC-1389: Use function types directly rather than re-documenting the parameters everywhere.
2016-03-03 12:03:47 -08:00
Michael Jumper
4c62b60f71
GUAC-1389: Document VNC password retrieval.
2016-03-03 11:58:21 -08:00
Michael Jumper
d484a98876
GUAC-1389: Add screen sharing support to VNC.
2016-03-03 11:22:32 -08:00
James Muehlner
41a21c9b0c
Merge pull request #115 from glyptodon/fix-palette-free
...
GUAC-1389: Palette must be freed.
2016-03-03 11:15:13 -08:00
Michael Jumper
e625a7a887
GUAC-1389: Palette must be freed.
2016-03-03 11:06:55 -08:00
Michael Jumper
8e8b632716
GUAC-1389: Ensure proc is freed and cleaned up, regardless of whether it started properly.
2016-03-03 11:00:21 -08:00
James Muehlner
f7b30414fb
Merge pull request #113 from glyptodon/fake-merge-screen-sharing-004-guacd
...
GUAC-1389: Add screen sharing support to guacd.
2016-03-02 21:29:12 -08:00
Michael Jumper
b3b5a65923
GUAC-1389: Simply logic surrounding freeaddrinfo().
2016-03-02 20:09:07 -08:00
Michael Jumper
39fd2c152f
GUAC-1389: Document guacd_user_start() and corresponding threads.
2016-03-02 16:37:44 -08:00
Michael Jumper
b169ea0f6e
GUAC-1389: Document creation of SSL-wrapped guac_socket.
2016-03-02 16:32:09 -08:00
Michael Jumper
ed44e0c4b0
GUAC-1389: Document process management functions. Remove unnecessary parameter.
2016-03-02 16:26:38 -08:00
Michael Jumper
26bdd9bc38
GUAC-1389: Document client process map manipulation functions.
2016-03-02 15:34:39 -08:00
Michael Jumper
d595d96304
GUAC-1389: Document file descriptor passing functions.
2016-03-02 14:50:34 -08:00
Michael Jumper
1e4a83b3da
GUAC-1389: Document daemonization helper functions.
2016-03-02 14:44:15 -08:00
Michael Jumper
cb8fe46328
GUAC-1389: Add missing documentation for connection handling functions.
2016-03-02 14:36:16 -08:00
Michael Jumper
9e7663463f
GUAC-1389: Restore guacd within build. Migrate guacd to screen sharing changes.
2016-03-02 12:46:00 -08:00
Michael Jumper
c9346014df
GUAC-1389: Release candidate addresses of no connection can be established.
2016-03-02 10:59:03 -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
48143f6a0a
GUAC-1389: Add convenience function for exposing SFTP filesystems to specific users.
2016-03-01 17:28:35 -08:00
Michael Jumper
cb70c6e8b9
GUAC-1389: Bring common-ssh up to date with screen sharing changes.
2016-03-01 17:28:35 -08:00
Michael Jumper
12d5c315bb
GUAC-1389: Add missing parameter comments to static functions in common.
2016-03-01 16:46:19 -08:00
Michael Jumper
bbceed5200
GUAC-1389: Bring common headers up-to-date with current style.
2016-03-01 16:40:23 -08:00
Michael Jumper
f393561925
GUAC-1389: Bring common up to date with screen sharing changes.
2016-03-01 16:27:32 -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
d0be90e711
GUAC-1410: Fix keymap ordering in Makefile.am.
2016-02-01 14:48:39 -08:00
Mike Jumper
bef52c9496
Merge pull request #98 from moriyoshi/moriyoshi/ja-jp-keymap
...
GUAC-1410: Add ja-jp keymap
2016-02-01 14:47:46 -08:00
Michael Jumper
b35a0c3695
GUAC-1451: Fix order of resource release in case typescript creation failure.
2016-01-28 10:47:04 -08:00
Michael Jumper
4661f432f0
GUAC-1452: Parse and handle typescript parameters within SSH and telnet.
2016-01-27 12:43:53 -08:00
Michael Jumper
d9dacedbe0
GUAC-1452: Log typescript creation/failure.
2016-01-27 12:43:53 -08:00
Michael Jumper
c68f96741d
GUAC-1452: Store filenames within typescript struct.
2016-01-27 12:43:53 -08:00
Michael Jumper
7c7a68975b
GUAC-1452: Append .timing to end of basename for timing file.
2016-01-27 12:43:53 -08:00
Michael Jumper
d421bbc075
GUAC-1452: Automatically create directory if requested.
2016-01-27 12:43:53 -08:00
Michael Jumper
e9fb7a67da
GUAC-1452: Try and retry the specified filename until success or no further possibilities exist.
2016-01-27 12:43:53 -08:00
Michael Jumper
0d5355560e
GUAC-1452: Fix inverted logic for typescript alloc return value.
2016-01-27 12:43:53 -08:00
Michael Jumper
6297f11724
GUAC-1452: Cap timing entries at a maximum of 24 hours per entry.
2016-01-27 12:43:53 -08:00
Michael Jumper
8a6a2a1156
GUAC-1452: Actually write timestamps to timing file.
2016-01-27 12:43:53 -08:00
Michael Jumper
88a121f81e
GUAC-1452: Write required header/footer.
2016-01-27 12:43:53 -08:00
Michael Jumper
b2a356d4b8
GUAC-1452: Write to and flush typescript automatically.
2016-01-27 12:43:52 -08:00
Michael Jumper
cc76f2f4af
GUAC-1452: Fix typescript file creation permissions.
2016-01-26 16:42:24 -08:00
Michael Jumper
3f4bac3d04
GUAC-1452: Add base typescript implementation and stubs.
2016-01-25 17:04:15 -08:00
Michael Jumper
ad34aa99b4
GUAC-1452: Add typescript parameters for SSH/telnet.
2016-01-25 13:12:24 -08:00
Moriyoshi Koizumi
d42ac5aca6
GUAC-1410: Add ja-jp keymap
2016-01-19 17:08:34 +09:00
Michael Jumper
4bc5ebe7da
GUAC-1452: Ensure pipe is flushed and closed if terminal is destroyed.
2016-01-13 18:07:37 -08:00
Michael Jumper
ff557a7f01
GUAC-1452: Echo to pipe stream if open (buffered).
2016-01-13 17:38:13 -08:00
Michael Jumper
01edd8ccd8
GUAC-1452: Implement pipe open/close within OSC.
2016-01-13 10:37:41 -08:00
Michael Jumper
051701d566
GUAC-1452: Provide for storage of pipe stream within terminal struct.
2016-01-13 10:37:41 -08:00
Michael Jumper
528de38359
GUAC-1452: Document terminal char handlers.
2016-01-13 10:37:40 -08:00
Michael Jumper
b869edb0a2
GUAC-1452: Add stub handlers for new pipe OSC codes.
2016-01-13 10:37:40 -08:00
Michael Jumper
8b6ca810d9
GUAC-1471: Properly calculate heat map dimensions.
2016-01-12 22:44:28 -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
edd6b9af1c
GUAC-1392: Bump version to 0.9.9.
2015-12-15 13:09:42 -08:00
Michael Jumper
c7c4010306
GUAC-1425: Use proper enum constant for WebPConfigPreset().
2015-12-09 13:44:54 -08:00
James Muehlner
7e78ac1eb9
Merge pull request #97 from glyptodon/hyper-v
...
GUAC-363: Add support for the RDP preconnection PDU (and thus Hyper-V)
2015-11-03 20:14:26 -08:00
Michael Jumper
5d608b3500
GUAC-363: Warn of invalid preconnection IDs.
2015-11-03 15:41:28 -08:00
Michael Jumper
b47cff044e
GUAC-363: Set preconnection BLOB and ID if supported by FreeRDP and specified within connection parameters.
2015-11-03 13:36:58 -08:00
Michael Jumper
7fdbc45575
GUAC-1196: The close handler should do nothing - it is not a stub.
2015-11-02 17:18:30 -08:00
Michael Jumper
63f3652c54
GUAC-1196: Document RDPSND message handlers.
2015-11-02 17:15:35 -08:00
Michael Jumper
c3e2754ec4
GUAC-1196: Load RDPSND if RDPDR is loaded, but do not actually handle audio unless enabled.
2015-11-02 16:54:37 -08:00
Michael Jumper
0dddf47af0
GUAC-1196: Use guac_client to access guac_audio_stream rather than storing the audio stream directly.
2015-11-02 15:55:52 -08:00
Mike Jumper
f9cc90307b
Merge pull request #89 from frenche/listen_once
...
GUAC-1361: listen() need not be present in main loop
2015-11-02 11:56:00 -08:00
James Muehlner
5c6ad497f4
Merge pull request #95 from glyptodon/ssh-command
...
GUAC-1038: Add support for running specific commands via SSH
2015-10-20 11:56:17 -07:00
Michael Jumper
e8b98abfc4
GUAC-1038: Add support for running specific commands via SSH (instead of a shell).
2015-10-19 15:58:44 -07:00
Michael Jumper
364987b159
GUAC-1374: The keep alive ping is disabled by default.
2015-10-19 11:55:18 -07:00
Mike Jumper
8a91965b07
Merge pull request #92 from flangelo/encoding_artifacts
...
GUAC-1366: Adjust WebP and JPEG image sizes before compressing to avo…
2015-10-19 11:48:39 -07:00
Mike Jumper
0f2041ee5c
Merge pull request #91 from flangelo/jpeg_if_bmp_large_enough
...
GUAC-1365: Don't send JPEG image refreshes if the image size is less …
2015-10-19 11:46:34 -07:00
Michael Jumper
a1c1fa104b
GUAC-1354: Remove duration from video instruction.
2015-10-18 22:08:45 -07:00
Frode Langelo
670c6b766e
GUAC-1365: Don't send JPEG image refreshes if the image size is less than 4096 pixels. WebP decision should not include the size check.
2015-10-16 16:46:10 +00:00
Frode Langelo
69a7b8c066
GUAC-1366: Adjust WebP and JPEG image sizes before compressing to avoid artifacts on the edges of the images
2015-10-06 22:31:58 +00: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
Isaac Boukris
61b01299b2
GUAC-1361: listen() need not be present in main loop
...
See GUAC-1361.
Signed-off-by: Isaac Boukris <iboukris@gmail.com>
2015-09-28 04:06:39 +03:00
Michael Jumper
653751e2f5
GUAC-1305: Copy mimetypes into client structure. Instruction contents CANNOT be relied upon after new instruction data is read (the argv, etc. buffers are reused and shared).
2015-09-24 12:45:14 -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
Michael Jumper
0dd4d9b9fa
GUAC-1305: Send WebP images in preference to JPEG when supported.
2015-09-20 18:58:30 -07:00
Michael Jumper
be64fd23c7
GUAC-1305: Add functions for checking WebP support and streaming WebP images.
2015-09-20 18:53:19 -07:00
Frode Langelo
42dba743eb
GUAC-1305: Add support for WebP encoded images. Added optional dependency on libwebp.
2015-09-20 18:12:41 -07:00
James Muehlner
fdc40a9315
Merge pull request #84 from glyptodon/image-handshake
...
GUAC-1305: Add image mimetypes to Guacamole protocol handshake.
2015-09-20 17:37:30 -07:00
Michael Jumper
c57abf3411
GUAC-1305: Add image mimetypes to Guacamole protocol handshake.
2015-09-20 16:15:13 -07:00
Mike Jumper
24cbf72388
Merge pull request #74 from flangelo/num_keypad_map
...
GUAC-1314: Add mapping of numeric keypad operators to the base RDP keymap.
2015-09-20 14:22:06 -07:00
Michael Jumper
7cb632c5c9
GUAC-240: Ensure initialization of last_pixel is obvious.
2015-09-18 11:38:22 -07:00
Michael Jumper
4e97843ef0
Merge branch 'master' into experimental
...
Conflicts:
src/common/guac_surface.c
2015-09-14 14:19:54 -07:00
Michael Jumper
ab4af86c7b
GUAC-1323: Send proper Guacamole protocol status codes for SFTP errors.
2015-09-06 13:39:08 -07:00
Michael Jumper
afb671c594
GUAC-427: Ensure socket is flushed when audio buffer is flushed.
2015-09-04 18:58:21 -07:00
Michael Jumper
927ceb99dd
GUAC-427: Fix const-ness of pointer.
2015-09-04 13:47:21 -07:00
Michael Jumper
47b060d6eb
GUAC-427: Avoid sending silence received from PulseAudio.
2015-09-04 13:40:51 -07:00
Michael Jumper
037f5bc514
GUAC-1280: Bump version numbers to 0.9.8. Update libtool versioning.
2015-09-04 13:30:51 -07:00
James Muehlner
c02ade76ca
Merge pull request #75 from glyptodon/fix-makefile-indent
...
GUAC-1297: Remove indentation / use tabs where required by Makefile standard.
2015-09-04 13:29:56 -07:00
Michael Jumper
3d888c2eb5
GUAC-240: Byte order of pixels is BGR, not BRG.
2015-09-04 13:01:06 -07:00
Michael Jumper
08cadba16d
GUAC-240: Remove guac_protocol_send_png() and guac_protocol_send_jpeg().
2015-09-04 12:59:00 -07:00
Michael Jumper
59f440209c
GUAC-240: Add function for streaming JPEG images via img instruction.
2015-09-04 12:58:47 -07:00
Michael Jumper
7aff3a257a
GUAC-240: Move JPEG encoder to own file, writing directly to an img stream.
2015-09-04 12:58:39 -07:00
Michael Jumper
f79c661192
GUAC-240: Add function for streaming PNG images via img instruction. Use for surface.
2015-09-04 12:58:29 -07:00
Michael Jumper
8f2d6f2975
GUAC-240: Force flush at end of PNG write.
2015-09-04 12:58:22 -07:00
Michael Jumper
d07d8ba2d2
GUAC-240: Associate Guacamole client with surface.
2015-09-04 12:58:13 -07:00
Michael Jumper
364d2842ab
GUAC-240: Move PNG encoder to own file, writing directly to an img stream.
2015-09-04 12:58:05 -07:00
Michael Jumper
74728d2944
GUAC-1297: Remove indentation / use tabs where required by Makefile standard.
2015-09-04 11:55:30 -07:00
Frode Langelo
9fceb58444
GUAC-1314: Add mapping of numeric keypad operators to base RDP keymap
2015-09-03 15:52:37 +00:00
Michael Jumper
3bcb9863e7
GUAC-1296: Send IAC BRK when Pause, Break, or Ctrl+0 are pressed.
2015-08-23 16:21:50 -07:00
Michael Jumper
08cfde7678
GUAC-1296: Stub Pause / Break / Ctrl+0 key handling within telnet client.
2015-08-23 16:10:51 -07:00
Michael Jumper
5dc5a9dbca
GUAC-240: Rename optimality function to match convention used elsewhere in this file.
2015-08-17 16:14:57 -07:00
Michael Jumper
16fd8f6c7d
GUAC-240: Fix buffer error in calculation of framerate. Clarify naming.
2015-08-17 16:09:40 -07:00
Michael Jumper
c604777622
GUAC-240: Remove unused macros.
2015-08-17 16:04:07 -07:00
Michael Jumper
62572073b0
GUAC-240: Dynamically allocate heat map. Throw away heat map during resize.
2015-08-17 16:02:19 -07:00
Michael Jumper
cc21092ac2
GUAC-240: Remove unnecessary change to PNG function.
2015-08-17 11:11:30 -07:00
Michael Jumper
2d66ae87f9
GUAC-240: Improve PNG optimality approximation algorithm (count average run length).
2015-08-17 11:02:18 -07:00
Michael Jumper
b0db2c210f
GUAC-240: Remove now-unused structure member.
2015-08-17 08:38:41 -07:00
Michael Jumper
b6a2de8a97
GUAC-240: Remove whitespace changes.
2015-08-17 08:37:43 -07:00
Michael Jumper
adcb887efb
GUAC-240: Correct PNG optimality calculations.
2015-08-17 08:30:23 -07:00
Michael Jumper
b56afd8bb8
GUAC-240: Approximate whether images will compress well with JPEG vs. PNG.
2015-08-17 06:29:30 -07:00
Michael Jumper
f7cb3d56e9
GUAC-240: Update function documentation. Remove unused macros.
2015-08-17 01:51:03 -07:00
Michael Jumper
dd2e020351
GUAC-240: Move JPEG optimality test into own function.
2015-08-17 01:44:31 -07:00
Michael Jumper
baf01d5524
GUAC-240: Flush to JPEG if dirty rect is hot.
2015-08-17 01:34:32 -07:00
Michael Jumper
26f9070d99
GUAC-240: Restore flush to PNG. Simplify handling of flush. Remove lossy pipeline.
2015-08-17 01:27:09 -07:00
Michael Jumper
807e3a39a5
GUAC-240: Simplify and clarify update history tracking. Remove lossless refresh of previously-lossy updates for now.
2015-08-17 01:13:59 -07:00
Michael Jumper
254a0dded0
GUAC-240: Remove need for forward declarations of static functions.
2015-08-14 10:54:59 -07:00
Frode Langelo
379c4462ca
GUAC-240: Implement adaptive encoding. Build a heat map of the screen, and use lossy image compression for areas refreshing frequently. Once refresh frequency is reduced the lossy area is repainted with a lossless image.
2015-08-14 10:54:59 -07:00
Michael Jumper
fde6abe98b
GUAC-240: Byte order of pixels is BGR, not BRG.
2015-08-13 16:38:54 -07:00
Frode Langelo
9edf33da2e
GUAC-1290: Change GUAC_VNC_FRAME_TIMEOUT to 10 so more VNC messages are handled in each frame.
2015-08-13 16:38:54 -07:00
Michael Jumper
78b7b73e78
GUAC-240: Remove guac_protocol_send_png() and guac_protocol_send_jpeg().
2015-08-13 16:38:54 -07:00
Michael Jumper
1263965511
GUAC-240: Add function for streaming JPEG images via img instruction.
2015-08-13 16:38:54 -07:00
Michael Jumper
995373e74b
GUAC-240: Move JPEG encoder to own file, writing directly to an img stream.
2015-08-13 16:38:54 -07:00
Michael Jumper
9c2d7f56ce
GUAC-240: Add function for streaming PNG images via img instruction. Use for surface.
2015-08-13 16:38:54 -07:00
Michael Jumper
56fa7423f3
GUAC-240: Force flush at end of PNG write.
2015-08-13 16:38:53 -07:00
Michael Jumper
859f7d9340
GUAC-240: Associate Guacamole client with surface.
2015-08-13 16:38:53 -07:00
Michael Jumper
e73ef09fdd
GUAC-240: Move PNG encoder to own file, writing directly to an img stream.
2015-08-13 16:38:53 -07:00
Michael Jumper
8ff071bf04
Fix botched merge conflict resolution.
2015-08-13 16:38:28 -07:00
Michael Jumper
48bbc6a898
Merge branch 'testing-common-ssh'
...
Conflicts:
src/protocols/rdp/client.c
2015-08-13 16:29:22 -07:00
Michael Jumper
d85ed5f85f
GUAC-1292: Use "sftp-directory" for default upload directory, if specified, for both VNC and RDP.
2015-08-13 16:21:15 -07:00
Mike Jumper
a64ed2bf72
Merge pull request #64 from flangelo/adaptive_jpeg
...
GUAC-240: New rectangle helper methods and utilities which will be us…
2015-08-07 23:55:28 -07:00
Michael Jumper
7bb798e40b
GUAC-1285: Implement jpeg_mem_dest() for platforms that lack it.
2015-08-07 17:39:10 +00:00
Frode Langelo
385808c7a1
GUAC-240: New rectangle helper methods and utilities which will be used by adaptive encoding. Rectangle helper unit tests.
2015-08-06 17:19:35 -07:00
Michael Jumper
a52b285f45
GUAC-240: Fix typo - should be JPEG, not JOEG.
2015-08-05 22:02:54 -07:00
Frode Langelo
240867a432
GUAC-240: Make JPEG quality a parameter to methods. Reorder JPEG_LIBS in LDFLAGS
2015-08-05 15:16:27 -07:00
Frode Langelo
c27e2997dd
GUAC-240: Implement support for JPEG server protocol and image compression.
2015-08-05 15:16:26 -07:00