Switch deprecation method for ENGINE
[openssl.git] / include / openssl / engine.h
index 51260e42a2c320c17f613afa036ecafabb7ad481..25c3cf7c1985baeeb3857abfea2c4315026d2218 100644 (file)
@@ -314,17 +314,27 @@ typedef int (*ENGINE_PKEY_ASN1_METHS_PTR) (ENGINE *, EVP_PKEY_ASN1_METHOD **,
  */
 
 /* Get the first/last "ENGINE" type available. */
  */
 
 /* Get the first/last "ENGINE" type available. */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_first(void))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_last(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_first(void);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_last(void);
+#  endif
 /* Iterate to the next/previous "ENGINE" type (NULL = end of the list). */
 /* Iterate to the next/previous "ENGINE" type (NULL = end of the list). */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_next(ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_prev(ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_next(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_prev(ENGINE *e);
+#  endif
 /* Add another "ENGINE" type into the array. */
 /* Add another "ENGINE" type into the array. */
-DEPRECATEDIN_3_0(int ENGINE_add(ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_add(ENGINE *e);
+#  endif
 /* Remove an existing "ENGINE" type from the array. */
 /* Remove an existing "ENGINE" type from the array. */
-DEPRECATEDIN_3_0(int ENGINE_remove(ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_remove(ENGINE *e);
+#  endif
 /* Retrieve an engine from the list by its unique "id" value. */
 /* Retrieve an engine from the list by its unique "id" value. */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_by_id(const char *id))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_by_id(const char *id);
+#  endif
 
 #  ifndef OPENSSL_NO_DEPRECATED_1_1_0
 #   define ENGINE_load_openssl() \
 
 #  ifndef OPENSSL_NO_DEPRECATED_1_1_0
 #   define ENGINE_load_openssl() \
@@ -344,14 +354,18 @@ DEPRECATEDIN_3_0(ENGINE *ENGINE_by_id(const char *id))
 #   define ENGINE_load_rdrand() \
         OPENSSL_init_crypto(OPENSSL_INIT_ENGINE_RDRAND, NULL)
 #  endif
 #   define ENGINE_load_rdrand() \
         OPENSSL_init_crypto(OPENSSL_INIT_ENGINE_RDRAND, NULL)
 #  endif
-DEPRECATEDIN_3_0(void ENGINE_load_builtin_engines(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 void ENGINE_load_builtin_engines(void);
+#  endif
 
 /*
  * Get and set global flags (ENGINE_TABLE_FLAG_***) for the implementation
  * "registry" handling.
  */
 
 /*
  * Get and set global flags (ENGINE_TABLE_FLAG_***) for the implementation
  * "registry" handling.
  */
-DEPRECATEDIN_3_0(unsigned int ENGINE_get_table_flags(void))
-DEPRECATEDIN_3_0(void ENGINE_set_table_flags(unsigned int flags))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 unsigned int ENGINE_get_table_flags(void);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_set_table_flags(unsigned int flags);
+#  endif
 
 /*- Manage registration of ENGINEs per "table". For each type, there are 3
  * functions;
 
 /*- Manage registration of ENGINEs per "table". For each type, there are 3
  * functions;
@@ -360,42 +374,35 @@ DEPRECATEDIN_3_0(void ENGINE_set_table_flags(unsigned int flags))
  *   ENGINE_register_all_***() - call ENGINE_register_***() for each 'e' in the list
  * Cleanup is automatically registered from each table when required.
  */
  *   ENGINE_register_all_***() - call ENGINE_register_***() for each 'e' in the list
  * Cleanup is automatically registered from each table when required.
  */
-
-DEPRECATEDIN_3_0(int ENGINE_register_RSA(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_RSA(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_RSA(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_DSA(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_DSA(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_DSA(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_EC(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_EC(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_EC(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_DH(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_DH(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_DH(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_RAND(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_RAND(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_RAND(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_ciphers(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_ciphers(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_ciphers(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_digests(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_digests(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_digests(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_pkey_meths(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_pkey_meths(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_pkey_meths(void))
-
-DEPRECATEDIN_3_0(int ENGINE_register_pkey_asn1_meths(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_unregister_pkey_asn1_meths(ENGINE *e))
-DEPRECATEDIN_3_0(void ENGINE_register_all_pkey_asn1_meths(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_RSA(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_RSA(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_RSA(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_DSA(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_DSA(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_DSA(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_EC(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_EC(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_EC(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_DH(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_DH(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_DH(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_RAND(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_RAND(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_RAND(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_ciphers(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_ciphers(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_ciphers(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_digests(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_digests(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_digests(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_pkey_meths(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_pkey_meths(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_pkey_meths(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_pkey_asn1_meths(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_unregister_pkey_asn1_meths(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_register_all_pkey_asn1_meths(void);
+#  endif
 
 /*
  * These functions register all support from the above categories. Note, use
 
 /*
  * These functions register all support from the above categories. Note, use
@@ -403,8 +410,10 @@ DEPRECATEDIN_3_0(void ENGINE_register_all_pkey_asn1_meths(void))
  * may not need. If you only need a subset of functionality, consider using
  * more selective initialisation.
  */
  * may not need. If you only need a subset of functionality, consider using
  * more selective initialisation.
  */
-DEPRECATEDIN_3_0(int ENGINE_register_complete(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_register_all_complete(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_complete(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_register_all_complete(void);
+#  endif
 
 /*
  * Send parameterised control commands to the engine. The possibilities to
 
 /*
  * Send parameterised control commands to the engine. The possibilities to
@@ -416,8 +425,10 @@ DEPRECATEDIN_3_0(int ENGINE_register_all_complete(void))
  * commands that require an operational ENGINE, and only use functional
  * references in such situations.
  */
  * commands that require an operational ENGINE, and only use functional
  * references in such situations.
  */
-DEPRECATEDIN_3_0(int ENGINE_ctrl(ENGINE *e, int cmd, long i, void *p,
-                                 void (*f) (void)))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_ctrl(ENGINE *e, int cmd, long i, void *p,
+                                      void (*f) (void));
+#  endif
 
 /*
  * This function tests if an ENGINE-specific command is usable as a
 
 /*
  * This function tests if an ENGINE-specific command is usable as a
@@ -425,7 +436,9 @@ DEPRECATEDIN_3_0(int ENGINE_ctrl(ENGINE *e, int cmd, long i, void *p,
  * ENGINE_ctrl_cmd_string(). If this returns zero, it is not available to
  * ENGINE_ctrl_cmd_string(), only ENGINE_ctrl().
  */
  * ENGINE_ctrl_cmd_string(). If this returns zero, it is not available to
  * ENGINE_ctrl_cmd_string(), only ENGINE_ctrl().
  */
-DEPRECATEDIN_3_0(int ENGINE_cmd_is_executable(ENGINE *e, int cmd))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_cmd_is_executable(ENGINE *e, int cmd);
+#  endif
 
 /*
  * This function works like ENGINE_ctrl() with the exception of taking a
 
 /*
  * This function works like ENGINE_ctrl() with the exception of taking a
@@ -433,9 +446,11 @@ DEPRECATEDIN_3_0(int ENGINE_cmd_is_executable(ENGINE *e, int cmd))
  * commands. See the comment on ENGINE_ctrl_cmd_string() for an explanation
  * on how to use the cmd_name and cmd_optional.
  */
  * commands. See the comment on ENGINE_ctrl_cmd_string() for an explanation
  * on how to use the cmd_name and cmd_optional.
  */
-DEPRECATEDIN_3_0(int ENGINE_ctrl_cmd(ENGINE *e, const char *cmd_name,
-                                     long i, void *p, void (*f) (void),
-                                     int cmd_optional))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_ctrl_cmd(ENGINE *e, const char *cmd_name,
+                                          long i, void *p, void (*f) (void),
+                                          int cmd_optional);
+#  endif
 
 /*
  * This function passes a command-name and argument to an ENGINE. The
 
 /*
  * This function passes a command-name and argument to an ENGINE. The
@@ -459,8 +474,11 @@ DEPRECATEDIN_3_0(int ENGINE_ctrl_cmd(ENGINE *e, const char *cmd_name,
  * applications can work consistently with the same configuration for the
  * same ENGINE-enabled devices, across applications.
  */
  * applications can work consistently with the same configuration for the
  * same ENGINE-enabled devices, across applications.
  */
-DEPRECATEDIN_3_0(int ENGINE_ctrl_cmd_string(ENGINE *e, const char *cmd_name,
-                                            const char *arg, int cmd_optional))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_ctrl_cmd_string(ENGINE *e, const char *cmd_name, const char *arg,
+                           int cmd_optional);
+#  endif
 
 /*
  * These functions are useful for manufacturing new ENGINE structures. They
 
 /*
  * These functions are useful for manufacturing new ENGINE structures. They
@@ -470,43 +488,51 @@ DEPRECATEDIN_3_0(int ENGINE_ctrl_cmd_string(ENGINE *e, const char *cmd_name,
  * These are also here so that the ENGINE structure doesn't have to be
  * exposed and break binary compatibility!
  */
  * These are also here so that the ENGINE structure doesn't have to be
  * exposed and break binary compatibility!
  */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_new(void))
-DEPRECATEDIN_3_0(int ENGINE_free(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_up_ref(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_id(ENGINE *e, const char *id))
-DEPRECATEDIN_3_0(int ENGINE_set_name(ENGINE *e, const char *name))
-DEPRECATEDIN_3_0(int ENGINE_set_RSA(ENGINE *e, const RSA_METHOD *rsa_meth))
-DEPRECATEDIN_3_0(int ENGINE_set_DSA(ENGINE *e, const DSA_METHOD *dsa_meth))
-DEPRECATEDIN_3_0(int ENGINE_set_EC(ENGINE *e, const EC_KEY_METHOD *ecdsa_meth))
-DEPRECATEDIN_3_0(int ENGINE_set_DH(ENGINE *e, const DH_METHOD *dh_meth))
-DEPRECATEDIN_3_0(int ENGINE_set_RAND(ENGINE *e, const RAND_METHOD *rand_meth))
-DEPRECATEDIN_3_0(int ENGINE_set_destroy_function
-                    (ENGINE *e,ENGINE_GEN_INT_FUNC_PTR destroy_f))
-DEPRECATEDIN_3_0(int ENGINE_set_init_function
-                    (ENGINE *e, ENGINE_GEN_INT_FUNC_PTR init_f))
-DEPRECATEDIN_3_0(int ENGINE_set_finish_function
-                    (ENGINE *e, ENGINE_GEN_INT_FUNC_PTR finish_f))
-DEPRECATEDIN_3_0(int ENGINE_set_ctrl_function
-                    (ENGINE *e, ENGINE_CTRL_FUNC_PTR ctrl_f))
-DEPRECATEDIN_3_0(int ENGINE_set_load_privkey_function
-                    (ENGINE *e, ENGINE_LOAD_KEY_PTR loadpriv_f))
-DEPRECATEDIN_3_0(int ENGINE_set_load_pubkey_function
-                    (ENGINE *e, ENGINE_LOAD_KEY_PTR loadpub_f))
-DEPRECATEDIN_3_0(int ENGINE_set_load_ssl_client_cert_function
-                    (ENGINE *e, ENGINE_SSL_CLIENT_CERT_PTR loadssl_f))
-DEPRECATEDIN_3_0(int ENGINE_set_ciphers(ENGINE *e, ENGINE_CIPHERS_PTR f))
-DEPRECATEDIN_3_0(int ENGINE_set_digests(ENGINE *e, ENGINE_DIGESTS_PTR f))
-DEPRECATEDIN_3_0(int ENGINE_set_pkey_meths(ENGINE *e, ENGINE_PKEY_METHS_PTR f))
-DEPRECATEDIN_3_0(int ENGINE_set_pkey_asn1_meths(ENGINE *e,
-                                                ENGINE_PKEY_ASN1_METHS_PTR f))
-DEPRECATEDIN_3_0(int ENGINE_set_flags(ENGINE *e, int flags))
-DEPRECATEDIN_3_0(int ENGINE_set_cmd_defns(ENGINE *e,
-                                          const ENGINE_CMD_DEFN *defns))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_new(void);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_free(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_up_ref(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_id(ENGINE *e, const char *id);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_name(ENGINE *e, const char *name);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_RSA(ENGINE *e, const RSA_METHOD *rsa_meth);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_DSA(ENGINE *e, const DSA_METHOD *dsa_meth);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_EC(ENGINE *e, const EC_KEY_METHOD *ecdsa_meth);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_DH(ENGINE *e, const DH_METHOD *dh_meth);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_RAND(ENGINE *e, const RAND_METHOD *rand_meth);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_destroy_function(ENGINE *e,ENGINE_GEN_INT_FUNC_PTR destroy_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_init_function(ENGINE *e, ENGINE_GEN_INT_FUNC_PTR init_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_finish_function(ENGINE *e, ENGINE_GEN_INT_FUNC_PTR finish_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_ctrl_function(ENGINE *e, ENGINE_CTRL_FUNC_PTR ctrl_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_load_privkey_function(ENGINE *e, ENGINE_LOAD_KEY_PTR loadpriv_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_load_pubkey_function(ENGINE *e, ENGINE_LOAD_KEY_PTR loadpub_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_load_ssl_client_cert_function(ENGINE *e,
+                                             ENGINE_SSL_CLIENT_CERT_PTR loadssl_f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_ciphers(ENGINE *e, ENGINE_CIPHERS_PTR f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_digests(ENGINE *e, ENGINE_DIGESTS_PTR f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_pkey_meths(ENGINE *e, ENGINE_PKEY_METHS_PTR f);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_set_pkey_asn1_meths(ENGINE *e, ENGINE_PKEY_ASN1_METHS_PTR f);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_flags(ENGINE *e, int flags);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_cmd_defns(ENGINE *e,
+                                               const ENGINE_CMD_DEFN *defns);
+#  endif
 /* These functions allow control over any per-structure ENGINE data. */
 #  define ENGINE_get_ex_new_index(l, p, newf, dupf, freef) \
     CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_ENGINE, l, p, newf, dupf, freef)
 /* These functions allow control over any per-structure ENGINE data. */
 #  define ENGINE_get_ex_new_index(l, p, newf, dupf, freef) \
     CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_ENGINE, l, p, newf, dupf, freef)
-DEPRECATEDIN_3_0(int ENGINE_set_ex_data(ENGINE *e, int idx, void *arg))
-DEPRECATEDIN_3_0(void *ENGINE_get_ex_data(const ENGINE *e, int idx))
+# ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_ex_data(ENGINE *e, int idx, void *arg);
+OSSL_DEPRECATEDIN_3_0 void *ENGINE_get_ex_data(const ENGINE *e, int idx);
+# endif
 
 #  ifndef OPENSSL_NO_DEPRECATED_1_1_0
 /*
 
 #  ifndef OPENSSL_NO_DEPRECATED_1_1_0
 /*
@@ -522,44 +548,55 @@ DEPRECATEDIN_3_0(void *ENGINE_get_ex_data(const ENGINE *e, int idx))
  * which you obtained. Using the result for functional purposes if you only
  * obtained a structural reference may be problematic!
  */
  * which you obtained. Using the result for functional purposes if you only
  * obtained a structural reference may be problematic!
  */
-DEPRECATEDIN_3_0(const char *ENGINE_get_id(const ENGINE *e))
-DEPRECATEDIN_3_0(const char *ENGINE_get_name(const ENGINE *e))
-DEPRECATEDIN_3_0(const RSA_METHOD *ENGINE_get_RSA(const ENGINE *e))
-DEPRECATEDIN_3_0(const DSA_METHOD *ENGINE_get_DSA(const ENGINE *e))
-DEPRECATEDIN_3_0(const EC_KEY_METHOD *ENGINE_get_EC(const ENGINE *e))
-DEPRECATEDIN_3_0(const DH_METHOD *ENGINE_get_DH(const ENGINE *e))
-DEPRECATEDIN_3_0(const RAND_METHOD *ENGINE_get_RAND(const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_GEN_INT_FUNC_PTR ENGINE_get_destroy_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_GEN_INT_FUNC_PTR ENGINE_get_init_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_GEN_INT_FUNC_PTR ENGINE_get_finish_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_CTRL_FUNC_PTR ENGINE_get_ctrl_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_LOAD_KEY_PTR ENGINE_get_load_privkey_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_LOAD_KEY_PTR ENGINE_get_load_pubkey_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_SSL_CLIENT_CERT_PTR ENGINE_get_ssl_client_cert_function
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_CIPHERS_PTR ENGINE_get_ciphers(const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_DIGESTS_PTR ENGINE_get_digests(const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_PKEY_METHS_PTR ENGINE_get_pkey_meths(const ENGINE *e))
-DEPRECATEDIN_3_0(ENGINE_PKEY_ASN1_METHS_PTR ENGINE_get_pkey_asn1_meths
-                    (const ENGINE *e))
-DEPRECATEDIN_3_0(const EVP_CIPHER *ENGINE_get_cipher(ENGINE *e, int nid))
-DEPRECATEDIN_3_0(const EVP_MD *ENGINE_get_digest(ENGINE *e, int nid))
-DEPRECATEDIN_3_0(const EVP_PKEY_METHOD *ENGINE_get_pkey_meth
-                    (ENGINE *e, int nid))
-DEPRECATEDIN_3_0(const EVP_PKEY_ASN1_METHOD *ENGINE_get_pkey_asn1_meth
-                    (ENGINE *e, int nid))
-DEPRECATEDIN_3_0(const EVP_PKEY_ASN1_METHOD *ENGINE_get_pkey_asn1_meth_str
-                    (ENGINE *e, const char *str, int len))
-DEPRECATEDIN_3_0(const EVP_PKEY_ASN1_METHOD *ENGINE_pkey_asn1_find_str
-                    (ENGINE **pe, const char *str, int len))
-DEPRECATEDIN_3_0(const ENGINE_CMD_DEFN *ENGINE_get_cmd_defns(const ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_get_flags(const ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 const char *ENGINE_get_id(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 const char *ENGINE_get_name(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 const RSA_METHOD *ENGINE_get_RSA(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 const DSA_METHOD *ENGINE_get_DSA(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 const EC_KEY_METHOD *ENGINE_get_EC(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 const DH_METHOD *ENGINE_get_DH(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 const RAND_METHOD *ENGINE_get_RAND(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_GEN_INT_FUNC_PTR ENGINE_get_destroy_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_GEN_INT_FUNC_PTR ENGINE_get_init_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_GEN_INT_FUNC_PTR ENGINE_get_finish_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_CTRL_FUNC_PTR ENGINE_get_ctrl_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_LOAD_KEY_PTR ENGINE_get_load_privkey_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_LOAD_KEY_PTR ENGINE_get_load_pubkey_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_SSL_CLIENT_CERT_PTR ENGINE_get_ssl_client_cert_function(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_CIPHERS_PTR ENGINE_get_ciphers(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_DIGESTS_PTR ENGINE_get_digests(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_PKEY_METHS_PTR ENGINE_get_pkey_meths(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+ENGINE_PKEY_ASN1_METHS_PTR ENGINE_get_pkey_asn1_meths(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0
+const EVP_CIPHER *ENGINE_get_cipher(ENGINE *e, int nid);
+OSSL_DEPRECATEDIN_3_0
+const EVP_MD *ENGINE_get_digest(ENGINE *e, int nid);
+OSSL_DEPRECATEDIN_3_0
+const EVP_PKEY_METHOD *ENGINE_get_pkey_meth(ENGINE *e, int nid);
+OSSL_DEPRECATEDIN_3_0
+const EVP_PKEY_ASN1_METHOD *ENGINE_get_pkey_asn1_meth(ENGINE *e, int nid);
+OSSL_DEPRECATEDIN_3_0
+const EVP_PKEY_ASN1_METHOD *ENGINE_get_pkey_asn1_meth_str(ENGINE *e,
+                                                          const char *str,
+                                                          int len);
+OSSL_DEPRECATEDIN_3_0
+const EVP_PKEY_ASN1_METHOD *ENGINE_pkey_asn1_find_str(ENGINE **pe,
+                                                      const char *str, int len);
+OSSL_DEPRECATEDIN_3_0
+const ENGINE_CMD_DEFN *ENGINE_get_cmd_defns(const ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_get_flags(const ENGINE *e);
+#  endif
 
 /*
  * FUNCTIONAL functions. These functions deal with ENGINE structures that
 
 /*
  * FUNCTIONAL functions. These functions deal with ENGINE structures that
@@ -579,29 +616,36 @@ DEPRECATEDIN_3_0(int ENGINE_get_flags(const ENGINE *e))
  * already in use). This will fail if the engine is not currently operational
  * and cannot initialise.
  */
  * already in use). This will fail if the engine is not currently operational
  * and cannot initialise.
  */
-DEPRECATEDIN_3_0(int ENGINE_init(ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_init(ENGINE *e);
+#  endif
 /*
  * Free a functional reference to a engine type. This does not require a
  * corresponding call to ENGINE_free as it also releases a structural
  * reference.
  */
 /*
  * Free a functional reference to a engine type. This does not require a
  * corresponding call to ENGINE_free as it also releases a structural
  * reference.
  */
-DEPRECATEDIN_3_0(int ENGINE_finish(ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_finish(ENGINE *e);
+#  endif
 
 /*
  * The following functions handle keys that are stored in some secondary
  * location, handled by the engine.  The storage may be on a card or
  * whatever.
  */
 
 /*
  * The following functions handle keys that are stored in some secondary
  * location, handled by the engine.  The storage may be on a card or
  * whatever.
  */
-DEPRECATEDIN_3_0(EVP_PKEY *ENGINE_load_private_key
-                    (ENGINE *e, const char *key_id, UI_METHOD *ui_method,
-                     void *callback_data))
-DEPRECATEDIN_3_0(EVP_PKEY *ENGINE_load_public_key
-                    (ENGINE *e, const char *key_id, UI_METHOD *ui_method,
-                     void *callback_data))
-DEPRECATEDIN_3_0(int ENGINE_load_ssl_client_cert
-                    (ENGINE *e, SSL *s, STACK_OF(X509_NAME) *ca_dn,
-                     X509 **pcert, EVP_PKEY **ppkey, STACK_OF(X509) **pother,
-                     UI_METHOD *ui_method, void *callback_data))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0
+EVP_PKEY *ENGINE_load_private_key(ENGINE *e, const char *key_id,
+                                  UI_METHOD *ui_method, void *callback_data);
+OSSL_DEPRECATEDIN_3_0
+EVP_PKEY *ENGINE_load_public_key(ENGINE *e, const char *key_id,
+                                 UI_METHOD *ui_method, void *callback_data);
+OSSL_DEPRECATEDIN_3_0
+int ENGINE_load_ssl_client_cert(ENGINE *e, SSL *s, STACK_OF(X509_NAME) *ca_dn,
+                                X509 **pcert, EVP_PKEY **ppkey,
+                                STACK_OF(X509) **pother,
+                                UI_METHOD *ui_method, void *callback_data);
+#  endif
 
 /*
  * This returns a pointer for the current ENGINE structure that is (by
 
 /*
  * This returns a pointer for the current ENGINE structure that is (by
@@ -609,20 +653,26 @@ DEPRECATEDIN_3_0(int ENGINE_load_ssl_client_cert
  * incremented reference, so it should be free'd (ENGINE_finish) before it is
  * discarded.
  */
  * incremented reference, so it should be free'd (ENGINE_finish) before it is
  * discarded.
  */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_default_RSA(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_default_RSA(void);
+#  endif
 /* Same for the other "methods" */
 /* Same for the other "methods" */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_default_DSA(void))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_default_EC(void))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_default_DH(void))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_default_RAND(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_default_DSA(void);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_default_EC(void);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_default_DH(void);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_default_RAND(void);
+#  endif
 /*
  * These functions can be used to get a functional reference to perform
  * ciphering or digesting corresponding to "nid".
  */
 /*
  * These functions can be used to get a functional reference to perform
  * ciphering or digesting corresponding to "nid".
  */
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_cipher_engine(int nid))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_digest_engine(int nid))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_pkey_meth_engine(int nid))
-DEPRECATEDIN_3_0(ENGINE *ENGINE_get_pkey_asn1_meth_engine(int nid))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_cipher_engine(int nid);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_digest_engine(int nid);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_pkey_meth_engine(int nid);
+OSSL_DEPRECATEDIN_3_0 ENGINE *ENGINE_get_pkey_asn1_meth_engine(int nid);
+#  endif
 
 /*
  * This sets a new default ENGINE structure for performing RSA operations. If
 
 /*
  * This sets a new default ENGINE structure for performing RSA operations. If
@@ -630,17 +680,22 @@ DEPRECATEDIN_3_0(ENGINE *ENGINE_get_pkey_asn1_meth_engine(int nid))
  * its reference count up'd so the caller should still free their own
  * reference 'e'.
  */
  * its reference count up'd so the caller should still free their own
  * reference 'e'.
  */
-DEPRECATEDIN_3_0(int ENGINE_set_default_RSA(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_string(ENGINE *e, const char *def_list))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_RSA(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_string(ENGINE *e,
+                                                    const char *def_list);
+#  endif
 /* Same for the other "methods" */
 /* Same for the other "methods" */
-DEPRECATEDIN_3_0(int ENGINE_set_default_DSA(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_EC(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_DH(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_RAND(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_ciphers(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_digests(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_pkey_meths(ENGINE *e))
-DEPRECATEDIN_3_0(int ENGINE_set_default_pkey_asn1_meths(ENGINE *e))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_DSA(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_EC(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_DH(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_RAND(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_ciphers(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_digests(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_pkey_meths(ENGINE *e);
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default_pkey_asn1_meths(ENGINE *e);
+#  endif
 
 /*
  * The combination "set" - the flags are bitwise "OR"d from the
 
 /*
  * The combination "set" - the flags are bitwise "OR"d from the
@@ -649,9 +704,10 @@ DEPRECATEDIN_3_0(int ENGINE_set_default_pkey_asn1_meths(ENGINE *e))
  * application requires only specific functionality, consider using more
  * selective functions.
  */
  * application requires only specific functionality, consider using more
  * selective functions.
  */
-DEPRECATEDIN_3_0(int ENGINE_set_default(ENGINE *e, unsigned int flags))
-
-DEPRECATEDIN_3_0(void ENGINE_add_conf_module(void))
+#  ifndef OPENSSL_NO_DEPRECATED_3_0
+OSSL_DEPRECATEDIN_3_0 int ENGINE_set_default(ENGINE *e, unsigned int flags);
+OSSL_DEPRECATEDIN_3_0 void ENGINE_add_conf_module(void);
+#  endif
 
 /* Deprecated functions ... */
 /* int ENGINE_clear_defaults(void); */
 
 /* Deprecated functions ... */
 /* int ENGINE_clear_defaults(void); */
@@ -763,7 +819,9 @@ typedef int (*dynamic_bind_engine) (ENGINE *e, const char *id,
 void *ENGINE_get_static_state(void);
 
 #  if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
 void *ENGINE_get_static_state(void);
 
 #  if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
-DEPRECATEDIN_1_1_0(void ENGINE_setup_bsd_cryptodev(void))
+#   ifndef OPENSSL_NO_DEPRECATED_1_1_0
+OSSL_DEPRECATEDIN_1_1_0 void ENGINE_setup_bsd_cryptodev(void);
+#   endif
 #  endif
 
 
 #  endif