summaryrefslogtreecommitdiff
path: root/src/LpdMessageReceiver.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2011-11-05 18:05:23 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2011-11-05 18:05:23 +0900
commit0c162dfbfb4a875fac9374c65cf93382ff9ce4ed (patch)
tree6fbc9cc204305017438d9511db631b9b2e7fc538 /src/LpdMessageReceiver.cc
parent6ea1b68db186036e9f05c06915f8c4bd757c3a25 (diff)
Made util::fromHex and base32::decode function template
Diffstat (limited to 'src/LpdMessageReceiver.cc')
-rw-r--r--src/LpdMessageReceiver.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/LpdMessageReceiver.cc b/src/LpdMessageReceiver.cc
index f5fd290c..e46dc915 100644
--- a/src/LpdMessageReceiver.cc
+++ b/src/LpdMessageReceiver.cc
@@ -94,7 +94,7 @@ SharedHandle<LpdMessage> LpdMessageReceiver::receiveMessage()
return msg;
}
SharedHandle<HttpHeader> header = proc.getHttpRequestHeader();
- std::string infoHashString = header->getFirst("Infohash");
+ const std::string& infoHashString = header->getFirst("Infohash");
uint16_t port = header->getFirstAsUInt("Port");
A2_LOG_INFO(fmt("LPD message received infohash=%s, port=%u from %s",
infoHashString.c_str(),
@@ -102,7 +102,8 @@ SharedHandle<LpdMessage> LpdMessageReceiver::receiveMessage()
peerAddr.first.c_str()));
std::string infoHash;
if(infoHashString.size() != 40 ||
- (infoHash = util::fromHex(infoHashString)).empty() ||
+ (infoHash = util::fromHex(infoHashString.begin(),
+ infoHashString.end())).empty() ||
port == 0) {
A2_LOG_INFO(fmt("LPD bad request. infohash=%s", infoHashString.c_str()));
msg.reset(new LpdMessage());