Commit Graph

410 Commits (861e140205af6faba06b995099a7e6614d8c76d0)

Author SHA1 Message Date
Andri Yngvason 861e140205 Detach instead of exiting when compositor goes away 2023-11-14 20:49:00 +00:00
Andri Yngvason 0938162e6f Implement detached mode
This makes it possible to attach to a compositor at a later time and to
detach and re-attach.
2023-11-14 20:47:54 +00:00
Andri Yngvason 6470dfef5f Relax auth parameter sanitation
Since more authentication modes have been added, it's no longer a
requirement to have key files set.
2023-11-05 21:13:30 +00:00
Andri Yngvason a53ff1f769 Sanitise buffer damage from compositor
Some compositors fail to send properly bounded damage regions. Let's
not crash when that happens.
2023-11-02 22:42:17 +00:00
Andri Yngvason 27cd6351be ctl-server: Add null-check for info.seat 2023-10-14 10:43:08 +00:00
Christopher Snowhill 57fb350cfe Add null seat pointer checks 2023-10-14 10:40:57 +00:00
Andri Yngvason 1c489ad8e9 Fix copy-pasta from last commit 2023-10-11 09:21:53 +00:00
Andri Yngvason 301b4c0b53 Add transient seats 2023-10-10 22:38:58 +00:00
Andri Yngvason c1281dad60 Don't use tag for git version 2023-10-09 22:57:36 +00:00
Andri Yngvason 9ff7ba61e2 main: Add rsa to command sanity checker 2023-10-02 22:01:21 +00:00
Andri Yngvason cdeefd0851 Allow use of absolute paths with config relative paths 2023-09-30 10:18:56 +00:00
Andri Yngvason 6d59ab8323 Add config option to make paths relative to config file 2023-09-29 21:53:29 +00:00
Andri Yngvason f2c367f191 Use new Neat VNC authentication API 2023-09-29 21:53:29 +00:00
Andri Yngvason 8395f7b106 Add config parameter for RSA private key file 2023-09-29 21:53:29 +00:00
Andri Yngvason 3a01753a22 Add non-tls authentication 2023-09-29 21:53:29 +00:00
MazTheMan ec885cf23d get pixel size from fourcc to calculate pixel stride 2023-09-29 21:48:01 +00:00
Andri Yngvason 8ed08d6f33 main: Use 1 client cleanup function 2023-09-16 10:32:17 +00:00
Andri Yngvason c9a3702940 main: Add websockets 2023-04-30 13:35:51 +00:00
Andri Yngvason d50c616127 Assign clients to unoccupied seats 2023-04-29 20:43:13 +00:00
Andri Yngvason c01e5c6080 seat: Add occupancy count 2023-04-29 19:48:30 +00:00
Andri Yngvason 87c034db43 Add seat name to client-connected event 2023-04-29 19:35:24 +00:00
Andri Yngvason d53a04b5b0 Remove unnecessary copying when listing clients 2023-04-29 19:35:24 +00:00
Andri Yngvason 51f868c6ff Iterate over clients instead of listing
This model avoids memory allocations and allows for re-use of
the info function for client events.
2023-04-29 19:35:24 +00:00
Andri Yngvason 1c9a8c0769 Show seat in client list 2023-04-29 19:35:24 +00:00
Andri Yngvason 4700546026 main: Increase access to per-client seats 2023-04-29 19:35:22 +00:00
Andri Yngvason c29bb465ee Prepare for per-client seats 2023-04-29 19:31:02 +00:00
Jim Ramsay 00d7a7bde3 Fix 'wayvncctl wayvnc-exit' return code
When shutting down wayvnc, it is likely the IPC connection will drop
before the IPC response ia received, so count dicsonnection as success.

Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2023-02-27 06:33:43 -05:00
Jim Ramsay 88f0571dc3 Harden wayvncctl --reconnect
Required so wayvncctl doesn't exit unexpectedly especially on freebsd.

Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2023-02-27 06:01:27 -05:00
Jim Ramsay e3ea6652f0 Harden wayvncctl client json message parsing
This allows proper parsing of back-to-back incoming json
events/responses.

Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2023-02-27 06:01:27 -05:00
Benjamin Richter 78e7e448c6 main: Fix unix-socket option parsing
option_parser_get_value was looking for "unix" instead of "unix-socket" before, so it was impossible to switch to unix socket mode
2023-02-14 19:37:57 +01:00
Michael Vetter 2f6a1c4c23 Dont include ctrl-server.h in client file
Seems to be a copy/paste mistake.
I don't see that any of the definitions of that header are used in
`ctl-client.c`.

Fix https://github.com/any1/wayvnc/issues/232
2023-01-27 21:49:57 +00:00
Jim Ramsay fd652e7a23 Fix all non-parameterized IPCs
Reverts part of 0b970ba3 which disabled all IPCs that don't take
parameters.

Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2023-01-26 22:53:08 -05:00
Andri Yngvason e710d47f2e ctl-client: Use EAGAIN instead of ENODATA
The latter is obsolete in POSIX.1-2008.
2023-01-23 22:26:38 +00:00
Andri Yngvason 267a4e55e3 ctl-commands: Use slightly more helpful schemas 2023-01-17 20:05:17 +00:00
Andri Yngvason 5bf6f23eed ctl-client: Replace = with : in event description
Let's not abuse the equality sign more than necessary. ;)
2023-01-17 20:05:17 +00:00
Andri Yngvason b54b0a31f7 ctl-commands: Fix typo 2023-01-17 20:05:17 +00:00
Andri Yngvason 6fccedcf41 ctl-commands: Capitalise "VNC" 2023-01-17 20:05:17 +00:00
Andri Yngvason f49aea40a4 ctl-server: Improve error messages for missing arguments 2023-01-17 20:05:17 +00:00
Andri Yngvason 0b970ba355 ctl-server: Fix segfault in error path
This would segfault e.g. if issuing:
$ waynvcctl client-disconnect # without argument
2023-01-17 20:05:17 +00:00
Andri Yngvason 6e326af2ff ctl-client: Print trailing newline for events
If someone wants to parse this instead of using jq, a trailing
newline delimits the end of the event.
2023-01-17 20:05:17 +00:00
Andri Yngvason aa96103ae8 ctl-client: Don't print "<<null>" for events with no params
It's inconsistent and doesn't seem helpful either.
2023-01-17 20:05:17 +00:00
Andri Yngvason 5d1421a063 ctl-client: Remove decorations in client/output lists
Those decorations do not appear to improve readability or
parsability.
2023-01-17 20:05:17 +00:00
Andri Yngvason d8bc5cd328 ctl-client: Remove messages about how many clients/outputs there are
When you type "ls", it doesn't tell you how many files there are.
If the user wants to know that, they can use "wc -l" or count them.
2023-01-17 20:05:17 +00:00
Andri Yngvason bbea931f8c ctl-client: Rename print_as_yaml -> print_for_human
The goal is to have this human friendly, not yaml.
2023-01-17 20:05:17 +00:00
Andri Yngvason 0fc43ef757 ctl-client: Use more descriptive response error message 2023-01-17 20:05:17 +00:00
Andri Yngvason baea2e8f4c ctl-client: Add a few vertical spaces + style changes
This change is intended to make things easier to read for myself.
2023-01-17 20:05:17 +00:00
Andri Yngvason 889f5900cc ctl-client: Rename WARNING log level to ERROR
All of these are basically errors.

A warning is often a recoverable event, an error isn't.
2023-01-17 20:05:17 +00:00
Andri Yngvason 98db05434a ctl-client: Align log messages with other log messages 2023-01-17 20:05:17 +00:00
Andri Yngvason cec46490a9 main: Don't init render node with gpu disabled
Otherwise, a warning will be generated when there is no render node.
2023-01-15 23:02:53 +00:00
Jim Ramsay 749b64666a Clean up command summary printing
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2023-01-12 17:47:50 -05:00