botan: Fix build without AES and its modes
authorTobias Brunner <tobias@strongswan.org>
Thu, 25 Oct 2018 12:21:38 +0000 (14:21 +0200)
committerTobias Brunner <tobias@strongswan.org>
Fri, 26 Oct 2018 09:06:45 +0000 (11:06 +0200)
src/libstrongswan/plugins/botan/botan_crypter.c
src/libstrongswan/plugins/botan/botan_plugin.c

index 002be6e..3ec5c4d 100644 (file)
 
 #include "botan_crypter.h"
 
+#include <botan/build.h>
+
+#if defined(BOTAN_HAS_AES) && defined(BOTAN_HAS_MODE_CBC)
+
 #include <botan/ffi.h>
 
 typedef struct private_botan_crypter_t private_botan_crypter_t;
@@ -189,3 +193,5 @@ botan_crypter_t *botan_crypter_create(encryption_algorithm_t algo,
        this->key = chunk_alloc(key_size);
        return &this->public;
 }
+
+#endif
index 205e30d..fbdc877 100644 (file)
@@ -103,6 +103,7 @@ METHOD(plugin_t, get_features, int,
 #endif
 
                /* crypters */
+#if defined(BOTAN_HAS_AES) && defined(BOTAN_HAS_MODE_CBC)
                PLUGIN_REGISTER(CRYPTER, botan_crypter_create),
 #ifdef BOTAN_HAS_AES
        #ifdef BOTAN_HAS_MODE_CBC
@@ -111,8 +112,12 @@ METHOD(plugin_t, get_features, int,
                        PLUGIN_PROVIDE(CRYPTER, ENCR_AES_CBC, 32),
        #endif
 #endif
+#endif
 
                /* AEAD */
+#if (defined(BOTAN_HAS_AES) && \
+               (defined(BOTAN_HAS_AEAD_GCM) || defined(BOTAN_HAS_AEAD_CCM))) || \
+       defined(BOTAN_HAS_AEAD_CHACHA20_POLY1305)
                PLUGIN_REGISTER(AEAD, botan_aead_create),
 #ifdef BOTAN_HAS_AES
        #ifdef BOTAN_HAS_AEAD_GCM
@@ -141,6 +146,7 @@ METHOD(plugin_t, get_features, int,
 #ifdef BOTAN_HAS_AEAD_CHACHA20_POLY1305
                        PLUGIN_PROVIDE(AEAD, ENCR_CHACHA20_POLY1305, 32),
 #endif
+#endif
 
                /* hashers */
                PLUGIN_REGISTER(HASHER, botan_hasher_create),