A couple of things :
(1) Where is MY_PARM located? - I would hope that it is within the WS_DSECT
area (ie your working storage)
(2) I would advise that you perform the following before calling EZASMI :
XC MY_PARM(MY_PARM_LEN),MY_PARM
(3) Why not dump out the contents of MY_PARM after the failure and see what it
looks like
Rob Scott
Developer
Rocket Software
275 Grove Street * Newton, MA 02466-2272 * USA
Tel: +1.617.614.2305
Email: [email protected]
Web: www.rocketsoftware.com
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of
joereichman
Sent: 22 July 2009 08:37
To: [email protected]
Subject: Re: EZASMI re-entrant FAILS on INITAPI
I get a return code of -1 and errno is is X'0000000E'
as it goes to the label specfied in ERROR=ERROR
Where I have a ABEND with a DUMP operand The Following is a explaination of
errno 14 from Sockets Application Programming Interface Guide and reference
Appendix 1.2.1.1
14 FAULT All An incorrect storage address or length was
specified. Checkk validity of function parameters.
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]]on Behalf Of
Binyamin Dissen
Sent: Wednesday, July 22, 2009 2:13 AM
To: [email protected]
Subject: Re: EZASMI re-entrant FAILS on INITAPI
On Tue, 21 Jul 2009 22:04:21 -0400 Joe Reichman <[email protected]>
wrote:
:>When this code isn't linked with RENT it works with RENT it fails
How does it fail?
:>*---------------------------------------------------------------------*
:>* GET WORKING STORAGE *
:>*---------------------------------------------------------------------*
:> LA R10,WS_LEN GET WORKING STORAGE LENGTH
:> STORAGE OBTAIN,LENGTH=(R10),ADDR=(R12),SP=0
:> USING WS_DSECT,R13 STORAGE DSECT
:> ST R13,4(,R12) BACK LINK FORWARD LINK
:> ST R12,8(,R13)
Perhaps missing
LR R13,R12
here?
:>
:>*---------------------------------------------------------------------*
:>* GET STORAGE FOR THE GLOABL AREA *
:>*---------------------------------------------------------------------*
:> LA R10,GWALENTH
:> STORAGE OBTAIN,LENGTH=(R10),ADDR=(R12),SP=0
:> USING EZASMGW,R12
:>*---------------------------------------------------------------------*
:>* GET TASK STORAGE *
:>*---------------------------------------------------------------------*
:> LA R10,TIELENTH
:> STORAGE OBTAIN,LENGTH=(R10),ADDR=(R11),SP=0
:> USING MYTIE,R11
:>
:> EZASMI TYPE=INITAPI, Issue INITAPI Macro X
:> SUBTASK=SUBTASK, SPECIFY SUBTASK IDENTIFIER X
:> MAXSOC=MAXSOC, SPECIFY MAXIMUM NUMBER OF SOCKETS X
:> MAXSNO=MAXSNO, (HIGHEST SOCKET NUMBER ASSIGNED) X
:> ERRNO=ERRNO, (Specify ERRNO field) X
:> RETCODE=RETCODE, (Specify RETCODE field) X
:> APITYPE=APITYPE, (SPECIFY APITYPE FIELD) X
:> ERROR=ERROR, ABEND IF ERROR ON MACRO X
:> ASYNC=('ECB') (SPECIFY ECBS)
:> TASK=MYTIE,MF=(E,MY_PARM)
:>
:>
:>*--- STORAGE DEFINATIONS
:>
:> *---------------------------------------------------------------------*
:> * GLOBAL AREA
:> *---------------------------------------------------------------------*
:> EZASMGW EZASMI TYPE=GLOBAL, Storage definition for GWA X
:> STORAGE=DSECT
:> *---------------------------------------------------------------------*
:> TASK DSECT
:> *---------------------------------------------------------------------*
:> MYTIE EZASMI TYPE=TASK,STORAGE=DSECT TIE
:>
:>MY_PARM EZASMI MF=L
:>MY_PARM_LEN EQU *-MY_PARM
:>
:>
:>
:>
:>
:>
:>
:>
:>-----Original Message-----
:>
:>
:>
:>From: joereichman [mailto:[email protected]]
:>Sent: Tuesday, July 21, 2009 9:54 PM
:>To: [email protected]
:>Subject: FW: EZASMI re-entrant FAILS on INITAPI :> :> :> :> :>-----Original
Message-----
:>From: IBM Mainframe Discussion List [mailto:[email protected]]on :>Behalf
Of Binyamin Dissen
:>Sent: Tuesday, July 21, 2009 2:50 AM
:>To: [email protected]
:>Subject: Re: EZASMI re-entrant FAILS on INITAPI :> :> :>On Mon, 20 Jul 2009
20:00:20 -0400 Joe Reichman <[email protected]>
:>wrote:
:>
:>:>Would anyone know if there are any special considerations using the :>
:>:>Assembler EZASMI macro when the module is link'ed re-entrant :> :>:>I have
code that works perfectly :> :>:>However when I link it with RENT (also made
the program re-entrant) :> :>:>the INITAPI API fails :> :>My guess would be
that you missed something making it reentrant. Show the :>code. Describe what
failed.
--
Binyamin Dissen <[email protected]> http://www.dissensoftware.com
Director, Dissen Software, Bar & Grill - Israel
Should you use the mailblocks package and expect a response from me, you should
preauthorize the dissensoftware.com domain.
I very rarely bother responding to challenge/response systems, especially those
from irresponsible companies.
----------------------------------------------------------------------
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
----------------------------------------------------------------------
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
----------------------------------------------------------------------
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