Commit graph

2819 commits

Author SHA1 Message Date
Nick Bolton
13ed447a93 chore: Move daemon constants to constants file 2025-02-28 17:58:16 +00:00
Nick Bolton
74812fbf75 chore: Remove dead code, function isServerCommandLine from daemon 2025-02-28 17:58:16 +00:00
Nick Bolton
bdf5a0f352 chore: Clearer naming for static daemon loop functions 2025-02-28 17:58:16 +00:00
Nick Bolton
b425b43801 fix: Use desktop process mode for core process tests rather than random value 2025-02-28 17:58:16 +00:00
Nick Bolton
f0c60f5ca9 chore: Improve logging for pipe readers in Windows watchdog 2025-02-28 17:58:16 +00:00
Nick Bolton
b2ca9bc17b chore: Remove dead code from --debug-service-wait arg 2025-02-28 17:58:16 +00:00
Nick Bolton
f46474c9f2 refactor: Use WaitForSingleObject instead of sleep for Windows process shutdown 2025-02-28 17:58:16 +00:00
Nick Bolton
a99d408be1 chore: Improve logging related to Windows daemon start/stop/install/uninstall 2025-02-28 17:58:16 +00:00
Nick Bolton
19c41e2ac5 fix: Improve Windows daemon stop speed by using non-blocking pipes and shorter sleep times 2025-02-28 17:58:16 +00:00
Nick Bolton
890fd61e6e refactor: Move ownership of Windows daemon file log outputter to Log 2025-02-28 17:58:16 +00:00
Nick Bolton
1c42552b3b refactor: Begin logging to file as soon as Windows daemon starts 2025-02-28 17:58:16 +00:00
Nick Bolton
a6956b9516 refactor: Improve Daemon uninstall exception flow 2025-02-28 17:58:16 +00:00
Nick Bolton
5a7f6bd1c0 refactor: Remove old Windows TCP IPC implementation (replaced by Qt equivalent) 2025-02-28 17:58:16 +00:00
Nick Bolton
a3b0ec28fc refactor: Improve logging message for process backoff and reset failure count when no command is set 2025-02-28 17:58:16 +00:00
Nick Bolton
fa1ab27ee9 refactor: Clear watchdog command setting to prevent persistence on daemon restart 2025-02-28 17:58:16 +00:00
Nick Bolton
e07a2efbcc refactor: Implement Windows event loop in AppUtilWindows for graceful shutdown handling 2025-02-28 17:58:16 +00:00
Nick Bolton
e967944c1e fix: Strip line endings for Windows daemon file logging
Windows file logger and `OutputDebugString` already add new lines, so remove the ones added by the Core.
2025-02-28 17:58:16 +00:00
Nick Bolton
389028ccf9 refactor: Connect socket events in ctor for daemon IPC client 2025-02-28 17:58:16 +00:00
Nick Bolton
dc6383d593 refactor: Properly disconnect and clean up previous daemon file tail on connection 2025-02-28 17:58:16 +00:00
Nick Bolton
1c7adf5add refactor: Allocate daemon app and it's thread on stack to reduce memory leak risk 2025-02-28 17:58:16 +00:00
Nick Bolton
5743db3040 feat: Apply log level on IPC connection 2025-02-28 17:58:16 +00:00
Nick Bolton
5733541b2a feat: Tail daemon log file instead of using IPC log outputter 2025-02-28 17:58:16 +00:00
Nick Bolton
5980fb741b refactor: Move daemon process stop command to new Qt IPC 2025-02-28 17:58:16 +00:00
Nick Bolton
7c672b06d8 refactor: Update IPC server to handle log level and elevate mode changes 2025-02-28 17:58:16 +00:00
Nick Bolton
53038760de refactor: Use core mode for daemon install on Windows 2025-02-28 17:58:16 +00:00
Nick Bolton
d6228416a1 refactor: Send log level to daemon over IPC instead of when sending command 2025-02-28 17:58:16 +00:00
Nick Bolton
80cc323f5a refactor: Improve logging and error handling for SendSAS function in Windows watchdog 2025-02-28 17:58:16 +00:00
Nick Bolton
90e63e2e9e refactor: Exclude current process when killing existing process from Windows daemon 2025-02-28 17:58:16 +00:00
Nick Bolton
24c57e46e2 refactor: Run legacy daemon loop in thread 2025-02-28 17:58:16 +00:00
Nick Bolton
e72faf1446 feat: Connect to daemon IPC on start request 2025-02-28 17:58:16 +00:00
Nick Bolton
c1d7474700 feat: Restart process from daemon through new Qt IPC impl 2025-02-28 17:58:16 +00:00
Nick Bolton
0d2d9f385d feat: Implement basic IPC connection between Daemon and GUI 2025-02-28 17:58:16 +00:00
Nick Bolton
c0094554b1 feat: Convert daemon to Qt app and introduce Qt local server 2025-02-28 17:58:16 +00:00
Nick Bolton
95603c82ec refactor: Improve logging and args for Windows daemon install/uninstall 2025-02-28 17:58:16 +00:00
sithlord48
8debc1ea7f chore: SettingsDialog remove set defaults from ui file 2025-02-28 16:51:33 +00:00
sithlord48
b4f703562d chore: Settings Dialog do not open with the checkbox for peer certificates having active focus 2025-02-28 16:51:33 +00:00
sithlord48
34b61cc8cd fix: #8259 track a client and server list
fixes 8259
2025-02-28 13:17:26 +00:00
Nick Bolton
0fc5368253 fix: Prevent access violation by moving events, arch, and log objects to top of stack in Windows daemon
This is how we do it in the server/client apps, so it makes sense to mirror the same pattern.
2025-02-28 12:57:15 +00:00
Nick Bolton
383b39636e chore: Remove dead code; unused outputter param on runInner functions 2025-02-28 12:57:15 +00:00
Nick Bolton
f56a3ba305 refactor: Rename param for Log::insert to make adoption clearer 2025-02-28 12:57:15 +00:00
Nick Bolton
0bca094fce chore: Explain use of new for all log outputters 2025-02-28 12:57:15 +00:00
Nick Bolton
220711c2d7 fix: Only use MS debug outputter when the process is daemonized 2025-02-28 12:57:15 +00:00
Nick Bolton
66acf9038b fix: Solve double-free by letting Log adopt FileLogOutputter in Windows daemon 2025-02-28 12:57:15 +00:00
sithlord48
aa5a704131 chore: settings dialog remove unused includes 2025-02-27 15:17:13 +00:00
sithlord48
bae494476b refactor: Settings Dialog, update security layout 2025-02-27 15:17:13 +00:00
sithlord48
3ae2de52f4 refactor: SettingsDialog set icons in ui where possible 2025-02-27 15:17:13 +00:00
sithlord48
088d69fec8 refactor: SettingsDialog, use standard object names 2025-02-27 15:17:13 +00:00
sithlord48
63744ddbd6 refactor: settingsdialog, remove autoconnect slots 2025-02-27 15:17:13 +00:00
sithlord48
2d04e0be4d refactor: SettingDialog do not connect from inside the ui file 2025-02-27 15:17:13 +00:00
sithlord48
4f2ef7174a refactor: do not stop sever on new client fingerprint, track the last print we checked and if we are chekcing it do not show a new box 2025-02-27 15:07:50 +00:00
sithlord48
1003de21b5 refactor: do not show error if the fingerprint database is not created yet 2025-02-27 15:07:50 +00:00
Nick Bolton
b3866b69b2 chore: Fix order of MainWindow ctor init list to match header 2025-02-27 15:07:50 +00:00
sithlord48
9bd7fce45c refactor: MainWindow: Update name change 2025-02-27 13:41:55 +00:00
sithlord48
f0d33ce9de chore: aboutDialog remove unused static strings 2025-02-27 13:32:24 +00:00
sithlord48
07bf6de093 chore: add icon credit to about box 2025-02-27 13:32:24 +00:00
sithlord48
e7e518d76e refactor: don't quote debug line 2025-02-26 11:52:03 +00:00
sithlord48
08be9fa33f chore: use a style for the flat buttons 2025-02-26 11:52:03 +00:00
sithlord48
72d27c70e0 refactor: gui::styles use QStringLiteral 2025-02-26 11:52:03 +00:00
sithlord48
6de1920d88 chore: remove bufferedLogView 2025-02-25 06:53:57 -08:00
sithlord48
2d3f64f662 chore: cleanup additional item missed in when removing the legacy tray icon 2025-02-25 06:53:57 -08:00
sithlord48
193c28af53 fix: settings dialog can have tls options enabled when they should not be leading to a case where tls gen fails as it not enabled fixes 7883 2025-02-25 06:34:47 -08:00
sithlord48
5b54849fd6 refactor: mainwindow simplify the mode selection UI 2025-02-25 14:18:32 +00:00
sithlord48
b7eb5c467b feat: Remove Inverse Connections Option 2025-02-25 14:18:32 +00:00
sithlord48
f9b6bcc950 refactor: mv net/InverseSockets/SslLogger => net/SslLogger 2025-02-25 14:18:32 +00:00
sithlord48
5d5e32a676 refactor: remove setupwizard 2025-02-25 13:21:39 +00:00
sithlord48
d52939a3fc fix: raise mainwindow on update check dialog
fixes #8234
2025-02-25 13:11:35 +00:00
sithlord48
6a08305338 fix: log expanded on start up and windows no resizeable 2025-02-20 22:26:21 +00:00
sithlord48
05ed47be2e fix: server resets to listing state with no clients connected 2025-02-20 21:16:48 +00:00
sithlord48
29d04ea8e0 chore: update lib/gui/constants to use QStringLiterals 2025-02-20 21:16:48 +00:00
sithlord48
ab118a3aa3 chore: remove unused style items 2025-02-20 21:16:48 +00:00
sithlord48
10e5a305bb refactor: remove redundant client / server staus labels, the status label provides this info already 2025-02-20 21:16:48 +00:00
sithlord48
e9c8965066 refactor: mainwindow move tls version to securty tooltip 2025-02-20 21:16:48 +00:00
sithlord48
53d2b3bd2e refactor: MainWindow move update info to status tray 2025-02-20 21:16:48 +00:00
sithlord48
d4cc66a9f9 refactor: move Tls Label to status bar 2025-02-20 21:16:48 +00:00
sithlord48
18cc8565f9 refactor: mainwindow use status bar for status items 2025-02-20 21:16:48 +00:00
sithlord48
caee2b149a chore: move version check log to debug, fixes #8224 2025-02-20 11:15:58 +00:00
Nick Bolton
e808eed413 refactor: Improve Windows daemon failure backoff for faster client restarts on first fail 2025-02-19 18:23:10 +00:00
Nick Bolton
16c57d7960 refactor: Improve log message related to desk switch on Windows 2025-02-19 18:23:10 +00:00
Nick Bolton
200d32db80 chore: Improve log message for leave screen warning on Windows 2025-02-19 18:23:10 +00:00
Nick Bolton
2322f312a9 refactor: Improve logging for errors when setting/getting cursor pos on Windows 2025-02-19 18:23:10 +00:00
Nick Bolton
09c157f9e1 fix: Remove --exit-pause to stop "press any key to exit..." showing when Windows daemon kills server/client 2025-02-19 18:23:10 +00:00
Nick Bolton
c9a360a144 fix: Restore active desktop name check in Windows daemon
- Use `PIPE_NOWAIT` to skip empty stderr output on process output reading from Windows daemon watchdog
- Use `CreateProcess` result to determine when to call `CloseHandle` in Windows daemon watchdog
- Trim output from active desktop process in Windows daemon watchdog
- Improve error logging in Windows daemon watchdog
2025-02-19 18:23:10 +00:00
sithlord48
48407d7f8f refactor: simplify MainWindow::checkFingerprints 2025-02-18 12:12:41 +00:00
sithlord48
83c190c385 refactor: use better name to describe for the tlsEnabled var in messages , and correct the name in virtual method 2025-02-18 12:12:41 +00:00
sithlord48
ad79ba907d refactor: Mainwindow localFingerPrintDb => localFingerprintDb 2025-02-18 12:12:41 +00:00
sithlord48
9294f2a026 refactor: use a function to get the trustedFingerprintDb 2025-02-18 12:12:41 +00:00
Nick Bolton
bfb64f0653 fix: Generate TLS certificate before generating TLS fingerprint 2025-02-17 11:55:28 -05:00
sithlord48
6f66fe767f fix: inabliity to resize when first opening if log open on startup 2025-02-17 11:55:28 -05:00
sithlord48
63846292ff refactor: update tooltips for security icon
add check when appTls State Changes
2025-02-17 11:55:28 -05:00
sithlord48
2f8b78e2a6 refactor: new private MainWindow method localhostFingerprintDb 2025-02-17 11:55:28 -05:00
sithlord48
8d0491f1ad refactor: narrow use of stdString in mainwindow 2025-02-17 11:55:28 -05:00
sithlord48
79dc858446 chore: modify client trying to connect dialog to inform user the new client needs to be put in the layout when both tls is enabled and peer key checking is enabled , otherwise show the old dialog asking to allow the client to connect 2025-02-17 16:26:29 +00:00
sithlord48
0667f5de73 refactor: allow the fingerprint dialog to show local keys and remote if needed 2025-02-17 16:26:29 +00:00
sithlord48
e51956e2c7 feat: Client ID verification
based on barrier: 229abab
  Fixes: CVE-2021-42072, CVE-2021-42073
2025-02-17 16:26:29 +00:00
sithlord48
60c7e512f2 refactor: use enum for secure sockets
based on barrier: 57769cf
2025-02-17 16:26:29 +00:00
sithlord48
e996471e37 refactor: use enum for connections security level
based on barrier: 5c7d719
2025-02-17 16:26:29 +00:00
sithlord48
638349b48a feat: add config for client cert required
based on barrier: 8bc280e0
2025-02-17 16:26:29 +00:00
sithlord48
3e7b14cbd4 fix: Attempt to load SSL certs when connecting
based on barrier: c0ce8937, 4d73ed9f
2025-02-17 16:26:29 +00:00
Nick Bolton
6ff5d2d5d3 fix: Update local fingerprint label after fingerprint regeneration 2025-02-14 09:42:47 -05:00
sithlord48
67e2f56724 chore: update daemon description and icon 2025-02-14 12:44:29 +00:00
sithlord48
5288546231 refactor: use const for tlsDb expected size 2025-02-14 12:44:29 +00:00
sithlord48
d8e311fe59 fix: only regenerate the tls certificate if tls is enabled and we do not already have a certificate 2025-02-14 12:44:29 +00:00
sithlord48
500067a778 fix: generate cert if tls is on and its not found
fixes #8191
  fixes #8192
2025-02-14 12:44:29 +00:00
sithlord48
3c12915fd3 fix: Security icons showing with fresh install
fixes #8170
2025-02-14 12:20:48 +00:00
sithlord48
eb19547b45 refactor: mainwindow force regen of local prints if tls is enabled with a sha256 key 2025-02-12 13:41:45 +00:00
sithlord48
65eed64f04 refactor: new fingerprintdialog 2025-02-12 13:41:45 +00:00
sithlord48
fbaa0a8433 feat: use sha256
based-on: a428b61c7d
 based-on: b7757fbd68
 based-on: a238b27879
2025-02-12 13:41:45 +00:00
sithlord48
743c3feef3 refactor: use FingerprintData for fingerprints
based-on: 7cced74119
2025-02-12 13:41:45 +00:00
sithlord48
d0d5182425 refactor: use new Fingerprint database
based-on: 50534ecb43
   based-on: be8ba0d132
2025-02-12 13:41:45 +00:00
sithlord48
298b1047c4 refactor: add ssl consts into common/constansts 2025-02-12 13:41:45 +00:00
sithlord48
e257501072 chore: add Fingerprint Db Tests 2025-02-12 13:41:45 +00:00
Vamshi Maskuri
aaa64e986e feat!: Add support for FingerPrintDatabase 2025-02-12 13:41:45 +00:00
sithlord48
7d79a4d729 chore: TlsCertificate, remove unused items 2025-02-12 13:41:45 +00:00
sithlord48
2058519e57 refactor: generate Certs using secureUtils method 2025-02-12 13:41:45 +00:00
sithlord48
5a71d63923 refactor: secureutils add pemFileCertFingerprint 2025-02-12 13:41:45 +00:00
sithlord48
fb32f141cc refactor: secureUtils fingerprint method
Signed-off-by: sithlord48 <sithlord48@gmail.com>
2025-02-12 13:41:45 +00:00
sithlord48
39da277ead refactor: use vector<uint8_t> for keys 2025-02-12 13:41:45 +00:00
sithlord48
a98f2d745e refactor: move SecureSocket::formatFingerprint -> SecureUtils std::string formatSSLFingerprint
based on 0e406d4918
         9d8e1faf59
         b793675ef8
2025-02-12 13:41:45 +00:00
Nick Bolton
524c3b0e7b refactor: Change log level for active desktop query to debug 2025-02-11 13:06:51 +00:00
sithlord48
e420b9b986 chore: small cmake cleanup
lib/platform: use the REQUIRED_QT_VERSION when looking for Qt Dbus module
  lib/deskflow: rm extra space in cmake file
2025-02-11 13:06:51 +00:00
Nick Bolton
cb14d158cc refactor: Cleanup core binary help text 2025-02-11 13:06:51 +00:00
Nick Bolton
ac6809d40f refactor: Rename core process start/stop function names 2025-02-11 13:06:51 +00:00
Nick Bolton
92603df93d fix: Out of order m_trayIcon in ctor init,
chore: remove unused m_btnCancel
2025-02-11 13:06:51 +00:00
sithlord48
a5f28616f4 chore: df-gui mainwindow directly connect more methods without intermediarty methods 2025-02-11 13:06:51 +00:00
sithlord48
cad1243d75 chore: windows, set icon for deskflow-core 2025-02-11 13:06:51 +00:00
sithlord48
610786ad2e chore: clean up extra empty lines 2025-02-11 13:06:51 +00:00
re2zero
d093894743 fix: [test]fix #8174, create empty config file under HOME dir
The server always create an empty config file in user's home dir, set tmp config file path for the unittest in order to fix this issue.

Log: Fix unittest create empty config file.
2025-02-11 07:13:31 -05:00
sithlord48
942070950d refactor: MainWindow do not use onNames 2025-02-04 18:11:41 +00:00
sithlord48
ddc24ffb22 refactor: MainWindow don't use lambda where direct connect can happen 2025-02-04 18:11:41 +00:00
sithlord48
b14de6f9e2 refactor: MainWindow conform to naming standards 2025-02-04 18:11:41 +00:00
sithlord48
60577f00dc chore: add Icons for list-add , list-remove and document-edit 2025-02-03 12:36:18 +00:00
sithlord48
fedd9d33c9 refactor: serverConfig finish renaming, improve logic 2025-02-03 12:36:18 +00:00
sithlord48
ae30237f90 refactor: ServerConfigDialog/tabAdvanced no autoconnections, use naming std 2025-02-03 12:36:18 +00:00
sithlord48
169422a0eb refactor: ServerConfigDialog hotkeyTab, no auto connections use naming std 2025-02-03 12:36:18 +00:00
sithlord48
76fd40a3ec refactor: ServerConfigDialog/tabComputers, no autoconnect slots, use new names 2025-02-03 12:36:18 +00:00
sithlord48
816d66b703 refactor: Don't use autoconnect slots for the button box 2025-02-03 12:36:18 +00:00
sithlord48
774f1fded9 fix: Add client dialog not showing for new clients 2025-02-03 12:36:18 +00:00
Gwilherm Folliot
9dcfb6cc9b fix: Wrong cb_activated signature in input-capture
The options argument was missing so the argument data wasn't the right
one and the method cb_disabled was actually called on a GVariant*
instead on a PortalInputCapture*
2025-01-30 14:50:08 -05:00
sithlord48
e2c3af4e5e fix: readd the newScreenWidget 2025-01-30 15:36:21 +00:00
sithlord48
26367635d9 refactor: QTextStream& screen::writeScreensSection(QTextStream&) -> QString Screen::screenSection()
refactor: QTextStream& screen::writeAliasSection(QTextStream&) -> QString Screen::aliasSection()
2025-01-30 15:36:21 +00:00
sithlord48
0ba35fca7a refactor: clean up data method of model 2025-01-30 15:36:21 +00:00
sithlord48
beb4069845 fix: Screen Missing Icons on server config
Fixes#8155
2025-01-30 15:36:21 +00:00
sithlord48
71b7e819a9 refactor: remove smaller security icons 2025-01-29 21:19:39 +00:00
sithlord48
55772e1133 chore: remove unused ARCH::vsnprintf 2025-01-29 21:07:31 +00:00
sithlord48
43c6bec790 Revert "feat!: Add support for FingerPrintDatabase"
This reverts commit 8f219b735e.
2025-01-28 19:31:03 -05:00
Vamshi Maskuri
8f219b735e feat!: Add support for FingerPrintDatabase 2025-01-28 20:33:11 +00:00
sithlord48
59ebb6fde4 refactor: force mac os to use the larger security icon in the status area 2025-01-28 16:19:51 +00:00
Stephen Jensen
30a37a8a50 chore: Switched event buffer from Carbon to GCD 2025-01-28 13:11:24 +00:00
sithlord48
7f6caec162 chore: reset screen xywh on update_shape
based on https://github.com/input-leap/input-leap/pull/2167
2025-01-28 11:33:55 +00:00
sithlord48
1085df54ed refactor: Reuse compliance
build files and documentation: MIT
  images / sources: GPL-2.0-only
  breeze icons: LGPL-2.0-only
  Microsoft MSM file, vc redist license
2025-01-27 17:05:47 -05:00