Commit Graph

418 Commits (2f439b9fa28f65c66b66b643efdfedbde6565831)

Author SHA1 Message Date
Andri Yngvason b75eeac03d Add API function for creating nvnc_fb from an pre-allocated buffer 2021-09-05 00:46:24 +00:00
Andri Yngvason 96886e21d5 Add a API function to get the pixel size of nvnc_fb 2021-09-05 00:46:24 +00:00
Andri Yngvason c7dd062498 Add a stride parameter to nvnc_fb 2021-09-05 00:46:24 +00:00
Andri Yngvason 4594517571 .gitignore: add .vimrc and sandbox 2021-09-05 00:46:24 +00:00
Andri Yngvason e8e4a9469a Remove damage checker
There's a much better one in wayvnc
2021-09-05 00:46:24 +00:00
Andri Yngvason 965dbd6eca examples: draw: Use new buffer submission API 2021-09-04 21:21:23 +00:00
Andri Yngvason 2095913688 display & fb_pool: Clean up memory leaks 2021-09-04 21:21:23 +00:00
Andri Yngvason 77d8efcbe3 fb_pool: Return true from resize when dimensions change 2021-09-04 21:21:23 +00:00
Andri Yngvason 1b7b51af44 Add a cleanup callback to nvnc_set_userdata 2021-09-04 21:21:23 +00:00
Andri Yngvason 41c9ebe960 server: process fb update requests in fb update request message handler
Otherwise, the client won't get the initial frame
2021-09-04 21:21:23 +00:00
Andri Yngvason e16a64a67d fb_pool: Fix reference counting error 2021-09-04 21:21:23 +00:00
Andri Yngvason f5b0f508f0 fb: Use special context pointer for release callback 2021-09-04 21:21:23 +00:00
Andri Yngvason f566105ab5 Remove nvnc_set_render_fn 2021-09-04 21:21:23 +00:00
Andri Yngvason 981256d8d5 Add a buffer pool 2021-09-04 21:21:23 +00:00
Andri Yngvason d63feadeab Notify the user when an fb is released 2021-09-04 21:21:23 +00:00
Andri Yngvason 031555c85d fb: Add hold/release logic 2021-09-04 21:21:23 +00:00
Marco Felsch d0cf1595af meson: Fix host leakage
Commit d2d2f32 ("Add libdrm include path to cflags") fixed the build for
FreeBSD but introduced host leakage which breaks cross-compile builds.
To fix this we need to specifying the include path by unsing '-I=' so
the compiler searches within the specified sysroot dir.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
2021-09-04 18:15:48 +00:00
Ryan Farley b320723049 Support UNIX sockets
Adds support for UNIX domain sockets with `nvnc_open_unix()` function.
Closes #1.
2021-04-04 20:24:33 +00:00
Andri Yngvason 019d6eda36 Display Patreon account on GitHub page 2021-01-31 12:21:20 +00:00
Andri Yngvason d2d2f32f17 Add libdrm include path to cflags
This seems to be required for this to build on FreeBSD
2020-12-31 02:32:33 +00:00
Andri Yngvason b1d32694d0 Release v0.4.0 2020-12-06 14:02:50 +00:00
Andri Yngvason 1359b987a3 Translate XT keycodes to linux keycodes 2020-11-29 20:48:31 +00:00
Andri Yngvason f547ed72f9 Decrement pending requests when sending pseudo frames 2020-11-29 18:36:48 +00:00
Andri Yngvason ea98af75de Notify client about qemu key capability 2020-11-29 18:36:48 +00:00
Andri Yngvason dbe35bc3ad Add qemu extended key events 2020-11-29 18:36:48 +00:00
Andri Yngvason efaa2bf265 rfb-proto: Add qemu key event extension 2020-11-29 18:36:48 +00:00
Aisha Tammy 9a41f96ad0 add systemtap option for sys/std.h
Signed-off-by: Aisha Tammy <gentoo@aisha.cc>
2020-09-29 14:51:08 +00:00
Andri Yngvason e507a76d8d Release v0.3.2 2020-09-27 17:31:06 +00:00
Andri Yngvason e69006fc48 tight: Hold fb and client refs while encoding 2020-09-27 17:17:22 +00:00
Andri Yngvason af38a643d9 tight: Don't block 1 worker while encoding tiles 2020-09-27 12:37:00 +00:00
Andri Yngvason 9e84000e0a server: Extract finish_fb_update() from on_client_update_fb_done() 2020-09-26 22:29:02 +00:00
Andri Yngvason add8d8e8db server: Move pixel format conversion out of do_client_update_fb 2020-09-26 22:17:02 +00:00
Andri Yngvason 7e2b4fef8c server: Refactor schedule_client_update_fb 2020-09-26 22:00:53 +00:00
Andri Yngvason 24a6e29cf2 raw-encoder: Use encder utils 2020-09-26 16:19:02 +00:00
Andri Yngvason 413e6e7e72 zrle: Use encoder utils 2020-09-26 16:16:36 +00:00
Andri Yngvason 31b7077bc5 tight: Use encoder utils 2020-09-26 16:13:17 +00:00
Andri Yngvason 25a533e22b Add common utilities for encoders 2020-09-26 16:10:25 +00:00
Scott Moreau 81a8ba9d0e server: Handle cut text messages of up to 10MB 2020-09-25 21:47:59 +00:00
Scott Moreau 783807c0b9 server: Fix possible crash on fragmented packet messages
The packets sent from the client especially for client cut text,
are typically sent in two packets, one for the message containing
the type and length and the other for the actual data. Sometimes
the first message is read but we still don't have the data yet.
We need to continue reading data to use the structure but this
revealed a bug. The client event handler was calling memmove()
with buffer_index as the size argument. This meant that it was
copying the wrong amount of data, resulting in garbage at the
end of the expected data. This patch fixes the problem by first
subtracting buffer_index from buffer_len and then moving buffer_len
worth of data, which is what was read into msg_buffer. The problem
possibly manifested itself with random crashes, after reading
random data.
2020-09-21 21:15:45 +00:00
Scott Moreau 6d29937e15 server: Add remaining support for simple copy/paste
- Add function to set callback for client_cut_text
- Add server_cut_text structure and function

This in conjunction with wayvnc #66 closes #4.
2020-09-21 21:15:45 +00:00
Andri Yngvason 6ad4aba374 examples: Make all functions static
This fixes compiler warnings
2020-07-26 13:52:00 +00:00
Andri Yngvason bb5e4ef7e1 README: Remove text about beta release 2020-07-26 13:49:00 +00:00
Andri Yngvason addcc50483 Bake version info into library 2020-07-26 11:43:29 +00:00
Andri Yngvason 53db2b8c1b Remove optimisation flags
Let's leave it to the package maintainers
2020-07-26 11:43:29 +00:00
Andri Yngvason e1c0923915 stream: Add byte counters 2020-07-26 11:43:29 +00:00
Jan Beich e862347ab5 meson: allow static linking 2020-07-22 21:15:49 +00:00
Andri Yngvason b52f5cd6c9 Resize tight encoder on frame resize 2020-07-19 16:58:55 +00:00
Andri Yngvason 76beec6415 tight: Add method to resize encoder grid 2020-07-19 16:57:44 +00:00
Andri Yngvason d4a5ed4133 stream: Ignore events after close instead of aborting
Aborting places an unnecessary restriction on the event loop library.
2020-07-19 13:22:57 +00:00
Andri Yngvason a0801f04e4 Implement server-side resizing 2020-07-19 11:54:39 +00:00