]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
wolfssl: Fixes for building with OpenSSL compatibility layer
authorDavid Garske <david@wolfssl.com>
Tue, 24 Sep 2019 18:38:36 +0000 (11:38 -0700)
committerTobias Brunner <tobias@strongswan.org>
Thu, 26 Sep 2019 07:06:11 +0000 (09:06 +0200)
Resolves conflicts with building against wolfSSL when
`--enable-opensslextra` is set, namely the `WOLFSSL_HMAC_H_`,
`RNG` and `ASN1_*` name conflicts.

Closes strongswan/strongswan#151.

17 files changed:
src/libstrongswan/plugins/wolfssl/wolfssl_aead.h
src/libstrongswan/plugins/wolfssl/wolfssl_common.h
src/libstrongswan/plugins/wolfssl/wolfssl_crypter.h
src/libstrongswan/plugins/wolfssl/wolfssl_diffie_hellman.h
src/libstrongswan/plugins/wolfssl/wolfssl_ec_diffie_hellman.h
src/libstrongswan/plugins/wolfssl/wolfssl_ec_private_key.h
src/libstrongswan/plugins/wolfssl/wolfssl_ec_public_key.h
src/libstrongswan/plugins/wolfssl/wolfssl_ed_private_key.h
src/libstrongswan/plugins/wolfssl/wolfssl_ed_public_key.h
src/libstrongswan/plugins/wolfssl/wolfssl_hasher.h
src/libstrongswan/plugins/wolfssl/wolfssl_hmac.h
src/libstrongswan/plugins/wolfssl/wolfssl_rng.h
src/libstrongswan/plugins/wolfssl/wolfssl_rsa_private_key.h
src/libstrongswan/plugins/wolfssl/wolfssl_rsa_public_key.h
src/libstrongswan/plugins/wolfssl/wolfssl_sha1_prf.h
src/libstrongswan/plugins/wolfssl/wolfssl_util.h
src/libstrongswan/plugins/wolfssl/wolfssl_x_diffie_hellman.h

index fd6dfdbd56f855f8df419990c95af01b2708bc1c..430145a9b2a4a1be671e40481bac097b71c2fb0e 100644 (file)
@@ -27,8 +27,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_AEAD_H_
-#define WOLFSSL_AEAD_H_
+#ifndef WOLFSSL_PLUGIN_AEAD_H_
+#define WOLFSSL_PLUGIN_AEAD_H_
 
 #include <crypto/aead.h>
 
@@ -43,4 +43,4 @@
 aead_t *wolfssl_aead_create(encryption_algorithm_t algo, size_t key_size,
                                                        size_t salt_size);
 
-#endif /** WOLFSSL_AEAD_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_AEAD_H_ @}*/
index 3c9081a83a34c881c00525eeb981a21ed56c78ec..c498cb5cddcbb15596c4af9148116d751da560fd 100644 (file)
@@ -20,8 +20,8 @@
  * THE SOFTWARE.
  */
 
-#ifndef WOLFSSL_COMMON_H_
-#define WOLFSSL_COMMON_H_
+#ifndef WOLFSSL_PLUGIN_COMMON_H_
+#define WOLFSSL_PLUGIN_COMMON_H_
 
 #include <library.h>
 
 #endif
 
 /* PARSE_ERROR is an enum entry in wolfSSL - not used in this plugin */
-#define PARSE_ERROR    WOLFSSL_PARSE_EROR
+#define PARSE_ERROR    WOLFSSL_PARSE_ERROR
+
+/* Remap unused enums from the OpenSSL compatibility layer to avoid conflicts */
+#define ASN1_BOOLEAN         REMAP_ASN1_BOOLEAN
+#define ASN1_OID             REMAP_ASN1_OID
+#define ASN1_INTEGER         REMAP_ASN1_INTEGER
+#define ASN1_BIT_STRING      REMAP_ASN1_BIT_STRING
+#define ASN1_IA5STRING       REMAP_ASN1_IA5STRING
+#define ASN1_OCTET_STRING    REMAP_ASN1_OCTET_STRING
+#define ASN1_UTCTIME         REMAP_ASN1_UTCTIME
+#define ASN1_GENERALIZEDTIME REMAP_ASN1_GENERALIZEDTIME
 
 #ifndef WOLFSSL_USER_SETTINGS
        #include <wolfssl/options.h>
 
 #undef PARSE_ERROR
 
-#endif /* WOLFSSL_COMMON_H_ */
+#undef ASN1_BOOLEAN
+#undef ASN1_OID
+#undef ASN1_INTEGER
+#undef ASN1_BIT_STRING
+#undef ASN1_IA5STRING
+#undef ASN1_OCTET_STRING
+#undef ASN1_UTCTIME
+#undef ASN1_GENERALIZEDTIME
+
+/* Eliminate macro conflicts */
+#undef RNG
+
+#endif /* WOLFSSL_PLUGIN_COMMON_H_ */
index 108c9cc94f3242cc29f9a2ca839b0c4de1c2807f..73e98f1622ffa10ac34166de06c7dbb834cc19e5 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_CRYPTER_H_
-#define WOLFSSL_CRYPTER_H_
+#ifndef WOLFSSL_PLUGIN_CRYPTER_H_
+#define WOLFSSL_PLUGIN_CRYPTER_H_
 
 typedef struct wolfssl_crypter_t wolfssl_crypter_t;
 
@@ -53,4 +53,4 @@ struct wolfssl_crypter_t {
 wolfssl_crypter_t *wolfssl_crypter_create(encryption_algorithm_t algo,
                                                                                  size_t key_size);
 
-#endif /** WOLFSSL_CRYPTER_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_CRYPTER_H_ @}*/
index 85952e798ae0bca6c92310ef65defb614804a150..2f286ca42096901712ee0852ecbe743da4bd3154 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_DIFFIE_HELLMAN_H_
-#define WOLFSSL_DIFFIE_HELLMAN_H_
+#ifndef WOLFSSL_PLUGIN_DIFFIE_HELLMAN_H_
+#define WOLFSSL_PLUGIN_DIFFIE_HELLMAN_H_
 
 typedef struct wolfssl_diffie_hellman_t wolfssl_diffie_hellman_t;
 
@@ -53,5 +53,5 @@ struct wolfssl_diffie_hellman_t {
 wolfssl_diffie_hellman_t *wolfssl_diffie_hellman_create(
                                                                                        diffie_hellman_group_t group, ...);
 
-#endif /** WOLFSSL_DIFFIE_HELLMAN_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_DIFFIE_HELLMAN_H_ @}*/
 
index c0a3e84f24a00c5583c2ea61c7f8cbeedec6cead..d36f83f060c7ed9fc360f9e43e001364e335d97f 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_EC_DIFFIE_HELLMAN_H_
-#define WOLFSSL_EC_DIFFIE_HELLMAN_H_
+#ifndef WOLFSSL_PLUGIN_EC_DIFFIE_HELLMAN_H_
+#define WOLFSSL_PLUGIN_EC_DIFFIE_HELLMAN_H_
 
 typedef struct wolfssl_ec_diffie_hellman_t wolfssl_ec_diffie_hellman_t;
 
@@ -53,4 +53,4 @@ struct wolfssl_ec_diffie_hellman_t {
 wolfssl_ec_diffie_hellman_t *wolfssl_ec_diffie_hellman_create(
                                                                                                diffie_hellman_group_t group);
 
-#endif /** WOLFSSL_EC_DIFFIE_HELLMAN_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_EC_DIFFIE_HELLMAN_H_ @}*/
index 971b6e98e15e6e6abf78abb818eb1d23f2d24af4..7ac0257f411d20f35b7d917fb68801d4ac3af436 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_EC_PRIVATE_KEY_H_
-#define WOLFSSL_EC_PRIVATE_KEY_H_
+#ifndef WOLFSSL_PLUGIN_EC_PRIVATE_KEY_H_
+#define WOLFSSL_PLUGIN_EC_PRIVATE_KEY_H_
 
 #include <credentials/builder.h>
 #include <credentials/keys/private_key.h>
@@ -68,4 +68,4 @@ wolfssl_ec_private_key_t *wolfssl_ec_private_key_gen(key_type_t type,
 wolfssl_ec_private_key_t *wolfssl_ec_private_key_load(key_type_t type,
                                                                                                          va_list args);
 
-#endif /** WOLFSSL_EC_PRIVATE_KEY_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_EC_PRIVATE_KEY_H_ @}*/
index ac82af334693b864c6563d825621c21ad96d86bb..45cbd5c78bacef3d947d9e33be757580dde3c8a9 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_EC_PUBLIC_KEY_H_
-#define WOLFSSL_EC_PUBLIC_KEY_H_
+#ifndef WOLFSSL_PLUGIN_EC_PUBLIC_KEY_H_
+#define WOLFSSL_PLUGIN_EC_PUBLIC_KEY_H_
 
 typedef struct wolfssl_ec_public_key_t wolfssl_ec_public_key_t;
 
@@ -56,4 +56,4 @@ struct wolfssl_ec_public_key_t {
 wolfssl_ec_public_key_t *wolfssl_ec_public_key_load(key_type_t type,
                                                                                                        va_list args);
 
-#endif /** WOLFSSL_EC_PUBLIC_KEY_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_EC_PUBLIC_KEY_H_ @}*/
index 2f44a49a4891c4c54d65187a731f04a1513aa236..72802dcecb2035ca4d4b6442c27f6906c53374fb 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_ED_PRIVATE_KEY_H_
-#define WOLFSSL_ED_PRIVATE_KEY_H_
+#ifndef WOLFSSL_PLUGIN_ED_PRIVATE_KEY_H_
+#define WOLFSSL_PLUGIN_ED_PRIVATE_KEY_H_
 
 #include <credentials/builder.h>
 #include <credentials/keys/private_key.h>
@@ -51,4 +51,4 @@ private_key_t *wolfssl_ed_private_key_gen(key_type_t type, va_list args);
  */
 private_key_t *wolfssl_ed_private_key_load(key_type_t type, va_list args);
 
-#endif /** WOLFSSL_ED_PRIVATE_KEY_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_ED_PRIVATE_KEY_H_ @}*/
index b6239caa56a30fe53da44d40a54a8c5197e8222e..4b3be1cf5f53181bf0bac4aec48f73bd9dca68d2 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_ED_PUBLIC_KEY_H_
-#define WOLFSSL_ED_PUBLIC_KEY_H_
+#ifndef WOLFSSL_PLUGIN_ED_PUBLIC_KEY_H_
+#define WOLFSSL_PLUGIN_ED_PUBLIC_KEY_H_
 
 #include <credentials/builder.h>
 #include <credentials/keys/public_key.h>
@@ -42,4 +42,4 @@
  */
 public_key_t *wolfssl_ed_public_key_load(key_type_t type, va_list args);
 
-#endif /** WOLFSSL_ED_PUBLIC_KEY_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_ED_PUBLIC_KEY_H_ @}*/
index a976f079fc242e61a774215fbc94df49f1b34e47..63c8bc7eafea6dab00d1e8370bbaf6ce9c14b100 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_HASHER_H_
-#define WOLFSSL_HASHER_H_
+#ifndef WOLFSSL_PLUGIN_HASHER_H_
+#define WOLFSSL_PLUGIN_HASHER_H_
 
 typedef struct wolfssl_hasher_t wolfssl_hasher_t;
 
@@ -51,4 +51,4 @@ struct wolfssl_hasher_t {
  */
 wolfssl_hasher_t *wolfssl_hasher_create(hash_algorithm_t algo);
 
-#endif /** WOLFSSL_HASHER_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_HASHER_H_ @}*/
index 23953da82c297323b5729b571b61b93e628ec918..a8e8532ea046965ede190830d8db6c0d1ff02d27 100644 (file)
@@ -27,8 +27,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_HMAC_H_
-#define WOLFSSL_HMAC_H_
+#ifndef WOLFSSL_PLUGIN_HMAC_H_
+#define WOLFSSL_PLUGIN_HMAC_H_
 
 #include <crypto/prfs/prf.h>
 #include <crypto/signers/signer.h>
@@ -49,4 +49,4 @@ prf_t *wolfssl_hmac_prf_create(pseudo_random_function_t algo);
  */
 signer_t *wolfssl_hmac_signer_create(integrity_algorithm_t algo);
 
-#endif /** WOLFSSL_HMAC_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_HMAC_H_ @}*/
index abe9d9137544772a3652c4b8583549a485da2106..58e1511b4866e20f95e1afaff528193d5441588e 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_RNG_H_
-#define WOLFSSL_RNG_H_
+#ifndef WOLFSSL_PLUGIN_RNG_H_
+#define WOLFSSL_PLUGIN_RNG_H_
 
 #include <library.h>
 
@@ -63,4 +63,4 @@ int wolfssl_rng_global_init();
  */
 void wolfssl_rng_global_final();
 
-#endif /** WOLFSSL_RNG_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_RNG_H_ @}*/
index d1ba59e47d71cd2ae840d3aed356ee33f2f2d8f9..e6132ce849e7ba25c3ae3f0df886ffdfdcaf9e0a 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_RSA_PRIVATE_KEY_H_
-#define WOLFSSL_RSA_PRIVATE_KEY_H_
+#ifndef WOLFSSL_PLUGIN_RSA_PRIVATE_KEY_H_
+#define WOLFSSL_PLUGIN_RSA_PRIVATE_KEY_H_
 
 #include <credentials/builder.h>
 #include <credentials/keys/private_key.h>
@@ -68,4 +68,4 @@ wolfssl_rsa_private_key_t *wolfssl_rsa_private_key_gen(key_type_t type,
 wolfssl_rsa_private_key_t *wolfssl_rsa_private_key_load(key_type_t type,
                                                                                                                va_list args);
 
-#endif /** WOLFSSL_RSA_PRIVATE_KEY_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_RSA_PRIVATE_KEY_H_ @}*/
index 54fbd35238f3273193ae2c29d5f698b14dff0142..c124308ac6dd9495ac9d359233370bc9db7003e0 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_RSA_PUBLIC_KEY_H_
-#define WOLFSSL_RSA_PUBLIC_KEY_H_
+#ifndef WOLFSSL_PLUGIN_RSA_PUBLIC_KEY_H_
+#define WOLFSSL_PLUGIN_RSA_PUBLIC_KEY_H_
 
 typedef struct wolfssl_rsa_public_key_t wolfssl_rsa_public_key_t;
 
@@ -55,4 +55,4 @@ struct wolfssl_rsa_public_key_t {
 wolfssl_rsa_public_key_t *wolfssl_rsa_public_key_load(key_type_t type,
                                                                                                          va_list args);
 
-#endif /** WOLFSSL_RSA_PUBLIC_KEY_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_RSA_PUBLIC_KEY_H_ @}*/
index 89e12c482fe2b3bd99f001de4d44f51dd1f0146f..a814341d8949bd05d5f3052f396ea56c8c1d1208 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_SHA1_PRF_H_
-#define WOLFSSL_SHA1_PRF_H_
+#ifndef WOLFSSL_PLUGIN_SHA1_PRF_H_
+#define WOLFSSL_PLUGIN_SHA1_PRF_H_
 
 typedef struct wolfssl_sha1_prf_t wolfssl_sha1_prf_t;
 
@@ -52,4 +52,4 @@ struct wolfssl_sha1_prf_t {
  */
 wolfssl_sha1_prf_t *wolfssl_sha1_prf_create(pseudo_random_function_t algo);
 
-#endif /** WOLFSSL_SHA1_PRF_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_SHA1_PRF_H_ @}*/
index 35b09c405501df1f9a52c51691549caea0686256..e8916ecd3a43a30fa87e7874030ca1d7b4e1ed61 100644 (file)
@@ -25,8 +25,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_UTIL_H_
-#define WOLFSSL_UTIL_H_
+#ifndef WOLFSSL_PLUGIN_UTIL_H_
+#define WOLFSSL_PLUGIN_UTIL_H_
 
 #include <wolfssl/wolfcrypt/integer.h>
 #include <wolfssl/wolfcrypt/hash.h>
@@ -95,4 +95,4 @@ bool wolfssl_hash2type(hash_algorithm_t hash, enum wc_HashType *type);
  */
 bool wolfssl_hash2mgf1(hash_algorithm_t hash, int *mgf1);
 
-#endif /** WOLFSSL_UTIL_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_UTIL_H_ @}*/
index a66ddc1317b4c476f425a4123cfec37565a92c34..56760e5d2cfbd363e556dd15978b087c112bd04b 100644 (file)
@@ -27,8 +27,8 @@
  * @{ @ingroup wolfssl_p
  */
 
-#ifndef WOLFSSL_X_DIFFIE_HELLMAN_H_
-#define WOLFSSL_X_DIFFIE_HELLMAN_H_
+#ifndef WOLFSSL_PLUGIN_X_DIFFIE_HELLMAN_H_
+#define WOLFSSL_PLUGIN_X_DIFFIE_HELLMAN_H_
 
 #include <library.h>
 
@@ -40,4 +40,4 @@
  */
 diffie_hellman_t *wolfssl_x_diffie_hellman_create(diffie_hellman_group_t group);
 
-#endif /** WOLFSSL_X_DIFFIE_HELLMAN_H_ @}*/
+#endif /** WOLFSSL_PLUGIN_X_DIFFIE_HELLMAN_H_ @}*/