Albert Vaca
01139d31d1
De-duplicated socket SSL configuration code
2016-06-22 14:27:09 +02:00
Aleix Pol
f011191eca
Fix few issues in FileTransferJob
...
Handle errors from different endpoints
Don't ::startTransfer when we find a colliding file
2016-06-22 12:42:51 +02:00
Aleix Pol
4cb50d69d8
Fix some issues in the downloadjob and its test
...
Test on KJob abstraction, this way we can check if it has an error when it
breaks.
Handle errors in a different branch of the code.
2016-06-22 12:40:14 +02:00
Aleix Pol
f9406e8afc
Introduce QVariantMap as an argument of NetworkPackage
...
Makes it possible to specify the different properties sent at once,
rather than one by one as we used to do.
Also port whenever possible to the initializer-list syntax.
REVIEW: 128269
2016-06-21 20:07:12 +02:00
Albert Vaca
aa41b40ab5
Changed magic number by constant
2016-06-21 18:42:53 +02:00
Albert Vaca
e880e14ed5
Preffer Q_FOREACH to foreach
2016-06-21 14:50:17 +02:00
Albert Vaca
5abd081b85
Changed port so we don't conflict with Houdini
2016-06-21 14:42:32 +02:00
Aleix Pol
bfd698af36
Fix issues detected by clazy
...
Don't use for(:) on Qt containers. It detaches without need.
2016-06-20 19:22:29 +02:00
Aleix Pol
596e4484f4
Clean up use of virtual and override keywords
...
Only use virtual when actually virtual, to override just use override.
2016-06-20 19:22:29 +02:00
Albert Vaca
cc0fdacbf5
Fixed compilation on Windows
2016-06-20 02:31:55 +02:00
Albert Vaca
c4d7c2f39b
Improved comments
2016-06-17 02:00:23 +02:00
Albert Vaca
e379fcd69d
Destroying a socket should not destroy the link.
...
Also, sockets can be destroyed as soon as the socketreader is deleted.
2016-06-17 02:00:23 +02:00
Aleix Pol
83a56c47e9
Drop NetworkPackage QObject heritage
...
It was only used for introspection and we can use Q_GADGET for that.
Make the NetworkPackage objects much lighter.
REVIEW: 124166
2016-06-16 20:33:13 +02:00
Albert Vaca
91c23dfdea
Do not compare against the current version of the protocol
2016-06-16 19:48:23 +02:00
Albert Vaca
cb0fd1fe20
Removed a case where we would still add a link on old protocol versions
2016-06-15 20:38:57 +02:00
Aleix Pol
b9be1e17d1
Specify for which device we're not delivering the packages
2016-06-12 20:16:58 +02:00
Aleix Pol
5715926c5c
Export the symbols needed by the tests
2016-06-10 15:07:33 +02:00
Albert Vaca
3177143439
Fixed build on windows
2016-06-09 02:36:02 +02:00
Albert Vaca
1c315af108
Revert "Fix file transfers"
...
This reverts commit 252ea4ba20
.
2016-06-07 00:28:52 +02:00
Aleix Pol
c7429b56b7
In the CLI interface, make it possible to refer a device by name
...
Only works with trusted devices
2016-06-06 01:21:37 +02:00
Aleix Pol
751bd5849b
small style changes
2016-06-06 01:21:37 +02:00
Frederik Schwarzer
a594324d4f
Fix message wording.
2016-06-03 21:33:25 +02:00
Aleix Pol
252ea4ba20
Fix file transfers
2016-06-03 16:38:04 +02:00
Aleix Pol
8736d2559e
Notify if a package is being discarded
2016-06-03 15:51:05 +02:00
Aleix Pol
fd19426756
Make it possible to put NetworkPackage right into qDebug
2016-06-03 15:50:46 +02:00
Albert Vaca
7a0bb09353
Make sure we don't broadcast more than once at the same time.
...
Race conditions might happen because two links will be created.
2016-06-02 12:18:51 +02:00
Albert Vaca
7a67274a18
Fixed memory leak.
2016-06-02 12:17:07 +02:00
Albert Vaca
0c48c00fa7
Added debug function to print a stack trace
2016-06-01 12:43:34 +02:00
Aleix Pol
70d447f58f
better debug information
2016-06-01 01:14:30 +02:00
Aleix Pol
702fbd09af
If interfaces are required is up to the plugin
2016-05-31 20:46:48 +02:00
Aleix Pol
16eccd46d3
Restore having plugins without any capabilities
...
These won't need to be matched by the other device
2016-05-31 20:16:25 +02:00
Albert Vaca
4383a42703
Changed the way we detect if capabilities are supported
2016-05-31 20:10:35 +02:00
Albert Vaca
5654300249
Removed logs
2016-05-31 20:09:52 +02:00
Aleix Pol
9aa794b0da
Merge branch 'master' into sslrefactor
2016-05-31 17:29:06 +02:00
Aleix Pol
c2349bacd7
Make sure we don't eat all system memory
...
I had wrong configuration files, the encription algorithm definitely
doesn't take it into account.
2016-05-05 17:45:49 +02:00
Vineet Garg
b96227ae75
Changed protocol version to TLS 1.0, as TLS 1.2 not supported on many Android device
...
Choosing cipher suites manually, same as of Android
2016-04-30 20:39:34 +05:30
David Kahles
abc5fa3c56
Remove second UDP socket in LanLinkProvider
...
We don't need two sockets for reading and writing.
REVIEW: 127769
2016-04-28 00:19:20 +02:00
Albert Vaca
29d3f9aa7a
Expose protocol version
2016-04-14 18:52:31 -07:00
David Kahles
174cf3d3ce
Don't reset m_pairStatus when unpair is requested by remote device
...
unpairInternal() will take care of this, otherwise pairingChanged() will not
be emited and though, the model won't notice it.
REVIEW: 127641
2016-04-13 08:44:47 +02:00
Albert Vaca
78d4ba2106
Cleanup
2016-03-08 07:29:34 -08:00
Albert Vaca
ff9775e1c9
Better logging of what's going on
2016-03-07 16:01:44 -08:00
Albert Vaca
8f9fde8f40
Fixed crash when pairing old Android apps.
2016-03-02 16:38:03 -08:00
Albert Vaca
ebd429629a
Fixed unpairs never being sent
2016-03-02 16:17:38 -08:00
Albert Vaca
ea812f1101
Attribute not needed
2016-03-02 15:50:06 -08:00
Albert Vaca
b1ef3f9fc9
Use a different key for settings, so we don't clash with older versions.
2016-03-02 15:36:45 -08:00
Albert Vaca
90d2b0ad69
Changing TLS version to what is used in LanLinkProvider.
...
Android<16 doesn't support TLS>1.0
2016-02-12 09:02:56 -08:00
Albert Vaca
6cde0271fb
Removed loopbackpairinghandler
2016-02-12 07:59:12 -08:00
Albert Vaca
aa4150f0c9
Moved ConnectionStarted from DeviceLink to LanDeviceLink
2016-01-10 07:12:13 -08:00
Albert Vaca
2aca5ca11e
Added error message when trying to pair older devices
2015-12-17 09:24:34 -08:00
Aleix Pol
8a019ccddf
Fix assert
2015-12-17 17:58:33 +01:00
Albert Vaca
7ed012e4a5
Fixed broadcast
2015-12-17 08:59:08 -08:00
Albert Vaca
f5404ea11b
Removed more references to publicKey
2015-12-17 08:22:18 -08:00
Albert Vaca
918bb82ffa
Do not store certificate and key in landevicelink
...
The socket already stores the certificate, and the public key is only used
in the sftp plugin, so it should be moved there or dropped.
2015-12-17 07:46:13 -08:00
Albert Vaca
4c84499e6a
Don't addLink twice for the same link
2015-12-17 07:44:29 -08:00
Albert Vaca
dd7d4093ed
Removed sendPackageEncrypted from DeviceLink
2015-12-17 07:43:52 -08:00
Albert Vaca
d37830b429
Simplified pairing logic
2015-12-17 06:54:29 -08:00
Albert Vaca
10b4ca00fb
Set certificate in outgoing pairing packet
2015-12-17 06:53:57 -08:00
Albert Vaca
af43a21864
Propagate pairingError
2015-12-17 06:53:29 -08:00
Albert Vaca
1848e96a91
Fixed old signal name
2015-12-17 05:54:37 -08:00
Albert Vaca
49a24c258b
Fixed crash
2015-12-17 05:54:24 -08:00
Albert Vaca
813c9fedb3
Calling setDeviceLink in pairing handler is not required anymore
...
Since we re-use the same device link object forever now
2015-12-17 04:41:53 -08:00
Albert Vaca
ddca4d6d63
Store and restore certificate and public key in lan link
2015-12-17 04:41:10 -08:00
Albert Vaca
945da8a84f
Removed encrypted package type define
2015-12-10 19:06:55 -08:00
Albert Vaca
79a8103120
Added some asserts
2015-12-10 19:06:55 -08:00
Albert Vaca
2e4c3762e9
Re-use landevicelink objects instead of re-creating one each time
2015-12-10 17:11:48 -08:00
Albert Vaca
77facdbcfd
Merge branch 'master' into sslrefactor
2015-12-07 03:38:06 -08:00
Albert Vaca
2e4ce90656
Commented out old encryption functions
2015-12-07 03:34:41 -08:00
Aleix Pol
d69cdce4c1
Make sure incoming Lan pair packages are processed by the LanPairHandler
2015-12-06 02:12:29 +01:00
Aleix Pol
7041c72aed
Fix connect
2015-12-06 02:11:50 +01:00
Aleix Pol
e10b2e80c9
Propagate pairing errors
2015-12-06 01:51:53 +01:00
Aleix Pol
90c8f588bc
Only respond to local broadcasts
2015-12-06 01:19:55 +01:00
Aleix Pol
69d899ed48
Only broadcast when the newly reported configuration is actually active
2015-12-06 01:19:20 +01:00
Aleix Pol
97d97ffa1b
Fix connect
2015-12-06 01:18:27 +01:00
Holger Kaelberer
f072a0c615
notifications: allow to configure how to sync desktop notifications
...
Added kcm ui with global and app-specific config options.
Global options affect all notifications:
- Persistent only? --> Sync only notifications with timeout == 0?
- Include body? --> Add body string to summary when syncing?
- Minimum urgency
Per-application options affect notifications sent by a specific
application:
- Sync it at all?
- If yes, allow to define a "blacklist" pattern (QRegularExpression)
to define which notifications should *not* be synced.
Applications are maintained in the per-device config and added when
seen the first time by the notification listener. From that moment on
they can be configured in the kcm ui.
2015-12-05 23:23:22 +01:00
Albert Vaca
03926cc3bf
WIPx4
2015-12-02 11:04:35 -08:00
Albert Vaca
af5be6e9e0
Added a test mode to lanlinkprovider
...
Should fix tests when you run them on networks with real kdeconnects
running.
2015-12-02 09:49:00 -08:00
Albert Vaca
cf6cbd2925
WIPx3!
2015-12-01 10:45:14 -08:00
Albert Vaca
82bc73dd9b
WIPx2
2015-12-01 07:25:34 -08:00
Albert Vaca
16f9af908a
WIP
2015-11-30 10:36:01 -08:00
Albert Vaca
30d2dd991b
Merge branch 'master' into sslmaster
2015-11-30 03:40:07 -08:00
Aleix Pol
0bca50af93
Merge branch '0.9'
2015-10-19 17:48:13 +02:00
Albert Vaca
d2b4a6f214
Indentation
2015-10-18 21:51:51 -07:00
Albert Vaca
e2f068b286
Fixed a memory leak making the DownloadJob destroy itself on disconnect
...
There are still some code paths where it doesn't get destroyed though,
like when the device gets unreachable (and the download socket doesn't
close for some reason).
2015-10-18 21:51:51 -07:00
Albert Vaca
229e3aa070
Removed unused class
2015-10-18 19:42:40 -07:00
Albert Vaca
4574aa3639
Make the origin also contain the file name, not only the device name
2015-10-17 13:32:57 -07:00
Vineet Garg
646196b3eb
Added loopback pairing handler
2015-09-14 16:36:04 +05:30
Vineet Garg
73a80f0296
Fixed Lan Link Provider Test
...
Pairing timer was started even when pair package sending is failed, fixed that
2015-09-13 01:45:19 +05:30
David Edmundson
97034e3bbd
Don't cleanup devices if pairing
2015-09-12 22:03:56 +02:00
David Edmundson
f1f3f48aaf
Export pairStatus
2015-09-12 22:03:39 +02:00
Aleix Pol
2c2cb21ee1
Don't clean the devices that looked us up in the first place
2015-09-12 20:53:05 +02:00
Albert Vaca
217d4b60ff
Fixed outging capabilities
2015-09-12 08:51:39 -07:00
Albert Vaca
4230f4fb44
Added a signal so plugins know when we update the config
2015-09-12 04:50:20 -07:00
Aleix Pol
f7423c6ad6
Better use of error information
2015-09-12 09:47:47 +02:00
Aleix Pol
4730022810
Pass arguments as const-reference
2015-09-12 09:45:59 +02:00
Aleix Pol
5e0a7a34b9
Merge branch 'master' into ssl
...
# Conflicts:
# cli/kdeconnect-cli.cpp
# core/backends/lan/landevicelink.cpp
# core/backends/lan/landevicelink.h
# core/backends/lan/lanlinkprovider.cpp
# core/backends/lan/lanlinkprovider.h
# core/backends/lan/socketlinereader.h
# core/backends/lan/uploadjob.cpp
# core/backends/lan/uploadjob.h
# core/backends/loopback/loopbackdevicelink.h
# core/daemon.cpp
# core/daemon.h
# core/device.cpp
# core/device.h
2015-09-11 17:25:23 +02:00
Aleix Pol
b62349cae6
Merge branch 'stable'
2015-09-11 17:03:57 +02:00
Aleix Pol
9fedfcdb3d
Notify QNAM about the file received size
2015-09-11 17:03:11 +02:00
Albert Vaca
89afa5b9af
Renamed capabilties so we don't clash with KDE4's broken implementation
2015-09-11 06:20:15 -07:00
Aleix Pol
47147c5fa1
Merge branch 'stable'
2015-09-11 14:04:54 +02:00
Aleix Pol
c2acc37da6
Fix filtering of plugins that don't support capabilities
2015-09-11 14:00:15 +02:00
Aleix Pol
95f01c4bea
Use C++ for setting the default argument
2015-09-11 12:34:52 +02:00
Aleix Pol
ca4a81b8e8
Merge branch 'stable'
2015-09-11 12:24:15 +02:00
Aleix Pol
2b8a54357e
Remove redundant copy constructor
2015-09-11 12:22:59 +02:00
Aleix Pol
c62fac0bcf
Don't join hte interfaces in 1 string
...
Let NetworkPackage do the serialization
2015-09-11 12:14:19 +02:00
Albert Vaca
4c98e2e7b3
Less verbose output
2015-09-11 02:29:57 -07:00
Albert Vaca
b07e442b97
Less verbose plugin loader
2015-09-11 01:12:34 -07:00
Albert Vaca
4df14d1c7d
Fixed plugins without incoming nor outgoing packages being disabled
2015-09-11 01:12:22 -07:00
Patrick von Reth
da5c9bd30e
Fix compilation on Windows.
2015-09-10 15:51:38 +02:00
Aleix Pol
4cccb7344a
++verbosity on error
2015-09-09 20:12:16 +02:00
Aleix Pol
a9d2840664
Use acquire and release instead of a boolean property
...
This way we hope we won't end up without discovery if 2 instances need
discovery at the same time.
Reviewed by Albert Vaca
2015-09-09 20:09:04 +02:00
Aleix Pol
32daa4e51f
Fix misbehaviour
...
Delete devices, not links
2015-09-09 13:42:28 +02:00
Aleix Pol
77e92262fe
Fix build
2015-09-09 13:03:08 +02:00
Aleix Pol
26b0ec8b98
Make sure we don't disconnect from discovering remotes
...
Otherwise it's hard to let other devices connect to us, without having both
devices in discoverability mode.
Reviewed by Albert Vaca
2015-09-09 13:01:38 +02:00
Albert Vaca
c65be84a89
Only send capabilities packets for paired devices
2015-09-09 01:19:38 -07:00
Aleix Pol
a0da8ba858
Let the KPluginSelector react to changes in the plugin configuration
...
Mainly whenever the remote capabilities change.
Reviewed by The Vaca Man
2015-09-08 20:03:44 +02:00
Aleix Pol
b101e828a4
Fix capabilities detection
...
Only consider capabilities as unsupported if both incoming and outgoing are
empty, rather than either.
Reviewed by Albert Vaca
2015-09-08 17:58:40 +02:00
Aleix Pol
6a379e9227
Rename missingPlugins to unsupportedPlugins
2015-09-08 17:38:33 +02:00
Aleix Pol
617b66aeb8
small code simplification
...
removes changes from list to set
always uses the same path for figuring out the interfaces.
reviewed by Albert Vaca
2015-09-08 17:35:30 +02:00
Aleix Pol
df3581459a
Add a test that makes sure that capabilities are gathered correctly
...
While at it, fix the logic, because it wasn't working all that well.
Reviewed by Albert Vaca
2015-09-08 17:35:30 +02:00
Albert Vaca
854e4227fa
Read the capabilities in the first addLink instead of only the constructor
2015-09-08 08:37:43 -07:00
Aleix Pol
817fcbc9d6
Merge branch 'stable'
2015-09-08 10:51:41 +02:00
Aleix Pol
d58f6314fe
run Clang Modernize
...
Minus the auto change
2015-09-08 10:47:37 +02:00
Albert Vaca
1a63d18ada
Print more info
2015-09-08 01:12:00 -07:00
Aleix Pol
4023bf0599
Only keep connections alive with unpaired devices when discovery is enabled
...
At the moment, we were keeping the connection alive with every reachable
device. While this works optimally for most use-cases, on networks with
several devices with KDE Connect, the amount of connections grows
exponentially.
Reviewed by Albert Vaca
CCBUG: 352424
2015-09-08 09:30:55 +02:00
Aleix Pol
774893d3f9
cleanup
...
make attribute const
construct when initializing
no need to have all methods as slots
2015-09-08 09:22:31 +02:00
Aleix Pol
e1be5319f5
Only broadcast again if the network configuration actually changes
...
Reviewed Albert Vaca
2015-09-08 09:05:06 +02:00
Aleix Pol
4960247fb5
Add a package type that updates the device capabilities
...
Every time we reload the plugin list, report the plugins that we support.
If the remote devices' capabilities change, update the plugin list.
Reviewed by Albert Vaca
2015-09-07 20:03:05 +02:00
Aleix Pol
f65a1f206f
Turn core qWarnings into qCWarning
2015-09-07 19:35:07 +02:00
Aleix Pol
91351773fd
Mark incompatible plugins as such in the kcm
...
If a plugin isn't available, display it as unsupported by the device. This
is figured out through capabilities.
Reviewed by Albert Vaca
2015-09-07 19:35:07 +02:00
Aleix Pol
61f357a512
Fix regression
...
Reviewed by Albert Vaca
2015-09-07 17:12:28 +02:00
Aleix Pol
d835d01a09
Add a test for file sending, using the loopback device
...
Extends unit testing by making sure that file sharing works locally.
REVIEW: 125086
2015-09-07 15:03:04 +02:00
Vineet Garg
78e9c08732
Merge branch 'master' into ssl
...
Conflicts:
core/backends/lan/socketlinereader.h
core/backends/lan/uploadjob.h
core/networkpackage.h
2015-08-25 03:43:41 +05:30
Vineet Garg
17da38e5ba
Explicity using TLSv1 because using AnyProtocol causes a default TLSv1.2 handshake which not supported on older android version
...
Was using QueryPeer instead of VerifyPeer of isDeviceTrusted of connected slot
2015-08-25 01:14:24 +05:30
Boris Egorov
1924173df2
Fix various krazy2 warnings
...
Fix following krazy2 warning types:
[explicit], [endswithnewline], [doublequote_chars], [includes], [normalize],
[postfixop], [spelling]
See http://ebn.kde.org/krazy/reports/playground/base/kdeconnect-kde/index.html
for details.
SLOT/SIGNAL normalization done with Qt normalize utility:
https://github.com/qtproject/qtrepotools/tree/master/util/normalize
REVIEW: 124857
2015-08-21 22:38:54 +06:00
Vineet Garg
44c0ec1c78
If remote device certificate is changes, in sslError due to simulataneous multiple connections, unpair was called on null pointer
2015-08-17 20:04:41 +05:30
Vineet Garg
eff84a49d4
We support any protocol instead of TLSv1.2
2015-08-16 21:19:56 +05:30
Vineet Garg
9bc93b6337
We generate certificate from present date -1 year to present date + 10 year, this avoids the case where certificate is not valid due to difference of time zones
2015-08-14 17:50:58 +05:30
Vineet Garg
75bd15ed65
Added default value while checking for link name in pairing handler, this provides backward compatibility
2015-08-14 17:33:08 +05:30
Vineet Garg
6fe1399a18
Fixed minor issues in pairing handler
2015-08-13 14:56:28 +05:30
Vineet Garg
c5a399b94b
Fixed code identation issue
2015-08-12 23:49:15 +05:30
Vineet Garg
6acb4204a2
Added KdeConnectConfigTest, TestSslSocketLineReader, LanLinkProviderTest
2015-08-12 23:42:27 +05:30
Vineet Garg
cf3d37b504
Fixed issue pointed out on RR
...
Fixed some pairing handler issues
2015-08-11 09:04:02 +05:30
Vineet Garg
2824e73617
Pairing handler implemented
2015-07-27 20:58:58 +05:30
Vineet Garg
27515546a0
Now per device per link type pairing handlers are there
2015-07-25 17:15:19 +05:30
Vineet Garg
1b430db4a3
Fixed indentation
2015-07-19 21:59:27 +05:30
Vineet Garg
eda2563d03
Fixed encryption info in cli
2015-07-19 20:25:28 +05:30
Vineet Garg
20e46418ba
Encryption info in cli
2015-07-18 18:54:10 +05:30
Vineet Garg
e6da860fb7
Fixed issues pointed out on CR
2015-07-14 17:34:04 +05:30
Vineet Garg
781adac15b
Removed whitespace
2015-07-13 19:55:22 +05:30
Vineet Garg
1ba68150a7
Made server like normal QTcpServer
2015-07-10 03:57:27 +05:30