summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmmanuel Vasilakis <mrzammler@mm.st>2022-02-08 16:30:15 +0200
committerGitHub <noreply@github.com>2022-02-08 16:30:15 +0200
commit713018281adf353262bac8eb85763448f12635e7 (patch)
tree845fcd883d31d05e788038feb901913c6e789526
parent87071cbae24e9266f327509c39057c55eb628911 (diff)
Disable hashes for charts and alerts if openssl is not available or cloud is disabled (#12071)
* disable hashes for charts and alerts if openssl is not available * create hashes if disable_cloud has not been defined and https has been defined
-rw-r--r--database/sqlite/sqlite_functions.c9
-rw-r--r--database/sqlite/sqlite_health.c12
2 files changed, 21 insertions, 0 deletions
diff --git a/database/sqlite/sqlite_functions.c b/database/sqlite/sqlite_functions.c
index a0b8ac0196..d5afdb6ee7 100644
--- a/database/sqlite/sqlite_functions.c
+++ b/database/sqlite/sqlite_functions.c
@@ -1646,8 +1646,14 @@ int sql_store_chart_hash(
return 1;
}
+/*
+ chart hashes are used for cloud communication.
+ if cloud is disabled or openssl is not available (which will prevent cloud connectivity)
+ skip hash calculations
+*/
void compute_chart_hash(RRDSET *st)
{
+#if !defined DISABLE_CLOUD && defined ENABLE_HTTPS
EVP_MD_CTX *evpctx;
unsigned char hash_value[EVP_MAX_MD_SIZE];
unsigned int hash_len;
@@ -1693,6 +1699,9 @@ void compute_chart_hash(RRDSET *st)
st->module_name,
st->priority,
st->chart_type);
+#else
+ UNUSED(st);
+#endif
return;
}
diff --git a/database/sqlite/sqlite_health.c b/database/sqlite/sqlite_health.c
index 116cb4f3e0..27c67c3aa5 100644
--- a/database/sqlite/sqlite_health.c
+++ b/database/sqlite/sqlite_health.c
@@ -890,11 +890,19 @@ int sql_store_alert_config_hash(uuid_t *hash_id, struct alert_config *cfg)
return 1;
}
+/*
+ alert hashes are used for cloud communication.
+ if cloud is disabled or openssl is not available (which will prevent cloud connectivity)
+ skip hash calculations
+*/
+#if !defined DISABLE_CLOUD && defined ENABLE_HTTPS
#define DIGEST_ALERT_CONFIG_VAL(v) ((v) ? EVP_DigestUpdate(evpctx, (v), strlen((v))) : EVP_DigestUpdate(evpctx, "", 1))
+#endif
int alert_hash_and_store_config(
uuid_t hash_id,
struct alert_config *cfg)
{
+#if !defined DISABLE_CLOUD && defined ENABLE_HTTPS
EVP_MD_CTX *evpctx;
unsigned char hash_value[EVP_MAX_MD_SIZE];
unsigned int hash_len;
@@ -939,6 +947,10 @@ int alert_hash_and_store_config(
/* store everything, so it can be recreated when not in memory or just a subset ? */
(void)sql_store_alert_config_hash( (uuid_t *)&hash_value, cfg);
+#else
+ UNUSED(hash_id);
+ UNUSED(cfg);
+#endif
return 1;
}