OPENSSL_API_COMPAT
名称
openssl_user_macros, OPENSSL_API_COMPAT, OPENSSL_NO_DEPRECATED - 用户定义宏
描述
用户定义的宏允许程序员控制OpenSSL头文件中公开的某些方面。
注意: 要使其生效,用户定义的宏必须在包含任何依赖它的头文件之前定义,可以在编译命令中定义(cc -DMACRO=value
),或者在包含任何头文件之前在源代码中定义宏。
当声明依赖于用户定义的宏时,其他手册页可能会引用此页面。
宏
- OPENSSL_API_COMPAT
-
该值是一个版本号,以以下两种形式之一给出
0xMNNFF000L
-
这是所有版本(直至1.1.x)都支持的形式,其中
M
表示主版本号,NN
表示次版本号,FF
表示修订版本号(以十六进制表示)。对于版本1.1.0,它是0x10100000L
。可以给出任何版本号,但这些数字是当前已知的主要弃用点,使它们最有意义
0x00908000L
(版本0.9.8)0x10000000L
(版本1.0.0)0x10100000L
(版本1.1.0)
为方便起见,只要可行,也接受更高的数字。例如,
0x60000000L
将按预期工作。但是,建议改为开始使用第二种形式 mmnnpp
-
此形式是一个简单的十进制数字,使用以下公式计算
主版本 * 10000 + 次版本 * 100 + 修订版本
其中主版本、次版本和修订版本是版本号所需的主版本、次版本和修订版本组件。例如
- 30000对应版本3.0.0
- 10002对应版本1.0.2
- 420101对应版本42.1.1
如果OPENSSL_API_COMPAT未定义,则使用此默认值代替:
30300
- OPENSSL_NO_DEPRECATED
-
如果定义了此宏,则所有在OPENSSL_API_COMPAT给出的版本(或上面给出的默认值,当OPENSSL_API_COMPAT未定义时)及之前的所有OpenSSL版本中的已弃用公共符号都将被隐藏。
版权
版权所有 2018-2021 OpenSSL 项目作者。保留所有权利。
根据 Apache 许可证 2.0(“许可证”)许可。除非符合许可证,否则您不得使用此文件。您可以在源代码分发中的 LICENSE 文件或 https://www.openssl.org/source/license.html 中获取副本。