Commit graph

2162 commits

Author SHA1 Message Date
Kyle Bloom
ee19a40bef
Catch standard exceptions on unexpected exit (#7282)
* Catch standard exceptions on unexpected exit

* Update changelog
2023-09-27 14:01:30 +01:00
Serhii Hadzhilov
7d803071ca
Change session ID info log message to DEBUG2 (#7284)
* Change error to debug2 and add additional info

* Update ChangeLog

* Improved wording in ChangeLog for 1.14.7

* Apply markdown formatting to ChangeLog

* Fixed merge gone wrong

* Fixed further merge mistake

* Fixed order of new ChangeLog lines

---------

Co-authored-by: Nick Bolton <nick@symless.com>
2023-09-26 12:49:18 +01:00
Serhii Hadzhilov
cfe20bea18
Change error priority based on param (#7279) 2023-08-17 16:53:26 +03:00
Serhii Hadzhilov
944abfaa1a
Change warning to fatal error (#7278)
Co-authored-by: Serhii Hadzhilov <serhii-external@symless.com>
2023-08-16 19:46:27 +04:00
Serhii Hadzhilov
1a810ccdd7
Change core start errors to fatal (#7277)
* Change core start error to FATAL

* Update ChangeLog

---------

Co-authored-by: Serhii Hadzhilov <serhii-external@symless.com>
2023-08-16 09:20:24 +01:00
Nick Bolton
2ac3f7f5a3
Remove rogue space (#7271) 2023-08-08 13:53:31 +01:00
Kyle Bloom
3d621c6ee2
Build unified core or separate server and client (#7274)
* Only build unified core when specified

* Update changelog
2023-08-07 09:45:27 +01:00
Nick Bolton
947efd5e58
Made log lines consistent (#7270)
* Made log lines consistent

* Change log level for process list

* Only show advanced proc info at DEBUG2

* Fixed some more log lines

* Update AppUtilWindows.cpp
2023-07-28 09:45:27 +01:00
Nick Bolton
2fce545c17
Reword file drag drop error to debug message (#7269)
* Reword error message

* Fix indentation

* Fix code style

* Update ChangeLog
2023-07-27 10:36:44 +01:00
Serhii Hadzhilov
5e8e874e03
Remove extra key press traces for Linux (#7265)
* Remove extra key press traces for Linux

* Update ChangeLog
2023-06-02 09:35:37 +01:00
Serhii Hadzhilov
8587dda4ad
Add ability to bind synergy client to network interface (#7254)
* Switch client help to use dynamic buffer

* Add the new param into client help

* Parse the new param as a generic param

* Add additional member to store server address

* Bind client socket to network interface

* Update Changelog

* Fix code smell
2023-03-29 09:39:49 +01:00
Serhii Hadzhilov
b743e664a0
Add manifest for synergy-core to fix problem with dpi on windows (#7240) 2022-12-13 17:58:06 +02:00
Sergei Trofimovich
ab8a7b5ed4
add missing <cstdint> includes for SIZE_MAX (#7237)
Without the change the build on upcoming `gcc-13` ails as:

    src/lib/base/Log.cpp: In member function 'void Log::print(const char*, int, const char*, ...)':
    src/lib/base/Log.cpp:128:23:
      error: 'SIZE_MAX' was not declared in this scope
      128 |     if ((strnlen(fmt, SIZE_MAX) > 2) && (fmt[0] == '%' && fmt[1] == 'z')) {
          |                       ^~~~~~~~
    src/lib/base/Log.cpp:30:1:
      note: 'SIZE_MAX' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
       29 | #include <ctime>
      +++ |+#include <cstdint>
       30 |

gcc-13 cleaned it's header dependencies and that exposes these failures.
2022-12-08 11:16:44 +02:00
Serhii Hadzhilov
aff2b717fd
Single app for server and client (#7239)
* Remove unused files

* Add synergy-core

* Update ChangeLog

* Fix compilation

* Fix code smell

* Add ability to run synergy-core using synergyd for windows
2022-11-29 21:00:37 +02:00
Serhii Hadzhilov
88fdd26350
Use default value for InitiateConnectionFromServer option during switching between scopes (#7232) 2022-10-12 19:32:06 +03:00
Jonathan Anderson
b2b887cf43
Fix crash due to out-of-order frees. (#7208)
* Fix crash due to out-of-order frees.

Don't free the kdbDescr until we've freed the names it contains. This
fixes a SIGBUS crash on FreeBSD (and maybe other platforms too?) when
pressing special keys (e.g., the Windows key) on a client.

* Update ChangeLog

Co-authored-by: Serhii Hadzhilov <serhii-external@symless.com>
2022-10-11 17:52:32 +03:00
Serhii Hadzhilov
7d4a368864
Fix issue with reconnection when server initiate TLS connection. (#7230)
* Restart socket when unknown client connection fails

* Send connected event from client side

Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
2022-10-07 14:16:02 +03:00
Serhii Hadzhilov
876a110969
Update visibility for mode checkbox during settings loading. (#7228) 2022-10-04 13:27:42 +03:00
Serhii Hadzhilov
0f3e128e17
Add ability to reconnect from server side (#7226)
* Add ability to reconnect from server side

* Fix code smell

Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
2022-10-03 17:08:24 +03:00
Serhii Hadzhilov
c06a20d093
Initiate TLS connection from server (#7225)
* Add SecureClientSocket

* Add SecureServerSocket

* SecureServerSocket code cleanup

* Refactoring for SecureClientSocket

* Change base class for SecureClientSocket to InverseClientSocket

* Change base class for SecureServerSocket to InverseServerSocket

* Small refactoring

* Fix Linux compilation

* Fix code smells

* Refactoring

* Update ChangeLog

* Fix code smells

Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
2022-09-29 11:35:27 +03:00
Serhii Hadzhilov
c37b0d2fcf
Add ability to initiate connection from server (#7222)
* Add a new hidden readonly option "initiateConnectionFromServer"

* Add option "clientHostMode"

* Add host mode to the client GUI

* Hide main window controls for the client host mode

* Store client address into the server config file

* Add client mode the server

* Pass option --host into the client

* Add --host parameter into the synergyc

* Add InverseSocketFactory

* Add InverseClientSocket

* Add InverseServerSocket

* Add AutoArchSocket

* Add listener on the client side

* Add connection from the server side

* Fix code smells

* Additional code smells

* Requested changes

Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
2022-09-22 11:12:13 +03:00
Serhii Hadzhilov
452c631d6e
Release v1.14.5 (#7219)
* Update Version.cmake

* Add TLS to Synergy (Lite edition) (#7202)

* Add TLS to synergy light

* Requested changes

* License registration for Business edition (#7203)

* License registration for business

* Rename register to registry

* Add email into the request

* Add decoded serial key into the request

* Revert "Add decoded serial key into the request"

This reverts commit 0e18c8941664e86ae2264bbef072df68cab07751.

* Revert "Add email into the request"

This reverts commit 8dff01bc242769008897947d66187cb726fb34bf.

* Change field guid_generated to guid_type

* Update ChangeLog

* Update ChangeLog

* Fix build issue for ubuntu16 and ubuntu18 (#7204)

* Fix issue with settings

* Custom about screen for Elite Backers (#7211)

* Hide irrelevant information from the About screen for B2B

* Fix size for Windows and Linux

* Requested changes

* Fix Enterprise

* Revert "Fix Enterprise"

This reverts commit befd8d2ce36b6ca903250bada62293491f0b56a2.

* Revert "Requested changes"

This reverts commit 5f728e00aaeb4bed3e3c006539d380f74d3aff76.

* Change features based on edition (#7212)

* Change features based on edition

* Fix enterprise build

* Update window titles and about screen (#7214)

* Fix About screen for Business edition

* Change dialog title

* Refactored upgrade prompt for TLS and hotkeys (#7215)

* Prompt Basic users to upgrade to Pro to access TLS encryption

* Fixed Enterprise build

* Fix code smells

* Fix sonar bug
2022-09-13 18:31:45 +03:00
Serhii Hadzhilov
e0023863db
Use vertical scroll on the about screen (#7199)
* Replace scroll area with QTextBrowser

* Update about text

* Fix version number on macOS
2022-07-05 14:54:41 +03:00
Serhii Hadzhilov
a48c34932b
Move API URL to config file (#7198) 2022-07-04 12:51:05 +03:00
Serhii Hadzhilov
268b0f660f
Special contributor mentions on the about screen (#7197)
* Remove obsolete data

* Add section "Key contributors"

* Add "Elite Backers" label

* Add Elite Backers

* Remove borders for Elite backers section

* Add link "Become an Elite Backer"

* Become an Elite Backer as a separate label

* Add link to the credits page

* Fix for macOS

* Fix fonts and spaces for Windows

* Fix window size for Linux

* Loading credits using API

* Update ChangeLog

* Fix code smells

* Requested changes

* Change URL

* Update AboutDialogBase.ui

Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
2022-06-30 14:48:26 +03:00
Serhii Hadzhilov
bcfeb251a9
Support for maintenance licenses in China (#7193)
* Adds China maintenance licenses

* Update ChangeLog

* Requested changes
2022-06-23 15:54:44 +03:00
Alvaro Soto
31f08604ce
Fix typo in X Keyboard log warning on Linux (#7191) 2022-06-22 15:45:28 +03:00
Serhii Hadzhilov
8a509f4ba9
SYNERGY1-1555 maintenance licences (#7190)
* SYNERGY1-1555 Remove unused files

* SYNERGY1-1555 Remove unused function isPermanent

* SYNERGY1-1555 Update SerialKeyType with maintenance type

* SYENRGY1-1555 Add method isMaintenance into SerialKey

* SYNERGY1-1555 Check maintenance licenses

* SYNERGY1-1555 Replace obsolete functions

* SYNERGY1-1555 Fix Linux builds

* Update ChangeLog

* SYNERGY1-1555 Requested changes
2022-06-15 13:55:41 +03:00
Serhii Hadzhilov
de48bb20b7
SYNERGY1-1545 Accept business licenses in basic/pro builds (#7188)
* SYNERGY1-1545 Accept business licenses in basic/pro builds

* Update ChangeLog
2022-06-08 21:46:22 +03:00
Serhii Hadzhilov
ae541c170f
SYNERGY1-1544 Issue with TLS options when user switches to system profile (#7185)
* SYNERGY1-1544 Issue with TLS options when user switches to system profile

* Update ChangeLog

* Update ChangeLog
2022-06-07 14:44:49 +03:00
Serhii Hadzhilov
660853d1ac
SYNERGY1-1511 Refactoring for v3 licenses (#7183)
* SYNERGY1-1511 Refactor SerialKey constructor

* SYNERGY1-1511 Refactor SerialKey::parse

* SYNERGY1-1511 Remove unused includes

* SYNERGY1-1511 Remove key generation

* SYNERGY1-1511 Remove "using namespace std;"

* SYNERGY1-1511 Add struct SerialKeyData

* SYNERGY1-1511 Replace member with the new DTO

* SYNERGY1-1511 Rename members

* SYNERGY1-1511 Add a new class SerialKeyParser

* SYNERGY1-1511 Use SerialKeyParser

* Add SerialKeyParserV3

* Add setters and remove unused fields

* Fix return type

* Add comments

* Fix compilation

* Fix code smels

* Update ChangeLog
2022-06-01 18:17:02 +03:00
Serhii Hadzhilov
31c6e99258
SYNERGY1-963 Remove TLS unused options from the GUI on Synergy Client (#7182)
* SYNERGY1-963 Remove TLS unused options from the GUI on Synergy Client

* SYNERGY1-983 Update ChangeLog.txt
2022-06-01 15:36:44 +03:00
Serhii Hadzhilov
a08149aae7
SYNERGY1-1536 Disable drag and drop by default (#7179)
* SYNERGY1-1536 Disable drag and drop by default

* Update ChangeLog
2022-05-24 15:47:26 +01:00
Serhii Hadzhilov
c92ac1a71e
SYNERGY1-1497 Fix memory leak on macOS (#7178)
* SYNERGY1-1497 Fix memory leak on macOS

* Update ChangeLog

* Fix Fedora build
2022-05-24 12:36:06 +01:00
Serhii Hadzhilov
95ee948f26
SYNERGY1-1497 Memory leaks in copy/paste and drag and drop functionality (#7175)
* SYNERGY1-1497 Fix memory leak in copy/paste functionality

* SYNERGY1-1497 Memory leaks with function CFStringRefToUTF8String

* SYNERGY1-1497 Fix memory leak in Server::sendDragInfo

* SYNERGY1-1497 Fix memory leak in Server::sendFileToClient

* SYNERGY1-1497 Fix memory leak in Server::sendDragInfoThread

* SYNERGY1-1497 Fix code smells

* SYNERGY1-1497 Fix builds

* SYNERGY1-1497 Fix additional code smells
2022-05-19 18:29:11 +03:00
Serhii Hadzhilov
5b6f5df6ea
SYNERGY1-1497 memory leaks in synergyc on mac os (#7170)
* SYNERGY1-1497 Fix memory leak in screen saver functionality

* SYNERGY1-1497 Fix memory leak in ArchNetworkBSD::nameToAddr

* SYNERGY1-1497 Fix memory leak in TLS for synergyc

* SYNERGY1-1497 Fix code smells

* Update ChangeLog

* SYNERGY1-1497 Fix meory leak in ArchNetworkWinsock::nameToAddr

* Update ChangeLog as it was requested
2022-05-16 19:00:16 +03:00
Nick Bolton
9f8e7a17f5
Fixed account URL 2022-05-14 14:23:53 +01:00
Nick Bolton
afca72f4a6
Fixed contact URL 2022-05-14 14:22:35 +01:00
Nick Bolton
96ffc62de6
Fixed help URL 2022-05-14 14:21:17 +01:00
Nick Bolton
a952c53913
Fixed purchase URL 2022-05-14 14:16:05 +01:00
Nick Bolton
cd7018f2eb
More sensible version URL 2022-05-13 18:42:10 +01:00
Serhii Hadzhilov
322e583917
SYNERGY-1-1494 Replace notifications with logs (#7166)
* SYNERGY-1-1494 Replace notifications with logs

* Update ChangeLog
2022-05-11 12:22:17 +03:00
Serhii Hadzhilov
4d13d52710
SYNERGY1-1497 Fix memory leaks (#7164)
* SYNERGY1-1497 Fix problem with memory leak

* SYNERGY1-1497 Fix memory leak for TLS

* Update ChangeLog

* SYNERGY-1-1497 Update ChangeLog and Copyright info
2022-05-06 21:55:06 +03:00
Serhii Hadzhilov
7bc2d76e1b
SYNERGY1-1478 Fix compilation issues (#7163)
* SYNERGY1-1478 Fix compilation issues

* Update ChangeLog
2022-05-04 12:09:23 +03:00
Pedro Navarro
21b0f233c7
Address issues with modifiers and dead keys (#7149)
* After getting a dead key from ToUnicodeEx, add an additional VK_SPACE
to the keyboard state so we reset the dead key flag and subsequent
calls with modifiers, like shift, return the right result (-1) instead
of 1.

This happened because without reseting the dead key status
the new one was attempted to be composed with the old one, which failed
and the end result was a single unicode codepoint not marked as a dead
key.

This opens the door to potentially use the returned unicode from the
second call as the key character instead of maintaining the
getDeadKey function.

* Update ChangeLog

Co-authored-by: Pedro Navarro <pnavarro@netflix.com>
Co-authored-by: Serhii Hadzhilov <serhii-external@symless.com>
Co-authored-by: Serhii Hadzhilov <71632867+SerhiiGadzhilov@users.noreply.github.com>
2022-05-02 21:13:15 +03:00
Pedro Navarro
3784e42245
Pasting text copied from Linux results in doubled lines (#7144)
text/plain;charset=utf-8 clipboard format.

This results in double lines when pasting text copied from Linux to
Windows because the Windows client converts line endings and expects
only LF.

Co-authored-by: Pedro Navarro <pnavarro@netflix.com>
2022-04-28 17:59:58 +03:00
Michał Górny
35d7d2754d
Support building against system pugixml (#7119)
Add a SYSTEM_PUGIXML CMake option that can be used to build the package
against system-provided version of pugixml instead of the vendored one.
Multiple Linux distributions have a policy against bundling libraries,
and in this particular case there doesn't seem to be any justification
to using the bundled library version.

Fixes #7118
2022-04-27 14:33:58 +03:00
Serhii Hadzhilov
8be2e89c81
fix: SYNERGY3-203 Synergy 1 business (#7157)
* SYNERGY3-203 Add link to helpdesk

* SYNERGY3-203 Add a new cmake option

* SYNERGY3-203 Validate business key

* SYNERGY3-203 Check license during start

* SYNERGY3-203 Update windows title

* SYNERGY3-203 Unify license errors

* SYNERGY3-203 Fix code smell

* SYNERGY3-203 Update Azure scripts

* SYNERGY3-203 Update GitHub workflows

* SYNERGY3-203 Add UT

* SYNERGY3-203 Add UT
2022-04-26 15:11:09 +03:00
Serhii Hadzhilov
d3d7c36f58
SYNERGY3-17 Stop on login screen (#7143)
* SYNERGY3-17 Stop on login screen

* SYNERGY3-17 Fix code smells

* SYNERGY3-17 Update ChangeLog
2022-02-11 11:28:39 +02:00
Serhii Hadzhilov
bf102d4601
SYNERGY-1454 Scroll direction refactoring (#7141)
* SYNERGY-1454 MacOS part

* SYNERGY-1454 Windows part

* SYNERGY-1454 Linux part

* SYNERGY-1454 Fix comments

* SYNERGY-1454 Move common code to parent class. MacOS

* SYNERGY-1454 Move common code to parent class. Linux

* SYNERGY-1454 Move common code to parent class. Windows

* SYNERGY-1454 ChangeLog and code smell fix
2022-01-27 13:23:36 +02:00