Ping code cleanup

This commit is contained in:
Atlante45 2015-07-15 15:58:14 -07:00
parent a39610da09
commit f065638748
2 changed files with 14 additions and 23 deletions

View file

@ -437,43 +437,35 @@ SharedNodePointer LimitedNodeList::addOrUpdateNode(const QUuid& uuid, NodeType_t
std::unique_ptr<NLPacket> LimitedNodeList::constructPingPacket(PingType_t pingType) {
int packetSize = sizeof(PingType_t) + sizeof(quint64);
auto pingPacket = NLPacket::create(PacketType::Ping, packetSize);
pingPacket->writePrimitive(pingType);
pingPacket->writePrimitive(usecTimestampNow());
QDataStream packetStream(pingPacket.get());
packetStream << pingType;
packetStream << usecTimestampNow();
return pingPacket;
return std::move(pingPacket);
}
std::unique_ptr<NLPacket> LimitedNodeList::constructPingReplyPacket(NLPacket& pingPacket) {
QDataStream pingPacketStream(&pingPacket);
PingType_t typeFromOriginalPing;
pingPacketStream >> typeFromOriginalPing;
quint64 timeFromOriginalPing;
pingPacketStream >> timeFromOriginalPing;
pingPacket.readPrimitive(&typeFromOriginalPing);
pingPacket.readPrimitive(&timeFromOriginalPing);
int packetSize = sizeof(PingType_t) + sizeof(quint64) + sizeof(quint64);
auto replyPacket = NLPacket::create(PacketType::PingReply, packetSize);
replyPacket->writePrimitive(typeFromOriginalPing);
replyPacket->writePrimitive(timeFromOriginalPing);
replyPacket->writePrimitive(usecTimestampNow());
QDataStream packetStream(replyPacket.get());
packetStream << typeFromOriginalPing << timeFromOriginalPing << usecTimestampNow();
return replyPacket;
return std::move(replyPacket);
}
std::unique_ptr<NLPacket> LimitedNodeList::constructICEPingPacket(PingType_t pingType, const QUuid& iceID) {
int packetSize = NUM_BYTES_RFC4122_UUID + sizeof(PingType_t);
auto icePingPacket = NLPacket::create(PacketType::ICEPing, packetSize);
icePingPacket->write(iceID.toRfc4122());
icePingPacket->writePrimitive(pingType);
return icePingPacket;
return std::move(icePingPacket);
}
std::unique_ptr<NLPacket> LimitedNodeList::constructICEPingReplyPacket(NLPacket& pingPacket, const QUuid& iceID) {

View file

@ -125,12 +125,11 @@ qint64 NodeList::sendStatsToDomainServer(const QJsonObject& statsObject) {
}
void NodeList::timePingReply(QSharedPointer<NLPacket> packet, const SharedNodePointer& sendingNode) {
QDataStream packetStream(packet.data());
quint8 pingType;
PingType_t pingType;
quint64 ourOriginalTime, othersReplyTime;
packetStream >> pingType >> ourOriginalTime >> othersReplyTime;
packet->readPrimitive(&pingType);
packet->readPrimitive(&ourOriginalTime);
packet->readPrimitive(&othersReplyTime);
quint64 now = usecTimestampNow();
int pingTime = now - ourOriginalTime;