Commit Graph

3893 Commits

Author SHA1 Message Date
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
8bc280e0dd gui: Add configuration for requiring client certificates 2021-11-01 04:50:09 +02:00
Povilas Kanapickas
ed32e2e326 gui: Expand checkboxes in settings dialog through both grid columns 2021-11-01 04:50:08 +02:00
Povilas Kanapickas
4d73ed9fdd lib/net: Present client certificate when connecting to server 2021-11-01 04:50:07 +02:00
Povilas Kanapickas
92ba6f61e6 gui: Move SSL fingerprint labels out of server frame
SSL fingerprints will be used to auth both server and client.
2021-11-01 04:50:06 +02:00
Povilas Kanapickas
c0ce893711 lib/net: Load client SSL certificates when connecting 2021-11-01 04:50:05 +02:00
Povilas Kanapickas
cb0480fe84 cmake: Silence tr1 deprecation warning on MSVC 2021-11-01 04:48:56 +02:00
Povilas Kanapickas
f9c051fc82 Use cmake --build to build on Windows 2021-11-01 04:48:56 +02:00
Povilas Kanapickas
6d7eca42b7
Merge pull request #1345 from p12tic/filesystem-cleanup
Filesystem operations cleanup
2021-11-01 04:47:16 +02:00
Povilas Kanapickas
0f3afed664 gui: Switch SSL certificate handler to barrier::fs paths 2021-11-01 04:29:54 +02:00
Povilas Kanapickas
b76b332f2f lib/common: Move SSL certificate path definition to common location 2021-11-01 04:29:53 +02:00
Povilas Kanapickas
d033ffa3d8 lib/net: Use fs::is_regular_file() to check for path existence 2021-11-01 04:29:52 +02:00
Povilas Kanapickas
220f9e8274 lib/common: Remove unused file 2021-11-01 04:29:51 +02:00
Povilas Kanapickas
a2ca7e29f5 lib/common: Switch data directories to fs::path 2021-11-01 04:29:50 +02:00
Povilas Kanapickas
298980fa86 lib/common: Move DataDirectories to barrier namespace 2021-11-01 04:29:49 +02:00
Povilas Kanapickas
677612d342 lib/common: Replace PathUtilities::basename with barrier::fs equivalent 2021-11-01 04:29:48 +02:00
Povilas Kanapickas
e7d936b5d7 lib/common: Replace PathUtilities::concat with barrier::fs equivalent 2021-11-01 04:29:47 +02:00
Povilas Kanapickas
bcafdc6783 src/lib: Switch to ghc::filesystem in path utilities 2021-11-01 04:29:46 +02:00
Povilas Kanapickas
a987605513 lib/io: Rename fstream.h to filesystem.h 2021-11-01 04:29:45 +02:00
Povilas Kanapickas
801a5a7084 ext: Add https://github.com/gulrak/filesystem for filesystem operations 2021-11-01 04:29:44 +02:00
Povilas Kanapickas
22ac14be8c
Merge pull request #1343 from p12tic/sha256-fingerprints
Add support for SHA256 fingerprints
2021-11-01 04:21:17 +02:00
Povilas Kanapickas
a428b61c7d gui: Add support for SHA256 fingerprints
For the time being both SHA1 and SHA256 fingerprints will be shown in
the UI. This allows users to verify new connections between old and new
versions of Barrier. After the initial verification we use SHA256
fingerprints.

The issue has been reported by Matthias Gerstner <mgerstner@suse.de>.
2021-11-01 04:07:09 +02:00
Povilas Kanapickas
c7e6fc6c7e gui: Set the size of the window to the size of the contents 2021-11-01 04:07:09 +02:00
Povilas Kanapickas
b7757fbd68 lib/net: Implement a way to generate fingerprint randomart
The code has been copied from OpenSSH.
2021-11-01 04:07:09 +02:00
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
bf667a429c
Merge pull request #1342 from p12tic/enable-encryption-by-default
Enable encryption by default
2021-11-01 03:12:32 +02:00
Povilas Kanapickas
dba7b72195
Merge pull request #1341 from p12tic/azure-pipelines-fix-local-build
azure-pipelines: Use Invoke-WebRequest to download files
2021-11-01 03:06:48 +02:00
Povilas Kanapickas
bfa8964305 Enable encryption by default 2021-11-01 03:00:09 +02:00