Building Freeradius 3.2.0
Hello, iam trying to build Freeradius 3.2.0 from source when i run make i get these warnings: CC src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c: In function ‘mod_process’: src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c:832:8: warning: implicit declaration of function ‘EC_POINT_get_affine_coordinates’; did you mean ‘EC_POINT_get_affine_coordinates_GFp’? [-Wimplicit-function-declaration] 832 | if (!EC_POINT_get_affine_coordinates(session->group, session->my_element, x, y, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | EC_POINT_get_affine_coordinates_GFp CC src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c: In function ‘do_equation’: src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:144:2: warning: implicit declaration of function ‘EC_GROUP_get_curve’; did you mean ‘EC_GROUP_get_degree’? [-Wimplicit-function-declaration] 144 | EC_GROUP_get_curve(group, p, a, b, bnctx); | ^~~~~~~~~~~~~~~~~~ | EC_GROUP_get_degree In file included from src/modules/rlm_eap/eap.h:29, from src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.h:38, from src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:37: src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c: In function ‘compute_password_element’: src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:259:17: warning: implicit declaration of function ‘EVP_MD_CTX_new’; did you mean ‘EVP_MD_CTX_init’? [-Wimplicit-function-declaration] 259 | MEM(hmac_ctx = EVP_MD_CTX_new()); | ^~~~~~~~~~~~~~ src/freeradius-devel/radiusd.h:396:22: note: in definition of macro ‘MEM’ 396 | #define MEM(x) if (!(x)) { ERROR("%s[%u] OUT OF MEMORY", __FILE__, __LINE__); _fr_exit_now(__FILE__, __LINE__, 1); } | ^ src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:259:15: warning: assignment to ‘EVP_MD_CTX *’ {aka ‘struct env_md_ctx_st *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 259 | MEM(hmac_ctx = EVP_MD_CTX_new()); | ^ src/freeradius-devel/radiusd.h:396:22: note: in definition of macro ‘MEM’ 396 | #define MEM(x) if (!(x)) { ERROR("%s[%u] OUT OF MEMORY", __FILE__, __LINE__); _fr_exit_now(__FILE__, __LINE__, 1); } | ^ src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:390:4: warning: implicit declaration of function ‘EVP_MD_CTX_reset’; did you mean ‘EVP_MD_CTX_creat’? [-Wimplicit-function-declaration] 390 | EVP_MD_CTX_reset(hmac_ctx); | ^~~~~~~~~~~~~~~~ | EVP_MD_CTX_create src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:481:4: warning: implicit declaration of function ‘EC_POINT_set_affine_coordinates’; did you mean ‘EC_POINT_set_affine_coordinates_GFp’? [-Wimplicit-function-declaration] 481 | !EC_POINT_set_affine_coordinates(session->group, session->pwe, x_candidate, y, session->bnctx)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | EC_POINT_set_affine_coordinates_GFp src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:510:2: warning: implicit declaration of function ‘EVP_MD_CTX_free’; did you mean ‘EVP_MD_CTX_create’? [-Wimplicit-function-declaration] 510 | EVP_MD_CTX_free(hmac_ctx); | ^~~~~~~~~~~~~~~ | EVP_MD_CTX_create src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c: In function ‘process_peer_commit’: src/modules/rlm_eap/types/rlm_eap_pwd/eap_pwd.c:666:7: warning: implicit declaration of function ‘EC_POINT_get_affine_coordinates’; did you mean ‘EC_POINT_get_affine_coordinates_GFp’? [-Wimplicit-function-declaration] 666 | if (!EC_POINT_get_affine_coordinates(session->group, K, session->k, NULL, bn_ctx)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | EC_POINT_get_affine_coordinates_GFp How to solve this issue ? Thanks Bassem
On Apr 28, 2022, at 10:08 AM, Bassem Mettichi <mettichi@gmail.com> wrote:
iam trying to build Freeradius 3.2.0 from source when i run make i get these warnings: ... How to solve this issue ?
Your system is broken. Those errors come because it's building against the OpenSSL3 headers, but the servers thinks that the system has OpenSSL 1 installed. 3.2.0 was tested with OpenSSL 1.1.0 and OpenSSL 3. It works with both of them. My guess is that you've installed both OpenSSL 1 and OpenSSL 3 on the same system. The C compiler may then pick up one version during the "configure" stage, and then another during the normal build process. Ensure that you have only one version of OpenSSL installed. Alan DeKok.
Hello Alan, thanks a lot for your response, as i am building Freeradius on Centos 7, i confirm i have only one version of Openssl openssl-1.0.2k-25.el7_9.x86_64 Thanks Bassem Le jeu. 28 avr. 2022 à 15:14, Alan DeKok <aland@deployingradius.com> a écrit :
On Apr 28, 2022, at 10:08 AM, Bassem Mettichi <mettichi@gmail.com> wrote:
iam trying to build Freeradius 3.2.0 from source when i run make i get these warnings: ... How to solve this issue ?
Your system is broken. Those errors come because it's building against the OpenSSL3 headers, but the servers thinks that the system has OpenSSL 1 installed.
3.2.0 was tested with OpenSSL 1.1.0 and OpenSSL 3. It works with both of them.
My guess is that you've installed both OpenSSL 1 and OpenSSL 3 on the same system. The C compiler may then pick up one version during the "configure" stage, and then another during the normal build process.
Ensure that you have only one version of OpenSSL installed.
Alan DeKok.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On 28/04/2022 16:47, Bassem Mettichi wrote:
thanks a lot for your response, as i am building Freeradius on Centos 7, i confirm i have only one version of Openssl
Easiest way is probably to use the provided packages then: https://packages.networkradius.com/freeradius-3.2/centos/7/ 3.2.0 will build just fine on a clean CentOS 7 install, as that's what we do for the release packages. -- Matthew
That looks to be an version older than OpenSSL 1.1.0 that Alan wrote 3.2.0 was tested against. Jonathan Davis - Priority Colo Inc. jonathan@prioritycolo.com - https://www.prioritycolo.com 1-888-AS-30176 (1-888-273-0176) x304 On 2022-04-28 11:47 a.m., Bassem Mettichi wrote:
Hello Alan,
thanks a lot for your response, as i am building Freeradius on Centos 7, i confirm i have only one version of Openssl
openssl-1.0.2k-25.el7_9.x86_64
Thanks Bassem
Le jeu. 28 avr. 2022 à 15:14, Alan DeKok <aland@deployingradius.com> a écrit :
On Apr 28, 2022, at 10:08 AM, Bassem Mettichi <mettichi@gmail.com> wrote:
iam trying to build Freeradius 3.2.0 from source when i run make i get these warnings: ... How to solve this issue ? Your system is broken. Those errors come because it's building against the OpenSSL3 headers, but the servers thinks that the system has OpenSSL 1 installed.
3.2.0 was tested with OpenSSL 1.1.0 and OpenSSL 3. It works with both of them.
My guess is that you've installed both OpenSSL 1 and OpenSSL 3 on the same system. The C compiler may then pick up one version during the "configure" stage, and then another during the normal build process.
Ensure that you have only one version of OpenSSL installed.
Alan DeKok.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On 28/04/2022 17:03, Jonathan Davis wrote:
That looks to be an version older than OpenSSL 1.1.0 that Alan wrote 3.2.0 was tested against.
We bumped the minimum requirement up to OpenSSL 1.1.0, but then had to relax that down to 1.0.2 again because CentOS 7 is so utterly ancient :( Honestly, if you're running something as old as RHEL/CentOS 7, you should expect breakage and upgrade to something recent. Ubuntu do some good stuff that's up-to-date... -- Matthew
On Apr 28, 2022, at 12:03 PM, Jonathan Davis <jonathan@prioritycolo.com> wrote:
That looks to be an version older than OpenSSL 1.1.0 that Alan wrote 3.2.0 was tested against.
As Matthew said, that's fine. We build on CentOS 7 every day in CI. But the build errors show that some OpenSSL headers are missing and/or wrong. They're the same build errors I saw when trying to build with OpenSSL3, when the server was using the OpenSSL 1 API. i.e. the OS has OpenSSL3 installed, but the configure script thinks that OpenSSL1 is installed. And the build breaks. He should start from a clean install. It *will* work. This works every day in CI. Alan DeKok.
participants (4)
-
Alan DeKok -
Bassem Mettichi -
Jonathan Davis -
Matthew Newton