rebaes to the new master branch from named-data/ndncert
Change-Id: I4d40daa5d1047a02fe814c464c73f06666c73bc7
diff --git a/src/ca-config.hpp b/src/ca-config.hpp
index 4ff3fe1..5cba37f 100644
--- a/src/ca-config.hpp
+++ b/src/ca-config.hpp
@@ -25,10 +25,6 @@
#include "certificate-request.hpp"
#include "client-config.hpp"
-<<<<<<< HEAD
-#include <ndn-cxx/security/certificate.hpp>
-=======
->>>>>>> Update CaConfig and ClientCaItem. Add INFO packet encoding and decoding.
namespace ndn {
namespace ndncert {
diff --git a/src/ca-detail/ca-memory.cpp b/src/ca-detail/ca-memory.cpp
index 67fd57b..437afa4 100644
--- a/src/ca-detail/ca-memory.cpp
+++ b/src/ca-detail/ca-memory.cpp
@@ -20,7 +20,7 @@
#include "ca-memory.hpp"
-#include <ndn-cxx/security/validation-policy.hpp>
+#include <ndn-cxx/security/v2/validation-policy.hpp>
namespace ndn {
namespace ndncert {
@@ -105,7 +105,7 @@
}
// certificate related
-security::Certificate
+security::v2::Certificate
CaMemory::getCertificate(const std::string& certId)
{
auto search = m_issuedCerts.find(certId);
@@ -116,7 +116,7 @@
}
void
-CaMemory::addCertificate(const std::string& certId, const security::Certificate& cert)
+CaMemory::addCertificate(const std::string& certId, const security::v2::Certificate& cert)
{
auto search = m_issuedCerts.find(certId);
if (search == m_issuedCerts.end()) {
@@ -128,7 +128,7 @@
}
void
-CaMemory::updateCertificate(const std::string& certId, const security::Certificate& cert)
+CaMemory::updateCertificate(const std::string& certId, const security::v2::Certificate& cert)
{
m_issuedCerts[certId] = cert;
}
@@ -142,23 +142,23 @@
}
}
-std::list<security::Certificate>
+std::list<security::v2::Certificate>
CaMemory::listAllIssuedCertificates()
{
- std::list<security::Certificate> result;
+ std::list<security::v2::Certificate> result;
for (const auto& entry : m_issuedCerts) {
result.push_back(entry.second);
}
return result;
}
-std::list<security::Certificate>
+std::list<security::v2::Certificate>
CaMemory::listAllIssuedCertificates(const Name& caName)
{
- std::list<security::Certificate> result;
+ std::list<security::v2::Certificate> result;
for (const auto& entry : m_issuedCerts) {
- const auto& klName = entry.second.getSignatureInfo().getKeyLocator().getName();
- if (security::extractIdentityNameFromKeyLocator(klName) == caName) {
+ const auto& klName = entry.second.getSignature().getKeyLocator().getName();
+ if (security::v2::extractIdentityFromKeyName(klName) == caName) {
result.push_back(entry.second);
}
}
diff --git a/src/ca-detail/ca-memory.hpp b/src/ca-detail/ca-memory.hpp
index fb61218..859c726 100644
--- a/src/ca-detail/ca-memory.hpp
+++ b/src/ca-detail/ca-memory.hpp
@@ -52,27 +52,27 @@
listAllRequests(const Name& caName) override;
// certificate related
- security::Certificate
+ security::v2::Certificate
getCertificate(const std::string& certId) override;
void
- addCertificate(const std::string& certId, const security::Certificate& cert) override;
+ addCertificate(const std::string& certId, const security::v2::Certificate& cert) override;
void
- updateCertificate(const std::string& certId, const security::Certificate& cert) override;
+ updateCertificate(const std::string& certId, const security::v2::Certificate& cert) override;
void
deleteCertificate(const std::string& certId) override;
- std::list<security::Certificate>
+ std::list<security::v2::Certificate>
listAllIssuedCertificates() override;
- std::list<security::Certificate>
+ std::list<security::v2::Certificate>
listAllIssuedCertificates(const Name& caName) override;
private:
std::map<std::string, CertificateRequest> m_requests;
- std::map<std::string, security::Certificate> m_issuedCerts;
+ std::map<std::string, security::v2::Certificate> m_issuedCerts;
};
} // namespace ndncert
diff --git a/src/ca-detail/ca-sqlite.cpp b/src/ca-detail/ca-sqlite.cpp
index dec5146..baaf771 100644
--- a/src/ca-detail/ca-sqlite.cpp
+++ b/src/ca-detail/ca-sqlite.cpp
@@ -20,7 +20,7 @@
#include "ca-sqlite.hpp"
-#include <ndn-cxx/security/validation-policy.hpp>
+#include <ndn-cxx/security/v2/validation-policy.hpp>
#include <ndn-cxx/util/sqlite3-statement.hpp>
#include <sqlite3.h>
@@ -125,7 +125,7 @@
Name caName(statement.getBlock(2));
int status = statement.getInt(3);
std::string challengeStatus = statement.getString(4);
- security::Certificate cert(statement.getBlock(6));
+ security::v2::Certificate cert(statement.getBlock(6));
std::string challengeType = statement.getString(7);
std::string challengeSecrets = statement.getString(8);
std::string challengeTp = statement.getString(9);
@@ -250,7 +250,7 @@
Name caName(statement.getBlock(2));
int status = statement.getInt(3);
std::string challengeStatus = statement.getString(4);
- security::Certificate cert(statement.getBlock(6));
+ security::v2::Certificate cert(statement.getBlock(6));
std::string challengeType = statement.getString(7);
std::string challengeSecrets = statement.getString(8);
std::string challengeTp = statement.getString(9);
@@ -277,7 +277,7 @@
Name caName(statement.getBlock(2));
int status = statement.getInt(3);
std::string challengeStatus = statement.getString(4);
- security::Certificate cert(statement.getBlock(6));
+ security::v2::Certificate cert(statement.getBlock(6));
std::string challengeType = statement.getString(7);
std::string challengeSecrets = statement.getString(8);
std::string challengeTp = statement.getString(9);
@@ -300,7 +300,7 @@
statement.step();
}
-security::Certificate
+security::v2::Certificate
CaSqlite::getCertificate(const std::string& certId)
{
Sqlite3Statement statement(m_database,
@@ -308,7 +308,7 @@
statement.bind(1, certId, SQLITE_TRANSIENT);
if (statement.step() == SQLITE_ROW) {
- return security::Certificate(statement.getBlock(0));
+ return security::v2::Certificate(statement.getBlock(0));
}
else {
BOOST_THROW_EXCEPTION(Error("Certificate with ID " + certId + " cannot be fetched from database"));
@@ -316,7 +316,7 @@
}
void
-CaSqlite::addCertificate(const std::string& certId, const security::Certificate& cert)
+CaSqlite::addCertificate(const std::string& certId, const security::v2::Certificate& cert)
{
Sqlite3Statement statement(m_database,
R"_SQLTEXT_(INSERT INTO IssuedCerts (cert_id, cert_key_name, cert)
@@ -331,7 +331,7 @@
}
void
-CaSqlite::updateCertificate(const std::string& certId, const security::Certificate& cert)
+CaSqlite::updateCertificate(const std::string& certId, const security::v2::Certificate& cert)
{
Sqlite3Statement statement(m_database,
R"_SQLTEXT_(UPDATE IssuedCerts SET cert = ? WHERE cert_id = ?)_SQLTEXT_");
@@ -352,10 +352,10 @@
statement.step();
}
-std::list<security::Certificate>
+std::list<security::v2::Certificate>
CaSqlite::listAllIssuedCertificates()
{
- std::list<security::Certificate> result;
+ std::list<security::v2::Certificate> result;
Sqlite3Statement statement(m_database, R"_SQLTEXT_(SELECT * FROM IssuedCerts)_SQLTEXT_");
while (statement.step() == SQLITE_ROW) {
@@ -364,14 +364,14 @@
return result;
}
-std::list<security::Certificate>
+std::list<security::v2::Certificate>
CaSqlite::listAllIssuedCertificates(const Name& caName)
{
auto allCerts = listAllIssuedCertificates();
- std::list<security::Certificate> result;
+ std::list<security::v2::Certificate> result;
for (const auto& entry : allCerts) {
- const auto& klName = entry.getSignatureInfo().getKeyLocator().getName();
- if (security::extractIdentityNameFromKeyLocator(klName) == caName) {
+ const auto& klName = entry.getSignature().getKeyLocator().getName();
+ if (security::v2::extractIdentityFromKeyName(klName) == caName) {
result.push_back(entry);
}
}
diff --git a/src/ca-detail/ca-sqlite.hpp b/src/ca-detail/ca-sqlite.hpp
index 9b09e1a..f0039f8 100644
--- a/src/ca-detail/ca-sqlite.hpp
+++ b/src/ca-detail/ca-sqlite.hpp
@@ -60,22 +60,22 @@
listAllRequests(const Name& caName) override;
// certificate related
- security::Certificate
+ security::v2::Certificate
getCertificate(const std::string& certId) override;
void
- addCertificate(const std::string& certId, const security::Certificate& cert) override;
+ addCertificate(const std::string& certId, const security::v2::Certificate& cert) override;
void
- updateCertificate(const std::string& certId, const security::Certificate& cert) override;
+ updateCertificate(const std::string& certId, const security::v2::Certificate& cert) override;
void
deleteCertificate(const std::string& certId) override;
- std::list<security::Certificate>
+ std::list<security::v2::Certificate>
listAllIssuedCertificates() override;
- std::list<security::Certificate>
+ std::list<security::v2::Certificate>
listAllIssuedCertificates(const Name& caName) override;
PUBLIC_WITH_TESTS_ELSE_PRIVATE:
diff --git a/src/ca-module.cpp b/src/ca-module.cpp
index 9f95157..377486f 100644
--- a/src/ca-module.cpp
+++ b/src/ca-module.cpp
@@ -477,123 +477,6 @@
return certRequest;
}
-<<<<<<< HEAD
-/**
- * @brief Generate JSON file to response PROBE insterest
- *
- * PROBE response JSON format:
- * {
- * "name": "@p identifier"
- * }
- */
-JsonSection
-CaModule::genProbeResponseJson(const Name& identifier, const std::string& m_probe, const JsonSection& parameterJson)
-{
- std::vector<std::string> fields;
- std::string delimiter = ":";
- size_t last = 0;
- size_t next = 0;
- while ((next = m_probe.find(delimiter, last)) != std::string::npos) {
- fields.push_back(m_probe.substr(last, next - last));
- last = next + 1;
- }
- fields.push_back(m_probe.substr(last));
- JsonSection root;
-
- for (size_t i = 0; i < fields.size(); ++i) {
- root.put(fields.at(i), parameterJson.get(fields.at(i), ""));
- }
-
- root.put(JSON_CA_NAME, identifier.toUri());
- return root;
-}
-
-/**
- * @brief Generate JSON file to response NEW interest
- *
- * Target JSON format:
- * {
- * "ecdh-pub": "@p echdPub",
- * "salt": "@p salt"
- * "request-id": "@p requestId",
- * "status": "@p status",
- * "challenges": [
- * {
- * "challenge-id": ""
- * },
- * {
- * "challenge-id": ""
- * },
- * ...
- * ]
- * }
- */
-JsonSection
-CaModule::genInfoResponseJson()
-{
- JsonSection root;
- // ca-prefix
- Name caName = m_config.m_caPrefix;
- root.put("ca-prefix", caName.toUri());
-
- // ca-info
- const auto& pib = m_keyChain.getPib();
- const auto& identity = pib.getIdentity(m_config.m_caPrefix);
- const auto& cert = identity.getDefaultKey().getDefaultCertificate();
- std::string caInfo;
- if (m_config.m_caInfo.empty()) {
- caInfo = "Issued by " + cert.getSignatureInfo().getKeyLocator().getName().toUri();
- }
- else {
- caInfo = m_config.m_caInfo;
- }
- root.put("ca-info", caInfo);
-
- // probe
- root.put("probe", m_config.m_probe);
-
- // certificate
- std::stringstream ss;
- io::save(cert, ss);
- root.put("certificate", ss.str());
- return root;
-}
-
-JsonSection
-CaModule::genNewResponseJson(const std::string& ecdhKey, const std::string& salt,
- const CertificateRequest& request,
- const std::list<std::string>& challenges)
-{
- JsonSection root;
- JsonSection challengesSection;
- root.put(JSON_CA_ECDH, ecdhKey);
- root.put(JSON_CA_SALT, salt);
- root.put(JSON_CA_REQUEST_ID, request.m_requestId);
- root.put(JSON_CA_STATUS, std::to_string(request.m_status));
-
- for (const auto& entry : challenges) {
- JsonSection challenge;
- challenge.put(JSON_CA_CHALLENGE_ID, entry);
- challengesSection.push_back(std::make_pair("", challenge));
- }
- root.add_child(JSON_CA_CHALLENGES, challengesSection);
- return root;
-}
-
-JsonSection
-CaModule::genChallengeResponseJson(const CertificateRequest& request)
-{
- JsonSection root;
- JsonSection challengesSection;
- root.put(JSON_CA_STATUS, request.m_status);
- root.put(JSON_CHALLENGE_STATUS, request.m_challengeStatus);
- root.put(JSON_CHALLENGE_REMAINING_TRIES, std::to_string(request.m_remainingTries));
- root.put(JSON_CHALLENGE_REMAINING_TIME, std::to_string(request.m_remainingTime));
- return root;
-}
-
-=======
->>>>>>> add two functions for CA Info Packet and Metadata Packet
void
CaModule::onRegisterFailed(const std::string& reason)
{
diff --git a/src/certificate-request.hpp b/src/certificate-request.hpp
index 216c21f..3ac9948 100644
--- a/src/certificate-request.hpp
+++ b/src/certificate-request.hpp
@@ -22,14 +22,10 @@
#define NDNCERT_CERTIFICATE_REQUEST_HPP
#include "ndncert-common.hpp"
-<<<<<<< HEAD
-#include <ndn-cxx/security/certificate.hpp>
-=======
#include <ndn-cxx/security/v2/certificate.hpp>
#include <boost/property_tree/info_parser.hpp>
#include <boost/property_tree/json_parser.hpp>
#include <boost/property_tree/ptree.hpp>
->>>>>>> Update CaConfig and ClientCaItem. Add INFO packet encoding and decoding.
namespace ndn {
namespace ndncert {
diff --git a/src/challenge-module/challenge-credential.cpp b/src/challenge-module/challenge-credential.cpp
index 16724bc..bdc8b37 100644
--- a/src/challenge-module/challenge-credential.cpp
+++ b/src/challenge-module/challenge-credential.cpp
@@ -112,7 +112,7 @@
ss2.clear();
// verify the credential and the self-signed cert
- Name signingKeyName = cert->getSignatureInfo().getKeyLocator().getName();
+ Name signingKeyName = cert->getSignature().getKeyLocator().getName();
for (auto anchor : m_trustAnchors) {
if (anchor.getKeyName() == signingKeyName) {
if (security::verifySignature(*cert, anchor) && security::verifySignature(*self, *cert)
diff --git a/src/client-config.hpp b/src/client-config.hpp
index 0195c48..80d5241 100644
--- a/src/client-config.hpp
+++ b/src/client-config.hpp
@@ -22,12 +22,7 @@
#define NDNCERT_CLIENT_CONFIG_HPP
#include "certificate-request.hpp"
-<<<<<<< HEAD
-#include <ndn-cxx/security/certificate.hpp>
-=======
-
#include <ndn-cxx/security/v2/certificate.hpp>
->>>>>>> Update CaConfig and ClientCaItem. Add INFO packet encoding and decoding.
namespace ndn {
namespace ndncert {
diff --git a/src/client-module.cpp b/src/client-module.cpp
index 069d796..697ff8f 100644
--- a/src/client-module.cpp
+++ b/src/client-module.cpp
@@ -320,19 +320,30 @@
}
catch (const std::exception& e) {
_LOG_ERROR("Cannot add replied certificate into the keychain " << e.what());
- return nullptr;
+ return;
}
}
-JsonSection
-ClientModule::getJsonFromData(const Data& data)
+void
+ClientModule::endSession()
{
- std::istringstream ss(encoding::readString(data.getContent()));
- JsonSection json;
- boost::property_tree::json_parser::read_json(ss, json);
- return json;
+ if (getApplicationStatus() == STATUS_SUCCESS || getApplicationStatus() == STATUS_ENDED) {
+ return;
+ }
+ if (m_isNewlyCreatedIdentity) {
+ // put the identity into the if scope is because it may cause an error
+ // outside since when endSession is called, identity may not have been created yet.
+ auto identity = m_keyChain.getPib().getIdentity(m_identityName);
+ m_keyChain.deleteIdentity(identity);
+ }
+ else if (m_isNewlyCreatedKey) {
+ auto identity = m_keyChain.getPib().getIdentity(m_identityName);
+ m_keyChain.deleteKey(identity, m_key);
+ }
+ m_status = STATUS_ENDED;
}
+
std::vector<std::string>
ClientModule::parseProbeComponents(const std::string& probe)
{
@@ -348,66 +359,5 @@
return components;
}
-JsonSection
-ClientModule::genProbeRequestJson(const ClientCaItem& ca, const std::string& probeInfo)
-{
- JsonSection root;
- std::vector<std::string> fields = parseProbeComponents(ca.m_probe);
- std::vector<std::string> arguments = parseProbeComponents(probeInfo);;
-
- if (arguments.size() != fields.size()) {
- BOOST_THROW_EXCEPTION(Error("Error in genProbeRequestJson: argument list does not match field list in the config file."));
- }
- for (size_t i = 0; i < fields.size(); ++i) {
- root.put(fields.at(i), arguments.at(i));
- }
- return root;
-}
-
-JsonSection
-ClientModule::genNewRequestJson(const std::string& ecdhPub, const security::v2::Certificate& certRequest,
- const shared_ptr<Data>& probeToken)
-{
- JsonSection root;
- std::stringstream ss;
- try {
- security::transform::bufferSource(certRequest.wireEncode().wire(), certRequest.wireEncode().size())
- >> security::transform::base64Encode(false)
- >> security::transform::streamSink(ss);
- }
- catch (const security::transform::Error& e) {
- _LOG_ERROR("Cannot convert self-signed cert into BASE64 string " << e.what());
- return root;
- }
- root.put(JSON_CLIENT_ECDH, ecdhPub);
- root.put(JSON_CLIENT_CERT_REQ, ss.str());
- if (probeToken != nullptr) {
- // clear the stringstream
- ss.str("");
- ss.clear();
- // transform the probe data into a base64 string
- try {
- security::transform::bufferSource(probeToken->wireEncode().wire(), probeToken->wireEncode().size())
- >> security::transform::base64Encode(false)
- >> security::transform::streamSink(ss);
- }
- catch (const security::transform::Error& e) {
- _LOG_ERROR("Cannot convert self-signed cert into BASE64 string " << e.what());
- return root;
- }
- // add the token into the JSON
- root.put("probe-token", ss.str());
- }
- return root;
-}
-
-Block
-ClientModule::paramFromJson(const JsonSection& json)
-{
- std::stringstream ss;
- boost::property_tree::write_json(ss, json);
- return makeStringBlock(ndn::tlv::ApplicationParameters, ss.str());
-}
-
} // namespace ndncert
} // namespace ndn
diff --git a/src/client-module.hpp b/src/client-module.hpp
index f45b034..46a0a29 100644
--- a/src/client-module.hpp
+++ b/src/client-module.hpp
@@ -111,13 +111,6 @@
void
onCertFetchResponse(const Data& reply);
- // helper functions
- static JsonSection
- getJsonFromData(const Data& data);
-
- static Block
- paramFromJson(const JsonSection& json);
-
static std::vector<std::string>
parseProbeComponents(const std::string& probe);
@@ -125,14 +118,6 @@
endSession();
PUBLIC_WITH_TESTS_ELSE_PRIVATE:
- JsonSection
- genProbeRequestJson(const ClientCaItem& ca, const std::string& probeInfo);
-
- JsonSection
- genNewRequestJson(const std::string& ecdhPub, const security::v2::Certificate& certRequest,
- const shared_ptr<Data>& probeToken = nullptr);
-
-PUBLIC_WITH_TESTS_ELSE_PRIVATE:
ClientConfig m_config;
security::v2::KeyChain& m_keyChain;
diff --git a/src/crypto-support/crypto-helper.hpp b/src/crypto-support/crypto-helper.hpp
index 4381977..53f57f1 100644
--- a/src/crypto-support/crypto-helper.hpp
+++ b/src/crypto-support/crypto-helper.hpp
@@ -26,12 +26,12 @@
#include "certificate-request.hpp"
-static const int INFO_LEN = 10;
-static const uint8_t INFO[] = {0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9};
-
namespace ndn {
namespace ndncert {
+static const int INFO_LEN = 10;
+static const uint8_t INFO[] = {0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9};
+
struct ECDH_CTX {
int EC_NID;
EVP_PKEY_CTX* ctx_params;
diff --git a/src/ndncert-common.hpp b/src/ndncert-common.hpp
index ce43640..a6a7a04 100644
--- a/src/ndncert-common.hpp
+++ b/src/ndncert-common.hpp
@@ -46,7 +46,7 @@
#include <ndn-cxx/encoding/block.hpp>
#include <ndn-cxx/lp/nack.hpp>
#include <ndn-cxx/security/key-chain.hpp>
-#include <ndn-cxx/security/certificate.hpp>
+#include <ndn-cxx/security/v2/certificate.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/assert.hpp>
diff --git a/tests/identity-management-fixture.cpp b/tests/identity-management-fixture.cpp
index db99d5a..1694dfa 100644
--- a/tests/identity-management-fixture.cpp
+++ b/tests/identity-management-fixture.cpp
@@ -20,7 +20,7 @@
*/
#include "identity-management-fixture.hpp"
-#include <ndn-cxx/security/additional-description.hpp>
+#include <ndn-cxx/security/v2/additional-description.hpp>
#include <ndn-cxx/util/io.hpp>
#include <boost/filesystem.hpp>
@@ -92,7 +92,7 @@
v2::AdditionalDescription description;
description.set("type", "sub-certificate");
- info.addCustomTlv(description.wireEncode());
+ info.appendTypeSpecificTlv(description.wireEncode());
m_keyChain.sign(request, signingByIdentity(issuer).setSignatureInfo(info));
m_keyChain.setDefaultCertificate(subIdentity.getDefaultKey(), request);
diff --git a/tests/unit-tests/client-module.t.cpp b/tests/unit-tests/client-module.t.cpp
index 888ad6b..7e6214b 100644
--- a/tests/unit-tests/client-module.t.cpp
+++ b/tests/unit-tests/client-module.t.cpp
@@ -65,26 +65,26 @@
"zhiyi@cs.ucla.edu");
}
-BOOST_AUTO_TEST_CASE(GenProbeRequestJson)
-{
- ClientModule client(m_keyChain);
- client.getClientConf().load("tests/unit-tests/client.conf.test");
+// BOOST_AUTO_TEST_CASE(GenProbeRequestJson)
+// {
+// ClientModule client(m_keyChain);
+// client.getClientConf().load("tests/unit-tests/client.conf.test");
- auto identity = addIdentity(Name("/site"));
- auto key = identity.getDefaultKey();
- auto cert = key.getDefaultCertificate();
+// auto identity = addIdentity(Name("/site"));
+// auto key = identity.getDefaultKey();
+// auto cert = key.getDefaultCertificate();
- ClientCaItem item;
- item.m_probe = "email:uid:name";
- item.m_caPrefix = Name("/site");
- item.m_anchor = cert;
- client.getClientConf().m_caItems.push_back(item);
+// ClientCaItem item;
+// item.m_probe = "email:uid:name";
+// item.m_caPrefix = Name("/site");
+// item.m_anchor = cert;
+// client.getClientConf().m_caItems.push_back(item);
- auto interestPacket = client.genProbeRequestJson(item, "yufeng@ucla.edu:123456789:Yufeng Zhang");
- BOOST_CHECK_EQUAL(interestPacket.get("email", ""), "yufeng@ucla.edu");
- BOOST_CHECK_EQUAL(interestPacket.get("uid", ""), "123456789");
- BOOST_CHECK_EQUAL(interestPacket.get("name", ""), "Yufeng Zhang");
-}
+// auto interestPacket = client.genProbeRequestJson(item, "yufeng@ucla.edu:123456789:Yufeng Zhang");
+// BOOST_CHECK_EQUAL(interestPacket.get("email", ""), "yufeng@ucla.edu");
+// BOOST_CHECK_EQUAL(interestPacket.get("uid", ""), "123456789");
+// BOOST_CHECK_EQUAL(interestPacket.get("name", ""), "Yufeng Zhang");
+// }
BOOST_AUTO_TEST_SUITE_END() // TestClientModule
diff --git a/tools/ndncert-client.cpp b/tools/ndncert-client.cpp
index 788ee74..f7bd7b0 100644
--- a/tools/ndncert-client.cpp
+++ b/tools/ndncert-client.cpp
@@ -20,6 +20,7 @@
#include "challenge-module.hpp"
#include "protocol-detail/info.hpp"
+#include "client-module.hpp"
#include <iostream>
#include <string>
@@ -119,7 +120,7 @@
client.onCertFetchResponse(reply);
std::cerr << "Step " << nStep++
<< ": DONE! Certificate has already been installed to local keychain\n"
- << "Certificate Name: " << cert->getName().toUri() << std::endl;
+ << "Certificate Name: " << reply.getName().toUri() << std::endl;
}
static void
@@ -224,7 +225,7 @@
auto caItem = INFO::decodeClientConfigFromContent(contentBlock);
std::cerr << "Will use a new trust anchor, please double check the identity info: \n"
- << "This trust anchor information is signed by " << reply.getSignatureInfo().getKeyLocator()
+ << "This trust anchor information is signed by " << reply.getSignature().getKeyLocator()
<< std::endl
<< "The certificate is " << caItem.m_anchor << std::endl
<< "Do you trust the information? Type in YES or NO" << std::endl;