Merge pull request #929 from Emotyco/libresapi_empty_cert

Fixed: Libresapi was throwing exception when requested to add new cer…
This commit is contained in:
Gioacchino 2017-07-07 11:56:12 +02:00 committed by GitHub
commit fc396dd9bb

View file

@ -601,19 +601,30 @@ void PeersHandler::handleWildcard(Request &req, Response &resp)
} }
RsPeerId peer_id; RsPeerId peer_id;
RsPgpId pgp_id; RsPgpId pgp_id;
std::string cleanCert;
int error_code;
std::string error_string; std::string error_string;
if(mRsPeers->loadCertificateFromString(cert_string, peer_id, pgp_id, error_string)
&& mRsPeers->addFriend(peer_id, pgp_id, flags)) if (mRsPeers->cleanCertificate(cert_string, cleanCert, error_code))
{ {
ok = true; if(mRsPeers->loadCertificateFromString(cert_string, peer_id, pgp_id, error_string)
resp.mDataStream << makeKeyValueReference("pgp_id", pgp_id); && mRsPeers->addFriend(peer_id, pgp_id, flags))
resp.mDataStream << makeKeyValueReference("peer_id", peer_id); {
} ok = true;
else resp.mDataStream << makeKeyValueReference("pgp_id", pgp_id);
{ resp.mDataStream << makeKeyValueReference("peer_id", peer_id);
resp.mDebug << "Error: failed to add peer" << std::endl; }
resp.mDebug << error_string << std::endl; else
} {
resp.mDebug << "Error: failed to add peer" << std::endl;
resp.mDebug << error_string << std::endl;
}
}
else
{
resp.mDebug << "Error: failed to add peer" << std::endl;
resp.mDebug << error_code << std::endl;
}
} }
} }
if(ok) if(ok)