mirror of https://github.com/aria2/aria2
Made LpdMessage struct
parent
fc4d38d236
commit
e700d2bb1f
|
@ -39,7 +39,7 @@ LpdMessage::LpdMessage() {}
|
||||||
|
|
||||||
LpdMessage::LpdMessage
|
LpdMessage::LpdMessage
|
||||||
(const SharedHandle<Peer>& peer, const std::string& infoHash)
|
(const SharedHandle<Peer>& peer, const std::string& infoHash)
|
||||||
: peer_(peer), infoHash_(infoHash)
|
: peer(peer), infoHash(infoHash)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
LpdMessage::~LpdMessage() {}
|
LpdMessage::~LpdMessage() {}
|
||||||
|
|
|
@ -43,26 +43,12 @@ namespace aria2 {
|
||||||
|
|
||||||
class Peer;
|
class Peer;
|
||||||
|
|
||||||
class LpdMessage {
|
struct LpdMessage {
|
||||||
private:
|
SharedHandle<Peer> peer;
|
||||||
SharedHandle<Peer> peer_;
|
std::string infoHash;
|
||||||
std::string infoHash_;
|
|
||||||
public:
|
|
||||||
LpdMessage();
|
LpdMessage();
|
||||||
|
|
||||||
LpdMessage(const SharedHandle<Peer>& peer, const std::string& infoHash);
|
LpdMessage(const SharedHandle<Peer>& peer, const std::string& infoHash);
|
||||||
|
|
||||||
~LpdMessage();
|
~LpdMessage();
|
||||||
|
|
||||||
const SharedHandle<Peer>& getPeer() const
|
|
||||||
{
|
|
||||||
return peer_;
|
|
||||||
}
|
|
||||||
|
|
||||||
const std::string& getInfoHash() const
|
|
||||||
{
|
|
||||||
return infoHash_;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace aria2
|
} // namespace aria2
|
||||||
|
|
|
@ -77,16 +77,15 @@ bool LpdReceiveMessageCommand::execute()
|
||||||
if(!m) {
|
if(!m) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if(!m->getPeer()) {
|
if(!m->peer) {
|
||||||
// bad message
|
// bad message
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
SharedHandle<BtRegistry> reg = e_->getBtRegistry();
|
SharedHandle<BtRegistry> reg = e_->getBtRegistry();
|
||||||
SharedHandle<DownloadContext> dctx =
|
SharedHandle<DownloadContext> dctx = reg->getDownloadContext(m->infoHash);
|
||||||
reg->getDownloadContext(m->getInfoHash());
|
|
||||||
if(!dctx) {
|
if(!dctx) {
|
||||||
A2_LOG_DEBUG(fmt("Download Context is null for infohash=%s.",
|
A2_LOG_DEBUG(fmt("Download Context is null for infohash=%s.",
|
||||||
util::toHex(m->getInfoHash()).c_str()));
|
util::toHex(m->infoHash).c_str()));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(bittorrent::getTorrentAttrs(dctx)->privateTorrent) {
|
if(bittorrent::getTorrentAttrs(dctx)->privateTorrent) {
|
||||||
|
@ -99,7 +98,7 @@ bool LpdReceiveMessageCommand::execute()
|
||||||
assert(!btobj.isNull());
|
assert(!btobj.isNull());
|
||||||
SharedHandle<PeerStorage> peerStorage = btobj.peerStorage_;
|
SharedHandle<PeerStorage> peerStorage = btobj.peerStorage_;
|
||||||
assert(peerStorage);
|
assert(peerStorage);
|
||||||
SharedHandle<Peer> peer = m->getPeer();
|
SharedHandle<Peer> peer = m->peer;
|
||||||
if(peerStorage->addPeer(peer)) {
|
if(peerStorage->addPeer(peer)) {
|
||||||
A2_LOG_DEBUG(fmt("LPD peer %s:%u local=%d added.",
|
A2_LOG_DEBUG(fmt("LPD peer %s:%u local=%d added.",
|
||||||
peer->getIPAddress().c_str(), peer->getPort(),
|
peer->getIPAddress().c_str(), peer->getPort(),
|
||||||
|
|
|
@ -52,8 +52,8 @@ void LpdMessageReceiverTest::testReceiveMessage()
|
||||||
SharedHandle<LpdMessage> msg = rcv.receiveMessage();
|
SharedHandle<LpdMessage> msg = rcv.receiveMessage();
|
||||||
CPPUNIT_ASSERT(msg);
|
CPPUNIT_ASSERT(msg);
|
||||||
CPPUNIT_ASSERT_EQUAL(std::string("cd41c7fdddfd034a15a04d7ff881216e01c4ceaf"),
|
CPPUNIT_ASSERT_EQUAL(std::string("cd41c7fdddfd034a15a04d7ff881216e01c4ceaf"),
|
||||||
util::toHex(msg->getInfoHash()));
|
util::toHex(msg->infoHash));
|
||||||
CPPUNIT_ASSERT_EQUAL((uint16_t)6000, msg->getPeer()->getPort());
|
CPPUNIT_ASSERT_EQUAL((uint16_t)6000, msg->peer->getPort());
|
||||||
|
|
||||||
// Bad infohash
|
// Bad infohash
|
||||||
std::string badInfoHashString = "cd41c7fdddfd034a15a04d7ff881216e01c4ce";
|
std::string badInfoHashString = "cd41c7fdddfd034a15a04d7ff881216e01c4ce";
|
||||||
|
@ -67,8 +67,8 @@ void LpdMessageReceiverTest::testReceiveMessage()
|
||||||
rcv.getSocket()->isReadable(5);
|
rcv.getSocket()->isReadable(5);
|
||||||
msg = rcv.receiveMessage();
|
msg = rcv.receiveMessage();
|
||||||
CPPUNIT_ASSERT(msg);
|
CPPUNIT_ASSERT(msg);
|
||||||
CPPUNIT_ASSERT(!msg->getPeer());
|
CPPUNIT_ASSERT(!msg->peer);
|
||||||
CPPUNIT_ASSERT(msg->getInfoHash().empty());
|
CPPUNIT_ASSERT(msg->infoHash.empty());
|
||||||
|
|
||||||
// Bad port
|
// Bad port
|
||||||
request =
|
request =
|
||||||
|
@ -81,8 +81,8 @@ void LpdMessageReceiverTest::testReceiveMessage()
|
||||||
rcv.getSocket()->isReadable(5);
|
rcv.getSocket()->isReadable(5);
|
||||||
msg = rcv.receiveMessage();
|
msg = rcv.receiveMessage();
|
||||||
CPPUNIT_ASSERT(msg);
|
CPPUNIT_ASSERT(msg);
|
||||||
CPPUNIT_ASSERT(!msg->getPeer());
|
CPPUNIT_ASSERT(!msg->peer);
|
||||||
CPPUNIT_ASSERT(msg->getInfoHash().empty());
|
CPPUNIT_ASSERT(msg->infoHash.empty());
|
||||||
|
|
||||||
// No data available
|
// No data available
|
||||||
msg = rcv.receiveMessage();
|
msg = rcv.receiveMessage();
|
||||||
|
|
Loading…
Reference in New Issue