squawk/shared/keyinfo.cpp

73 lines
2.0 KiB
C++

// Squawk messenger.
// Copyright (C) 2019 Yury Gubich <blue@macaw.me>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "keyinfo.h"
using namespace Shared;
Shared::KeyInfo::KeyInfo(
uint32_t p_id,
const QByteArray& p_fingerPrint,
const QString& p_label,
const QDateTime& p_lastInteraction,
Shared::TrustLevel p_trustLevel,
Shared::EncryptionProtocol p_protocol,
bool p_currentDevice
):
id(p_id),
fingerPrint(p_fingerPrint),
label(p_label),
lastInteraction(p_lastInteraction),
trustLevel(p_trustLevel),
protocol(p_protocol),
currentDevice(p_currentDevice)
{
}
Shared::KeyInfo::KeyInfo():
id(0),
fingerPrint(),
label(),
lastInteraction(),
trustLevel(TrustLevel::undecided),
protocol(EncryptionProtocol::omemo),
currentDevice(false)
{
}
Shared::KeyInfo::KeyInfo(const Shared::KeyInfo& other):
id(other.id),
fingerPrint(other.fingerPrint),
label(other.label),
lastInteraction(other.lastInteraction),
trustLevel(other.trustLevel),
protocol(other.protocol),
currentDevice(other.currentDevice)
{
}
Shared::KeyInfo & Shared::KeyInfo::operator=(const Shared::KeyInfo& other) {
id = other.id;
fingerPrint = other.fingerPrint;
label = other.label;
lastInteraction = other.lastInteraction;
trustLevel = other.trustLevel;
protocol = other.protocol;
currentDevice = other.currentDevice;
return *this;
}