ccnx: Correct way of verification, no longer rely on ccnx checking

Change-Id: I10c7fb51bc9bcabb906749a0d5122dfa1fc57970
diff --git a/ccnx/ccnx-pco.cpp b/ccnx/ccnx-pco.cpp
index 700e1e5..b66b184 100644
--- a/ccnx/ccnx-pco.cpp
+++ b/ccnx/ccnx-pco.cpp
@@ -20,6 +20,7 @@
  */
 
 #include "ccnx-pco.h"
+#include "ccnx-cert.h"
 
 namespace Ccnx {
 
@@ -37,25 +38,22 @@
 
 }
 
-ParsedContentObject::ParsedContentObject(const unsigned char *data, size_t len, bool integrityChecked, bool verified)
+ParsedContentObject::ParsedContentObject(const unsigned char *data, size_t len, bool verified)
             : m_comps(NULL)
-            , m_integrityChecked(integrityChecked)
             , m_verified(verified)
 {
   init(data, len);
 }
 
-ParsedContentObject::ParsedContentObject(const Bytes &bytes, bool integrityChecked, bool verified)
+ParsedContentObject::ParsedContentObject(const Bytes &bytes, bool verified)
             : m_comps(NULL)
-            , m_integrityChecked(integrityChecked)
             , m_verified(verified)
 {
   init(head(bytes), bytes.size());
 }
 
-ParsedContentObject::ParsedContentObject(const ParsedContentObject &other, bool integrityChecked, bool verified)
+ParsedContentObject::ParsedContentObject(const ParsedContentObject &other, bool verified)
             : m_comps(NULL)
-            , m_integrityChecked(integrityChecked)
             , m_verified(verified)
 {
   init(head(other.m_bytes), other.m_bytes.size());
@@ -141,4 +139,10 @@
   return OTHER;
 }
 
+void
+ParsedContentObject::verifySignature(const CertPtr &cert)
+{
+  m_verified = (ccn_verify_signature(head(m_bytes), m_pco.offset[CCN_PCO_E], &m_pco, cert->pkey()) == 1);
+}
+
 }