From: Daan De Meyer Date: Fri, 23 Sep 2022 12:17:20 +0000 (+0200) Subject: openssl-util: Allow declaring openssl struct pointers without openssl X-Git-Tag: v252-rc1~98^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bc958a19e3181527d79ef7df061d2a3db3cf931b;p=thirdparty%2Fsystemd.git openssl-util: Allow declaring openssl struct pointers without openssl --- diff --git a/src/shared/openssl-util.h b/src/shared/openssl-util.h index 3dda19582bf..a73b6da09f8 100644 --- a/src/shared/openssl-util.h +++ b/src/shared/openssl-util.h @@ -20,10 +20,8 @@ # include # endif -DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(X509*, X509_free, NULL); DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(X509_NAME*, X509_NAME_free, NULL); DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(EVP_PKEY_CTX*, EVP_PKEY_CTX_free, NULL); -DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(EVP_PKEY*, EVP_PKEY_free, NULL); DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(EVP_CIPHER_CTX*, EVP_CIPHER_CTX_free, NULL); DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(EC_POINT*, EC_POINT_free, NULL); DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(EC_GROUP*, EC_GROUP_free, NULL); @@ -50,8 +48,26 @@ int rsa_pkey_to_suitable_key_size(EVP_PKEY *pkey, size_t *ret_suitable_key_size) int pubkey_fingerprint(EVP_PKEY *pk, const EVP_MD *md, void **ret, size_t *ret_size); +#else + +typedef struct X509 X509; +typedef struct EVP_PKEY EVP_PKEY; + +static inline void *X509_free(X509 *p) { + assert(p == NULL); + return NULL; +} + +static inline void *EVP_PKEY_free(EVP_PKEY *p) { + assert(p == NULL); + return NULL; +} + #endif +DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(X509*, X509_free, NULL); +DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(EVP_PKEY*, EVP_PKEY_free, NULL); + #if PREFER_OPENSSL /* The openssl definition */ typedef const EVP_MD* hash_md_t;