diff --git a/src/security/certificate/certificate-extension.cpp b/src/security/certificate/certificate-extension.cpp
index 51c29ed..e2636db 100644
--- a/src/security/certificate/certificate-extension.cpp
+++ b/src/security/certificate/certificate-extension.cpp
@@ -6,6 +6,19 @@
  * See COPYING for copyright and distribution information.
  */
 
+#if __clang__
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wreorder"
+#pragma clang diagnostic ignored "-Wtautological-compare"
+#pragma clang diagnostic ignored "-Wunused-variable"
+#pragma clang diagnostic ignored "-Wunused-function"
+#elif __GNUC__
+#pragma GCC diagnostic ignored "-Wreorder"
+#pragma GCC diagnostic ignored "-Wtautological-compare"
+#pragma GCC diagnostic ignored "-Wunused-variable"
+#pragma GCC diagnostic ignored "-Wunused-function"
+#endif
+
 #include <ndn-cpp/security/certificate/certificate-extension.hpp>
 #include <cryptopp/asn.h>
 
diff --git a/src/security/certificate/certificate-subject-description.cpp b/src/security/certificate/certificate-subject-description.cpp
index 472b30e..c91cb6a 100644
--- a/src/security/certificate/certificate-subject-description.cpp
+++ b/src/security/certificate/certificate-subject-description.cpp
@@ -6,6 +6,19 @@
  * See COPYING for copyright and distribution information.
  */
 
+#if __clang__
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wreorder"
+#pragma clang diagnostic ignored "-Wtautological-compare"
+#pragma clang diagnostic ignored "-Wunused-variable"
+#pragma clang diagnostic ignored "-Wunused-function"
+#elif __GNUC__
+#pragma GCC diagnostic ignored "-Wreorder"
+#pragma GCC diagnostic ignored "-Wtautological-compare"
+#pragma GCC diagnostic ignored "-Wunused-variable"
+#pragma GCC diagnostic ignored "-Wunused-function"
+#endif
+
 #include <ndn-cpp/security/certificate/certificate-subject-description.hpp>
 #include <cryptopp/asn.h>
 
diff --git a/src/security/certificate/certificate.cpp b/src/security/certificate/certificate.cpp
index 414785d..73827a3 100644
--- a/src/security/certificate/certificate.cpp
+++ b/src/security/certificate/certificate.cpp
@@ -6,23 +6,24 @@
  * See COPYING for copyright and distribution information.
  */
 
+#if __clang__
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wreorder"
+#pragma clang diagnostic ignored "-Wtautological-compare"
+#pragma clang diagnostic ignored "-Wunused-variable"
+#pragma clang diagnostic ignored "-Wunused-function"
+#elif __GNUC__
+#pragma GCC diagnostic ignored "-Wreorder"
+#pragma GCC diagnostic ignored "-Wtautological-compare"
+#pragma GCC diagnostic ignored "-Wunused-variable"
+#pragma GCC diagnostic ignored "-Wunused-function"
+#endif
+
 #include <ndn-cpp/common.hpp>
 
 #include <ndn-cpp/security/certificate/certificate.hpp>
 
-#if NDN_CPP_USE_SYSTEM_BOOST
-#include <boost/iostreams/stream.hpp>
-#include <boost/iostreams/device/array.hpp>
-namespace ndnboost = boost;
-#else
-// We can use ndnboost::iostreams because this is internal and will not conflict with the application if it uses boost::iostreams.
-#include <ndnboost/iostreams/stream.hpp>
-#include <ndnboost/iostreams/device/array.hpp>
-#endif
-
 #include "../../util/logging.hpp"
-// #include "../../util/blob-stream.hpp"
-// #include <ndn-cpp/security/certificate/certificate.hpp>
 #include "../../util/time.hpp"
 
 #include <cryptopp/asn.h>
diff --git a/src/security/certificate/public-key.cpp b/src/security/certificate/public-key.cpp
index 205dcd2..6666783 100644
--- a/src/security/certificate/public-key.cpp
+++ b/src/security/certificate/public-key.cpp
@@ -6,19 +6,22 @@
  * See COPYING for copyright and distribution information.
  */
 
+#if __clang__
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wreorder"
+#pragma clang diagnostic ignored "-Wtautological-compare"
+#pragma clang diagnostic ignored "-Wunused-variable"
+#pragma clang diagnostic ignored "-Wunused-function"
+#elif __GNUC__
+#pragma GCC diagnostic ignored "-Wreorder"
+#pragma GCC diagnostic ignored "-Wtautological-compare"
+#pragma GCC diagnostic ignored "-Wunused-variable"
+#pragma GCC diagnostic ignored "-Wunused-function"
+#endif
+
 #include <ndn-cpp/common.hpp>
 #include <ndn-cpp/security/certificate/public-key.hpp>
 
-#if NDN_CPP_USE_SYSTEM_BOOST
-#include <boost/iostreams/stream.hpp>
-#include <boost/iostreams/device/array.hpp>
-namespace ndnboost = boost;
-#else
-// We can use ndnboost::iostreams because this is internal and will not conflict with the application if it uses boost::iostreams.
-#include <ndnboost/iostreams/stream.hpp>
-#include <ndnboost/iostreams/device/array.hpp>
-#endif
-
 #include <cryptopp/rsa.h>
 #include <cryptopp/base64.h>
 #include <cryptopp/files.h>
diff --git a/src/security/identity/basic-identity-storage.cpp b/src/security/identity/basic-identity-storage.cpp
index 7a31c25..00df15b 100644
--- a/src/security/identity/basic-identity-storage.cpp
+++ b/src/security/identity/basic-identity-storage.cpp
@@ -207,7 +207,7 @@
       
   sqlite3_bind_text(statement, 1, identityName.toUri(), SQLITE_TRANSIENT);
   
-  int res = sqlite3_step(statement);
+  sqlite3_step(statement);
   
   sqlite3_finalize(statement);
 }
@@ -266,7 +266,7 @@
   sqlite3_bind_int(statement, 3, (int)keyType);
   sqlite3_bind_blob(statement, 4, publicKeyDer.get().buf(), publicKeyDer.get().size(), SQLITE_STATIC);
 
-  int res = sqlite3_step(statement);
+  sqlite3_step(statement);
 
   sqlite3_finalize(statement);
 }
@@ -324,7 +324,7 @@
   sqlite3_bind_text(statement, 2, identityName.toUri(), SQLITE_TRANSIENT);
   sqlite3_bind_text(statement, 3, keyId, SQLITE_TRANSIENT);
 
-  int res = sqlite3_step(statement);
+  sqlite3_step(statement);
 
   sqlite3_finalize(statement);
 }
@@ -385,7 +385,7 @@
 
   sqlite3_bind_blob(statement, 7, certificate.wireEncode().wire(), certificate.wireEncode().size(), SQLITE_STATIC);
 
-  int res = sqlite3_step(statement);
+  sqlite3_step(statement);
 
   sqlite3_finalize(statement);
 }
@@ -438,7 +438,7 @@
 
   sqlite3_bind_blob(statement, 7, certificate.wireEncode().wire(), certificate.wireEncode().size(), SQLITE_TRANSIENT);
 
-  int res = sqlite3_step(statement);
+  sqlite3_step(statement);
 
   sqlite3_finalize(statement);
 }
diff --git a/src/security/key-chain.cpp b/src/security/key-chain.cpp
index ee56f8c..e61013f 100644
--- a/src/security/key-chain.cpp
+++ b/src/security/key-chain.cpp
@@ -35,7 +35,7 @@
   , privateKeyStorage_(privateKeyStorage)
   , policyManager_(policyManager)
   , encryptionManager_(encryptionManager)
-  , maxSteps_(100)
+  // , maxSteps_(100)
 {
   if (publicInfoStorage_ == DefaultIdentityStorage)
     {
