如何修复 ‘RSA_SSLV23_PADDING’ undeclared错误?

Apache

1 前言

一个问题,一篇文章,一出故事。
笔者在比较新的操作系统(Oracle Linux Server release 9.5)安装比较老的Apache httpd(httpd-2.4.46)的openssl扩展,出现如下错误,

/root/php-7.4.3/ext/openssl/openssl.c:1518:58: error: ‘RSA_SSLV23_PADDING’ undeclared (first use in this function); did you mean ‘RSA_NO_PADDING’?
1518 | REGISTER_LONG_CONSTANT("OPENSSL_SSLV23_PADDING", RSA_SSLV23_PADDING, CONST_CS|CONST_PERSISTENT);

2 最佳实践

2.1 修改源代码

vim openssl.c

修改如下代码,

        //REGISTER_LONG_CONSTANT("OPENSSL_SSLV23_PADDING", RSA_SSLV23_PADDING, CONST_CS|CONST_PERSISTENT);
        REGISTER_LONG_CONSTANT("OPENSSL_SSLV23_PADDING", RSA_PKCS1_PADDING, CONST_CS|CONST_PERSISTENT);

2.2 重新执行编译

make clean
make
没有评论

发表回复

Apache
如何编译安装Apache+PHP8.1.33?

1 前言 笔者平素不喜欢简单的编译安装,因为很多系统管理员为了省事,编译安装的东西没有rpm包安装那 …

Apache
如何安装配置Oracle Linux 9.x httpd+php环境?

1 前言 一个问题,一篇文章,一出故事。 本章将完成Oracle Linux 9.x的Apache+ …

Apache
如何安装配置Oracle Linux 9.x httpd环境?

1 前言 一个问题,一篇文章,一出故事。 本章将完成Oracle Linux 9.x的httpd服务 …