如何阅读 openssl 警报消息?
How to read the openssl alert messages?
我正在尝试以编程方式读取 OpenSSL 警报消息,但找不到执行此操作的方法。 OpenSSL API 提供如下功能:
const char *SSL_alert_type_string(int value);
const char *SSL_alert_type_string_long(int value);
const char *SSL_alert_desc_string(int value);
const char *SSL_alert_desc_string_long(int value);
但是没有从哪里得到 "int value" 的信息。
例如,当 TLS 连接因证书过期而重置时,会出现警报 (45)。如何接收此警报号码,以便我可以使用上面的 API 打印消息?
您可以通过 void SSL_CTX_set_info_callback(SSL_CTX *ctx, void (*callback)());
设置回调函数并根据需要处理这些代码来获取警报信息代码。
有关此功能的更多信息在 OpenSSL documentation 中。本页示例部分有完整的回调函数。它的声明是 void apps_ssl_info_callback(SSL *s, int where, int ret)
,其中 ret
是代码(假定 where
也已适当设置,请参阅 Notes 部分以获得更详尽的解释) .
我正在尝试以编程方式读取 OpenSSL 警报消息,但找不到执行此操作的方法。 OpenSSL API 提供如下功能:
const char *SSL_alert_type_string(int value);
const char *SSL_alert_type_string_long(int value);
const char *SSL_alert_desc_string(int value);
const char *SSL_alert_desc_string_long(int value);
但是没有从哪里得到 "int value" 的信息。
例如,当 TLS 连接因证书过期而重置时,会出现警报 (45)。如何接收此警报号码,以便我可以使用上面的 API 打印消息?
您可以通过 void SSL_CTX_set_info_callback(SSL_CTX *ctx, void (*callback)());
设置回调函数并根据需要处理这些代码来获取警报信息代码。
有关此功能的更多信息在 OpenSSL documentation 中。本页示例部分有完整的回调函数。它的声明是 void apps_ssl_info_callback(SSL *s, int where, int ret)
,其中 ret
是代码(假定 where
也已适当设置,请参阅 Notes 部分以获得更详尽的解释) .