FEATURE: qBittorrent can now act as a tracker

This commit is contained in:
Christophe Dumez
2010-10-15 21:55:56 +00:00
parent f6172f8c77
commit aff27558dd
12 changed files with 437 additions and 6 deletions

37
src/tracker/qpeer.h Normal file
View File

@@ -0,0 +1,37 @@
#ifndef QPEER_H
#define QPEER_H
#include <libtorrent/entry.hpp>
#include <QString>
using namespace libtorrent;
struct QPeer {
bool operator!=(const QPeer &other) const {
return qhash() != other.qhash();
}
bool operator==(const QPeer &other) const {
return qhash() == other.qhash();
}
QString qhash() const {
return ip+":"+QString::number(port);
}
entry toEntry(bool no_peer_id) const {
entry::dictionary_type peer_map;
if(!no_peer_id)
peer_map["id"] = entry(peer_id.toStdString());
peer_map["ip"] = entry(ip.toStdString());
peer_map["port"] = entry(port);
return entry(peer_map);
}
QString ip;
QString peer_id;
int port;
};
#endif // QPEER_H