In a recent note, Bruce Black said:
> Date: Thu, 29 Sep 2005 20:04:25 -0400
>
> >Really? I don't see it on my z/OS 1.6 system. What CSF FMID
> >do you have?
> >
> HCR7720. I see it has a date of 2004 and is only in our z/OS 1.7
> SAMPLIB, not the 1.6 which is HCR770A, so it must be new
>
Thanks for the pointer; just what I need.
And it runs with IRXJCL; no TSO required. Thanks, IBM!
And we have it on our 1.5 system, which lacks a Cryptographic
Coprocessor, but it's absent on our 1.6 system, which has the
Cryptographic Coprocessor, although several other CSF* members
are present. Our sysprog mumbled a couple FMIDs which I ignored.
I'll ask him again later today. I just copied it to a private
SYSEXEC.
But on the 1.6 system on which I have been successfully testing
SMP/E RECEIVE FROMNETWORK and GIMZIP, I get:
Executing multiple clear key import ...
ICSF is not started or the DES/symmetric-key master key
is not set
... apparently it tests more functions than I need. But that's
OK. Now that I have a prototype, I can monkey-see monkey-doo:
//STEP2 EXEC PGM=IKJEFT01
//SYSEXEC DD DISP=(,DELETE),UNIT=&VIO,
// RECFM=FB,LRECL=80,
// DSN=&&SYSEXEC,
// SPACE=(CYL,(1,,5)),DSORG=PO,DSNTYPE=PDS
//REXXOUT DD DISP=(OLD,PASS),DSN=&&SYSEXEC(HASH),
// UNIT=&VIO,VOL=REF=*.SYSEXEC
//SYSTSPRT DD SYSOUT=(,)
//SYSTSIN DD *
repro infile(rexxin) outfile(rexxout)
%HASH
//REXXIN DD DATA,DLM=ZZ
/* Rexx */
/*********************************************************************/
/* */
/* Adapted from SYS1.SAMPLIB(CSFTEST) */
/* */
/* Licensed Materials - Property of IBM */
/* 5694-A01 */
/* (C) Copyright IBM Corp. 2004 */
/* */
/*********************************************************************/
signal on novalue
trace Err
/*-------------------------------------------------------------------*/
/* Call One-Way Hash Generate. */
/*-------------------------------------------------------------------*/
Hshrc = 'FFFFFFFF'x ;
Hshrs = 'FFFFFFFF'x ;
ExitLength = '00000000'x ;
ExitData = '' ;
RuleArrayCount = '00000001'x ;
RuleArray = 'SHA-1 ';
text = 'Hello, ICSF World!'
text_length = right( d2c( length( text ) ), 4, '00'x )
chaining_vector_length = '00000080'x
chaining_vector = right( '', c2x( chaining_vector_length ), '00'x )
HashLength = '00000020'x ; /* 32 decimal */
Hash = right( '', c2x( HashLength ), '00'x )
say 'Executing SHA-1 ...'
say
address linkpgm 'CSNBOWH' ,
'Hshrc' ,
'Hshrs' ,
'ExitLength' ,
'ExitData' ,
'RuleArrayCount' ,
'RuleArray' ,
'text_length' ,
'text' ,
'chaining_vector_length' ,
'chaining_vector' ,
'HashLength' ,
'Hash' ,
say 'RC =' c2x(Hshrc) ' RSN =' c2x(Hshrs) ' Hash =' c2x( Hash )
exit( c2d( Hshrc ) )
ZZ
... which seems to test the function required by SMP/E. Of
course, I'm now in the SAMPLIB Copyright bind. In principle,
I'm forbidden to distribute a derivative work (oops! I just
did!) Do I have to use development "clean room" practices
whenever I base anything on SAMPLIB?
Thanks again,
gil
--
StorageTek
INFORMATION made POWERFUL
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html