Andri Yngvason
a77ff634f0
Keep zlib streams when switching encodings
...
Both RealVNC and TigerVNC clients expect zlib streams to remain when
switching encodings, so when they switch back, inflate fails if the
encoder is discared.
fixes #109
2024-02-02 22:41:33 +00:00
Andri Yngvason
4148503d0c
server: Allow server to request more than 32 encodings
...
fixes #108
2024-01-24 18:30:58 +00:00
Andri Yngvason
b5b330b22c
Release v0.7.1
2023-11-05 15:47:14 +00:00
Andri Yngvason
d4c3083c42
server: Remove DNS lookup
...
DNS lookup is slow and can even fail. Under some circumstances, it will
even block for a significant amount of time until it completes.
The user of this library can do the lookup instead if they wish.
2023-11-05 10:32:17 +00:00
Andri Yngvason
5ef65d2c2b
crypto: Initialise AES-ECB decode context correctly
...
This fixes Apple DH
2023-11-04 23:28:17 +00:00
Andri Yngvason
823870f88e
server: Fix double-free on failed Apple DH
2023-11-04 23:28:15 +00:00
Andri Yngvason
112391140a
Release v0.7.0
2023-10-04 21:12:49 +00:00
Andri Yngvason
2e61346c3f
server: Disable NTP and PTS extensions
...
They are note ready to be released.
2023-10-04 21:11:45 +00:00
Andri Yngvason
57d3b8d02d
damage-refinery: Use scalar xxh3 implementation
...
This is guaranteed to be portable. It's best to keep it like that until
runtime detection is implemented.
2023-10-04 09:03:11 +00:00
Andri Yngvason
dc1d93cadf
server: Defer cleaning up client resources on close
...
When the event is received, the client object may still be processing some
things, so let's allow it to finish.
2023-10-03 22:15:20 +00:00
Andri Yngvason
f8f49196e8
server: Free RSA creds on close
2023-10-03 20:45:20 +00:00
Andri Yngvason
4be95d6938
crypto-nettle: Fix use after free
2023-10-03 20:44:46 +00:00
Andri Yngvason
995d678e1e
damage-refinery: Replace murmurhash with XXH3
2023-10-03 20:33:27 +00:00
MazTheMan
b066536aac
zrle: fix for source format of 24 bits
2023-10-03 20:04:21 +00:00
Andri Yngvason
65d1d0e185
server: Use uint32_t for security result failure path
2023-10-02 23:05:19 +00:00
Andri Yngvason
d2c8ab0b6c
Revert "Export base64 encoder and decoder"
...
There is currently no use for this.
This reverts commit c38f669e13
.
2023-10-02 22:47:04 +00:00
Andri Yngvason
a5fecc0b97
stream: rsa-aes: Unref payload after encoding
...
This fixes a memory leak
2023-10-02 22:38:59 +00:00
Andri Yngvason
913c314b31
server: Use memcpy instead of strncpy for username/password
...
This fixed zero-termination error
2023-10-02 21:57:22 +00:00
Andri Yngvason
f54aeed334
Notify client about NTP support
2023-10-01 10:56:42 +00:00
Andri Yngvason
bdadcad1c8
Replace strlcpy with strncpy
...
The former isn't portable.
2023-09-29 22:00:48 +00:00
Andri Yngvason
3794405101
websocket: Add some missing copyright notices
2023-09-29 21:53:20 +00:00
Andri Yngvason
58d6dff5e5
API: Consolidate setup of security constraints
2023-09-29 21:53:20 +00:00
Andri Yngvason
373e5a0f9e
Remove logging of sensitive information
2023-09-29 21:53:20 +00:00
Andri Yngvason
d74878fd00
server: Allow arbitrary RSA key length
2023-09-29 21:53:20 +00:00
Andri Yngvason
74e9db19fd
API: Add method to set RSA credentials
2023-09-29 21:53:20 +00:00
Andri Yngvason
4220cbb345
crypto: Add method to import RSA private keys
2023-09-29 21:53:20 +00:00
Andri Yngvason
c38f669e13
Export base64 encoder and decoder
2023-09-29 21:53:20 +00:00
Andri Yngvason
98f6930580
ws-handshake: Use own base64 and SHA1 implementations
2023-09-29 21:53:20 +00:00
Andri Yngvason
a02f578f9e
Add base64 encoder & decoder
...
I prefer to have these independent of the crypto suite that's being used.
2023-09-29 21:53:20 +00:00
Andri Yngvason
4705c0cfcc
Implement RSA-AES-256 security type
2023-09-29 21:53:20 +00:00
Andri Yngvason
396f4ed6c5
server: Clean up crypto resources on disconnect
2023-09-29 21:53:20 +00:00
Andri Yngvason
76c832d791
crypto: Make deleting NULL pointers noop
2023-09-29 21:53:20 +00:00
Andri Yngvason
7eb42324bf
server: Define rsa-aes server key length constant
2023-09-29 21:53:20 +00:00
Andri Yngvason
08312c3296
crypto: Add sha256
2023-09-29 21:53:20 +00:00
Andri Yngvason
d004a2fcb9
crypto: Remove unused code
2023-09-29 21:53:20 +00:00
Andri Yngvason
f029484a87
crypto: Add AES256-EAX cipher
2023-09-29 21:53:20 +00:00
Andri Yngvason
c6df99ec46
server: Use hash_{one,many}
2023-09-29 21:53:20 +00:00
Andri Yngvason
d12973486a
crypto: Add helper functions for hashing
2023-09-29 21:53:20 +00:00
Andri Yngvason
9507624cf3
Create dedicated RSA-AES stream
...
The message format isn't really within the domain of the cipher, so it
doesn't belong to the crypto interface.
2023-09-29 21:53:20 +00:00
Andri Yngvason
625323d8a3
stream-ws: Clean up exec-and-send resources
2023-09-29 21:53:20 +00:00
Andri Yngvason
dfc20d065e
stream-ws: Inherit stream-tcp
...
This eliminates the need for implementing all stream functions
2023-09-29 21:53:20 +00:00
Andri Yngvason
f90c628e66
Add temporary api function to enable auth without tls
2023-09-29 21:53:20 +00:00
Andri Yngvason
e341898bbc
Implement RSA-AES
2023-09-29 21:53:20 +00:00
Andri Yngvason
71aa5acfde
crypto: Integrate message handling into cipher
2023-09-29 21:53:20 +00:00
Andri Yngvason
c12c1c800a
crypto: Add RSA and AES-EAX
2023-09-29 21:53:20 +00:00
Andri Yngvason
7b878033f0
Implement Apple's Diffie-Hellman based security type 30
2023-09-29 21:53:20 +00:00
Andri Yngvason
da2518e296
stream: Integrate cipher
2023-09-29 21:53:20 +00:00
Andri Yngvason
0c3a98483c
Add abstract interface for low level crypto
2023-09-29 21:53:20 +00:00
MazTheMan
fd1e18b475
Implement 24 bit pixel formats for raw and tight
2023-09-29 21:46:05 +00:00
Philipp Zabel
56f1c125fa
meson: Fix Meson warning about missing check kwarg in run_command() calls
...
Fixes the following Meson warning:
WARNING: You should add the boolean check kwarg to the run_command call.
It currently defaults to false,
but it will default to true in future releases of meson.
See also: https://github.com/mesonbuild/meson/issues/9300
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
2023-07-05 10:30:55 +00:00