Commit Graph

10 Commits

Author SHA1 Message Date
modeco80
87a377a10f cvmts: replace jpeg-turbo native module with new rust module
This module also does threadpooling internally, so we don't need Piscina anymore (which I'm pretty sure was actually bottlenecking.)
2024-06-20 03:20:56 -04:00
modeco80
4e50106585 cvmts: replace guacamole decoder with a node native module written in rust 2024-06-19 01:36:07 -04:00
Elijah R
1c0ee235dd add global build script 2024-06-11 12:44:39 -04:00
modeco80
cb297e15c4 Giant refactoring (or at least the start)
In short:
- cvmts is now bundled/built via parcel and inside of a npm/yarn workspace with multiple nodejs projects
- cvmts now uses the crusttest QEMU management and RFB library (or a fork, if you so prefer).
- cvmts does NOT use node-canvas anymore, instead we opt for the same route crusttest took and just encode jpegs ourselves from the RFB provoded framebuffer via jpeg-turbo. this means funnily enough sharp is back for more for thumbnails, but actually seems to WORK this time
- IPData is now managed in a very similar way to the original cvm 1.2 implementation where a central manager and reference count exist. tbh it wouldn't be that hard to implement multinode either, but for now, I'm not going to take much time on doing that.

this refactor is still incomplete. please do not treat it as generally available while it's not on the default branch. if you want to use it (and report bugs or send fixes) feel free to, but while it may "just work" in certain situations it may be very broken in others.

(yes, I know windows support is partially totaled by this; it's something that can and will be fixed)
2024-04-23 09:57:02 -04:00
MDMCK10
43fddbc521 Various bug fixes and small additions
IMPORTANT:
This commit contains new config options.
Make sure your local config file is up to date with config.example.toml to avoid issues.

CHANGELOG:
- Fix crash exploit caused by abnormally long WebSocket messages
- Added config option for limiting the maximum amount of active connections from the same IP
- Made per-IP turn limiter configurable
- Fixed an issue where vote updates were not sent to clients in some cases
- Added warning about using qmpSockDir on Windows hosts
- Updated dependencies
- Removed unused code/imports
2023-09-12 00:25:57 +02:00
Elijahr2411
006edd4453 Move captcha support to another branch until I get time to fix it
This reverts commit 626d32d22b.
2023-02-11 14:29:06 +00:00
elijahr2411
626d32d22b add captcha support 2023-02-10 08:52:52 -05:00
elijahr2411
caf76a978e Add rect batching and switch to node-canvas. Currently it leaves a LOT of artifacts for some reason 2023-02-07 20:51:25 -05:00
elijahr2411
42ecfa2375 You can now take turns and control the VM. 2023-02-02 21:19:55 -05:00
elijahr2411
3235375581 everything 2023-01-31 22:00:30 -05:00