[SCM] kdeconnect packaging branch, master, updated. debian/0.9g-1-1183-g9d69498
Maximiliano Curia
maxy at moszumanska.debian.org
Fri Oct 14 14:29:29 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/kdeconnect.git;a=commitdiff;h=d37830b
The following commit has been merged in the master branch:
commit d37830b429335cf5cd34306975bc8f6d015b9092
Author: Albert Vaca <albertvaka at gmail.com>
Date: Thu Dec 17 06:54:29 2015 -0800
Simplified pairing logic
---
core/backends/lan/landevicelink.cpp | 3 ++-
core/backends/lan/lanpairinghandler.cpp | 30 ++++++++++++------------------
2 files changed, 14 insertions(+), 19 deletions(-)
diff --git a/core/backends/lan/landevicelink.cpp b/core/backends/lan/landevicelink.cpp
index 8fc2b26..05d62b2 100644
--- a/core/backends/lan/landevicelink.cpp
+++ b/core/backends/lan/landevicelink.cpp
@@ -109,12 +109,13 @@ UploadJob* LanDeviceLink::sendPayload(NetworkPackage& np)
void LanDeviceLink::dataReceived()
{
if (mSocketLineReader->bytesAvailable() == 0) return;
- //qCDebug(KDECONNECT_CORE) << "LanDeviceLink dataReceived" << package;
const QByteArray serializedPackage = mSocketLineReader->readLine();
NetworkPackage package(QString::null);
NetworkPackage::unserialize(serializedPackage, &package);
+ //qCDebug(KDECONNECT_CORE) << "LanDeviceLink dataReceived" << serializedPackage;
+
if (package.type() == PACKAGE_TYPE_PAIR) {
//TODO: Handle pair/unpair requests and forward them (to the pairing handler?)
qobject_cast<LanLinkProvider*>(provider())->incomingPairPackage(this, package);
diff --git a/core/backends/lan/lanpairinghandler.cpp b/core/backends/lan/lanpairinghandler.cpp
index 4710072..8ca0e2a 100644
--- a/core/backends/lan/lanpairinghandler.cpp
+++ b/core/backends/lan/lanpairinghandler.cpp
@@ -46,28 +46,23 @@ void LanPairingHandler::createPairPackage(NetworkPackage& np)
void LanPairingHandler::packageReceived(const NetworkPackage& np)
{
+ qDebug() << "Pairing package received!" << np.serialize();
- if (np.get<QString>("link", deviceLink()->name()).compare(deviceLink()->name()) != 0) return; // If this package is not received by my type of link
+ if (np.get<QString>("link", deviceLink()->name()).compare(deviceLink()->name()) != 0) {
+ // If this package is not received by my type of link
+ return;
+ }
m_pairingTimeout.stop();
bool wantsPair = np.get<bool>("pair");
- if (wantsPair == isPaired() && isPairRequested()) {
-// qCDebug(KDECONNECT_CORE) << "Already" << (wantsPair? "paired":"unpaired");
- setInternalPairStatus(NotPaired);
- Q_EMIT pairingError(i18n("Canceled by other peer"));
- return;
- }
-
if (wantsPair) {
QString keyString = np.get<QString>("publicKey");
QString certificateString = np.get<QByteArray>("certificate");
-
QCA::PublicKey publicKey = QCA::PublicKey::fromPEM(keyString);
QSslCertificate certificate(keyString.toLatin1());
-
if (certificate.isNull()) {
if (isPairRequested()) {
setInternalPairStatus(NotPaired);
@@ -75,18 +70,17 @@ void LanPairingHandler::packageReceived(const NetworkPackage& np)
Q_EMIT pairingError(i18n("Received incorrect certificate"));
return;
}
-
qobject_cast<LanDeviceLink*>(deviceLink())->setCertificate(certificate, publicKey);
if (isPairRequested()) { //We started pairing
qCDebug(KDECONNECT_CORE) << "Pair answer";
- deviceLink()->setPairStatus(DeviceLink::PairStatus::Paired);
+ setInternalPairStatus(Paired);
} else {
qCDebug(KDECONNECT_CORE) << "Pair request";
- if (isPaired()) {
+ if (isPaired()) { //I'm already paired, but they think I'm not
acceptPairing();
return;
}
@@ -99,11 +93,10 @@ void LanPairingHandler::packageReceived(const NetworkPackage& np)
qCDebug(KDECONNECT_CORE) << "Unpair request";
- if (isPairRequested()) {
+ setInternalPairStatus(NotPaired);
+ if (isPairRequested()) {
Q_EMIT pairingError(i18n("Canceled by other peer"));
}
-
- setInternalPairStatus(NotPaired);
}
}
@@ -137,11 +130,11 @@ bool LanPairingHandler::requestPairing()
bool LanPairingHandler::acceptPairing()
{
+ qDebug() << "User accepts pairing";
m_pairingTimeout.stop(); // Just in case it is started
NetworkPackage np(PACKAGE_TYPE_PAIR);
createPairPackage(np);
- bool success;
- success = deviceLink()->sendPackage(np);
+ bool success = deviceLink()->sendPackage(np);
if (success) {
setInternalPairStatus(Paired);
}
@@ -150,6 +143,7 @@ bool LanPairingHandler::acceptPairing()
void LanPairingHandler::rejectPairing()
{
+ qDebug() << "User rejects pairing";
NetworkPackage np(PACKAGE_TYPE_PAIR);
np.set("pair", false);
np.set("link", deviceLink()->name());
--
kdeconnect packaging
More information about the pkg-kde-commits
mailing list