mirror of
https://github.com/overte-org/overte.git
synced 2025-04-24 20:34:20 +02:00
fix static methods to handle header read/write
This commit is contained in:
parent
a61c04aa92
commit
da761d4c95
1 changed files with 4 additions and 3 deletions
|
@ -133,19 +133,19 @@ NLPacket& NLPacket::operator=(NLPacket&& other) {
|
|||
}
|
||||
|
||||
QUuid NLPacket::sourceIDInHeader(const udt::Packet& packet) {
|
||||
int offset = packet.localHeaderSize();
|
||||
int offset = packet.Packet::localHeaderSize();
|
||||
return QUuid::fromRfc4122(QByteArray::fromRawData(packet.getData() + offset, NUM_BYTES_RFC4122_UUID));
|
||||
}
|
||||
|
||||
QByteArray NLPacket::verificationHashInHeader(const udt::Packet& packet) {
|
||||
int offset = packet.localHeaderSize() + NUM_BYTES_RFC4122_UUID;
|
||||
int offset = packet.Packet::localHeaderSize() + NUM_BYTES_RFC4122_UUID;
|
||||
return QByteArray(packet.getData() + offset, NUM_BYTES_MD5_HASH);
|
||||
}
|
||||
|
||||
QByteArray NLPacket::hashForPacketAndSecret(const udt::Packet& packet, const QUuid& connectionSecret) {
|
||||
QCryptographicHash hash(QCryptographicHash::Md5);
|
||||
|
||||
int offset = packet.localHeaderSize() + NUM_BYTES_RFC4122_UUID + NUM_BYTES_MD5_HASH;
|
||||
int offset = packet.Packet::localHeaderSize() + NUM_BYTES_RFC4122_UUID + NUM_BYTES_MD5_HASH;
|
||||
|
||||
// add the packet payload and the connection UUID
|
||||
hash.addData(packet.getData(), packet.getDataSize() - offset);
|
||||
|
@ -185,5 +185,6 @@ void NLPacket::writeVerificationHashGivenSecret(const QUuid& connectionSecret) {
|
|||
|
||||
auto offset = Packet::localHeaderSize() + NUM_BYTES_RFC4122_UUID;
|
||||
QByteArray verificationHash = hashForPacketAndSecret(*this, connectionSecret);
|
||||
|
||||
memcpy(_packet.get() + offset, verificationHash.data(), verificationHash.size());
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue