Lauri Kasanen
44a194886d
Keep nvidia-failed status permanently, so later clients don't try it in vain
2021-11-22 11:46:23 +02:00
Lauri Kasanen
ac56f5566b
Restore x264 as a fallback
2021-11-22 11:41:22 +02:00
Lauri Kasanen
b09e1b907f
Missed return
2021-07-13 13:46:43 +03:00
Lauri Kasanen
f8c9983d9b
Nvidia resizing, init failure check
2021-07-13 13:32:29 +03:00
matt
c768e70fba
increase max bitrate
2021-07-12 13:59:04 -04:00
matt
8b1c0a3bb7
increase max bitrate
2021-07-12 12:58:57 -04:00
Lauri Kasanen
c54b705930
Switch colorspace again
2021-06-22 13:16:02 +03:00
Lauri Kasanen
777b5c57de
Fix NAL parsing logic
2021-06-22 13:03:29 +03:00
Lauri Kasanen
4d7eb8976b
Remove newline from one nvidia print
2021-06-21 15:52:46 +03:00
Lauri Kasanen
a930a0cded
Comment out some debug prints
2021-06-21 15:48:19 +03:00
Lauri Kasanen
ccae6d174b
Initial change to nvenc
2021-06-21 15:36:31 +03:00
Lauri Kasanen
21cc797dd3
Fix animated cursor resize crash
2021-06-15 15:39:48 +03:00
Lauri Kasanen
c961c56c39
Port the old x264 code
2021-06-14 13:31:20 +03:00
Lauri Kasanen
7a695c976e
Writer perms were checked in multiple places, consolidate and fix a missing case
2021-05-10 11:02:20 +03:00
Lauri Kasanen
95d34f7e58
Fix some local->remote clipboard merge misses
2021-04-13 13:49:43 +03:00
Lauri Kasanen
a1cf454f06
Sync utf8 clipboard support
2021-04-12 12:38:24 +03:00
lhchavez
25b8e64adb
Add support for notifying clients about pointer movements
...
This change adds support for the VMware Mouse Position
pseudo-encoding[1], which is used to notify VNC clients when X11 clients
call `XWarpPointer()`[2]. This function is called by SDL (and other
similar libraries) when they detect that the server does not support
native relative motion, like some RFB clients.
With this, RFB clients can choose to adjust the local cursor position
under certain circumstances to match what the server has set. For
instance, if pointer lock has been enabled on the client's machine and
the cursor is not being drawn locally, the local position of the cursor
is irrelevant, so the RFB client can use what the server sends as the
canonical absolute position of the cursor. This ultimately enables the
possibility of games (especially FPS games) to behave how users expect
(if the clients implement the corresponding change).
Part of: #619
1: https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#vmware-cursor-position-pseudo-encoding
2: https://tronche.com/gui/x/xlib/input/XWarpPointer.html
3: https://hg.libsdl.org/SDL/file/28e3b60e2131/src/events/SDL_mouse.c#l804
2021-03-29 11:27:54 +03:00
Pierre Ossman
189f503b98
Fix handling of bad update requests
...
We computed a safe area if a client gave us a bogus one, but we didn't
actually use it. Fix this properly and make sure we don't pass on bad
coordinates further.
2021-03-29 11:00:41 +03:00
Pierre Ossman
25995e2490
Remove unused bufSize argument from streams
2021-03-29 10:49:25 +03:00
Pierre Ossman
281d65292a
Remove special functions from JPEG compressor
...
We can do what we want with the standard methods.
2021-03-29 10:48:55 +03:00
Pierre Ossman
57a3c3bba8
Simplify stream availability handling
...
Just have a simply number of bytes argument to avoid a lot of
complexity.
2021-03-29 10:48:26 +03:00
Pierre Ossman
7f90205cf2
Add stream avail() methods
...
Makes it more readable to write code that needs to know how much
data/space is available in a stream.
2021-03-29 10:08:40 +03:00
Pierre Ossman
c5b7137f2b
Flush data on close
...
There might be some final handshake data that is still stuck in the
buffers, so make a best effort attempt at getting it to the client.
2021-03-29 10:02:31 +03:00
Pierre Ossman
a3c0ce55c9
Support calling methods from timers
...
We can't safely use the normal timers in base classes as we cannot
guarantee that subclasses will call the base class' handleTimeout()
properly if the subclass overrides it.
2021-03-29 09:58:18 +03:00
Lauri Kasanen
1632f4888d
Enable basicauth by default, remove the option to supply it on the command line
2021-03-25 11:25:30 +02:00
matt
93d3bf052d
Removed old line
2021-03-22 11:36:33 +00:00
matt
7b3f6876b4
Fixed syntax error
2021-03-22 11:23:49 +00:00
matt
46e03289be
Manually merged region changes
2021-03-22 10:36:39 +00:00
Lauri Kasanen
c3e30dcea1
Add support for DLP_Region
2021-03-15 13:48:56 +02:00
Lauri Kasanen
980eedd33b
Add HTTP GET APIs for creating, removing users and giving control
2021-03-03 14:55:14 +02:00
Lauri Kasanen
3f6524ee30
Add support for owner screenshot HTTP GET API
2021-03-02 15:23:32 +02:00
Dmitry Maksyoma
9084409a20
Merge branch 'users' into packages_and_multiuser_passwd
2021-02-25 22:10:40 +13:00
Lauri Kasanen
a4e70ff56b
Remove less-than-256-colors indexed limit for small rects
2021-01-15 13:08:20 +02:00
Lauri Kasanen
481b063eb7
Fix missing init for DLP timestamps
2020-12-03 12:29:38 +02:00
Lauri Kasanen
531705c05c
Remove set-desktop-size perms from read-only clients
2020-10-14 15:50:28 +03:00
Lauri Kasanen
1f69d1584a
Prevent read-only clients from changing kasm settings
2020-10-14 15:44:48 +03:00
Lauri Kasanen
36deba3a75
Correct non-basicauth and command-line user:pass being read-only
2020-10-14 14:27:08 +03:00
Lauri Kasanen
0c83a86bc8
Dynamically apply permissions
2020-10-13 13:38:18 +03:00
Lauri Kasanen
263d05a296
Apply read-only perms upon connecting
2020-10-12 15:11:49 +03:00
Lauri Kasanen
80513c8616
Change "recent" to be 10s from 60s, and in its own variable
2020-10-02 14:44:33 +03:00
Lauri Kasanen
279c41fc32
Add option to pass the password in an encrypted file, kasmvncpasswd utility
2020-10-01 14:37:51 +03:00
Lauri Kasanen
ae07707e66
Don't log BasicAuth
2020-10-01 13:07:32 +03:00
Lauri Kasanen
bb71cd4ec4
Have stats react faster to big cpu lag spikes
2020-10-01 13:00:34 +03:00
Lauri Kasanen
99fe70bbd6
Add a debug-level print on the last ~second's maximum encoding time
2020-09-28 14:37:19 +03:00
Lauri Kasanen
b30318a68f
Change stats format to JSON array style
2020-09-28 14:26:38 +03:00
Lauri Kasanen
d5bdef121a
Add support for bottleneck stats
2020-09-21 15:51:56 +03:00
Pierre Ossman
47bba8a1e6
Fix JpegCompressor::overrun() type change
...
The method it overloads got tweaked some time ago, so we need to make
sure this method follows suit.
2020-09-21 13:42:29 +03:00
Lauri Kasanen
49f9ce8e5b
Remove remnants of the old HTTP server
2020-09-21 13:17:11 +03:00
Pierre Ossman
06fd7ac061
Use sys/time.h on Windows as well
...
Modern MinGW seems to provide this, so simplify things a bit. This also
side steps some of the issue of the windows.h/winsock2.h include
ordering.
2020-09-21 13:05:50 +03:00
Pierre Ossman
ed73ac2aa7
Handle pixel formats with odd shift values
...
Our fast paths assume that each channel fits in to a separate byte.
That means the shift needs to be a multiple of 8. Start actually
checking this so that a client cannot trip us up and possibly cause
incorrect code exection.
Issue found by Pavel Cheremushkin from Kaspersky Lab.
2020-09-21 12:56:53 +03:00