summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJanusz Kozerski <j.kozerski@samsung.com>2015-09-11 16:45:09 +0200
committerJanusz Kozerski <j.kozerski@samsung.com>2015-09-14 09:24:22 +0200
commit7871c1f106e6c11503b4a2a6f7bbbd876d2ec1fc (patch)
tree318de358edf74ac189f89d95994362a8ee61f1f8 /src
parent8fc0b8fc2a814035dc9cf8c7e211dc3a8f74d11b (diff)
downloadcert-checker-7871c1f106e6c11503b4a2a6f7bbbd876d2ec1fc.tar.gz
cert-checker-7871c1f106e6c11503b4a2a6f7bbbd876d2ec1fc.tar.bz2
cert-checker-7871c1f106e6c11503b4a2a6f7bbbd876d2ec1fc.zip
Add missing code for logic tests
Change-Id: Iaa411b52647f2348024b1e8d100d678f89a48c5f
Diffstat (limited to 'src')
-rw-r--r--src/certs.cpp2
-rw-r--r--src/include/cchecker/logic.h6
-rw-r--r--src/logic.cpp21
3 files changed, 24 insertions, 5 deletions
diff --git a/src/certs.cpp b/src/certs.cpp
index d2d44e0..a4968d9 100644
--- a/src/certs.cpp
+++ b/src/certs.cpp
@@ -204,6 +204,8 @@ Certs::ocsp_response_t Certs::check_ocsp_chain (const chain_t &chain)
// Add handling for different errors codes
// For these we can try to check ocsp again later:
switch (ret) {
+ case CKM_API_ERROR_NOT_SUPPORTED:
+ LogDebug("Key-manager OCSP API temporary diabled.");
case CKM_API_ERROR_SOCKET:
case CKM_API_ERROR_BAD_REQUEST:
case CKM_API_ERROR_BAD_RESPONSE:
diff --git a/src/include/cchecker/logic.h b/src/include/cchecker/logic.h
index b5f1c22..6700333 100644
--- a/src/include/cchecker/logic.h
+++ b/src/include/cchecker/logic.h
@@ -58,7 +58,9 @@ class Logic {
public:
Logic(void);
virtual ~Logic(void);
- error_t setup();
+ error_t setup(void);
+ virtual void clean(void);
+
static void pkgmgr_install_callback(GDBusProxy *proxy,
gchar *sender_name,
gchar *signal_name,
@@ -76,7 +78,7 @@ class Logic {
void *logic_ptr);
- private:
+ protected:
error_t setup_db();
void load_database_to_buffer();
diff --git a/src/logic.cpp b/src/logic.cpp
index da1599c..170f566 100644
--- a/src/logic.cpp
+++ b/src/logic.cpp
@@ -30,9 +30,6 @@
using namespace std;
-// FIXME: Popup temporary disabled
-#define POPUP 0
-
namespace CCHECKER {
namespace {
@@ -41,6 +38,11 @@ const char *const DB_PATH = tzplatform_mkpath(TZ_SYS_DB, ".cert-checker.db");
Logic::~Logic(void)
{
+ clean();
+}
+
+void Logic::clean(void)
+{
LogDebug("Cert-checker cleaning.");
// wait and join processing thread
@@ -519,6 +521,19 @@ void Logic::add_app_to_buffer_and_database(const app_t &app)
// We can do nothing about it. We can only log the error.
}
+ // Then add app to buffer - skip if already added.
+ // FIXME: What to do if the same app will be installed twice?
+ // Add it twice to the buffer, or check if apps in buffer are unique?
+ // At the moment doubled apps are skipped.
+ for (auto &iter : m_buffer) {
+ if (iter.app_id == app.app_id &&
+ iter.pkg_id == app.pkg_id &&
+ iter.uid == app.uid) {
+ LogDebug(app.str() << " already in buffer. Skip.");
+ return;
+ }
+ }
+
// Then add app to buffer
m_buffer.push_back(app);
}