Hi Kirk,
  Wow thank you!! I have deleted the whole openssl-1.0.1 directory, Re-issued 
my pax to recreate the directory.

Then performed all the updates you identified and suggested, That was much 
simpler with way less issues than before.

Now my Make runs for about 1hr. But sadly I now get.

gmakeÝ2¨: Entering directory `/u/w012108/temp/openssl-1.0.1/apps'               
( :; LIBDEPS="${LIBDEPS:--L.. -lssl  -L.. -lcrypto }"; LDCMD="${LDCMD:-c99_x}"; 
LDFLAGS="${LDFLAGS:--O -DB_ENDIAN -DCHARSET_EBCDIC -DNO_SYS_PARAM_H -D_ALL_SOURC
E}"; LIBPATH=`for x in $LIBDEPS; do echo $x; done | sed -e 's/¬ *-L//;t' -e d | 
uniq`; LIBPATH=`echo $LIBPATH | sed -e 's/ /:/g'`; LD_LIBRARY_PATH=$LIBPATH:$LD_
LIBRARY_PATH ${LDCMD} ${LDFLAGS} -o ${APPNAME:=openssl} openssl.o verify.o asn1p
ars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o c
rl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gen
dsa.o genpkey.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o 
app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o pkey.o pkeypara
m.o pkeyutl.o spkac.o smime.o cms.o rand.o engine.o ocsp.o prime.o ts.o srp.o ${
LIBDEPS} )                                                                      
FSUM3008 Specify a file with the correct suffix (.c, .i, .s, .o, .x, .p, .I, or 
.a), or a corresponding data set name, instead of -L...                         
gmakeÝ2¨: *** Ýlink_app.¨ Error 1                                               
gmakeÝ2¨: Leaving directory `/u/w012108/temp/openssl-1.0.1/apps'                
gmakeÝ1¨: *** Ýopenssl¨ Error 2                                                 
gmakeÝ1¨: Leaving directory `/u/w012108/temp/openssl-1.0.1/apps'                
gmake: *** Ýbuild_apps¨ Error 1        

I see in /u/w012108/temp/openssl-1.0.1/PROBLEMS there is a reference but I 
think it's for macOS X.

This is really a misfeature in ld, which seems to look for .dylib libraries   
along the whole library path before it bothers looking for .a libraries.  This
means that -L switches won't matter unless OpenSSL is built with shared       
library support.                                                              
                                                                              
The workaround may be to change the following lines in apps/Makefile and      
test/Makefile:                                                                
                                                                              
  LIBCRYPTO=-L.. -lcrypto                                                     
  LIBSSL=-L.. -lssl                                                           
                                                                              
to:                                                                           
                                                                              
  LIBCRYPTO=../libcrypto.a                                                    
  LIBSSL=../libssl.a       

Not sure why I got this error and you didn't? On another note, I did not see 
any of the other errors you saw but maybe I just didn't get that
far?

One last question if there a way to capture all the output that scrolls on my 
screen?  In case I missed any messages?                                         
          

Thanks

Ms. Terri E. Shaffer 
terri.e.shaf...@jpmchase.com
Engineer
J.P.Morgan Chase & Co.
GTI DCT ECS Core Services zSoftware Group / Emerging Technologies 
Office: # 614-213-3467
Cell: # 412-519-2592 


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of 
Kirk Wolf
Sent: Tuesday, April 10, 2012 3:52 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: openssl make - z/OS UNIX question - Help

Terri,

I downloaded 1.0.1 and here's how I built it:

1) Update the Configure perl script and add this line (after the existing 
OS390-Unix line, which isn't used):

"OS/390","c99_x:-O -DB_ENDIAN -DCHARSET_EBCDIC -DNO_SYS_PARAM_H  
-D_ALL_SOURCE::(unknown):::THIRTY_TWO_BIT DES_PTR DES_UNROLL MD2_CHAR RC4_INDEX 
RC4_CHAR BF_PTR:::",

Notice that all I changed was to change the label to "OS/390" and to use the 
c99_x command.
- c99 means to use STDC99, which automatically implies LONGLONG.  This avoids 
the shell quoting issues.
- the c99_x means to compile and link using XPLINK linkage.  You may or may
not want this, depending on what you are using it for.   If you have a
non-XPLINK application and you want to use it with the openssl dll, then you 
will want to use just "c99"

2) ensure that perl and gmake are in your PATH

3) chmod +x tools/*

4)
export MAKE=gmake
export _C89_CCMODE=1   (not sure that this is needed any more with the c99
command)

5) $MAKE

I get these errors:
ERROR CCN3045 ./b_sock.c:888   Undeclared identifier NI_MAXHOST.
ERROR CCN4324 ./b_sock.c:888   Array size must have integer type.
ERROR CCN3045 ./b_sock.c:888   Undeclared identifier NI_MAXSERV.
ERROR CCN4324 ./b_sock.c:888   Array size must have integer type.

So, I added these lines to crypto/bio/b_sock.c starting at line 102

#ifndef NI_MAXSERV
#define NI_MAXSERV 32
#endif
#ifndef NI_MAXHOST
#define NI_MAXHOST 1025
#endif

I get the following warnings, which I think may be OK.  The problem are missing 
#includes (which are probably different on z/OS) -

WARNING CCN4421 ./a_print.c:90    Implicit function declaration for
function "isalnum"
WARNING CCN4421 ./t_x509.c:498   Implicit function declaration for function
"isupper".
WARNING CCN4421 ./ameth_lib.c:234   Implicit function declaration for
function "strncasecmp".
WARNING CCN4421 ./f_int.c:136   Implicit function declaration for function
"isxdigit".
WARNING CCN4421 ./f_string.c:136   Implicit function declaration for
function "isxdigit".
WARNING CCN4421 ./v3_ncons.c:408   Implicit function declaration for
function "strcasecmp".
WARNING CCN4421 ./v3_ncons.c:430   Implicit function declaration for
function "strcasecmp".
WARNING CCN4421 ./v3_ncons.c:453   Implicit function declaration for
function "strcasecmp".
WARNING CCN4421 ./v3_ncons.c:494   Implicit function declaration for
function "strncasecmp".
WARNING CCN4421 ./v3_ncons.c:500   Implicit function declaration for
function "strncasecmp".

but everything links OK, so these are probably OK.  (but the correct include 
file may have an improved macro / inlined implementation, so this should 
probably be fixed).


Kirk Wolf
Dovetailed Technologies
http://dovetail.com


On Tue, Apr 10, 2012 at 2:06 PM, Shaffer, Terri E < 
terri.e.shaf...@jpmchase.com> wrote:

> I just looked at the cversion.c member and I guess this code doesn't 
> like the backslashes escapes.
>
> As these are lines 83 and 85 of the source.
>
> #ifdef CFLAGS
>  static char bufÝsizeof(CFLAGS)+11¨;
>
>  BIO_snprintf(buf,sizeof buf,"compiler: %s",CFLAGS);  return(buf);
>
> Thanks
>
> Ms. Terri E. Shaffer
> terri.e.shaf...@jpmchase.com
> Engineer
> J.P.Morgan Chase & Co.
> GTI DCT ECS Core Services zSoftware Group / Emerging Technologies
> Office: # 614-213-3467
> Cell: # 412-519-2592
>
>
> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On 
> Behalf Of Shaffer, Terri E
> Sent: Tuesday, April 10, 2012 2:52 PM
> To: IBM-MAIN@bama.ua.edu
> Subject: Re: openssl make - z/OS UNIX question - Help
>
> Hi Kirk,
>  I figured out the backslashes in the Configure file on my own with 
> the help of google searches, so I was able to get past passing the 
> compiler parm issue. After it completed:
>
> I had to edit the makefile and change the cflag for langlvl and put 
> back the backslashes.
>
> CC= xlc
> CFLAG= -DOPENSSL_THREADS  -O -DB_ENDIAN -DCHARSET_EBCDIC 
> -DNO_SYS_PARAM_H -D_ALL_SOURCE -W c,xplink,langlvl\(longlong\) 
> DEPFLAG=
> -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE 
> -D
> OPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 
> -DOPENSSL_NO_SCTP -DOPENSSL_NO_STORE
>
> I tried double backslashes also and that caused other issues when I 
> got to the gmake install but the Configure liked them.
>
> But the makefile was missing the backslashes, so I still had to edit.
>
> Everything else I think looked okay.
>
> I was then able to issue the gmake install command and my next round 
> of problems started occurring.
>
> The first thing I will say this runs about 20 minutes until it stops 
> even with the first 4 issues for ignored.
>
> xlc -I. -I.. -I../include  -DOPENSSL_THREADS  -O -DB_ENDIAN 
> -DCHARSET_EBCDIC -DN
> O_SYS_PARAM_H -D_ALL_SOURCE -W c,xplink,langlvl\(longlong\)   -c -o
> cversion.o cversion.c
> WARNING CCN3235 ./cversion.c:83    Incorrect escape sequence \(. \ ignored.
> WARNING CCN3235 ./cversion.c:83    Incorrect escape sequence \). \ ignored.
> WARNING CCN3235 ./cversion.c:85    Incorrect escape sequence \(. \ ignored.
> WARNING CCN3235 ./cversion.c:85    Incorrect escape sequence \). \ ignored.
>
> Goes thru many directories within the crypto directory until it hits 
> this error.
>
> xlc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include  
> -DOPENSSL_THREAD S  -O -DB_ENDIAN -DCHARSET_EBCDIC -DNO_SYS_PARAM_H 
> -D_ALL_SOURCE -W c,xplink,lan
> glvl\(longlong\)   -c -o b_sock.o b_sock.c
> ERROR CCN3045 ./b_sock.c:888   Undeclared identifier NI_MAXHOST.
> ERROR CCN3195 ./b_sock.c:888   Integral constant expression with a value
> greater
>  than zero is required.
> ERROR CCN3045 ./b_sock.c:888   Undeclared identifier NI_MAXSERV.
> ERROR CCN3195 ./b_sock.c:888   Integral constant expression with a value
> greater
>  than zero is required.
> CCN0793(I) Compilation failed for file ./b_sock.c.  Object file not 
> created.
> gmakeÝ2¨: *** Ýb_sock.o¨ Error 12
> gmakeÝ2¨: Leaving directory `/u/w012108/temp/openssl-1.0.1/crypto/bio'
> gmakeÝ1¨: *** Ýsubdirs¨ Error 1
> gmakeÝ1¨: Leaving directory `/u/w012108/temp/openssl-1.0.1/crypto'
> gmake: *** Ýbuild_crypto¨ Error 1
>
> I looked at the b.sock file and see char   hÝNI_MAXHOST¨,sÝNI_MAXSERV¨;
>
> I can also see .o members for many members that look like they worked.
>
> I understand about the codepage and my displays but not sure that 
> would cause the make issues?
>
> At this stage I am not sure If I have a code issue with 1.0.1 version 
> or something else I did wrong?
>
> Any ideas you have or if you try it is great. Tomorrow or Thursday or 
> whenever is fine for a response, I just appreciate everything you have 
> provided so far.
>
> My last option could be to download the previous version and try that 
> to see if some of these new errors go away.
>
> Thanks
>
> Ms. Terri E. Shaffer
> terri.e.shaf...@jpmchase.com
> Engineer
> J.P.Morgan Chase & Co.
> GTI DCT ECS Core Services zSoftware Group / Emerging Technologies
> Office: # 614-213-3467
> Cell: # 412-519-2592
>
>
This communication is for informational purposes only. It is not
intended as an offer or solicitation for the purchase or sale of
any financial instrument or as an official confirmation of any
transaction. All market prices, data and other information are not
warranted as to completeness or accuracy and are subject to change
without notice. Any comments or statements made herein do not
necessarily reflect those of JPMorgan Chase & Co., its subsidiaries
and affiliates.

This transmission may contain information that is privileged,
confidential, legally privileged, and/or exempt from disclosure
under applicable law. If you are not the intended recipient, you
are hereby notified that any disclosure, copying, distribution, or
use of the information contained herein (including any reliance
thereon) is STRICTLY PROHIBITED. Although this transmission and any
attachments are believed to be free of any virus or other defect
that might affect any computer system into which it is received and
opened, it is the responsibility of the recipient to ensure that it
is virus free and no responsibility is accepted by JPMorgan Chase &
Co., its subsidiaries and affiliates, as applicable, for any loss
or damage arising in any way from its use. If you received this
transmission in error, please immediately contact the sender and
destroy the material in its entirety, whether in electronic or hard
copy format. Thank you.

Please refer to http://www.jpmorgan.com/pages/disclosures for
disclosures relating to European legal entities.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN

Reply via email to