Bug 1964837

Summary: sscg: Port to OpenSSL 3.0
Product: Red Hat Enterprise Linux 9 Reporter: Sahana Prasad <sahana>
Component: sscgAssignee: Stephen Gallagher <sgallagh>
Status: CLOSED CURRENTRELEASE QA Contact: Branislav Náter <bnater>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: CentOS StreamCC: bnater, bstinson, fweimer, jorton, jwboyer, sahana
Target Milestone: betaKeywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: sscg-3.0.0-2.el9 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-12-07 21:35:16 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1958021    

Comment 2 Stephen Gallagher 2021-05-26 15:23:20 UTC
Giving devel_ack+

This is fixed in upstream commit https://github.com/sgallagher/sscg/commit/696979f3ab82a8540a8a08fa84a2e11e057fe0b1

Once release+ is granted, I'll build this immediately.

MR: https://gitlab.com/redhat/centos-stream/rpms/sscg/-/merge_requests/5

Comment 12 Florian Weimer 2021-08-06 19:24:38 UTC
There is an additional porting issue. OpenSSL 3.0 removed the ERR_GET_FUNC macro. This leads to compiler warnings (thankfully treated as an error):

In file included from ../src/bignum.c:21:
../src/bignum.c: In function ‘sscg_init_bignum’:
../include/sscg.h:99:16: error: implicit declaration of function ‘ERR_GET_FUNC’; did you mean ‘ERR_GET_LIB’? [-Werror=implicit-function-declaration]
   99 |               (ERR_GET_FUNC (_ssl_error) == UI_F_UI_SET_RESULT_EX) &&         \
      |                ^~~~~~~~~~~~
../src/bignum.c:67:3: note: in expansion of macro ‘CHECK_SSL’
   67 |   CHECK_SSL (sslret, BN_set_word);
      |   ^~~~~~~~~

It is probably best to remove all checks based on ERR_GET_FUNC because they can never succeed.

Comment 13 Stephen Gallagher 2021-08-09 14:39:43 UTC
(In reply to Florian Weimer from comment #12)
> There is an additional porting issue. OpenSSL 3.0 removed the ERR_GET_FUNC
> macro. This leads to compiler warnings (thankfully treated as an error):
> 
> In file included from ../src/bignum.c:21:
> ../src/bignum.c: In function ‘sscg_init_bignum’:
> ../include/sscg.h:99:16: error: implicit declaration of function
> ‘ERR_GET_FUNC’; did you mean ‘ERR_GET_LIB’?
> [-Werror=implicit-function-declaration]
>    99 |               (ERR_GET_FUNC (_ssl_error) == UI_F_UI_SET_RESULT_EX)
> &&         \
>       |                ^~~~~~~~~~~~
> ../src/bignum.c:67:3: note: in expansion of macro ‘CHECK_SSL’
>    67 |   CHECK_SSL (sslret, BN_set_word);
>       |   ^~~~~~~~~
> 
> It is probably best to remove all checks based on ERR_GET_FUNC because they
> can never succeed.

This has been fixed as of sscg-3.0.0-2.el9