Re: Compiling openssl 1.0.2q for OS390-Unix

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Compiling openssl 1.0.2q for OS390-Unix

Thiagu Mohan



Hi,

When i tried compiling openssl 1.0.2q for OS390-Unix  i got sevaeral warning like below but got the libraries libcrypto.a and libssl.a  compiled

INFORMATIONAL CCN3764 /usr/include/signal.h:62    Option rent is ignored for variable __sigign because pragma variable(NORENT) is specified.
INFORMATIONAL CCN3684 ./openssl.c:218   Exporting function main is not allowed.
INFORMATIONAL CCN3684 ./bntest.c:143   Exporting function main is not allowed. IEW2689W 4C40 DEFINITION SIDE FILE IS NOT DEFINED.
FSUM3065 The LINKEDIT step ended with return code 4.


But while building my project with these libraries  i am getting lot of unresolved errors like

plink: error: symbol 'X509_SIG_it' from archive member "libcrypto.a(p12_asn.o)" is unresolved
plink: error: symbol 'PKCS12_AUTHSAFES_it' from archive member "libcrypto.a(p12_add.o)" is unresolved

Any pointers ??
 
Thiagu Mohan



--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: Compiling openssl 1.0.2q for OS390-Unix

Michael Wojcik
> From: openssl-users [mailto:[hidden email]] On Behalf Of Thiagu Mohan
> Sent: Tuesday, January 22, 2019 00:59
>
> When i tried compiling openssl 1.0.2q for OS390-Unix  i got sevaeral warning like below but
> got the libraries libcrypto.a and libssl.a  compiled

> INFORMATIONAL CCN3764 /usr/include/signal.h:62    Option rent is ignored for variable __sigign
> because pragma variable(NORENT) is specified.
> INFORMATIONAL CCN3684 ./openssl.c:218   Exporting function main is not allowed.
> INFORMATIONAL CCN3684 ./bntest.c:143   Exporting function main is not allowed. IEW2689W 4C40
> DEFINITION SIDE FILE IS NOT DEFINED.
> FSUM3065 The LINKEDIT step ended with return code 4.

None of those look relevant to your issue. The RENT (reentrant, if memory serves) option is specifically suppressed for __sigign by a pragma; that's probably done in the system header, so it's behaving as expected. For the openssl utility program and the test programs, you're getting diagnostics saying you can't export the main function - that's expected too.

> But while building my project with these libraries  i am getting lot of unresolved errors like

> plink: error: symbol 'X509_SIG_it' from archive member "libcrypto.a(p12_asn.o)" is unresolved
> plink: error: symbol 'PKCS12_AUTHSAFES_it' from archive member "libcrypto.a(p12_add.o)" is
> unresolved

Are you sure you're linking against the libraries you built, and not other copies elsewhere on the system?

I did a quick scan through the 1.0.2n source (don't have 1.0.2q handy), and I don't see X509_SIG_it anywhere. There's X509_SIG, X509_SIG_new, and X509_SIG_free. Similarly, there's PKCS12_AUTHSAFES but no PKCS12_AUTHSAFES_it. It's possible those were introduced after 1.0.2n, though.

My suggestion would be to scan all the generated .o files with nm to see where those symbols are being introduced (apparently they're at least in p12_asn.o and p12_add.o, but maybe elsewhere as well?). That will help narrow the problem down.

--
Michael Wojcik
Distinguished Engineer, Micro Focus



--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: Compiling openssl 1.0.2q for OS390-Unix

Thiagu Mohan
In reply to this post by Thiagu Mohan


---------- Forwarded message ---------
From: Thiagu Mohan <[hidden email]>
Date: Wed, Jan 23, 2019 at 4:39 PM
Subject: Re: [openssl-users] Compiling openssl 1.0.2q for OS390-Unix
To: Michael Wojcik <[hidden email]>


Yes I am using the option for Configure as OS390-Unix  only and using c89.sh from tools directory in the openssl tar file.


Regards,
Thaigu



On Wed, Jan 23, 2019 at 2:50 AM Michael Wojcik <[hidden email]> wrote:
> From: Thiagu Mohan [mailto:[hidden email]]
> Sent: Tuesday, January 22, 2019 13:02
> To: Michael Wojcik

Please reply to the mailing list, and not to me directly.

> PKCS12_AUTHSAFES_it    these symbols must be typedefs.

I don't know how you came to that conclusion, but it's wrong. A bit of digging shows the *_it symbols are used to provide access to global variables on platforms which do not automatically resolve non-function symbols in shared libraries/objects.

> On Tue, Jan 22, 2019 at 11:24 PM Thiagu Mohan <[hidden email]> wrote:

> I checked the source of 1.0.2n and 1.0.2q. these  symbols  are found in libeay.num
> in both the sources and not in any other source code.

Though the util/*.num files are included in the source tarballs, they're not really source code. They're created by mkdef.pl. Unfortunately mkdef.pl achieves a level of unreadableness that is impressive even by Perl standards, so that's not much help.

I'll be frank: This isn't a problem I've run into before, and I don't have time at the moment to try to figure out what's causing it. Maybe someone who has more experience in this particular area will chime in.

You did run Configure for the OS390-Unix target, right? And it's using the c89.sh wrapper from the tools directory?

--
Michael Wojcik
Distinguished Engineer, Micro Focus




--
Thiagu Mohan


--
Thiagu Mohan

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users