fix search PeerInfo
This commit is contained in:
@@ -144,6 +144,7 @@ public:
|
||||
epics::pvData::int32 cid, osiSockAddr const & sendTo, bool responseRequired, bool serverSearch);
|
||||
virtual void channelFindResult(const epics::pvData::Status& status, ChannelFind::shared_pointer const & channelFind, bool wasFound) OVERRIDE FINAL;
|
||||
|
||||
virtual std::tr1::shared_ptr<const PeerInfo> getPeerInfo() OVERRIDE FINAL;
|
||||
virtual void send(epics::pvData::ByteBuffer* buffer, TransportSendControl* control) OVERRIDE FINAL;
|
||||
|
||||
virtual void callback() OVERRIDE FINAL;
|
||||
@@ -158,7 +159,7 @@ private:
|
||||
bool _responseRequired;
|
||||
bool _wasFound;
|
||||
const ServerContextImpl::shared_pointer _context;
|
||||
const PeerInfo::const_shared_pointer& _peer;
|
||||
const PeerInfo::const_shared_pointer _peer;
|
||||
mutable epics::pvData::Mutex _mutex;
|
||||
const epics::pvData::int32 _expectedResponseCount;
|
||||
epics::pvData::int32 _responseCount;
|
||||
|
||||
@@ -339,7 +339,7 @@ void ServerSearchHandler::handleResponse(osiSockAddr* responseFrom,
|
||||
if(allowed) {
|
||||
info.reset(new PeerInfo);
|
||||
info->transport = "pva";
|
||||
info->peer = transport->getRemoteName();
|
||||
info->peer = inetAddressToString(*responseFrom);
|
||||
info->transportVersion = transport->getRevision();
|
||||
}
|
||||
|
||||
@@ -467,6 +467,11 @@ void ServerChannelFindRequesterImpl::channelFindResult(const Status& /*status*/,
|
||||
}
|
||||
}
|
||||
|
||||
std::tr1::shared_ptr<const PeerInfo> ServerChannelFindRequesterImpl::getPeerInfo()
|
||||
{
|
||||
return _peer;
|
||||
}
|
||||
|
||||
void ServerChannelFindRequesterImpl::send(ByteBuffer* buffer, TransportSendControl* control)
|
||||
{
|
||||
control->startMessage(CMD_SEARCH_RESPONSE, 12+4+16+2);
|
||||
|
||||
Reference in New Issue
Block a user