Povilas Kanapickas
a238b27879
gui: Simplify isCertificateValid()
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
7cced74119
lib/net: Use FingerprintData to represent fingerprints
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
50534ecb43
lib/net: Use new FingerprintDatabase to handle fingerprints
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
be8ba0d132
gui: Use new FingerprintDatabase to handle fingerprints
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
9cac96b4af
lib/net: Implement a reusable fingerprint database
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
3e71b468f6
lib: Remove useless empty constructors
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
8f88dc2585
lib/base: Support colons in from_hex()
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
aa3afa9062
Use openssl library instead of CLI to generate certificates
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
dbf56a9375
gui: Use openssl library instead of CLI tool to generate fingerprints
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
cf732aba37
lib/io: Add a replacement for fopen() which works on Windows
...
fopen() does not correctly handle non-ASCII paths on Windows.
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
089b8e4749
lib/net: Extract SSL fingerprint generation to reusable function
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
85486927b3
lib/base: Implement pattern to execute something at function exit
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
cd7e731cb7
lib: Switch to std::vector<std::uint8_t> for fingerprint data
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
ef08470286
src/lib: Use standard std::vsnprintf() instead of hacking our own
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
b793675ef8
lib/net: Put secure utils into barrier namespace
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
a9b30951ce
lib: Add utility function to convert from hex to binary
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
767f3d37ec
test: Extract common test utilities to separate file
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
9d8e1faf59
test: Add test for format_ssl_fingerprint()
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
96e0021572
lib/base: Make to_hex() easier to use
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
7f71924a86
lib/net: Make format_ssl_fingerprint() easier to use
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
0e406d4918
lib/net: Extract fingerprint formatting out of SecureSocket
2021-11-01 03:19:47 +02:00
Povilas Kanapickas
bfa8964305
Enable encryption by default
2021-11-01 03:00:09 +02:00
Povilas Kanapickas
d24f368efe
Correctly open files with non-ASCII paths on Windows
...
This fixes #976 , fixes #974 , fixes #444 .
On Windows the standard stream open() functions expect bytes encoded in
current system encoding, not UTF8. Since we're dealing with UTF8
throughout the application this results in wrong paths being passed and
failure to open files. As a solution, we convert the paths to UTF16 via
the WCHAR character type and use the special Windows-specific overloads
of open() functions.
2021-10-30 01:03:09 +03:00
Povilas Kanapickas
8286c85dc0
lib/common/win32: Extract unicode_to_mb() to separate file
2021-10-30 01:03:09 +03:00
Povilas Kanapickas
15a955ff21
Revert "Use ansi codepage for internal multibyte strings on windows"
...
This reverts commit 402801e0a6
.
We should use UTF8 throughout the application and convert to platform
encodings only at the edge. Otherwise it's not clear which data uses
which encoding and we result in extremele brittle system.
2021-10-30 01:03:09 +03:00
Andrew Shark
547a2dd413
Add warning on wayland, fix #247
2021-10-02 03:21:04 +03:00
a1346054
872e78d342
Trim excess whitespace
2021-09-23 00:20:58 +00:00
a1346054
9c41441861
Fix whitespace alignment
2021-09-23 00:20:55 +00:00
a1346054
9549352a10
Fix codestyle deviations
2021-09-23 00:20:54 +00:00
a1346054
8c014b4bb6
Fix spelling
2021-09-23 00:20:54 +00:00
a1346054
3aee8dd341
Add missing final newline
2021-09-22 22:58:16 +00:00
Peter Hutterer
dec895e8d3
cmake: move two windows #defines to the main cmake file
...
We have a check for windows here anyway, let's move the defines here and we
can drop it in the common header file. And since on Unix HAVE_CONFIG_H is
always defined, we can drop the else condition too.
2021-08-20 15:27:39 +10:00
Peter Hutterer
c32ca2195d
barrier: split the platform-specific argument parsing
...
Instead of one function with several ifdefs, split into several functions
to make the code more readable.
No functional changes.
2021-08-20 15:27:39 +10:00
Tomoya Tanjo
7a4c6a25d7
Add `Henkan`, `Muhenkan` and `Zenkaku` entries to macOS
...
Note: these keys are sometimes referred as `international4` and `international5`, respectively.
2021-06-27 17:07:45 +00:00
Tomoya Tanjo
eec676948c
Add `IME on` and `IME off` key entries to Windows
...
Note that these key codes are same as Kana and EisuToggle keys in macOS, respectively.
See also: https://docs.microsoft.com/en-US/windows-hardware/design/component-guidelines/keyboard-japan-ime#hid-usage-ps2-scan-code-and-virtual-key-code-for-imeon-key--imeoff-key
2021-06-27 17:05:26 +00:00
Tomoya Tanjo
14b5cebb62
Fix keycode for `Kana` in Windows key mapping
2021-06-27 17:00:42 +00:00
Povilas Kanapickas
de89c9d45e
Merge pull request #1113 from HwiNyeonKim/master
...
Missed Korean translation part edited
2021-06-23 17:20:44 +03:00
HwiNyeon Kim
00cfe0ba6d
Missed Korean translation part edited
...
Some parts that still written as "Synergy" in Korean installation process edited to "Barrier."
2021-06-23 16:26:03 +03:00
gloomy-ghost
63d60a14f8
update zh-CN translations
2021-06-23 16:22:42 +03:00
Jose Riha
9a0bbbaaec
Update Slovak translation
2021-06-21 21:28:32 +03:00
Povilas Kanapickas
649fdfe042
Merge pull request #1156 from botovq/client_ciphers
...
Remove #if defined(LIBRESSL_VERSION_NUMBER) path
2021-06-13 18:43:37 +03:00
Chih-Hsuan Yen
cad92e89d0
Map more X11 clipboard MIME types to corresponding converters
...
The following logs are extracted from pasting texts to Firefox's address
bar and a Google Doc page in Firefox, respectively.
[2021-05-16T00:03:14] DEBUG1: request for clipboard 342, target text/plain;charset=utf-8 (600) by 0x03000044 (property=GDK_SELECTION (511))
[2021-05-16T00:03:22] DEBUG1: request for clipboard 342, target application/x-moz-nativehtml (603) by 0x03000044 (property=GDK_SELECTION (511))
Inspired by https://github.com/debauchee/barrier/pull/461 . Should fix
pasting unicode on X11 https://github.com/debauchee/barrier/issues/344 .
2021-05-16 00:27:57 +08:00
Theo Buehler
a29a93f0c8
Remove #if defined(LIBRESSL_VERSION_NUMBER) path
...
The SSL_get_client_ciphers API has been available since LibreSSL 2.9.1
and is thus present in all supported versions (3.2.x and 3.3.x). In
the upcoming LibreSSL 3.4.x release the SSL_CIPHER struct will become
opaque hence the build will break.
2021-05-06 20:57:15 +02:00
Povilas Kanapickas
12024b9a5d
Merge pull request #1031 from albertony/keyboard_ui
...
Enable use of keyboard to modify screens
2021-01-25 22:52:18 +02:00
albertony
4ee6a54d41
Enable use of keyboard to modify screens
2021-01-25 21:32:19 +01:00
Povilas Kanapickas
8202fe1fc7
Merge pull request #986 from albertony/rc_version_info
...
Add version info to windows main exe resource
2021-01-25 22:11:34 +02:00
cjaone
5de519d89b
100% German translation
2021-01-22 20:47:47 +01:00
albertony
31ce5cbdf8
Add version info to windows main exe resource
2021-01-22 08:29:01 +01:00
Eike
cf231aef03
Corrected spelling in gui_de.ts
2021-01-11 14:20:42 +01:00
Povilas Kanapickas
4d00a1304d
gui: Update compiled translation resources
2021-01-11 00:46:38 +02:00
Povilas Kanapickas
3f268a5099
gui: Make langbuild script executable
2021-01-11 00:46:18 +02:00
maboroshin
a2753a76ce
translation: ja-JP Barrier's Resources
2021-01-11 00:44:44 +02:00
maboroshin
e7d5f25fea
translation: ja-JP Untranslated part
2021-01-11 00:44:12 +02:00
Tobias Kellner
297de775a3
gui: Add autoStart setting
2021-01-11 00:13:34 +02:00
Felix Schmidt
0c86f1fbf9
lib: Add missing Sun keyboard keys
2021-01-10 22:13:43 +02:00
Dustin Lieu
adc49fa066
gui: Fix invalid config being written for hotkeys with multiple actions
2021-01-10 16:38:25 +02:00
Dustin Lieu
a48f183ee1
gui: Added special hotkey config rules for comma and semicolon
2021-01-10 15:40:15 +02:00
Povilas Kanapickas
def2ef2a9f
gui/test: Add tests for Hotkey serialization via QTextStream
2021-01-10 15:28:09 +02:00
Povilas Kanapickas
7befd121d4
gui/test: Remove testing of different QSettings formats
...
QSettings guarantees are provided regardless of the format and until we
use a custom format it does not make sense to verify guarantees provided
by Qt.
2021-01-10 15:28:08 +02:00
Povilas Kanapickas
141f6de2c4
gui/test: Extract createHotkey()
2021-01-10 15:28:07 +02:00
Povilas Kanapickas
a004cd8eba
gui/test: Put createAction() to anonymous namespace
2021-01-10 15:28:06 +02:00
Povilas Kanapickas
0259703cb2
gui: Use range-based for loop instead of foreach macro
2021-01-10 14:50:29 +02:00
Povilas Kanapickas
36fa9eaa0e
lib: Remove unnecessary use of std::endl
...
std::endl is "\n" followed by a flush. We only need flushing in certain
circumstances.
2021-01-10 14:28:42 +02:00
Povilas Kanapickas
a8a2b7c29a
gui: Remove ScreenList typedef
...
This typedef just introduces an additional layer of indirection to
understand code.
2021-01-10 14:13:45 +02:00
Povilas Kanapickas
384dbffce4
gui: Remove HotkeyList typedef
...
This typedef just introduces an additional layer of indirection to
understand code.
2021-01-10 14:13:44 +02:00
Povilas Kanapickas
ac60e620ba
gui: Remove ActionList typedef
...
This typedef just introduces an additional layer of indirection to
understand code.
2021-01-10 14:13:43 +02:00
Povilas Kanapickas
fb067d4001
gui/test: Add tests for Hotkey serialization to QSettings
2021-01-10 13:50:33 +02:00
Povilas Kanapickas
68cfb4e585
gui: Don't use friends to limit access to Action
2021-01-10 13:50:33 +02:00
Povilas Kanapickas
0579101272
gui: Don't use friends to limit access to Hotkey
2021-01-10 13:50:33 +02:00
Povilas Kanapickas
a691b31b8e
gui: Make access to hotkey actions explicit
2021-01-10 13:50:33 +02:00
Povilas Kanapickas
016393fb67
gui: Remove unnecessary accessor to private member in Hotkey
2021-01-10 13:50:33 +02:00
Povilas Kanapickas
e7da893f5a
gui/test: Extract temporary file creation to a separate file
2021-01-10 13:50:33 +02:00
Povilas Kanapickas
7f76d3cdcc
gui/tests: Use common per-platform libs variable for dependencies
2021-01-10 13:50:14 +02:00
Povilas Kanapickas
88c0c030f8
gui: Add tests for KeySequence serialization
2021-01-07 23:43:54 +02:00
Povilas Kanapickas
1c434df87a
gui: Remove unnecessary accessor to private member in KeySequence
2021-01-07 23:43:53 +02:00
Povilas Kanapickas
3f387bdad0
gui: Fix incorrect parameter order in KeySequence::appendKey()
2021-01-07 23:43:52 +02:00
Povilas Kanapickas
acc54de922
src: Extract test CMake setup to separate file
2021-01-07 23:43:51 +02:00
Povilas Kanapickas
01b97d0c2a
gui: Explicitly set the lists of source files
2021-01-07 23:43:50 +02:00
Povilas Kanapickas
1d5fcfa3af
gui: Remove qmake project
2021-01-07 23:43:49 +02:00
Povilas Kanapickas
6b317359ba
gui: List all source files explicitly for the lupdate tool
...
This will allow us to remove the last dependency on gui.pro
2021-01-07 23:43:48 +02:00
Peter Hutterer
d5799f37d3
CMakeList: fix a tab vs spaces indentation issue
...
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-01-03 22:49:45 +02:00
Eugene Golushkov
09e1dbdf84
platform: Fixed processing of non-ASCII symbols
...
The non-ASCII symbols missing in CP_THREAD_ACP but present in current KB
layout were processed incorrectly. Do not rely on ANSI => UTF16
conversion, obtain UTF16 directly from KB layout driver. BTW, ToAscii is
implemented via ToUnicode + RtlUnicodeToMultiByteN, so this is really
optimization.
2020-12-30 13:00:22 +02:00
albertony
402801e0a6
Use ansi codepage for internal multibyte strings on windows ( fixes #976 , fixes #974 , fixes #444 )
2020-12-28 21:17:40 +01:00
albertony
36d9efbc64
Increased loglevel of central drag drop related messages
2020-12-10 01:11:49 +01:00
albertony
b125cf3da7
Improve drag&drop stability on windows
2020-12-10 00:08:49 +01:00
albertony
357e0ccc7e
Configurable drop directory
2020-12-10 00:08:42 +01:00
Povilas Kanapickas
e66832c1d7
Merge pull request #978 from albertony/rc_version_info
...
Add version info resource to windows exe
2020-12-10 00:05:58 +02:00
Povilas Kanapickas
bbea197600
Merge pull request #973 from albertony/obsolete_service_help
...
Cleanup obsolete options in help text
2020-12-10 00:00:44 +02:00
Povilas Kanapickas
2da6cb3a51
Merge pull request #969 from albertony/profile_dir
...
Improvements to custom profile dir option
2020-12-09 23:55:56 +02:00
Povilas Kanapickas
ce31584a6b
Merge pull request #980 from whot/wip/strip-trailing-whitespace
...
Remove trailing whitespaces
2020-12-09 23:54:44 +02:00
Povilas Kanapickas
829ff7975b
Merge pull request #981 from whot/wip/simplify-ifdefs
...
Remove some #defines that had no useful effect
2020-12-09 23:52:47 +02:00
albertony
bc5c4bf344
langbuild
2020-12-09 22:40:10 +01:00
albertony
390555c53d
Fix file extension filter in config save dialog ( fixes #375 )
2020-12-09 21:46:56 +01:00
albertony
366342e401
Add resource with icon and version info to windows deamon exe
2020-12-09 14:14:18 +01:00
albertony
aea488167a
Cleanup windows client and server exe resource build
2020-12-09 14:14:18 +01:00
albertony
5fdb750922
Add version info to windows client and server exe resources
2020-12-09 13:45:32 +01:00
Peter Hutterer
1474f04f53
Remove an unreachable preprocessor directive
...
cmake sets HAVE_DPMS_PROTOTYPES unconditionally to 1 if we have the dpms
headers. So code inside HAVE_X11_EXTENSIONS_DPMS_H never needs to check for
it.
And since there's only one place that cared for this, we can remove the define
in cmake as well.
2020-12-09 14:39:13 +10:00
Peter Hutterer
f3eb89121d
Move the XTest check to cmake
...
Where the ifdef was checked, the alternative was a compiler error. We can
shortcut that process and just fail in cmake where the header is not found.
2020-12-09 14:39:09 +10:00
Peter Hutterer
38390f9b88
Undef X_DISPLAY_MISSING
...
As of f815f9840d
several years ago nothing sets
this #define anywhere anymore.
2020-12-09 14:37:10 +10:00
Peter Hutterer
0dbedd31dc
Remove trailing whitespaces
...
Many tools strip trailing whitespaces by default, so after editing a file with
whitespace errors we end up with a bunch of unrelated hunks that need to be
reverted locally.
This could be fixed by configuring each tool to not do this (at least for the
barrier repo), or, simpler, we just sed the problem away and make barrier
whitespace-compliant.
sed commands run:
sed -i 's/[ \t]\+$//' **/*.(cpp|h) **/*CMakeLists.txt
Verified with git diff --ignore-space-change, this shows the empty diff.
2020-12-09 14:02:28 +10:00