Albert Vaca Cintora
ce0f00fc2d
Limit the ports we try to connect to to the port range of KDE Connect
...
So we can't trigger connections to other services.
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Albert Vaca Cintora
613899be24
Do not remember more than a few identity packets at a time
...
To prevent the kdeconnect process from using too much memory.
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Albert Vaca Cintora
542d94a70c
Limit number of connected sockets from unpaired devices
...
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Aleix Pol
8112729eb0
Don't brute-force reading the socket
...
The package will arrive eventually, and dataReceived will be emitted.
Otherwise we just end up calling dataReceived to no end.
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Aleix Pol
024e5f23db
Do not let lanlink connections stay open for long without authenticating
...
If there's no information received, close the socket to try again.
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Aleix Pol
4fbd01a3d4
Limit identity packets to 8KiB
...
Healthy identity packages shouldn't be that big and we don't want to
allow systems around us to send us ever humongous packages that will
just leave us without any memory.
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Matthias Gerstner
7e47d04053
Fix use after free in LanLinkProvider::connectError()
...
If QSslSocket::connectToHost() hasn't finished running.
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Albert Vaca Cintora
aa84aa5dcb
Do not leak the local user in the device name.
...
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Albert Vaca Cintora
7b904f47b3
Do not ignore SSL errors, except for self-signed cert errors.
...
Thanks Matthias Gerstner <mgerstner@suse.de> for reporting this.
2020-10-02 12:52:08 +02:00
Aleix Pol
bf089f3461
Remove unused variable
2020-09-24 18:31:11 +02:00
Aleix Pol
d4cf48901c
SocketLineReader: don't call packets bytes
2020-09-16 02:16:06 +02:00
Nicolas Fella
400c800deb
[app] Add plugin settings page
...
Include a page that allows (de)selecting and configuring plugins
This is one of the last missing pieces for feature parity with the KCM.
2020-09-08 20:33:20 +02:00
Richard Liebscher
8d16d05c8a
Custom devices
2020-08-18 21:55:24 +02:00
Nicolas Fella
87db95b22f
Convert license headers to SPDX expressions
2020-08-17 09:48:10 +00:00
Piyush Aggarwal
771c9dcd22
fix code indentation in lanlinkprovider
2020-08-07 21:22:28 +00:00
Piyush Aggarwal
e3225a1430
fix QSslKey::ca-certificate deprecated warning
2020-08-07 21:22:28 +00:00
Richard Liebscher
f1b3c0e0ca
Better device name in Sailfish OS
2020-08-02 19:19:27 +00:00
Richard Liebscher
f3656d962c
Save changed device name and type
2020-08-02 18:34:02 +02:00
Nicolas Fella
79164ca8ba
Replace manual include dir handling with interface target
...
We use kdeconnect-version.h in several places and therefore it needs to be in the include path. We currently do this by setting target_include_path in a few places. Replace this with an interface library that we can link against that sets up the correct include path. IMO it is cleaner this way.
2020-07-30 10:53:48 +02:00
Antonio Larrosa
1d36164230
Use ecm_qt_declare_logging_category to declare the logging categories
...
This automatizes the generation of logging categories so a
kdeconnect-kde.categories is generated and installed to
/usr/share/qlogging-categories5/ so kdebugsettings can use it.
Also, sets the default logging level to Warning. So now the logs
of users won't be filled with debug messages but they can
modify the configuration easily with kdebugsettings.
2020-05-26 18:55:47 +02:00
Nicolas Fella
93e68756bc
Port away from deprecated error signal
2020-05-09 17:21:14 +00:00
Nicolas Fella
4254b23d5d
trim some whitespace
2020-05-09 16:46:52 +02:00
Nicolas Fella
9277cc537a
Implement basic device type detection
2020-04-24 12:24:56 +00:00
Abdel-Rahman Abdel-Rahman
2728f8d864
Close all sockets before suspension
2020-04-16 22:32:57 +00:00
Nicolas Fella
1a9c2dbc4c
Fix coding style
2020-04-10 23:43:06 +02:00
Nicolas Fella
28e7e99100
Merge branch 'release/20.04'
2020-03-21 21:21:02 +01:00
Nicolas Fella
eac1e07e29
Revert "Make default name and device type customizable"
...
This causes a crash described in https://invent.kde.org/kde/kdeconnect-kde/-/merge_requests/206#note_37534
This reverts commit a39a2d562d
.
2020-03-21 21:13:41 +01:00
Nicolas Fella
2c8cf96a6c
Read payload size as qint64
2020-03-20 19:54:47 +00:00
Richard Liebscher
e066ef9236
Vergotten include in !190
2020-03-10 19:49:41 +00:00
Richard Liebscher
a39a2d562d
Make default name and device type customizable
2020-03-01 20:55:40 +00:00
Richard Liebscher
bb5539c8c3
Make plugins work in SailfishConnect
2020-03-01 20:00:40 +00:00
Nicolas Fella
6025f7cc48
Remove usused includes
2020-01-20 22:35:37 +01:00
Richard Liebscher
456d4830fe
Made code more explicit and additional tests.
2020-01-04 14:13:36 +01:00
Richard Liebscher
5c0ad3fb85
Remove payload keys when no payload exists
2020-01-03 15:48:48 +01:00
Yuri Chornoivan
ba8ee54558
Fix minor typos
2019-12-22 10:15:58 +02:00
Yuri Chornoivan
01c4d0411b
Fix minor EBN issues
2019-12-22 09:49:55 +02:00
Yuri Chornoivan
88fd5eb63d
Do not extract messages from the non-existent .ui and .rc files
2019-12-21 10:04:31 +02:00
Kai Uwe Broulik
5da0ae7903
Set total amount of files
...
Ensures the progress dialog can show the total number of files
and offer additional actions for when a single file was copied.
2019-12-19 15:58:05 +01:00
Richard Liebscher
ba34672cbd
Make build for SailfishConnect possible
2019-12-09 22:14:19 +00:00
Nicolas Fella
724a5a14a8
Don't use KIO in core when building for Sailfish
2019-10-27 19:35:18 +00:00
Nicolas Fella
8a25eb6f8a
Fix mac build
2019-09-18 14:56:45 +02:00
Nicolas Fella
39fe270cd1
Port Kdeconnectconfig to reference based singleton
...
It's more expressive in the sense that it makes clear that the user should not delete the object
2019-09-08 17:09:52 +02:00
Erik Duisters
f91b9e9951
Setting m_payloadSize is already handled by qvariant2qobject and it is of type qint64 not int
2019-08-21 19:37:38 +02:00
Nicolas Fella
0d7c504cf0
Rename DbusHelper => DBusHelper
2019-08-14 17:36:19 +02:00
Piyush Aggarwal
ccc8bb8a0e
Split config issue fix for Win32 build
2019-08-01 14:01:50 +00:00
Weixuan Xiao
5fadeabce8
Optimization for executable path and resource path on macOS
2019-07-30 13:46:18 +00:00
Nicolas Fella
607b9a6566
Revert "Use ecm_qt_declare_logging_category"
...
It's missing stuff to work properly. Revert until I figured that out
This reverts commit 8a118a6fae
.
2019-07-22 21:29:54 +02:00
Albert Astals Cid
af1255ed99
Use "new" connect syntax
2019-07-21 18:57:09 +00:00
Albert Astals Cid
1f8ba004f8
Use default NetworkPacket copy constuctor and assignment operator
...
clazy was complaining that the class had copy constructor but no assignment operator, which is usually suspicious
This is a bit of behaviour change though, since now m_payloadTransferInfo is also copied, which before wasn't, not sure if this is actually a good or a bad thing
2019-07-21 17:33:04 +00:00
Albert Astals Cid
9405cb58b0
Add NOTIFY signal to statusIconName property
...
Device::statusIconName depends on isReachable() and isTrusted()
Not sure how the property is used but it's good that they have a NOTIFY is defined if it's needed for completion
2019-07-21 15:57:38 +00:00
Matthijs Tijink
0b6224fc0e
Bluetooth multiplexer integration and assorted fixes
2019-07-20 12:29:33 +02:00
Matthijs Tijink
cda1280456
Add connection multiplexer
2019-07-20 12:29:33 +02:00
Weixuan Xiao
df2ca7f25f
Private DBus set launchctl env to fake a session bus
2019-07-09 19:42:08 +00:00
Albert Vaca Cintora
b8e50e976f
Revert "Simplify contains + get value"
...
Broke the tests 🤷
This reverts commit f7e86ed131
.
2019-07-05 00:58:33 +02:00
Albert Vaca Cintora
f7e86ed131
Simplify contains + get value
2019-07-05 00:15:05 +02:00
Albert Vaca Cintora
1e9a0f6808
Add braces
2019-07-05 00:13:55 +02:00
Weixuan Xiao
4f4b6c309f
Allow to use private DBus
2019-06-18 01:21:31 +00:00
Nicolas Fella
8a118a6fae
Use ecm_qt_declare_logging_category
2019-06-13 00:15:12 +02:00
Nicolas Fella
4de0f8cb9e
Remove non-toplevel project() definitions
2019-06-12 22:47:17 +02:00
Nicolas Fella
e601755644
Force usage of QStringLiteral and port remaining offenders
2019-06-10 14:40:28 +00:00
Weixuan Xiao
13230ff580
Fix missing sessionBus() in core/notificationserverinfo.cpp
2019-06-09 18:45:03 +00:00
Weixuan Xiao
5431073844
Add wrapper for macos dbus connection
2019-06-09 15:28:49 +00:00
Simon Redman
c7579eb170
Fix LanLinkProviderTest on Windows
...
## Summary
LanLinkProviderTest fails on Windows. This patch fixes that.
I believe the root cause is that we are using a shared UDP socket to listen for identity broadcasts both in the LanLinkProvider and in the test. Apparently this works on Linux, but on Windows the LanLinkProvider picks up its own identity packet and pairs with itself.
This patch gives a parameter to LanLinkProvider to allow it to listen and broadcast on different ports, then uses that ability in the test to make the test pass on Windows.
## Test Plan
### Before:
lanlinkprovider test fails, first because it can't bind its UDP listener socket, and then because Windows seems to handle shared sockets differently than Linux, so the UDP broadcasts were not reaching the test's listener.
### After:
lanlinkprovider test seems to pass reliably both in my Windows VM and in the CI
2019-06-05 15:14:50 +00:00
Simon Redman
9453e640b3
Refactor testdevice
2019-06-05 02:42:06 +00:00
Simon Redman
4c75626919
Fix build
...
Commit 637285378d
was not properly tested
2019-06-02 22:24:25 -06:00
Simon Redman
637285378d
Add error logging to LanLinkProvider when binding the listener socket
2019-06-02 22:14:10 -06:00
Simon Redman
24ab6d15cf
## Summary
...
pluginloadtest and sendfiletest are crashing. This patch fixes that by allowing Daemon::init() to be called from TestDaemon
## Test Plan
### Before:
Both tests are crashing because it is not able to find any devices. It is not able to find any devices because the LanLinkProvider is not being added because Daemon::init() is not being called.
### After:
pluginloadtest and sendfiletest pass
2019-06-02 21:26:47 +00:00
Nicolas Fella
163f10c797
Remove unneeded include dir definition
2019-06-02 23:02:41 +02:00
Nicolas Fella
96cd55920e
Use notification hints from new Plasma notification system
2019-06-02 14:03:11 +00:00
Nicolas Fella
283d014059
Use a compositejob for receiving files
2019-06-02 14:02:21 +00:00
Nicolas Fella
e1827ae33c
Print socket error when connection fails
2019-05-26 20:36:35 +02:00
Nicolas Fella
8ea5a06470
Remove superflous spaces from debug message
2019-05-26 20:36:08 +02:00
Nicolas Fella
3c353e7828
Improve debug message wording
2019-05-26 20:30:39 +02:00
Nicolas Fella
2b7026fc10
Fix daemon's error handling
2019-05-13 22:35:25 +00:00
Nicolas Fella
a787b692f6
[FileTransferJob] Set file amount
...
Summary: This tells the new notification system that we're copying a file and lets it show a better summary.
Test Plan:
{F6821356}
Is the composite job stuff already merged? That probably needs adjusting too
Reviewers: #plasma, nicolasfella
Reviewed By: nicolasfella
Subscribers: kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D21182
2019-05-13 12:50:07 +02:00
Nicolas Fella
c4bc7c567d
Don't allow to enable nonexistant plugins
2019-05-10 22:20:12 +00:00
Nicolas Fella
67efdc4fef
s/Q_DECL_OVERRIDE/override
2019-05-09 01:03:20 +02:00
Albert Vaca Cintora
5ddaadd471
More logging and remove redundant check as per CR
2019-05-09 00:03:59 +02:00
Albert Vaca
3fc7df550b
Better error handling when loading cert and key
...
BUG: 405207
2019-05-09 00:03:59 +02:00
Nicolas Fella
0692295ae7
s/Q_NULLPTR/nullptr/
2019-05-05 15:45:50 +02:00
Nicolas Fella
89987eb025
Coding style
2019-05-04 19:27:04 +02:00
Nicolas Fella
eef04f124b
[backends/lan] Don't fail silently when a UDP packet could not be unserialized
2019-05-04 18:34:59 +02:00
Nicolas Fella
aff3d20e7e
[lanlinkprovider] Improve method names
2019-05-04 13:10:27 +00:00
Erik Duisters
6fb67d0261
Delete partially downloaded file when transfer is canceled locally
2019-05-03 17:34:17 +02:00
Nicolas Fella
ecacb0eb80
Remove unneeded disconnects
2019-05-02 12:05:52 +00:00
Nicolas Fella
d3b6d1717d
Port old connects
2019-05-01 23:42:24 +02:00
Nicolas Fella
ad0acbfae3
move initialization to initializer list
2019-05-01 23:26:07 +02:00
Nicolas Fella
d4026861ab
Clean up includes
2019-04-30 19:03:24 +02:00
Nicolas Fella
b50b794250
Fix crash in daemon
2019-04-14 17:25:02 +00:00
Nicolas Fella
147fb6f35f
Tweak Upload job finished notification
2019-03-31 19:19:28 +00:00
Nicolas Fella
3b8fedea1a
Replace http GNU urls with https
2019-03-23 17:29:26 +01:00
Nicolas Fella
1f21cffb3e
Add CMake flag to activate loop backend
2019-03-13 00:30:24 +00:00
Nicolas Fella
d587bbeeaa
Remove unneeded link
2019-03-11 17:35:07 +01:00
Matthijs Tijink
97705c3c76
Retry the network packet if it failed to unserialize
...
This happens if the network packet is big enough to not transfer in one
go.
2019-03-09 18:29:55 +01:00
Nicolas Fella
5c268466c3
Don't use empty QStringLiteral
2019-02-28 14:20:22 +01:00
Nicolas Fella
c9533ff64e
Don't make signals const
2019-02-28 14:13:35 +01:00
Albert Vaca Cintora
10c370cc51
More useful error text
...
This helped me figure out the error in the test
2019-02-13 00:11:03 +01:00
Albert Vaca Cintora
a8e9c0d002
Make test not crash
2019-02-13 00:09:04 +01:00
Albert Vaca Cintora
395536b382
Remove unused include
2019-02-12 22:51:04 +01:00
Nicolas Fella
1f23fa27b2
Don't use QString::null
2019-02-03 02:00:36 +01:00