Povilas Kanapickas
b376b3ae68
Remove no longer used mutex implementation
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
734588827f
lib/arch/win32: Use standard mutex primitives in threading utilities
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
959306fb1b
lib/arch/win32: Use standard mutex primitives in daemon code
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
c59074835f
lib/arch/win32: Use standard mutex primitives in networking code
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
aa1c3ae7a4
lib/arch/win32: Use standard mutex primitives in ArchTaskBarWindows
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
cdbf0dc15c
lib/barrier: Use standard mutex primitives in PacketStreamFilter
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
78c652da42
lib/platform: Remove unused includes
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
2655e4cca6
lib/platform: Use standard mutex primitives in Windows desks code
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
da673de27c
lib/platform: Use standard mutex primitives in OSX screen code
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
9df64f36e3
lib/platform: Use standard mutex primitives in X server event queue
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
0a89b5abfe
lib/ipc: Use standard mutex primitives in IpcLogOutputter
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
489f45fc94
lib/arch: Add IArchMultithread::wait_cond_var() for standard mutex
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
836a65cda4
lib/net: Use standard mutex primitives in TCP socket code
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
cbf22ad589
lib/net: Use standard mutex primitives in socket multiplexer
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
27de30e761
lib/base: Use standard mutex primitives in event queue buffer
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
cb69469871
lib/base: Use standard mutex primitives in EventQueue
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
c16581b399
lib/base: Rename m_mutex to mutex_ in EventQueue
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
62913ab748
lib/barrier: Remove unused code
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
8586b0a581
lib/arch: Use standard mutex primitives in BSD network impl
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
9e7982f8ec
lib: Switch ArchMutexLock to use std::unique_lock behind the scenes
2021-11-03 03:47:47 +02:00
Povilas Kanapickas
cd356d7c3d
arch: Use standard mutex utilities as underlying implementation
2021-11-03 03:47:47 +02:00
Chih-Hsuan Yen
dd3ea8adfe
lib/platform: Fix encoding for text copied between linux and windows
...
Copied from https://github.com/symless/synergy-core/pull/7029 . I don't
include the application/x-moz-nativehtml part in that patch as I already
added it in https://github.com/debauchee/barrier/pull/1164 .
Fixes https://github.com/debauchee/barrier/issues/1037
Fixes https://github.com/debauchee/barrier/issues/1137
Original author: Serhii Hadzhilov <serhii-external@symless.com>
2021-11-03 03:12:41 +02:00
Povilas Kanapickas
d7de571fdc
lib/net: Simplify handling of socket multiplexer jobs
2021-11-01 14:41:53 +02:00
Povilas Kanapickas
d2c106db53
lib: Pass jobs to barrier::Thread as std::function
2021-11-01 14:41:53 +02:00
Povilas Kanapickas
53356697d9
lib/arch: Pass jobs to Arch threads as std::function
2021-11-01 14:41:53 +02:00
Povilas Kanapickas
9cf590ccd7
lib: Make ThreadFunc return nothing
2021-11-01 14:41:53 +02:00
Povilas Kanapickas
815e80ec4d
lib: Remove unused threading functionality related to thread results
2021-11-01 14:41:53 +02:00
Povilas Kanapickas
666460aced
lib/platform: Use std::function instead of IJob in MSWindowsDesks
2021-11-01 14:41:53 +02:00
Povilas Kanapickas
f0efe043bb
lib/net: Fix incorrect sharing of data between different SSL sessions
2021-11-01 14:05:49 +02:00
Povilas Kanapickas
8b937a4abd
lib/net: Fix race conditions when closing SSL connections
...
This fixes the following security vulnerability:
- CVE-2021-42074 SIGSEGV on quick open/close sequence while sending
Hello message
The issue has been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 14:05:49 +02:00
Povilas Kanapickas
caeebf6c36
Merge pull request #1350 from p12tic/fix-file-handles-leak
...
Fix file descriptor leak on incomplete connections [SECURITY VULNERABILITY CVE-2021-42075]
2021-11-01 14:04:45 +02:00
Povilas Kanapickas
deefecc262
lib/server: Close connection when client app-level handshake fails
...
This fixes the following security vulnerability:
- CVE-2021-42075 DoS via file descriptor exhaustion
The issue has been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 05:58:21 +02:00
Povilas Kanapickas
20f66fe133
lib/common: Clean up declarations of {S,U}Int{8,16,32} types
2021-11-01 05:56:53 +02:00
Povilas Kanapickas
676fa39f9a
lib/platform: Switch remaining ObjC source files to ObjC++
2021-11-01 05:56:53 +02:00
Povilas Kanapickas
00e182d22e
Merge pull request #1347 from p12tic/enforce-max-message-length
...
Enforce max message length [SECURITY VULNERABILITY CVE-2021-42076]
2021-11-01 05:56:38 +02:00
Povilas Kanapickas
e8ac56b045
lib/net: Include openssl applink shim into Windows builds
2021-11-01 05:48:26 +02:00
Povilas Kanapickas
fd5295eb31
lib/barrier: Disconnect client on too long input packets
...
This commit is the 3/3 part of the fix for the following security
vulnerability:
- CVE-2021-42076 DoS via excess length messages
The issue has been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 05:18:53 +02:00
Povilas Kanapickas
af90f39b4a
lib/net: Limit the maximum size of TCP or SSL input buffers
...
This commit is the 2/3 part of the fix for the following security
vulnerability:
- CVE-2021-42076 DoS via excess length messages
The issue has been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 05:18:52 +02:00
Povilas Kanapickas
e33c81b835
lib: Enforce a maximum length of input messages
...
This commit is the 1/3 part of the fix for the following security
vulnerability:
- CVE-2021-42076 DoS via excess length messages
The issue has been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 05:18:51 +02:00
Povilas Kanapickas
cc369820d4
lib/server: Remove unused code
2021-11-01 05:18:50 +02:00
Povilas Kanapickas
7ab8e0101d
lib/server: Add a note about taking pointer to virtual member function
2021-11-01 05:18:49 +02:00
Povilas Kanapickas
165100a0d2
gui: Extract barrier type to separate enum
2021-11-01 04:50:16 +02:00
Povilas Kanapickas
229abab99f
Implement client identity verification
...
This commit fixes two security vulnerabilities: CVE-2021-42072 and
CVE-2021-42073.
The issues have been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 04:50:15 +02:00
Povilas Kanapickas
57769cffda
lib/net: Pass connection security level to within socket classes
2021-11-01 04:50:13 +02:00
Povilas Kanapickas
5c7d7194d5
lib/net: Use enum for connection security level instead of boolean
2021-11-01 04:50:12 +02:00
Povilas Kanapickas
82b8fa905e
lib/net: Improve name of showCertificate() to reflect what it does
2021-11-01 04:50:11 +02:00
Povilas Kanapickas
133e447fb6
lib/net: Don't hardcode fingerprint DB path in verify_cert_fingerprint()
2021-11-01 04:50:10 +02:00
Povilas Kanapickas
4d73ed9fdd
lib/net: Present client certificate when connecting to server
2021-11-01 04:50:07 +02:00
Povilas Kanapickas
c0ce893711
lib/net: Load client SSL certificates when connecting
2021-11-01 04:50:05 +02:00
Povilas Kanapickas
b76b332f2f
lib/common: Move SSL certificate path definition to common location
2021-11-01 04:29:53 +02:00