Just wanted thank you for your for help (ROB) going to name the SUBTASKS.....
thnakx -----Original Message----- From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 22, 2010 7:09 AM To: IBM-MAIN@bama.ua.edu Subject: Re: Re-entrancy problem ERRNO of x'0E' indicates that something is wrong with with the parameter list or one of the arguments. I would advise that you double-check each argument and verify its contents and length (eg the APITYPE must be a halfword equal to 2 or 3). Also, if you are planning to call EZASMI by multiple subtasks, then I suggest that you also code the SUBTASK= argument on the INITAPI with a unique name for each. Is there a good reason to hold the TIE for the subtask in the mother working storage? What is wrong with having it in the working storage for the subtask? Rob Scott Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.617.614.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -----Original Message----- From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of Joe Reichman Sent: 22 March 2010 03:09 To: IBM-MAIN@bama.ua.edu Subject: Re: Re-entrancy problem The error occurred on the INITAPI Started 4 tasks 4 ATTACHES THE RETURN CODE IS FFFFFFFF THE ERRNO IS ......0000000E THE RETURN CODE IS FFFFFFFF THE ERRNO IS ......0000000E THE RETURN CODE IS FFFFFFFF THE ERRNO IS ......0000000E THE RETURN CODE IS FFFFFFFF THE ERRNO IS ......0000000E The INITAPI is *----------------------------------------------------------------* * identify the program to TCP/IP * *----------------------------------------------------------------* EZASMI TYPE=INITAPI, Issue INITAPI Macro 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) X TASK=MYTIE, X I do a STORAGE for 4 MYTIE('s) in my main program and pass each subtask a TIE as a parm The MY_PARM is part of my Working Storage Dsect MY_PARM EZASMI MF=L -----Original Message----- From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of Rob Scott Sent: Friday, March 19, 2010 7:02 AM To: IBM-MAIN@bama.ua.edu Subject: Re: Re-entrancy problem Joe, Can you tell us more about the failure : (1) Did it abend? If so - with what code and where (2) Did it just not POST the ECB? A few things to check : (1) Where is "MY_PARM"? - is this in working storage? (2) How was "MY_PARM" defined? (3) What was specified on the INITAPI ? One last "gotcha" with EZASMI is that the "ECB=" keyword must point to a 104-byte field and NOT a 4-byte field. I know that sounds crazy - but EZASMI uses the last 100 bytes as a "workarea". (Why this "workarea" was not a separate keyword I just don't know....) Rob Scott Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.617.614.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -----Original Message----- From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of Joe Reichman Sent: 19 March 2010 10:40 To: IBM-MAIN@bama.ua.edu Subject: Re-entrancy problem Hi, The following code works (ECB is posted by TCP/IP) except when I catalouge the program RENT=(REUS) Would anybody have any ideas *---------------------------------------------------------------------* * GET THE SOCKET TO READ * *---------------------------------------------------------------------* MVC COMM,=CL8'TAKESOCK' XC MY_PARM(MY_PARM_LEN),MY_PARM CLEAR PARAMTER LIST LA R10,MY_ECB GET MAIN TASK ECB ST R10,ECB_LIST STORE IT LA R10,MVS_ECB GET MAIN TASK ECB ST R10,ECB_LIST+4 STORE IT OI ECB_LIST+4,X'80' MARK END EZASMI TYPE=TAKESOCKET, Issue INITAPI Macro X SOCRECV=SOCKET, X CLIENT=CLIENT, SPECIFY SUBTASK IDENTIFIER X ERRNO=ERRNO, (Specify ERRNO field) X RETCODE=RETCODE, (Specify RETCODE field) X ECB=MY_ECB, X ERROR=ERROR, ABEND IF ERROR ON MACRO X TASK=MYTIE, X MF=(E,MY_PARM) * * WAIT ECB=MY_ECB * B CK_RET WAIT 1,ECBLIST=ECB_LIST L R10,ECB_LIST+4 GET MVS ECB CLC 1(3,R10),=3X'00' POSTED BE RETURN YES; GO BACK ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu 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 lists...@bama.ua.edu 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 lists...@bama.ua.edu 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 lists...@bama.ua.edu 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 lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html