如何查找OpenSSL整数错误码与对应错误常量的映射关系
OpenSSL SSL_ERROR系列错误常量映射查询方式
源码查询位置
所有SSL_ERROR_前缀的错误常量,统一定义在OpenSSL源码目录下的include/openssl/ssl.h头文件中,如果你已经安装了OpenSSL开发包,也可以直接在系统的头文件搜索路径下的openssl/ssl.h文件中找到对应定义,直接搜索SSL_ERROR_前缀即可快速定位所有相关宏。
通用常量数值映射
目前主流的1.0.x、1.1.x、3.0.x分支的OpenSSL版本中,这些常量的数值对应关系固定如下:
- 0:
SSL_ERROR_NONE(无错误) - 1:
SSL_ERROR_SSL(SSL协议层错误) - 2:
SSL_ERROR_WANT_READ(需要等待可读事件后重试操作) - 3:
SSL_ERROR_WANT_WRITE(需要等待可写事件后重试操作) - 4:
SSL_ERROR_WANT_X509_LOOKUP(需要等待X509证书查找完成后重试) - 5:
SSL_ERROR_SYSCALL(系统调用层面错误) - 6:
SSL_ERROR_ZERO_RETURN(连接正常关闭) - 7:
SSL_ERROR_WANT_CONNECT(需要等待连接完成后重试) - 8:
SSL_ERROR_WANT_ACCEPT(需要等待Accept操作完成后重试)
文档说明
官方SSL_get_error相关手册页会列出所有常量的功能含义说明,如果你需要确认特定版本的数值差异,以对应版本的ssl.h头文件中的实际宏定义为准。
内容的提问来源于stack exchange,提问作者Kevin Burke
相关产品推荐
相关产品推荐

