From 95ca599d3f6f8c64a7836837da271ce24189c402 Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan.bosch@open-xchange.com>
Date: Thu, 19 Sep 2024 03:47:36 +0200
Subject: [PATCH] lib-sieve: sieve-storage - Add sieve_storage_class_exists()

---
 src/lib-sieve/sieve-storage.c | 6 ++++++
 src/lib-sieve/sieve-storage.h | 4 ++++
 2 files changed, 10 insertions(+)

diff --git a/src/lib-sieve/sieve-storage.c b/src/lib-sieve/sieve-storage.c
index 20d6e027f..43b59b8b3 100644
--- a/src/lib-sieve/sieve-storage.c
+++ b/src/lib-sieve/sieve-storage.c
@@ -111,6 +111,12 @@ sieve_storage_class_find(struct sieve_instance *svinst, const char *name)
 	return NULL;
 }
 
+bool sieve_storage_class_exists(struct sieve_instance *svinst,
+				const char *name)
+{
+	return (sieve_storage_class_find(svinst, name) != NULL);
+}
+
 /*
  * Storage instance
  */
diff --git a/src/lib-sieve/sieve-storage.h b/src/lib-sieve/sieve-storage.h
index 333d0e9ff..5264dd1b7 100644
--- a/src/lib-sieve/sieve-storage.h
+++ b/src/lib-sieve/sieve-storage.h
@@ -25,6 +25,10 @@ enum sieve_storage_flags {
 
 struct sieve_storage;
 
+/* Determine whether storage driver exists. */
+bool sieve_storage_class_exists(struct sieve_instance *svinst,
+				const char *name);
+
 int sieve_storage_create(struct sieve_instance *svinst, const char *location,
 			 enum sieve_storage_flags flags,
 			 struct sieve_storage **storage_r,
-- 
GitLab