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

Reply via email to